Download OpenAPI specification:Download
Integration-ready REST reference for the Red Cloud public CORE API.
Contract-accurate OpenAPI spec derived from the current implementation.
Important realities reflected exactly:
client_credentials.sendFrom is a Red Cloud number identifier, not an E.164 phone number.POST /api/core/messages/send requires Idempotency-Key.campaignregId preserves the implemented request-field spelling.Use this specification alongside the authored guides for:
Issues a bearer access token using OAuth 2 client_credentials.
This endpoint supports:
client_id and client_secretThis endpoint returns OAuth-style error bodies, not the CORE error wrapper.
| grant_type required | string Value: "client_credentials" |
| client_id required | string |
| client_secret required | string |
{- "grant_type": "client_credentials",
- "client_id": "rc_test_client_123",
- "client_secret": "rc_secret_abc123"
}{- "access_token": "rc_token_example",
- "token_type": "bearer",
- "expires_in": 3600
}Returns the authenticated API client identity, capabilities, assigned-number summary, and webhook-configuration flags.
{- "apiClientId": "rc_test_client_123",
- "apiClientName": "Red Cloud Test Client",
- "apiClientStatus": "ACTIVE",
- "capabilities": [
- "numbers:read",
- "numbers:search",
- "numbers:update"
], - "assignedNumbers": {
- "total": 1,
- "smsEnabledCount": 1,
- "mmsEnabledCount": 1
}, - "inboundWebhookConfigured": true,
- "deliveryWebhookConfigured": true
}Returns the Red Cloud numbers currently assigned to the authenticated API client. Use the returned numberId values as future sendFrom inputs.
{- "numbers": [
- {
- "numberId": "num_abc123",
- "e164": "+15551234567",
- "status": "ACTIVE",
- "campaignRegId": "A1B2C3",
- "smsEnabled": true,
- "mmsEnabled": true,
}
]
}Searches available number inventory using supported location and numbering filters.
| npa | string |
| nxx | string |
| city | string |
| state | string |
| zipCode | string |
| rateCenter | string |
{- "npa": "555",
- "city": "Austin",
- "state": "TX"
}{- "groups": [
- {
- "rateCenter": "AUSTIN",
- "count": 1,
- "numbers": [
- {
- "e164": "+15551234567",
- "nationalDisplay": "(555) 123-4567",
- "city": "Austin",
- "state": "TX",
- "rateCenter": "AUSTIN"
}
]
}
], - "providerResultCount": 1,
- "requestedQuantity": 250
}Updates supported number settings for a number owned by the authenticated API client. The request preserves the implemented field name campaignregId.
| numberId required | string Example: num_abc123 Red Cloud number identifier. |
| campaignregId | string or null |
| smsEnabled | boolean |
| mmsEnabled | boolean |
| webhookInboundOverride | string or null |
| webhookDeliveryOverride | string or null |
{- "campaignregId": "A1B2C3",
- "smsEnabled": true,
- "mmsEnabled": true,
}{- "number": {
- "numberId": "num_abc123",
- "e164": "+15551234567",
- "status": "ACTIVE",
- "campaignRegId": "A1B2C3",
- "smsEnabled": true,
- "mmsEnabled": true,
}
}Queues outbound messages through the existing Red Cloud pipeline.
Important:
Idempotency-Key is required.sendFrom must be a Red Cloud number id.SMS requests cannot include media.MMS requests must include media.QUEUED.| Idempotency-Key required | string Example: idem_order_789 |
| sendFrom required | string Red Cloud number identifier. This is not an E.164 phone number. |
| to required | Array of strings non-empty One or more E.164 recipient phone numbers. |
| messageType required | string Enum: "SMS" "MMS" Message mode. |
| text | string Message body text. |
Array of objects (MessageMediaInput) Required for | |
| externalReference required | string Caller-defined business correlation key. |
{- "sendFrom": "num_abc123",
- "to": [
- "+15551234567"
], - "messageType": "SMS",
- "text": "Hello from Red Cloud",
- "externalReference": "order_789"
}{- "results": [
- {
- "to": "+15551234567",
- "messageId": "msg_abc123",
- "status": "QUEUED"
}
], - "errors": [ ]
}