Skip to content

SmsGetProviderAdapters

GET sms/providers/adapters

Returns the adapters the running module actually has, with the capabilities of each and the credential fields it expects.

This is the source of truth for provider setup: the matrix comes from the code, so it cannot drift from reality. Use it to build the provider form and to decide which deliveryUpdateBy mode a profile may use.

Access Control

Allowed roles: admin, provider.

Request

GET request
GET https://{broker_domain}/sms/providers/adapters
Authorization: <JWT_TOKEN>
{
  "command": "SmsGetProviderAdapters",
  "extID": "1",
  "data": {}
}
const res = await platform.SmsGetProviderAdapters({});

Request Data

This method takes no parameters.

Response Data

A ? suffix in credentialsSchema marks an optional field. Capabilities map onto what a profile may do: no polling means deliveryUpdateBy: "REQUEST" is rejected, no webhook means "WEBHOOK" is rejected, no balance means SmsGetProfileBalance answers BALANCE_NOT_SUPPORTED for it.

{
  "rows": [
    {
      "name": "twilio",
      "title": "Twilio",
      "capabilities": {
        "polling": true,
        "webhook": true,
        "balance": true,
        "unicode": true
      },
      "credentialsSchema": {
        "accountSid": "string",
        "authToken": "string",
        "fromNumber": "string",
        "messagingServiceSid": "string?",
        "statusCallbackUrl": "string?"
      }
    }
  ]
}

Errors

Code Error Description
401 PERMISSION_DENIED Session may not read the provider catalogue