Introduction
Application registration
For the application to be able to start working, you need to generate an authentication key and signature key. Account managers can do this in the section Account management / Access to API.
Important
The API can only be used with paid and premium accounts.
Access to interfaces
Access to the interface is established through a single entry point located at: https://api.planfix.com/xml/
Please note that the interface is accessed over HTTPS. All API calls using an unsecured connection will be automatically ignored, so we recommend establishing a test secure connection with an access point to Planfix interfaces before sending data.
All API calls are executed through POST requests.
Limitations on requests
By default, all accounts are limited based on their plan (20/50/100,000 requests per day) and are limited to one request per second. Additionally, all methods that return lists of values are limited to 100 results per request. The approximate number of remaining requests per day is returned in the X-RateLimit-Remaining header (this value is updated approximately every 10 minutes).
Request format
The request packet has the following structure
Name | Type | Value | Notes |
---|---|---|---|
account | string | account where the function will be executed | required field; found in all requests |
sid | string(32) | session key received from executing the auth function auth | if a user is authenticated using username/password |
Authentication
There are two possible authentication methods: by authorization token or by username and password. The preferred method of authentication uses a token; authentication with username and password is used for reverse compatibility, so as not to disrupt existing client applications.
Response format
The response format has the following structure:
<?xml version="1.0" encoding="UTF-8"?>
<response status="{ok|error}">
<code>xxxx</code> <!-- present if error status is error -->
<!-- response body -->
</response>
All responses to requests for lists contain two attributes in the root element. totalCount is the total number of elements that meet the condition, and count is the number of elements returned in the result. Example:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<actions count="5" totalCount="23">
</actions>
</response>
Response with error:
<?xml version="1.0" encoding="UTF-8"?>
<response status="error">
<code></code>
</response>