API documentation

Channels and usage API

The websites, numbers, accounts and mailboxes a key can use, and this month's API quota.

GET/v1/channelsSign in to try

The websites, WhatsApp numbers, Instagram accounts and email addresses this key can use

Use it to discover ids you need elsewhere — a whatsapp_account_id to start a WhatsApp conversation, or a website_id to filter conversations.

Request
curl -X GET "https://api.iotabot.com/v1/channels" \
  -H "Authorization: Bearer $IOTABOT_API_KEY"
Response · 200
{
  "data": {
    "websites": [
      {
        "id": "6a4b3fbbe291bce5bf701c5c",
        "name": "Acme store",
        "domains": [
          "https://acme.com"
        ]
      }
    ],
    "whatsapp": [
      {
        "id": "6a4c01aa…",
        "website_id": "6a4b3fbbe291bce5bf701c5c",
        "phone_number": "+91 98123 45678",
        "name": "Acme",
        "status": "connected",
        "marketing_messages": "ONBOARDED"
      }
    ],
    "instagram": [
      {
        "id": "6a4c02bb…",
        "website_id": "6a4b3fbbe291bce5bf701c5c",
        "username": "acme",
        "status": "connected"
      }
    ],
    "email": [
      {
        "id": "support",
        "website_id": "6a4b3fbbe291bce5bf701c5c",
        "address": "support@acme.com",
        "forwarding_active": true
      }
    ]
  }
}
GET/v1/usageSign in to try

API messages used this month, the limit, and when it resets

Only messages the channel accepted count. Webhooks never count.

Request
curl -X GET "https://api.iotabot.com/v1/usage" \
  -H "Authorization: Bearer $IOTABOT_API_KEY"
Response · 200
{
  "data": {
    "period": "2026-10",
    "messages_used": 312,
    "messages_limit": 1000,
    "resets_at": "2026-11-01T00:00:00.000Z"
  }
}