Installing an SMS channel
It is possible to install an SMS channel via the connectors API.
Channels are created by first installing a new connector. Connectors are responsible for linking the MessageBird Engagements platform to third party platforms.
Installing an SMS connector
In order to create an SMS connector, you must have a valid phoneNumberId and perform a HTTP request to the following endpoint with a valid access key
POST /workspaces/{workspaceId}/connectors HTTP/1.1
Host:
Authorization: Bearer jwt
Content-Type: application/json
Accept: */*
Content-Length: 236
{
"name": "text",
"connectorTemplateRef": "text",
"arguments": {
"someArgument": "someValue"
},
"securityArguments": {
"ANY_ADDITIONAL_PROPERTY": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
},
"channelConversationalStatusEnabled": true,
"invitationToken": "text"
}
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspaceId": "123e4567-e89b-12d3-a456-426614174000",
"routingKey": "text",
"name": "text",
"region": "text",
"description": "text",
"arguments": {
"someArgument": "someValue"
},
"channel": {
"channelId": "123e4567-e89b-12d3-a456-426614174000",
"platform": "text"
},
"number": {
"profileId": "123e4567-e89b-12d3-a456-426614174000",
"numberId": "123e4567-e89b-12d3-a456-426614174000",
"phoneNumber": "text",
"variables": {},
"capabilities": "mms-inbound,mms-outbound,sms-inbound,sms-outbound",
"numberType": "mobile",
"endpointType": "alpha-number",
"country": "NL",
"profileAttachments": [
{
"capability": "text",
"profileId": "text",
"variables": {
"connectorId": "text"
}
}
]
},
"connectorTemplateSlug": "text",
"connectorTemplateRef": "text",
"dataFetching": {
"schedule": "text",
"streams": [
{
"eventName": "text",
"streamName": "text",
"eventStreamName": "text",
"filter": "text",
"initialState": "text",
"endCondition": "text",
"incremental": true,
"duplicatesFilterCapacity": 1,
"cursorField": "text"
}
]
},
"dataCapture": {
"captureEndpoint": "text"
},
"createdAt": "2025-06-22T23:11:13.629Z",
"updatedAt": "2025-06-22T23:11:13.629Z"
}
curl --location 'https://api.bird.com/workspaces/<your-workspace-id>/connectors' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: AccessKey <your-access-key>' \
--data '{
"connectorTemplateRef": "sms-messagebird:1",
"name": "My SMS channel",
"arguments": {
"phoneNumberId": "2cffb55c-120e-91a8-8f10-ed9d1b412d29",
"useCaseId": "be123b02-dacf-31f9-b3e5-50b18260bc23"
},
"channelConversationalStatusEnabled": true
}'
Get your channel id
Once you have created your SMS connector, this will create an SMS channel. You can then get your channel ID as follows
GET /workspaces/{workspaceId}/connectors/{connectorId} HTTP/1.1
Host:
Authorization: Bearer jwt
Accept: */*
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspaceId": "123e4567-e89b-12d3-a456-426614174000",
"routingKey": "text",
"name": "text",
"region": "text",
"description": "text",
"arguments": {
"someArgument": "someValue"
},
"channel": {
"channelId": "123e4567-e89b-12d3-a456-426614174000",
"platform": "text"
},
"number": {
"profileId": "123e4567-e89b-12d3-a456-426614174000",
"numberId": "123e4567-e89b-12d3-a456-426614174000",
"phoneNumber": "text",
"variables": {},
"capabilities": "mms-inbound,mms-outbound,sms-inbound,sms-outbound",
"numberType": "mobile",
"endpointType": "alpha-number",
"country": "NL",
"profileAttachments": [
{
"capability": "text",
"profileId": "text",
"variables": {
"connectorId": "text"
}
}
]
},
"connectorTemplateSlug": "text",
"connectorTemplateRef": "text",
"dataFetching": {
"schedule": "text",
"streams": [
{
"eventName": "text",
"streamName": "text",
"eventStreamName": "text",
"filter": "text",
"initialState": "text",
"endCondition": "text",
"incremental": true,
"duplicatesFilterCapacity": 1,
"cursorField": "text"
}
]
},
"dataCapture": {
"captureEndpoint": "text"
},
"createdAt": "2025-06-22T23:11:13.629Z",
"updatedAt": "2025-06-22T23:11:13.629Z"
}
The following example will get the connector you have created in the previous step. Parse the channel.channelId
to get the id of your new SMS channel
curl --location 'https://api.bird.com/workspaces/<your-workspace-id>/connectors/<your-connector-id>' \
--header 'Accept: application/json' \
--header 'Authorization: AccessKey <your-access-key>'
Installation scenarios
Getting a valid phoneNumberId or useCaseId can have different pre-requisites depending on the Endpoint type. See the quick starts for some common scenarios:
Last updated
Was this helpful?