LogoLogo
No-code docsResources
  • 🖥️Welcome to the Bird API Docs
  • API Access
    • Access Policies
    • Access Roles
    • API Authorization
    • Common API usage
  • Conversations API
    • API reference
      • Channel configuration
        • Get conversations configuration
        • Update conversations configuration
      • Conversations messaging
        • Create conversation message
        • List conversation messages
        • Get conversation message
        • Update conversation message
        • Delete conversation message
        • Create pre-signed upload
      • Conversations management
        • Create conversation
        • List conversations
        • Get conversation
        • Update conversation
        • Delete conversation
      • Conversation Participants
        • Add participant to conversation
        • List participants
        • Get participant by ID
        • Get participant by identifier key and value
        • Update participant by ID
        • Update participant by identifier key and value
        • Delete participant
        • List participant conversations by ID
        • List participant conversations by identifier key and value
      • Workspace settings
        • Get antispam setting
        • Update antispam setting
        • Create allow/block rule
        • Get allow/block rule
        • List allow/block rules
        • Update allow/block rule
        • Delete allow/block rule
        • Add allow/block rules in bulk
        • Get allow/block bulk upload status
      • Events
  • Collaborations API
    • API reference
      • Agent Management
      • Team Management
      • Feeds
      • Feed item activity
      • Tags
      • Automation Rules
      • Business Hours
      • Capacity Rules
      • Routing Queues
      • Skills
      • SLA Policies
      • Macros
      • Sender Profiles
      • Ticket fields
  • Channels API
    • Supported channels
      • Programmable WhatsApp
        • Sending WhatsApp messages
        • Customer service window
        • Receiving messages
        • Message interactions
        • WhatsApp ISV integration
          • Setting up your customer workspaces
            • API Access
            • Associating your Facebook solution ID and business ID with your Bird CRM Organization
            • Creating a workspace for your customer
            • Buying a number through Bird
            • Subscribing to channel created webhooks
          • WhatsApp channel onboarding
            • Setting up the WhatsApp Embedded flow
            • Install WhatsApp phone number in Bird CRM
            • Subscribe to channel webhooks
      • Programmable SMS
        • Installing an SMS channel
          • US 10DLC API Installation
          • Toll-Free Numbers Verification API
        • Sending SMS messages
        • Receiving messages
        • Twilio Exit API
          • Using Twilio PHP SDK
          • Using Twilio Go SDK
          • Using Twilio Ruby SDK
        • Sinch Exit API
      • Programmable RCS
        • Sending messages
        • Receiving messages
        • Message interactions
      • Programmable Email
        • Sending Emails
        • Receiving messages
        • Message status
        • Message interactions
      • Programmable Line
        • Sending messages
        • Receiving messages
        • Message interactions
      • Programmable Telegram
        • Sending messages
        • Receiving messages
        • Message interactions
    • Message types
      • Text
      • Images
      • Files
      • List
      • Carousel
      • Template
    • Message status and interactions
      • Message Failure Codes
      • Message Failure Sources
        • SMS Platform Extended Error Codes
    • Send batch messages
    • API reference
      • Channel Groups
      • Messaging
      • Channels management
      • Channel connectors
      • Navigators
      • Compliance Keywords Messages
      • Conversions Sharing
      • Events
    • Rate Limit
  • Voice API
    • Installing a Voice channel
    • Voice Calls API
      • Initiate an outbound call
      • List calls from a channel
      • Get a call
      • Update a call
      • Answer a call
      • Ring a call
      • Hangup a call
      • Play a message in a call
      • Say Text-To-Speech (TTS)
      • Gather DTMF from a call
      • Forward a call
      • Record a Call
      • Record a call session
      • Update a call recording
      • List call recordings of a call
      • Get a call recording
      • Get a call insights
      • Get calls log
    • Recordings API
      • List Recordings
      • Get a Recording
      • Delete a Recording
      • List recording storage metrics
    • Transcriptions API
      • Initiate a Transcription
      • List Transcriptions
      • Get a Transcription
      • Delete a Transcription
    • Voice webhooks
    • Flash Calling API
  • Verify API
    • Verify API: Quick Start
  • Contacts API
    • Tracking Contact Events
      • API Reference
        • Get configuration
        • Track events
    • API reference
      • Manage workspace contacts
        • Create a contact
        • Get a contact
        • List contacts
        • Search contact by identifier
        • Update a contact
        • Create or update a contact by identifier
        • Delete a contact
      • Manage contact identifiers
        • Create contact identifier
        • List contact identifiers
        • Delete contact identifier
      • Manage contact attribute definition
        • Create attribute definition
        • Get attribute definition
        • List attribute definitions
      • Manage contact lists
        • Create a list
        • Get a list
        • List lists
        • Update a list
        • Delete a list
        • Add contacts to a list
        • Get contact list memberships
        • List contacts in a list
        • Remove contacts from a list
      • Lookup
        • Network/Country information for a phone number
  • Numbers API
    • API reference
      • Search Available Numbers
      • Buy a Number
      • List your Numbers
      • Get Long Code Number Details
      • Manage Endpoint Subscriptions
        • Cancel Number Subscription
      • Manage Endpoint Compliance Requirements
        • List Workspace compliace Requirements
        • Get Workspace Compliace Requirements
        • Update Workspace Compliace Requirements
      • 10DLC Compliance
        • Brands - Organization
          • Create a brand
          • List all brands
          • Get a brand
          • Update a brand
          • Delete a brand
          • Create a brand vetting
        • Brands - workspace
          • Create a brand
          • List all brands
          • Get a brand
          • Update a brand
          • Delete a brand
          • Create a brand vetting
          • List brand vettings
        • Campaigns
          • Optional: acting as Reseller
          • Create a campaign
          • List all campaigns
          • Get a campaign
          • Update a campaign
          • Delete a campaign
        • TCR Enums
        • Events
      • Toll-Free Numbers Verification API
      • Long Code Numbers
      • Short Code Numbers
      • Alphanumeric Senders
      • Events
  • Know-Your-Customer (KYC) API
    • List KYC forms
    • Get KYC form
    • Create KYC form entry
    • Update KYC form entry
    • List KYC form entries
    • Get a KYC form entry details
  • Reporting API
    • API reference
      • Channel Metrics
      • Flow Run Metrics
      • Wallet Metrics
      • Campaign Metrics
      • Message Metrics
  • Accounts API
    • API reference
      • Current user
        • Change password
        • Presigned upload
        • Memberships
        • Sessions
        • Configurations
          • Groups
            • Keys
      • IAM policies
      • Organizations
        • Upload media
        • Profile
        • Workspaces
        • Users
        • Access keys
        • Organization roles
        • Organization policies
        • Teams
          • Members
        • Approvals
          • Runs
            • Reviews
        • Configurations
          • Groups
            • Keys
      • Region groups
  • Touchpoints API
    • Supported Projects
      • Whatsapp Approved Message Templates
        • Creating WhatsApp Message templates
          • Text template blocks
          • Blocks Documentation
    • API reference
      • Projects
      • Message Templates
  • Notifications API
    • API Reference
      • Webhook subscriptions
        • Create a webhook subscription
        • List available webhook events
        • Get a webhook subscription
        • List webhook subscriptions
        • Update a webhook subscription
        • Delete a webhook subscription
        • Verifying a webhook subscription
        • Webhook subscription logs
  • Knowledge Base (KB) API
    • API reference
      • Documents
      • Folders
        • Import
      • Search
      • Presigned upload
  • Email API
    • Transmissions
  • Connectivity platform migration guide
    • Channels API and Conversations API
    • Migrating conversations API actions
    • Migrating WhatsApp channels
  • Client SDKs
    • Applications
    • Contact Profiles
      • Signed Identity
    • Push notifications
      • Quick Start
      • Subscribe contacts to push notification campaigns
      • Notification Display Priority
    • Event Tracking
      • Quick Start
      • Track Events
        • App
        • Audiences
        • Conference
        • Ecommerce
        • Hospitality
        • Lists
        • Messaging
        • Payments
        • Subscription
        • Suppressions
        • Survey
        • Web
    • App Inbox
      • Quick Start
      • Usage
      • Subscribe contacts to app inbox campaigns
    • SDK Integration
      • Android SDK
        • Notification Interactions
      • Swift SDK
        • Notification Interactions
      • Web SDK
        • Quick Start
        • Usage
        • API Reference
          • IdentityManager
          • BirdSdkApi
          • BirdTracker
            • Ecommerce
            • Conference
            • Messaging
            • Suppressions
            • Subscription
            • Survey
            • Web
            • Audiences
        • Web Push Notifications
          • Notification Interactions
  • Quickstarts
    • Conversations
    • Send an SMS message
    • Send an Email message
    • Send a WhatsApp message
