Skip to content

Requests and responses

  • Method: POST to https://api.dcdial.com/api/. HTTPS only.
  • Body: application/x-www-form-urlencoded fields. Use multipart/form-data to upload a file. A JSON object also works with Content-Type: application/json.
  • Required fields: type (the operation) and, except for Log in, token.
  • Field names are case-sensitive and use snake_case.
  • Dates are YYYY-MM-DD; date-times are YYYY-MM-DD HH:MM:SS.
  • Yes/no flags are Y/N or 1/0, as shown on each endpoint.
  • Lists of values (such as several phone numbers) are comma-separated unless the endpoint says otherwise.

Responses are JSON. Most endpoints wrap their data in a response object with a success flag:

{
"response": {
"success": "1",
"error": "",
"campaigns_list": [ … ]
}
}
  • success is 1 on success and 0 on failure. Depending on the endpoint it can be a number or a string, so compare loosely (success == 1) or convert it first.
  • error holds a readable message when success is 0.
  • A few newer endpoints, such as Fetch accounts, return their data without the response wrapper. Each reference page shows the exact shape.

Endpoints that return long lists take limit and offset. Request a page, then raise offset by limit until you get fewer rows than limit.

The API has no idempotency keys. Retrying a request that starts a campaign, sends a text or takes a payment can do it twice. Only retry those after you have confirmed the first attempt failed, for example with Get payment status.