Highrise SDK

Effective productivity

With the Highrise SDK you are able to connect your Microsoft .NET applications to Highrise. So if you have an ASP.NET based web-application, or a .NET windows application, then you can easily integrate all of the Highrise functionality. Furthermore, you can create add-ins to the original Highrise. The SDK components are typed and secure, while forming a proxy they perform the API calls and data transfer (XML serialization, deserialization).

So while the SDK makes using the Highrise API easy, thorough knowledge of the API is also very important.

The SDK based on the Highrise API documentation. The services are defined as methods. The naming of the methods followes the API documentation. During development, you should consult this documentation.

The picture shown below represents the Highrise components of the SDK.


Download large diagram

The structure of the Person and People classes is shown below.

To support simple work the SDK offers extra services. For example, if you want to add a note to an existing person, the Note Person.AddNote(Note) takes care of it. The newly created Note (complete with the new ID) will be returned by this method.

For example, here is a code of the creation of a new Person, modification, reading and deletion.

//creating a new Person
var newPerson = new Person
{
    Background = "Former boss",
    //CompanyName="Microsoft",
    FirstName = "Bill",
    LastName = "Gates",
    Title = "Mr",
    VisibleTo = "Everyone"
};
 
newPerson.ContactData.EmailAddresses = new EmailAddresses();
newPerson.ContactData.EmailAddresses.EmailAddressList.Add(new EmailAddress
{
    Location = EmailAddress.EmailAddressLocation.Work,
    Address = "bill@microsoft.com"
});
 
newPerson.ContactData.WebAddresses = new WebAddresses();
newPerson.ContactData.WebAddresses.WebAddressList.Add(new WebAddress
{
    Location = WebAddress.WebAddressLocation.Work,
    Url = "www.thegatesnotes.com"
});
 
newPerson = newPerson.Create();
 
//Modify the newly created person
newPerson.ContactData.InstantMessengers = new InstantMessengers();
newPerson.ContactData.InstantMessengers.InstantMessengerList.Add(new InstantMessenger
{
    Address = "billgates@msn.com",
    Location = InstantMessenger.InstantMessengerLocation.Personal,
    Protocol = InstantMessenger.InstantMessengerProtocol.MSN
});
 
newPerson.VisibleTo = "Owner";
newPerson.Update();
 
 
//Get the person
var p2 = Person.Show(newPerson.ID.Value);
 
//Delete the person
p2.Destroy();