Powered by GitBook
On this page
  • List Available Navigators
  • GETGet list of workspace navigators.
  • Inspect a Navigator
  • GETGet navigator by ID
  • Coverage
  • GETGet navigator coverage by ID
  • Sending messages
  • POSTSend a message
  • Check Navigators Messages Status Reports
  • Configure Webhook Subscriptions
  • Check Incoming Messages
  • GETGet message by message ID
  • Create a Customize Navigator
  • POSTCreate navigator for the workspace.
  • Update a Navigator
  • PATCHUpdate a navigator by ID
  • Delete a Navigator
  • DELETEDelete navigator by ID
  • Check Logs & Insight

Was this helpful?

  1. Channels API
  2. API reference

Navigators

Navigators allow you to send a message via the best of multiple channels.

Last updated 1 month ago

Was this helpful?

Navigator behaviour may vary according to the country you are sending to and the message type. You can see the preferred kind of SMS channels for each scenario here and check any existing navigator in your workspace via the Navigator TAB in the developer dashboard

Navigators only support SMS channels. Other platform channels (WhatsApp, RCS, etc.) will not be included in any message sent via Navigators.

List Available Navigators

Get list of workspace navigators.

get

Get list of the navigators configured for a workspace. Navigators are used to select a channel for a message based on its content, type, recipient, etc. The type of the navigator defines how the channel will be selected.

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

