SMS Use Cases
A quick start to Use Case management
Overview
To programmatically install an SMS channel, the API expects a reference to a use case in the request. For US 10DLC and North American Toll-Free Numbers, the use case entity is created when registering for these types of numbers. For other types of senders, like international phone numbers or alphanumeric senders, you need to create a generic use case. Use cases can be reused for multiple channels (for different senders) when the use case of the channels is the same.
List Use Cases
List use cases for a workspace
The ID of the workspace
Limits the number of results to return
10
Pagination token that keeps of track of the current position in the list
Order in which to retrieve the results
false
OK
The request did not pass validation
The request did not pass validation
GET /workspaces/{workspaceId}/use-cases HTTP/1.1
Host: api.bird.com
Authorization: AccessKey YOUR_SECRET_TOKEN
Accept: */*
{
"results": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"status": "created",
"use": "text",
"caseType": "default",
"definitionVersion": "text",
"description": "text",
"additionalFields": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"integrationState": {
"externalId": "text",
"status": "text",
"updatedAt": "2025-10-03T15:57:09.248Z",
"additionalFields": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
},
"tags": [
{
"key": "text",
"value": "text"
}
],
"createdAt": "2025-10-03T15:57:09.248Z",
"updatedAt": "2025-10-03T15:57:09.248Z"
}
],
"nextPageToken": "text"
}
Get a Use Case
Get workspace use case
The ID of the workspace
The ID for a useCase
OK
The request did not pass validation
The request did not pass validation
GET /workspaces/{workspaceId}/use-cases/{useCaseId} HTTP/1.1
Host: api.bird.com
Authorization: AccessKey YOUR_SECRET_TOKEN
Accept: */*
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"status": "created",
"use": "text",
"caseType": "default",
"definitionVersion": "text",
"description": "text",
"additionalFields": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"integrationState": {
"externalId": "text",
"status": "text",
"updatedAt": "2025-10-03T15:57:09.248Z",
"additionalFields": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
},
"tags": [
{
"key": "text",
"value": "text"
}
],
"createdAt": "2025-10-03T15:57:09.248Z",
"updatedAt": "2025-10-03T15:57:09.248Z"
}
Create a Use Case
Creates a new use case for a workspace
The ID of the workspace
default
Possible values: Use Case was created
The request did not pass validation
The request did not pass validation
POST /workspaces/{workspaceId}/use-cases HTTP/1.1
Host: api.bird.com
Authorization: AccessKey YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 155
{
"name": "text",
"use": "text",
"caseType": "default",
"definitionVersion": "text",
"description": "text",
"additionalFields": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"status": "created",
"use": "text",
"caseType": "default",
"definitionVersion": "text",
"description": "text",
"additionalFields": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"integrationState": {
"externalId": "text",
"status": "text",
"updatedAt": "2025-10-03T15:57:09.248Z",
"additionalFields": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
},
"tags": [
{
"key": "text",
"value": "text"
}
],
"createdAt": "2025-10-03T15:57:09.248Z",
"updatedAt": "2025-10-03T15:57:09.248Z"
}
Example request
curl --location 'https://app.bird.com/api/workspaces/<your-workspace-id>/use-cases' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: AccessKey <your-access-key>' \
--data '{
"name": "Multi-factor authentication",
"description": "MFA messages via SMS",
"use": "2FA",
"caseType": "default",
"additionalFields": {
"sample_messages": [
"Your login code is 123456."
]
}
}'
The ID returned in the request result can be used as useCaseId
value when linking the use case to the number, and in the request to create an SMS channel.
Last updated
Was this helpful?