Explore how to integrate into our CRM platform with an API.
This article covers:
Who is the API for?
At Upsales, we have an open Application Programming Interface or API in short. Customers with fewer than 100,000 requests/day can access the API for free.
For building an advanced integration or downloading data through our API, there can be a fee.
How to get access
The API requires the API add-on. An administrator activates it under Settings → Account → Billing portal, see How to activate Upsales Products. Only administrators can see and manage API-keys (Settings → Account → Security → API-keys), see How to create an API key.
Need support? Our service team can help build the integration of your choosing. You can:
- buy the service from us
- do it yourself
- use a third-party developer
What can be accessed
You can use the Upsales API to access all our API endpoints, such as the CRM API to look up sales data, or our limited Marketing Automation API to create leads into Upsales.
Making requests
The API is organised around REST. All requests should be made over SSL. All request and response bodies, including errors, are encoded in JSON.
- Authenticate your account by including your secret key in API requests. You can manage your API keys under settings in Upsales as admin users. Your API keys carry many privileges, so be sure to keep them securely, away from publicly accessible areas such as GitHub, client-side code.
- The base URL is
https://integration.upsales.com/api/v2. Pass the API key in thetokenquery parameter on every request, for examplehttps://integration.upsales.com/api/v2/phoneCall?token=YOUR_API_KEY. The key is part of the URL, so keep it out of logs and shared links. - Always include content-type: application/JSON as a header.
- Our API returns standard HTTP success or error status codes. For errors, we will also include extra information about what went wrong encoded in the response as JSON.
| HTTP code | Description |
| 200 - OK | Everything worked as expected |
| 400 - Bad Request | The request was unacceptable, often due to missing a required parameter. |
| 401 - Unauthorized | No valid API key is provided. |
| 404 - Not Found | The requested resource doesn't exist, or you don't have access to the resource. |
| 429 - Too Many Requests | The API key is over a rate limit. Wait and retry the request. |
Requests are rate limited per API key. The standard limits are 200 requests per 10 seconds, 6,000 per 10 minutes and 20,000 per hour, and for POST, PUT, PATCH and DELETE requests also 2,000 per 10 minutes and 5,000 per hour. Each response has the headers X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset (seconds until the limit resets).