Query parameters
limitinteger · min: 1 · max: 1000Optional

Limits the number of results to return

Default: 10
pageTokenstring · max: 8000Optional

Pagination token that keeps of track of the current position in the list

reversebooleanOptional

Order in which to retrieve the results

Default: false
typestring · enumOptional

The type of navigator defines how the navigator selects a channel for a message. * messaging - navigator configured with a pool of channels and performs channel selection based on channel availability and best originator type for a recipient country. The best originator type for a recipient country is determined by the strategy - prioritized list of originator types for each country. At this moment, the default pre-configured strategy (set of country policies) is used see https://docs.bird.com/applications/channels/channels/supported-channels/sms/concepts/choosing-the-right-sender-availability-and-restrictions-by-country

Possible values:
useCaseTypestring · enumOptionalPossible values:
Responses
200
OK
application/json
Responseall of
404
The request did not pass validation
application/json
get
GET /workspaces/{workspaceId}/navigators HTTP/1.1
Host: 
Authorization: Bearer jwt
Accept: */*
{
  "results": [
    {
      "navigatorId": "123e4567-e89b-12d3-a456-426614174000",
      "workspaceId": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "type": "messaging",
      "settings": {
        "channels": [
          {
            "channelId": "123e4567-e89b-12d3-a456-426614174000"
          }
        ]
      },
      "createdAt": "2025-05-09T04:01:26.763Z",
      "updatedAt": "2025-05-09T04:01:26.763Z"
    }
  ],
  "nextPageToken": "text"
}

By default, each workspace will have 4 navigators.

Please contact our support team if you need a customized navigator added to your workspace. One of our support support agents will coordinate its provisioning

  • Marketing: The primary objective of marketing navigators is to send bulk traffic. They will only attempt delivery via PROMOTIONAL channels, adhering to strict compliance checks, including quiet hours and Opt-Out regulations.

  • Conversation: Conversational navigators consider only two-way CONVERSATIONAL channels, ignoring any one-way channels (such as those using Alphanumeric senders).

  • Transactional: The transactional navigator prioritizes high-quality routes when applying only the minimum required compline check. Transactional navigators will only send traffic from TRANSACTIONAL channels to ensure the best possible Quality of Service.

  • OTP: The 2FA navigator prioritizes deliverability above all. It attempts to send messages via 2FA channels first but will use TRANSACTIONAL channels if none are available, and as a last resort, it will utilize PROMOTIONAL channels.

When sending OTPs, ensure you have either 2FA or transactional channels in your workspace. OTP messages delivered through promotional channels during quiet hours may be delayed until the following day.

Inspect a Navigator

Get navigator by ID

get

Get the navigator by ID

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

navigatorIdstring · uuidRequired

The ID for a navigator

Responses
200
OK
application/json
404
The request did not pass validation
application/json
get
GET /workspaces/{workspaceId}/navigators/{navigatorId} HTTP/1.1
Host: 
Authorization: Bearer jwt
Accept: */*
{
  "navigatorId": "123e4567-e89b-12d3-a456-426614174000",
  "workspaceId": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "type": "messaging",
  "settings": {
    "channels": [
      {
        "channelId": "123e4567-e89b-12d3-a456-426614174000"
      }
    ]
  },
  "createdAt": "2025-05-09T04:01:26.763Z",
  "updatedAt": "2025-05-09T04:01:26.763Z"
}

