The Company API allows you to retrieve, create and delete client Companies on the platform. This enables scenarios where Companies created/maintained in other systems (e.g,. SAP, Salesforce) can be replicated to the platform automatically. On our Cloud service, this API is available via SSL-secured HTTPS connection using the REST GET, POST and PUT verbs.
The format query string parameter controls the desired response format. Specify either xml or json.
/api/v2/company?format=xml/json
POST Request
You may use either JSON or XML formats in your request. You indicate this by setting the ContentType HTTP header as "application/json" or "application/xml." If no ContentType is specified, XML format is assumed. The required and optional parameters for a POST to the Company API are outlined below.
Note that if you wish to automatically create a support user for your internal use with this Company, you should set the AddSupportUser property on Company to be True.
Parameter Name | Data Type | Required | Description |
Company | Company | Yes | The Company that you wish to create See the Company type definition from the GET documentation topic. |
POST Response
The data returned from a Company POST is provided as follows:
Company Response (<CompanyResponse>)
Field Name | Data Type | Description |
Company | Company | The Company created |
SupportUser | User | The support User created (if any) See User documentation for full details of this structure |
ResponseStatus | ResponseStatus | Details of any errors that may have occurred |
Company (<Company>) Response Fields
The Company returned is only populated with the following fields:
Field Name | Data Type | Description |
Id | Integer | Unique identifier of the new Company |
Status | String | The Company current status - i.e., Active |
IntegrationKey | String | The new Company unique integration key |
VendorId | Integer | The Master Vendor Id to which the new Company belongs |
API Usage Example
Given that the API is REST-based, you can access the API directly via your web browser to test it. Obviously, for actual integration works, you will need to make a web request to the given REST URL and then parse the response.
Below is a simple POST example which creates a new Company for the specified Vendor, using XML format.
XML
<Company>
<ActiveDevices>0</ActiveDevices>
<ActiveUsers>0</ActiveUsers>
<AddSupportUser>True</AddSupportUser>
<Country>GB</Country>
<Description>Test Org</Description>
<DateFormat>dd-MMM-yyyy</DateFormat>
<DefaultSenderEmail>test@myorg.com</DefaultSenderEmail>
<DefaultSenderName>Test Company</DefaultSenderName>
<DeviceLimit>0</DeviceLimit>
<GlobalFormPOSTURL></GlobalFormPOSTURL>
<GlobalHostedGETURL></GlobalHostedGETURL>
<GlobalTaskPOSTURL></GlobalTaskPOSTURL>
<IntegrationKey>xxx</IntegrationKey>
<Name>Test Company</Name>
<VendorId>1</VendorId>
<TimeFormat>HH:mm</TimeFormat>
<TimeZone>GMT Standard Time</TimeZone>
<UserLimit>0</UserLimit>
</Company>
XML Response:
<CompanyResponse>
<ResponseStatus />
<Company>
<Id>2</Id>
<IntegrationKey>xxx</IntegrationKey>
<Status>Active</Status>
<VendorId>1</VendorId>
</Company>
<SupportUser>
<Email>2$test@myorg.com</Email>
<FirstName>Test Company</FirstName>
<Id>00000000-0000-0000-0000-000000000000</Id>
<LastActivity>0001-01-01T00:00:00</LastActivity>
<LastName>Support</LastName>
<CompanyId>2</CompanyId>
<Status>Invited</Status>
</SupportUser>
</CompanyResponse>