# API
# Authentication
Tratta API uses Access Tokens to authenticate requests. You can request this token by clicking here (opens new window) and filling out the form. Along with the access token, you'll also receive your organization's UUID, which is part of the endpoint.
Authentication to the API is performed via bearer auth included in the Authorization header
of the HTTP request.
curl https://<org-uuid>.production.tratta.io/api/v1/transactions \
-H "Authorization: Bearer eyJ0eXA3asdk..."
# Environments
The Tratta API is available in production and sandbox environments. The sandbox environment can be used to test your integration. Separate API keys are available for each environment.
# Sandbox
Sandbox environment is available at
curl https://<org-uuid>.sandbox.tratta.io/api/v1
# Production
Production environment is available at
curl https://<org-uuid>.production.tratta.io/api/v1
# Rate Limiting
All requests to API are limited by default to 300 requests per minute
. You can request to increase the quota by speaking with your Tratta point of contact.
If you reach the limit the api will respond with an 429
status response.
# Pagination
API results are paginated by default, with 10 records per page
. You can adjust this number using the limit
parameter.
# Parameters
limit optional
A limit on the number of records to be returned, between 1 and 500.
# Returns
Pagination can be found in the meta
and links
properties of the response. Paginated links preserve query parameters.
meta
from_submitted_date
and to_submitted_date
represent submitted_date
for the first and last records in the returned page.
"meta" : {
"from_submitted_date": '2020-10-10 10:30:00',
"to_submitted_date": '2020:10-10 10:00:00',
"from" : 1,
"current_page" : 1,
"total" : 2229980,
"to" : 20,
"last_page" : 111499,
"per_page" : "20",
"path" : "https://<org-uuid>.production.tratta.io/api/v1/transactions"
}
links
"links" : {
"prev" : null,
"next" : "https://<org-uuid>.production.tratta.io/api/v1/transactions?page=2&limit=10",
"first" : "https://<org-uuid>.production.tratta.io/api/v1/transactions?page=1&limit=10",
"last" : "https://<org-uuid>.production.tratta.io/api/v1/transactions?page=111499&limit=10"
}
# Requests
Body parameters in the documentation usually have validation rules or abbreviations associated with them.
# optional
The property must either be missing from the body payload or in a valid format specified by other validation rules.
# Response Codes
Tratta uses conventional HTTP response codes to indicate the success or failure of an API request. The table below contains a summary of the typical response codes:
Code | Description |
---|---|
200 | Everything is ok. |
201 | Created: Resource has been created successfully. |
400 | Valid data was given but the request has failed. |
401 | No valid API Key /Auth token was given. |
404 | The request resource could not be found. |
422 | The payload has missing required parameters or invalid data. |
429 | Too many attempts. |
500 | Request failed due to an internal error in Tratta. |
# Success Response
Success response comes in the following format with 2XX
HTTP status code
{
"data": "array or object"
}
# Error Response
Error response comes in the following format with 4XX
HTTP status code
{
"error": "error message",
"errorCode": "optional error code"
}
# Including Related Resources
If there's a relation between API resources, you can include
the whole related resource object in response using include
in query parameters.
For example
curl https://<org-uuid>.production.tratta.io/api/v1/debt-accounts/1234-5678 \
-H "Authorization: Bearer eyJ0eXA3asdk..." \
-d include="customer" \
-G
{
# debt account parameters
"customer": "object",
}
If you want to include multiple related resources, you can delimit them with comma: ?include=customer,payments
.