Coverage

Navigators can access as many countries as there are channels available to them. Coverage may vary over time based on channel availability and health.

You can check a navigator coverage and the channel it will use for each country by clicking on it in the navigator set up page

Get navigator coverage by ID

get

Get the navigator coverage by ID configured for a workspace

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

navigatorIdstring · uuidRequired

The ID for a navigator

Responses
200
OK
application/json
404
The request did not pass validation
application/json
get
GET /workspaces/{workspaceId}/navigators/{navigatorId}/coverage HTTP/1.1
Host: 
Authorization: Bearer jwt
Accept: */*
{
  "ANY_ADDITIONAL_PROPERTY": {
    "identifier": "text",
    "type": "alphaNumeric",
    "originCountry": "text",
    "channelId": "text",
    "coverageQuality": "text"
  }
}

Sending messages

A-Sync : this will start a background process that may require some time to complete. A Get call may be required to to retrieve the final result .

Send a message

post

Send a message to a channel using the navigator. Channel webhooks will provide status updates, so each channel the navigator uses should have webhooks configured. Data returned via webhooks will have navigator metadata, including navigator ID and navigator message ID.

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

navigatorIdstring · uuidRequired

The ID for a navigator

Body
all ofOptional
and
any ofOptional
object · ChannelMessageCreateWithTemplateOptional
or
object · ChannelMessageCreateWithBodyOptional
or
object · NavigatorMessageCreateWithTemplatesOptional
Responses
202
Message was accepted for processing
application/json
Responseall of
and
any ofOptional
or
and
400
The request did not pass validation
application/json
404
The request did not pass validation
application/json
422
The request did not pass validation
application/json
post
POST /workspaces/{workspaceId}/navigators/{navigatorId}/messages HTTP/1.1
Host: 
Authorization: Bearer jwt
Content-Type: application/json
Accept: */*
Content-Length: 3167

