HydraCore
API by router

Channels

List Instance Channels

GET
/v1/instances/{instance_id}/channels

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

instance_id*Instance Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Response Body

Successful Response

application/json
  1. response
channels*array<>
count*Count
Example Request
curl -X GET 'https://example.com/v1/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08/channels'
Example Response
{  "channels": [    {      "channel_type": "string",      "config": {},      "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9",      "created_at": "2019-08-24T14:15:22Z",      "enabled": true,      "error_message": "string",      "external_identifier": "string",      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",      "last_event_at": "2019-08-24T14:15:22Z",      "provider": "string",      "status": "string",      "updated_at": "2019-08-24T14:15:22Z"    }  ],  "count": 0}

Create Channel Endpoint

POST
/v1/instances/{instance_id}/channels

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

instance_id*Instance Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
channel_type*Channel Type

telegram|whatsapp|voice|sms|email|web_chat

config?|

Channel-specific config (streaming mode, processing rules, etc.)

connection_id?|

FK to customer_connections for customer-owned channels

credential_id?|

FK to mcp_credentials for platform-provisioned channels

enabled?Enabled
Defaulttrue
external_identifier*External Identifier

Phone number, bot username, email address, etc.

Lengthlength <= 255
provider*Provider

telegram|meta_cloud|retell|twilio|gmail|resend|etc.

Lengthlength <= 50
webhook_secret?|null

Response Body

Successful Response

application/json
  1. response
channel_type*Channel Type
config?|null
connection_id?|null
created_at*Created At
Formatdate-time
enabled*Enabled
error_message?string|null
external_identifier*External Identifier
id*Id
Formatuuid
instance_id*Instance Id
Formatuuid
last_event_at?|null
provider*Provider
status*Status
updated_at*Updated At
Formatdate-time
Example Request
curl -X POST 'https://example.com/v1/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08/channels' \  -H 'Content-Type: application/json' \  -d '{  "channel_type": "string",  "external_identifier": "string",  "provider": "string"}'
Example Response
{  "channel_type": "string",  "config": {},  "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9",  "created_at": "2019-08-24T14:15:22Z",  "enabled": true,  "error_message": "string",  "external_identifier": "string",  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",  "last_event_at": "2019-08-24T14:15:22Z",  "provider": "string",  "status": "string",  "updated_at": "2019-08-24T14:15:22Z"}

Update Channel Endpoint

PATCH
/v1/instances/{instance_id}/channels/{endpoint_id}

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

instance_id*Instance Id
Formatuuid
endpoint_id*Endpoint Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
config?|null
enabled?boolean|null
error_message?string|null
external_identifier?string|null
provider?string|null
status?string|null

Response Body

Successful Response

application/json
  1. response
channel_type*Channel Type
config?|null
connection_id?|null
created_at*Created At
Formatdate-time
enabled*Enabled
error_message?string|null
external_identifier*External Identifier
id*Id
Formatuuid
instance_id*Instance Id
Formatuuid
last_event_at?|null
provider*Provider
status*Status
updated_at*Updated At
Formatdate-time
Example Request
curl -X PATCH 'https://example.com/v1/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08/channels/497f6eca-6276-4993-bfeb-53cbbbba6f08' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "channel_type": "string",  "config": {},  "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9",  "created_at": "2019-08-24T14:15:22Z",  "enabled": true,  "error_message": "string",  "external_identifier": "string",  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",  "last_event_at": "2019-08-24T14:15:22Z",  "provider": "string",  "status": "string",  "updated_at": "2019-08-24T14:15:22Z"}

Delete Channel Endpoint

DELETE
/v1/instances/{instance_id}/channels/{endpoint_id}

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

instance_id*Instance Id
Formatuuid
endpoint_id*Endpoint Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Response Body

Successful Response

Example Request
curl -X DELETE 'https://example.com/v1/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08/channels/497f6eca-6276-4993-bfeb-53cbbbba6f08'
Example Response
Empty