[POST] Call Personalisation (Bulk)

Async API to send call personalisation data for a Caller-Receiver combination

Create Dynamic Call Records

post

This endpoint pushes the dynamic caller ID details to the respective TC users. It supports batching. Maximum batch size is 500

Authorizations
Path parameters
clientAccountIdstring · uuidRequired

This should be the clientAccountId

Header parameters
AcceptstringOptionalExample: {"value":"application/vnd.api+json; version=1.0"}
Body
Responses
200Success
post
POST /clients/{clientAccountId}/dynamic_call_records HTTP/1.1
Host: 
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 171

{
  "call_records": [
    {
      "call_reason": "text",
      "caller": "text",
      "ends_at": 1,
      "label_id": "123e4567-e89b-12d3-a456-426614174000",
      "label_name": "text",
      "receiver": "text",
      "starts_at": 1
    }
  ]
}

No content

Here are a few things to consider when pushing the records through the API :-

  • Caller and receiver should be phone numbers without the “+” character.

  • ends_at should not be before the current timestamp.

  • starts_at and ends_at cannot be more than 24 hrs apart

  • label_id should be that of a dynamic label belonging to this client.

  • Label name and call reason are optional fields.

  • Max length for label name is 40 chars

  • Min length for call reason is 10 chars

  • Max length for call reason is 100 chars

  • starts_at and ends_at should be in milliseconds.

Rate limits

Truecaller for Business restricts API requests when you exceed the limits entitled to your business.

  • Thus, if your business is using a batch based approach to push records to our systems, 10*60*500 = 300000 records can be processed every minute.

Here, the batch size is 500. This means that a maximum of 500 requests can be processed at a time.

Adapting to rate-limits

  • Exponential Backoff: If you receive a "429" status code, consider implementing exponential backoff for retrying requests.

  • Prioritize Important Requests: If your application performs various tasks, prioritize critical requests over less essential ones to stay within limits.

Last updated

Was this helpful?