{
  "sender": {
    "connector": {
      "identifierValue": "channels@bird.com",
      "annotations": {
        "name": "text"
      }
    }
  },
  "receiver": {
    "contacts": [
      {
        "id": "a1405560-c8d3-4b1a-877d-3f449ad95352",
        "identifierKey": "emailaddress",
        "identifierValue": "channels@bird.com",
        "type": "cc",
        "identifiers": [
          {
            "identifierKey": "emailaddress",
            "identifierValue": "channels@bird.com"
          }
        ],
        "platformAddress": "text",
        "platformAddressSelector": "text"
      }
    ]
  },
  "reference": "my-own-identifier",
  "template": {
    "name": "text",
    "projectId": "a1405560-c8d3-4b1a-877d-3f449ad95352",
    "version": "a1405560-c8d3-4b1a-877d-3f449ad95352",
    "locale": "text",
    "attachments": [
      {
        "mediaUrl": "https://example.com",
        "filename": "text",
        "inline": true
      }
    ],
    "shortLinks": {
      "enabled": true,
      "domain": "text"
    },
    "variables": {
      "default": "text",
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "utmParameters": [
      {
        "key": "text",
        "value": "text"
      }
    ],
    "parameters": [
      {
        "type": "string",
        "key": "text",
        "value": "text"
      }
    ],
    "settings": {
      "useMmLite": true
    }
  },
  "templates": {
    "ANY_ADDITIONAL_PROPERTY": {
      "name": "text",
      "projectId": "a1405560-c8d3-4b1a-877d-3f449ad95352",
      "version": "a1405560-c8d3-4b1a-877d-3f449ad95352",
      "locale": "text",
      "attachments": [
        {
          "mediaUrl": "https://example.com",
          "filename": "text",
          "inline": true
        }
      ],
      "shortLinks": {
        "enabled": true,
        "domain": "text"
      },
      "variables": {
        "default": "text",
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "utmParameters": [
        {
          "key": "text",
          "value": "text"
        }
      ],
      "parameters": [
        {
          "type": "string",
          "key": "text",
          "value": "text"
        }
      ],
      "settings": {
        "useMmLite": true
      }
    }
  },
  "meta": {
    "extraInformation": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "referral": {
      "source": "text",
      "title": "text",
      "text": "text",
      "group": "text",
      "metadata": {
        "source_id": "text",
        "source_url": "text",
        "media_url": "text",
        "tracking_id": "text"
      }
    },
    "order": {
      "products": [
        {
          "externalCatalogId": "text",
          "externalProductId": "text",
          "quantity": 1,
          "price": {
            "amount": 1,
            "exponent": 1,
            "currencyCode": "text"
          }
        }
      ]
    },
    "referredProduct": {
      "externalCatalogId": "text",
      "externalProductId": "text"
    },
    "email": {
      "subject": "text",
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "from": {
        "username": "text",
        "displayName": "text"
      }
    },
    "pushNotifications": {
      "gatewayTypeOverride": "apns"
    },
    "navigatorId": "123e4567-e89b-12d3-a456-426614174000",
    "navigatorMessageId": "123e4567-e89b-12d3-a456-426614174000",
    "flow": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "stepId": "text",
      "runId": "123e4567-e89b-12d3-a456-426614174000"
    },
    "journey": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "stepId": "text",
      "runId": "123e4567-e89b-12d3-a456-426614174000"
    },
    "campaign": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text"
    }
  },
  "replyTo": {
    "id": "text",
    "order": 1,
    "type": "message"
  },
  "body": {
    "type": "text",
    "text": {
      "text": "text",
      "attachments": [
        {
          "mediaUrl": "https://example.com",
          "filename": "text",
          "inline": true
        }
      ],
      "actions": [
        {
          "type": "link",
          "link": {
            "text": "text",
            "url": "text"
          }
        }
      ],
      "metadata": {
        "subject": "text",
        "headers": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "whatsapp": {
          "previewUrl": true
        },
        "line": {
          "emoji": {
            "items": [
              {
                "index": 1,
                "productId": "text",
                "emojiId": "text"
              }
            ]
          }
        },
        "telegram": {
          "parseMode": "Markdown"
        }
      }
    }
  },
  "notification": {
    "url": "text"
  },
  "capFrequency": true,
  "enableLinkTracking": true,
  "ignoreQuietHours": true,
  "ignoreGlobalHoldout": true,
  "tags": [
    "text"
  ],
  "shortLinks": {
    "domain": "text"
  },
  "scheduledFor": "2025-05-09T04:01:26.763Z",
  "validity": 1
}
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "channelId": "123e4567-e89b-12d3-a456-426614174000",
  "sender": {
    "connector": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "identifierValue": "text",
      "annotations": {
        "name": "text"
      },
      "types": [
        "text"
      ]
    }
  },
  "receiver": {
    "connector": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "identifierValue": "text",
      "annotations": {
        "name": "text"
      },
      "types": [
        "text"
      ]
    }
  },
  "meta": {
    "extraInformation": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "referral": {
      "source": "text",
      "title": "text",
      "text": "text",
      "group": "text",
      "metadata": {
        "source_id": "text",
        "source_url": "text",
        "media_url": "text",
        "tracking_id": "text"
      }
    },
    "order": {
      "products": [
        {
          "externalCatalogId": "text",
          "externalProductId": "text",
          "quantity": 1,
          "price": {
            "amount": 1,
            "exponent": 1,
            "currencyCode": "text"
          }
        }
      ]
    },
    "referredProduct": {
      "externalCatalogId": "text",
      "externalProductId": "text"
    },
    "email": {
      "subject": "text",
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "from": {
        "username": "text",
        "displayName": "text"
      }
    },
    "pushNotifications": {
      "gatewayTypeOverride": "apns"
    },
    "navigatorId": "123e4567-e89b-12d3-a456-426614174000",
    "navigatorMessageId": "123e4567-e89b-12d3-a456-426614174000",
    "flow": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "stepId": "text",
      "runId": "123e4567-e89b-12d3-a456-426614174000"
    },
    "journey": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "stepId": "text",
      "runId": "123e4567-e89b-12d3-a456-426614174000"
    },
    "campaign": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text"
    }
  },
  "reference": "my-own-identifier",
  "parts": [
    {
      "platformReference": "text"
    }
  ],
  "status": "accepted",
  "reason": "text",
  "direction": "incoming",
  "origin": {
    "type": "text",
    "id": "text"
  },
  "replyTo": {
    "id": "text",
    "order": 1,
    "type": "message"
  },
  "lastStatusAt": "2025-05-09T04:01:26.763Z",
  "createdAt": "2025-05-09T04:01:26.763Z",
  "updatedAt": "2025-05-09T04:01:26.763Z",
  "details": "text",
  "failure": {
    "code": 1,
    "description": "Unsupported media type",
    "source": {
      "code": "text",
      "name": "text"
    }
  },
  "tags": [
    "text"
  ],
  "shortLinks": {
    "domain": "text"
  },
  "scheduledFor": "2025-05-09T04:01:26.763Z",
  "body": {
    "type": "text",
    "text": {
      "text": "text",
      "attachments": [
        {
          "mediaUrl": "https://example.com",
          "filename": "text",
          "inline": true
        }
      ],
      "actions": [
        {
          "type": "link",
          "link": {
            "text": "text",
            "url": "text"
          }
        }
      ],
      "metadata": {
        "subject": "text",
        "headers": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "whatsapp": {
          "previewUrl": true
        },
        "line": {
          "emoji": {
            "items": [
              {
                "index": 1,
                "productId": "text",
                "emojiId": "text",
                "length": 1
              }
            ]
          }
        },
        "telegram": {
          "parseMode": "Markdown"
        }
      }
    }
  },
  "templates": {
    "ANY_ADDITIONAL_PROPERTY": {
      "name": "text",
      "projectId": "a1405560-c8d3-4b1a-877d-3f449ad95352",
      "version": "a1405560-c8d3-4b1a-877d-3f449ad95352",
      "locale": "text",
      "attachments": [
        {
          "mediaUrl": "https://example.com",
          "filename": "text",
          "inline": true
        }
      ],
      "shortLinks": {
        "enabled": true,
        "domain": "text"
      },
      "variables": {
        "default": "text",
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "utmParameters": [
        {
          "key": "text",
          "value": "text"
        }
      ],
      "parameters": [
        {
          "type": "string",
          "key": "text",
          "value": "text"
        }
      ],
      "settings": {
        "useMmLite": true
      }
    }
  },
  "navigatorData": {
    "attempts": [
      {
        "channelId": "123e4567-e89b-12d3-a456-426614174000",
        "messageId": "123e4567-e89b-12d3-a456-426614174000",
        "platformId": "text",
        "sender": "text",
        "attempt": 1,
        "createdAt": "2025-05-09T04:01:26.763Z",
        "status": "accepted",
        "failure": {
          "code": 1,
          "description": "Unsupported media type",
          "source": {
            "code": "text",
            "name": "text"
          }
        }
      }
    ]
  }
}

