Skip to content

List channels

View .md
GET

Every (address, type) the project can send from, and whether it can send right now. Paginated by sender: a page holds every entry of up to limit senders, so it can hold more than limit entries.

Authorization

  • Authorizationheaderrequired

    Bearer YOUR_API_KEY. Create a key in the dashboard.

Query parameters

  • limitinteger
    Default50
    Limitsmax 100
  • cursorstring

    Opaque nextCursor from the previous page.

Responses

200Entries.
  • itemsobject[]required
    4 properties
    • addressstringrequired

      The address the recipient sees: an E.164 number (sms, voice, whatsapp), an email address (lowercase), @botname (telegram), @username (instagram), the Facebook Page id (messenger), or the literal sms_oneway (one-way SMS goes out from shared system numbers, and messages on it store this same literal as from).

    • typestringrequired

      A transport a message travels on.

      One ofsmssms_onewaywhatsapptelegramemailinstagrammessengervoice
    • activebooleanrequired

      It can send right now. A connected transport that is switched off is listed with active: false; turn it on with POST /v2/channels/{address}/{type}/activate. sms, sms_oneway and voice have no switch and are always active.

    • v1SenderIdstringrequired

      Read-only. The /v1 sender behind this entry, usable as the Zavu-Sender header on /v1. Entries with the same v1SenderId are one channel group. On /v2 it is accepted as from only when two entries of different groups share an address (see 409 ambiguous_from).

  • nextCursorstringnullable
400`limit` outside 1–100 (`details.errors`).
  • codestringrequired
  • messagestringrequired
  • detailsobject

    Machine-readable context. Keys that mean the same thing everywhere: - errors: present on every 400 invalid_request for an invalid body or query parameter, [{path, message, ...}], path naming the field (["to"], ["contacts", 2, "recipient"], ["limit"]). - recommendation: one sentence saying what to do next. - dashboardUrl: the dashboard screen that fixes it. - connect: on 409 no_channel, the channels this project can connect to reach the recipient, each {type, request, note, available, dashboardUrl?}; request is the exact call (POST /v2/channels with its body, or POST /v2/numbers), or null for a channel connected from the dashboard (WhatsApp, Instagram, Messenger). available: false says why in note (one-way SMS closed until business verification is approved). - address / from: the address the error is about, under the name the request used for it.

    1 properties
    • errorsobject[]
      3 properties
      • pathobject[]required
      • messagestringrequired
      • codestring
401Unauthorized.
  • codestringrequired
  • messagestringrequired
  • detailsobject

    Machine-readable context. Keys that mean the same thing everywhere: - errors: present on every 400 invalid_request for an invalid body or query parameter, [{path, message, ...}], path naming the field (["to"], ["contacts", 2, "recipient"], ["limit"]). - recommendation: one sentence saying what to do next. - dashboardUrl: the dashboard screen that fixes it. - connect: on 409 no_channel, the channels this project can connect to reach the recipient, each {type, request, note, available, dashboardUrl?}; request is the exact call (POST /v2/channels with its body, or POST /v2/numbers), or null for a channel connected from the dashboard (WhatsApp, Instagram, Messenger). available: false says why in note (one-way SMS closed until business verification is approved). - address / from: the address the error is about, under the name the request used for it.

    1 properties
    • errorsobject[]
      3 properties
      • pathobject[]required
      • messagestringrequired
      • codestring