Sign inGet started

Channels management

Retrieving channels

Retrieve list of channels

GET
/workspaces/{workspaceId}/channels
Get the channels configured for a workspace
Parametry zapytania
limit
integer
Limits the number of results to return.
pageToken
string
The cursor that keeps track of the current position in the results.
reverse
boolean
Reverses the order in which the results are returned.
platform
Filter based on platform name
conferencial
boolean
Filter based on conferencial flag
onlyMyChannels
boolean
Filter only channels I have access to
status
Filter based on channel status
useCaseType
string
Possible values: otp, transactional, marketing, conversation
channelIds
array
Filter based on channel IDs
resourceOwnerId
array
Filter based on resource owner IDs
resourceOwnerIdentifier
array
Filter based on resource owner identifiers
suite
array
Filter entities by Suite
Treść odpowiedzi
results
array of object
Pokaż atrybuty podrzędne
results.id
string
wymagane
results.platformId
string
wymagane
results.name
string
wymagane
results.connectorId
string
wymagane
results.identifier
string
results.status
string
wymagane
Possible values: pending, setting-up, active, inactive, failed, deleted, warning
results.contactIdentifierKeyOverride
string
results.contactIdentifierFormatOverride
object
Pokaż atrybuty podrzędne
results.contactIdentifierFormatOverride.type
string
Possible values: none, pattern, phonenumber, emailaddress
results.contactIdentifierFormatOverride.pattern
string
results.platformServiceUrlOverride
string
results.platformServiceVersionOverride
string
Possible values: 1.0
results.platformServiceProtocolOverride
string
Possible values: http, https
results.platformMessageJsonSchemaOverride
object
results.platformTemplateEngineOverride
string
Possible values: default, liquid
results.capabilities
object
Pokaż atrybuty podrzędne
results.capabilities.messaging
object
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging
object
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.displayName
string
results.capabilities.messaging.messaging.status
string
wymagane
results.capabilities.messaging.messaging.name
string
wymagane
results.capabilities.messaging.messaging.version
number
wymagane
results.capabilities.messaging.messaging.updatedAt
string
wymagane
results.capabilities.messaging.messaging.createdAt
string
wymagane
results.capabilities.messaging.messaging.expiresAt
string
results.capabilities.messaging.messaging.outgoing
object
wymagane
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.outgoing.displayName
string
results.capabilities.messaging.messaging.outgoing.status
string
wymagane
results.capabilities.messaging.messaging.outgoing.name
string
wymagane
results.capabilities.messaging.messaging.outgoing.version
number
results.capabilities.messaging.messaging.outgoing.updatedAt
string
results.capabilities.messaging.messaging.outgoing.createdAt
string
results.capabilities.messaging.messaging.outgoing.expiresAt
string
results.capabilities.messaging.messaging.outgoing.mms
object
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.outgoing.mms.displayName
string
results.capabilities.messaging.messaging.outgoing.mms.status
string
wymagane
results.capabilities.messaging.messaging.outgoing.mms.name
string
wymagane
results.capabilities.messaging.messaging.outgoing.mms.version
number
wymagane
results.capabilities.messaging.messaging.outgoing.mms.paused
boolean
results.capabilities.messaging.messaging.outgoing.mms.updatedAt
string
wymagane
results.capabilities.messaging.messaging.outgoing.mms.createdAt
string
wymagane
results.capabilities.messaging.messaging.outgoing.mms.expiresAt
string
results.capabilities.messaging.messaging.outgoing.media
object
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.outgoing.media.textFallback
object
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.outgoing.media.textFallback.displayName
string
results.capabilities.messaging.messaging.outgoing.media.textFallback.status
string
wymagane
results.capabilities.messaging.messaging.outgoing.media.textFallback.name
string
wymagane
results.capabilities.messaging.messaging.outgoing.media.textFallback.version
number
wymagane
results.capabilities.messaging.messaging.outgoing.media.textFallback.paused
boolean
results.capabilities.messaging.messaging.outgoing.media.textFallback.updatedAt
string
wymagane
results.capabilities.messaging.messaging.outgoing.media.textFallback.createdAt
string
wymagane
results.capabilities.messaging.messaging.outgoing.media.textFallback.expiresAt
string
results.capabilities.messaging.messaging.outgoing.mmLite
object
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.outgoing.mmLite.displayName
string
results.capabilities.messaging.messaging.outgoing.mmLite.status
string
wymagane
results.capabilities.messaging.messaging.outgoing.mmLite.name
string
wymagane
results.capabilities.messaging.messaging.outgoing.mmLite.version
number
wymagane
results.capabilities.messaging.messaging.outgoing.mmLite.paused
boolean
results.capabilities.messaging.messaging.outgoing.mmLite.updatedAt
string
wymagane
results.capabilities.messaging.messaging.outgoing.mmLite.createdAt
string
wymagane
results.capabilities.messaging.messaging.outgoing.mmLite.expiresAt
string
results.capabilities.messaging.messaging.incoming
object
wymagane
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.incoming.displayName
string
results.capabilities.messaging.messaging.incoming.status
string
wymagane
results.capabilities.messaging.messaging.incoming.name
string
wymagane
results.capabilities.messaging.messaging.incoming.version
number
results.capabilities.messaging.messaging.incoming.updatedAt
string
results.capabilities.messaging.messaging.incoming.createdAt
string
results.capabilities.messaging.messaging.incoming.expiresAt
string
results.capabilities.messaging.messaging.incoming.mms
object
Pokaż atrybuty podrzędne
results.capabilities.messaging.messaging.incoming.mms.displayName
string
results.capabilities.messaging.messaging.incoming.mms.status
string
wymagane
results.capabilities.messaging.messaging.incoming.mms.name
string
wymagane
results.capabilities.messaging.messaging.incoming.mms.version
number
wymagane
results.capabilities.messaging.messaging.incoming.mms.paused
boolean
results.capabilities.messaging.messaging.incoming.mms.updatedAt
string
wymagane
results.capabilities.messaging.messaging.incoming.mms.createdAt
string
wymagane
results.capabilities.messaging.messaging.incoming.mms.expiresAt
string
results.capabilities.voice
object
Pokaż atrybuty podrzędne
results.capabilities.voice.voice
object
Pokaż atrybuty podrzędne
results.capabilities.voice.voice.displayName
string
results.capabilities.voice.voice.status
string
wymagane
results.capabilities.voice.voice.name
string
wymagane
results.capabilities.voice.voice.version
number
wymagane
results.capabilities.voice.voice.updatedAt
string
wymagane
results.capabilities.voice.voice.createdAt
string
wymagane
results.capabilities.voice.voice.expiresAt
string
results.capabilities.voice.voice.recording
object
wymagane
Pokaż atrybuty podrzędne
results.capabilities.voice.voice.recording.displayName
string
results.capabilities.voice.voice.recording.status
string
wymagane
results.capabilities.voice.voice.recording.name
string
wymagane
results.capabilities.voice.voice.recording.version
number
wymagane
results.capabilities.voice.voice.recording.paused
boolean
results.capabilities.voice.voice.recording.updatedAt
string
wymagane
results.capabilities.voice.voice.recording.createdAt
string
wymagane
results.capabilities.voice.voice.recording.expiresAt
string
results.settings
array of object
Pokaż atrybuty podrzędne
results.settings.key
string
wymagane
results.settings.value
string
wymagane
results.settings.displayName
string
results.settings.description
string
results.settings.visibility
string
Possible values: public, internal, secret
results.connectionParams
array of object
Pokaż atrybuty podrzędne
results.connectionParams.key
string
wymagane
results.connectionParams.value
string
wymagane
results.connectionParams.displayName
string
results.connectionParams.description
string
results.connectionParams.visibility
string
Possible values: public, internal, secret
results.preferences
object
Pokaż atrybuty podrzędne
results.preferences.disableProfileFetching
boolean
When enabled, it skips fetching the sender profile details on incoming messages, and, therefore, contacts won't have profile details (first name, last name, display name, country, etc.). In case this preference is not provided during channel creation, the PII strategy defined in the workspace will be used.
results.preferences.explicitMarketingOptOut
boolean
When enabled, if a contact does not have a subscription attribute set for the corresponding platform, the contact will be treated as if it were subscribed when messaged through this channel. In case this preference is not provided during channel creation, the default value will be false.
results.preferences.trackAdInitiatedThreads
When enabled, it tracks the threads initiated by advertisements. In case this preference is not provided during channel creation, the default value will be false.
results.preferences.ignoreSuppressionChecks
boolean
When enabled, it skips the suppression checks for the messages sent through this channel. In case this preference is not provided during channel creation, the default value will be false.
results.preferences.isPrivate
boolean
When enabled, it allows the channel to be marked as private - that is, the items which arrive via it, should, in turn, be marked as private.
results.preferences.disallowMmLite
boolean
When enabled, Cloud API is used to send marketing messages.
results.useCaseId
string
results.useCaseType
string
Possible values: transactional, marketing, conversation
results.channelMessageType
string
Possible values: promotional, 2fa, conversational, transactional, emergency
results.suites
array of string
results.resourceOwners
object
The map of resource owners that are allowed to use this channel. Example: { "resourceOwnerIdentifier1": { "id": "resourceOwnerUUID1", "type": "user" }, "resourceOwnerIdentifier2": { "id": "resourceOwnerUUID2", "type": "group" } }
results.createdAt
string
wymagane
results.updatedAt
string
nextPageToken
string
The token that can be passed as pageToken in URL to retrieve the next set of results. If missing, no more results to display.
Przykład kodu
curl -X GET 'https://api.bird.com/workspaces/{workspaceId}/channels' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'