The navigator message will contain navigator metadata, including.

Navigator information

providing UUID relevant to both the navigator objection and the navigator message objects

    "meta": {
        "navigatorId": "5f40c7f0-5904-4d68-8840-a1a5dc3e36c3",
        "navigatorMessageId": "5ec65d4f-53b0-45f8-8f83-b177f976b3e3"
    },

Attempts

Navigator may attempt to send messages via more than one channel. attempts will list and providing information about all channels a navigator used when handling a given message

    "navigatorData": {
        "attempts": [
            {
                "channelId": "6f50cd25-d416-44d3-bf63-de88a60129d0",
                "messageId": "3ecadc0d-cf7c-4b2a-90bc-fed5a3f6a26e",
                "attempt": 1,
                "status": "accepted",
                "createdAt": "2024-07-18T14:04:18.214Z"
            }

You can get messages sent to a navigator by making a request to the channel endpoint that accepted the message based on the response above

Check Navigators Messages Status Reports

To receive status reports about messages, you will need webhook subscriptions. You can create the via UI

Configure Webhook Subscriptions

Navigators Webhooks

We recommend subscribing at least to navigator.outbound. Navigator event will provide you information about any fallback as well the status of your navigator messages.

Note: Navigator message status reflects the final outcome of all delivery attempts made by the Navigator. For example, if a WhatsApp delivery fails but the fallback via SMS succeeds, the navigator message status will be marked as "Delivered."

{"service": "channels",
  "event": "navigator.outbound",
  "payload": {
    "id": "00000000-0000-0000-0000-100000000000",
    "navigatorId": {navigatorI},
    "reference": "",
"attempts": [
            {
                "channelId": {channelId},
                "platformId": "rcs-google",
                "messageId": "00000000-0000-0000-0000-000000000000",
                "attempt": 1,
                "status": "sending_failed",
                "createdAt": "2024-12-24T09:52:54.524Z"
            },
            {
                "channelId": {channelId},
                "platformId": "whatsapp",
                "messageId": "00000000-0000-0000-0000-000000000001",
                "attempt": 2,
                "status": "sending_failed",
                "createdAt": "2024-12-24T09:52:54.524Z",
                "failure": {
                    "code": 12006,
                    "description": "Invalid message",
                    "source": {
                        "name": "pre-processing"
                    }
                }
            },
            {
                "channelId": {channelId},
                "platformId": "sms-messagebird",
                "messageId": "00000000-0000-0000-0000-000000000002",
                "attempt": 3,
                "status": "delivered",
                "createdAt": "2024-12-24T09:52:54.524Z"
            }
        ],
    "status": "delivered",
    "createdAt": "2024-12-24T09:52:54.524Z",
    "updatedAt": "2024-12-24T09:52:55.855Z"
  }
}

Optional: channel Webhooks

If you are interested in diving deep on specific attempts status you can also subscribe to sms.outbound and one for whatsapp.outbound . When doing so you will be able to retrieve the navigator ID and navigator message id in the meta field.

 "meta": {
      "navigatorId": "91af46ab-70ba-5152-a611-812cad0fbd71",
      "navigatorMessageId": "defe9d3b-9cea-4585-9f67-2a4f1d93101a"
    }

Check Incoming Messages

If you've only sent SMS messages before—especially if you haven’t operated in the U.S.—you’ve likely only used a one-way channel. WhatsApp, however, is a two-way channel by design, so users may try to contact you there. When using a Navigator to send both SMS and r WhatsApp traffic, it’s essential to monitor incoming messages to avoid missing user inquiries. Ignoring users can lead to frustration and could result in them reporting your channel to Meta, potentially causing suspension.

Programmatically

You can subscribe to sms.inbound and whatsapp.inbound event to capture all incoming messages in your workspace

NOTE incoming messages will not be linked to a navigator and will nto have the navigator information in the meta field

Via UI

If you navigate to the customer service section of our side panel you can find all incoming conversations in the entry corresponding to yours SMS or WhatsApp channels.

Get message by message ID

get

Get a channel message

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

messageIdstring · uuidRequired

The ID for a message

channelIdstring · uuidRequired

The ID for a channel

Responses
200
OK
application/json
Responseall of
and
any ofOptional
or
404
The request did not pass validation
application/json
get
GET /workspaces/{workspaceId}/channels/{channelId}/messages/{messageId} HTTP/1.1
Host: 
Authorization: Bearer jwt
Accept: */*
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "channelId": "123e4567-e89b-12d3-a456-426614174000",
  "sender": {
    "connector": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "identifierValue": "text",
      "annotations": {
        "name": "text"
      },
      "types": [
        "text"
      ]
    }
  },
  "receiver": {
    "connector": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "identifierValue": "text",
      "annotations": {
        "name": "text"
      },
      "types": [
        "text"
      ]
    }
  },
  "meta": {
    "extraInformation": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "referral": {
      "source": "text",
      "title": "text",
      "text": "text",
      "group": "text",
      "metadata": {
        "source_id": "text",
        "source_url": "text",
        "media_url": "text",
        "tracking_id": "text"
      }
    },
    "order": {
      "products": [
        {
          "externalCatalogId": "text",
          "externalProductId": "text",
          "quantity": 1,
          "price": {
            "amount": 1,
            "exponent": 1,
            "currencyCode": "text"
          }
        }
      ]
    },
    "referredProduct": {
      "externalCatalogId": "text",
      "externalProductId": "text"
    },
    "email": {
      "subject": "text",
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "from": {
        "username": "text",
        "displayName": "text"
      }
    },
    "pushNotifications": {
      "gatewayTypeOverride": "apns"
    },
    "navigatorId": "123e4567-e89b-12d3-a456-426614174000",
    "navigatorMessageId": "123e4567-e89b-12d3-a456-426614174000",
    "flow": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "stepId": "text",
      "runId": "123e4567-e89b-12d3-a456-426614174000"
    },
    "journey": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "stepId": "text",
      "runId": "123e4567-e89b-12d3-a456-426614174000"
    },
    "campaign": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text"
    }
  },
  "reference": "my-own-identifier",
  "parts": [
    {
      "platformReference": "text"
    }
  ],
  "status": "accepted",
  "reason": "text",
  "direction": "incoming",
  "origin": {
    "type": "text",
    "id": "text"
  },
  "replyTo": {
    "id": "text",
    "order": 1,
    "type": "message"
  },
  "lastStatusAt": "2025-05-09T04:01:26.763Z",
  "createdAt": "2025-05-09T04:01:26.763Z",
  "updatedAt": "2025-05-09T04:01:26.763Z",
  "details": "text",
  "failure": {
    "code": 1,
    "description": "Unsupported media type",
    "source": {
      "code": "text",
      "name": "text"
    }
  },
  "tags": [
    "text"
  ],
  "shortLinks": {
    "domain": "text"
  },
  "scheduledFor": "2025-05-09T04:01:26.763Z",
  "body": {
    "type": "text",
    "text": {
      "text": "text",
      "attachments": [
        {
          "mediaUrl": "https://example.com",
          "filename": "text",
          "inline": true
        }
      ],
      "actions": [
        {
          "type": "link",
          "link": {
            "text": "text",
            "url": "text"
          }
        }
      ],
      "metadata": {
        "subject": "text",
        "headers": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "whatsapp": {
          "previewUrl": true
        },
        "line": {
          "emoji": {
            "items": [
              {
                "index": 1,
                "productId": "text",
                "emojiId": "text",
                "length": 1
              }
            ]
          }
        },
        "telegram": {
          "parseMode": "Markdown"
        }
      }
    }
  }
}

Create a Customize Navigator

If you want to limit the selection of channels a navigator can access, you can create a customized one.

Create navigator for the workspace.

post

Create a new navigator for the workspace.

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

Body
namestring · min: 1 · max: 100Required

The name of the navigator.

typestring · enumRequired

The type of navigator defines how the navigator selects a channel for a message. * messaging - navigator configured with a pool of channels and performs channel selection based on channel availability and best originator type for a recipient country. The best originator type for a recipient country is determined by the strategy - prioritized list of originator types for each country. At this moment, the default pre-configured strategy (set of country policies) is used see https://docs.bird.com/applications/channels/channels/supported-channels/sms/concepts/choosing-the-right-sender-availability-and-restrictions-by-country

Possible values:
settingsone ofRequired
Responses
201
Created
application/json
404
The request did not pass validation
application/json
409
The request did not pass validation
application/json
422
The request did not pass validation
application/json
post
POST /workspaces/{workspaceId}/navigators HTTP/1.1
Host: 
Authorization: Bearer jwt
Content-Type: application/json
Accept: */*
Content-Length: 113

{
  "name": "text",
  "type": "messaging",
  "settings": {
    "channels": [
      {
        "channelId": "123e4567-e89b-12d3-a456-426614174000"
      }
    ]
  }
}
{
  "navigatorId": "123e4567-e89b-12d3-a456-426614174000",
  "workspaceId": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "type": "messaging",
  "settings": {
    "channels": [
      {
        "channelId": "123e4567-e89b-12d3-a456-426614174000"
      }
    ]
  },
  "createdAt": "2025-05-09T04:01:26.763Z",
  "updatedAt": "2025-05-09T04:01:26.763Z"
}

Update a Navigator

You can add or remove channels from a navigator

Update a navigator by ID

patch

Update a navigator by ID

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

navigatorIdstring · uuidRequired

The ID for a navigator

Body
namestring · min: 1 · max: 100Required

The name of the navigator.

typestring · enumRequired

The type of navigator defines how the navigator selects a channel for a message. * messaging - navigator configured with a pool of channels and performs channel selection based on channel availability and best originator type for a recipient country. The best originator type for a recipient country is determined by the strategy - prioritized list of originator types for each country. At this moment, the default pre-configured strategy (set of country policies) is used see https://docs.bird.com/applications/channels/channels/supported-channels/sms/concepts/choosing-the-right-sender-availability-and-restrictions-by-country

Possible values:
settingsone ofOptional
or
Responses
204
OK
404
The request did not pass validation
application/json
patch
PATCH /workspaces/{workspaceId}/navigators/{navigatorId} HTTP/1.1
Host: 
Authorization: Bearer jwt
Content-Type: application/json
Accept: */*
Content-Length: 113

{
  "name": "text",
  "type": "messaging",
  "settings": {
    "channels": [
      {
        "channelId": "123e4567-e89b-12d3-a456-426614174000"
      }
    ]
  }
}

No content

Delete a Navigator

Delete navigator by ID

delete

Delete the navigator by ID

Authorizations
Path parameters
workspaceIdstring · uuidRequired

The ID of the workspace

navigatorIdstring · uuidRequired

The ID for a navigator

Responses
204
OK
404
The request did not pass validation
application/json
delete
DELETE /workspaces/{workspaceId}/navigators/{navigatorId} HTTP/1.1
Host: 
Authorization: Bearer jwt
Accept: */*

No content

Check Logs & Insight

You can check SMS and Log insight separately via the relevant SMS and WhatsApp tabs in our developer view, you can also use the dedicated Navigator logs, which does allow the tracking of attempts and fallbacks

The Navigators POST request follows the same schema and requires the same body as the request

channels POST