Retrieve a specific channel

GET
/workspaces/{workspaceId}/channels/{channelId}
Retrieve a specific workspace channel
Treść odpowiedzi
id
string
wymagane
platformId
string
wymagane
name
string
wymagane
connectorId
string
wymagane
identifier
string
status
string
wymagane
Possible values: pending, setting-up, active, inactive, failed, deleted, warning
contactIdentifierKeyOverride
string
contactIdentifierFormatOverride
object
Pokaż atrybuty podrzędne
contactIdentifierFormatOverride.type
string
Possible values: none, pattern, phonenumber, emailaddress
contactIdentifierFormatOverride.pattern
string
platformServiceUrlOverride
string
platformServiceVersionOverride
string
Possible values: 1.0
platformServiceProtocolOverride
string
Possible values: http, https
platformMessageJsonSchemaOverride
object
platformTemplateEngineOverride
string
Possible values: default, liquid
capabilities
object
Pokaż atrybuty podrzędne
capabilities.messaging
object
Pokaż atrybuty podrzędne
capabilities.messaging.messaging
object
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.displayName
string
capabilities.messaging.messaging.status
string
wymagane
capabilities.messaging.messaging.name
string
wymagane
capabilities.messaging.messaging.version
number
wymagane
capabilities.messaging.messaging.updatedAt
string
wymagane
capabilities.messaging.messaging.createdAt
string
wymagane
capabilities.messaging.messaging.expiresAt
string
capabilities.messaging.messaging.outgoing
object
wymagane
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.outgoing.displayName
string
capabilities.messaging.messaging.outgoing.status
string
wymagane
capabilities.messaging.messaging.outgoing.name
string
wymagane
capabilities.messaging.messaging.outgoing.version
number
capabilities.messaging.messaging.outgoing.updatedAt
string
capabilities.messaging.messaging.outgoing.createdAt
string
capabilities.messaging.messaging.outgoing.expiresAt
string
capabilities.messaging.messaging.outgoing.mms
object
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.outgoing.mms.displayName
string
capabilities.messaging.messaging.outgoing.mms.status
string
wymagane
capabilities.messaging.messaging.outgoing.mms.name
string
wymagane
capabilities.messaging.messaging.outgoing.mms.version
number
wymagane
capabilities.messaging.messaging.outgoing.mms.paused
boolean
capabilities.messaging.messaging.outgoing.mms.updatedAt
string
wymagane
capabilities.messaging.messaging.outgoing.mms.createdAt
string
wymagane
capabilities.messaging.messaging.outgoing.mms.expiresAt
string
capabilities.messaging.messaging.outgoing.media
object
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.outgoing.media.textFallback
object
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.outgoing.media.textFallback.displayName
string
capabilities.messaging.messaging.outgoing.media.textFallback.status
string
wymagane
capabilities.messaging.messaging.outgoing.media.textFallback.name
string
wymagane
capabilities.messaging.messaging.outgoing.media.textFallback.version
number
wymagane
capabilities.messaging.messaging.outgoing.media.textFallback.paused
boolean
capabilities.messaging.messaging.outgoing.media.textFallback.updatedAt
string
wymagane
capabilities.messaging.messaging.outgoing.media.textFallback.createdAt
string
wymagane
capabilities.messaging.messaging.outgoing.media.textFallback.expiresAt
string
capabilities.messaging.messaging.outgoing.mmLite
object
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.outgoing.mmLite.displayName
string
capabilities.messaging.messaging.outgoing.mmLite.status
string
wymagane
capabilities.messaging.messaging.outgoing.mmLite.name
string
wymagane
capabilities.messaging.messaging.outgoing.mmLite.version
number
wymagane
capabilities.messaging.messaging.outgoing.mmLite.paused
boolean
capabilities.messaging.messaging.outgoing.mmLite.updatedAt
string
wymagane
capabilities.messaging.messaging.outgoing.mmLite.createdAt
string
wymagane
capabilities.messaging.messaging.outgoing.mmLite.expiresAt
string
capabilities.messaging.messaging.incoming
object
wymagane
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.incoming.displayName
string
capabilities.messaging.messaging.incoming.status
string
wymagane
capabilities.messaging.messaging.incoming.name
string
wymagane
capabilities.messaging.messaging.incoming.version
number
capabilities.messaging.messaging.incoming.updatedAt
string
capabilities.messaging.messaging.incoming.createdAt
string
capabilities.messaging.messaging.incoming.expiresAt
string
capabilities.messaging.messaging.incoming.mms
object
Pokaż atrybuty podrzędne
capabilities.messaging.messaging.incoming.mms.displayName
string
capabilities.messaging.messaging.incoming.mms.status
string
wymagane
capabilities.messaging.messaging.incoming.mms.name
string
wymagane
capabilities.messaging.messaging.incoming.mms.version
number
wymagane
capabilities.messaging.messaging.incoming.mms.paused
boolean
capabilities.messaging.messaging.incoming.mms.updatedAt
string
wymagane
capabilities.messaging.messaging.incoming.mms.createdAt
string
wymagane
capabilities.messaging.messaging.incoming.mms.expiresAt
string
capabilities.voice
object
Pokaż atrybuty podrzędne
capabilities.voice.voice
object
Pokaż atrybuty podrzędne
capabilities.voice.voice.displayName
string
capabilities.voice.voice.status
string
wymagane
capabilities.voice.voice.name
string
wymagane
capabilities.voice.voice.version
number
wymagane
capabilities.voice.voice.updatedAt
string
wymagane
capabilities.voice.voice.createdAt
string
wymagane
capabilities.voice.voice.expiresAt
string
capabilities.voice.voice.recording
object
wymagane
Pokaż atrybuty podrzędne
capabilities.voice.voice.recording.displayName
string
capabilities.voice.voice.recording.status
string
wymagane
capabilities.voice.voice.recording.name
string
wymagane
capabilities.voice.voice.recording.version
number
wymagane
capabilities.voice.voice.recording.paused
boolean
capabilities.voice.voice.recording.updatedAt
string
wymagane
capabilities.voice.voice.recording.createdAt
string
wymagane
capabilities.voice.voice.recording.expiresAt
string
settings
array of object
Pokaż atrybuty podrzędne
settings.key
string
wymagane
settings.value
string
wymagane
settings.displayName
string
settings.description
string
settings.visibility
string
Possible values: public, internal, secret
connectionParams
array of object
Pokaż atrybuty podrzędne
connectionParams.key
string
wymagane
connectionParams.value
string
wymagane
connectionParams.displayName
string
connectionParams.description
string
connectionParams.visibility
string
Possible values: public, internal, secret
preferences
object
Pokaż atrybuty podrzędne
preferences.disableProfileFetching
boolean
When enabled, it skips fetching the sender profile details on incoming messages, and, therefore, contacts won't have profile details (first name, last name, display name, country, etc.). In case this preference is not provided during channel creation, the PII strategy defined in the workspace will be used.
preferences.explicitMarketingOptOut
boolean
When enabled, if a contact does not have a subscription attribute set for the corresponding platform, the contact will be treated as if it were subscribed when messaged through this channel. In case this preference is not provided during channel creation, the default value will be false.
preferences.trackAdInitiatedThreads
When enabled, it tracks the threads initiated by advertisements. In case this preference is not provided during channel creation, the default value will be false.
preferences.ignoreSuppressionChecks
boolean
When enabled, it skips the suppression checks for the messages sent through this channel. In case this preference is not provided during channel creation, the default value will be false.
preferences.isPrivate
boolean
When enabled, it allows the channel to be marked as private - that is, the items which arrive via it, should, in turn, be marked as private.
preferences.disallowMmLite
boolean
When enabled, Cloud API is used to send marketing messages.
useCaseId
string
useCaseType
string
Possible values: transactional, marketing, conversation
channelMessageType
string
Possible values: promotional, 2fa, conversational, transactional, emergency
suites
array of string
resourceOwners
object
The map of resource owners that are allowed to use this channel. Example: { "resourceOwnerIdentifier1": { "id": "resourceOwnerUUID1", "type": "user" }, "resourceOwnerIdentifier2": { "id": "resourceOwnerUUID2", "type": "group" } }
createdAt
string
wymagane
updatedAt
string
Przykład kodu
curl -X GET 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'

Check if customer service window is open

For some channels it is only possible to send non template messages if the customer service window is open. The following endpoint will return the expiry time for any active service windows
GET
/workspaces/{workspaceId}/channels/{channelId}/contacts/{contactId}
Retrieve channel information for a given contact.
Parametry zapytania
contactIdentifierValue
string
The receiver identifier value.
Treść odpowiedzi
serviceWindowExpireAt
string
wymagane
isPermanentSession
boolean
metadata
object
Przykład kodu
curl -X GET 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}/contacts/{contactId}' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'