Inboxes
Connect channels and choose where conversations enter your Flownally workspace.
8 generated endpoints in this resource group.
/inboxesGet inboxes#
Returns the connected channels that can send or receive customer messages in this workspace. Use an inbox ID as the sender when starting outbound messages.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:list
Allowed roles
- owner
- admin
- agent
List inboxes in the workspace.
Responses
- Name
200- Type
- application/json
- Description
- List of inboxes
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X GET "https://api.flownally.com/v1/inboxes" \
-H "Authorization: Bearer {token}"Response
{
"inboxes": [
{
"id": "ibx_01HV8Y4QH7C8H1K5K0C8A2B9E4",
"createdAt": "2026-04-30T09:00:00Z",
"updatedAt": "2026-04-30T09:10:00Z",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"channel": "whatsapp",
"externalId": "112233445566778",
"createdBy": "usr_01HV8Y3K2R6G7K3F5B9N8M1Q0",
"name": "Support WhatsApp",
"teamId": "team_01HV8Y6W0W4T5A8S9V7Q2P1M3",
"status": {
"state": "degraded",
"reasons": [
"payment_issue"
]
},
"config": {
"phoneNumberId": "112233445566778"
}
}
]
}/inboxesCreate inbox#
Connects one or more channel resources and makes them available as Flownally inboxes.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:create
Allowed roles
- owner
- admin
Create an inbox in the workspace.
Request body
Send a application/json body. The body is required for this operation.
Responses
- Name
200- Type
- application/json
- Description
- Inbox created successfully
- Name
default- Type
- application/json
- Description
- Error
Related schemas
- Inbox
- InboxStatus
- InboxStatusState
- InboxStatusReason
- ProblemDetails
- FieldViolation
- Window
- CreateInboxRequest
- CreateWhatsAppInboxRequest
- WhatsAppInboxRequest
- CreateMessengerInboxRequest
- MessengerInboxRequest
- CreateInstagramInboxRequest
- InstagramInboxRequest
- CreateTextIncInboxRequest
- TextIncInboxRequest
- CreateTwilioInboxRequest
- TwilioInboxRequest
- CreateInboxResponse
Request
curl -X POST "https://api.flownally.com/v1/inboxes" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"whatsapp": {
"resourceIds": [
"123456789012345"
],
"phoneNumberIds": [
"112233445566778"
]
}
}'Response
{
"inboxes": [
{
"id": "ibx_01HV8Y4QH7C8H1K5K0C8A2B9E4",
"createdAt": "2026-04-30T09:00:00Z",
"updatedAt": "2026-04-30T09:10:00Z",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"channel": "whatsapp",
"externalId": "112233445566778",
"createdBy": "usr_01HV8Y3K2R6G7K3F5B9N8M1Q0",
"name": "Support WhatsApp",
"teamId": "team_01HV8Y6W0W4T5A8S9V7Q2P1M3",
"status": {
"state": "active",
"reasons": []
},
"config": {
"phoneNumberId": "112233445566778"
}
}
]
}/inboxes/{id}Delete inbox#
Removes an inbox from the workspace so it can no longer receive or send messages.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:delete
Allowed roles
- owner
- admin
Delete an inbox in the workspace.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Responses
- Name
204- Description
- Inbox deleted successfully
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X DELETE "https://api.flownally.com/v1/inboxes/{id}" \
-H "Authorization: Bearer {token}"Response
204 Inbox deleted successfully/inboxes/{id}/teamAssign team to inbox#
Routes new conversations from this inbox to the selected team.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:update
Allowed roles
- owner
- admin
Assign a team to an inbox.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Request body
Send a application/json body. The body is required for this operation.
Required attributes
- Name
teamId- Type
- string
- Description
- Required request attribute.
Responses
- Name
200- Type
- application/json
- Description
- Team set
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X PUT "https://api.flownally.com/v1/inboxes/{id}/team" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"teamId": "team_01HV8Y6W0W4T5A8S9V7Q2P1M3"
}'Response
{
"id": "ibx_01HV8Y4QH7C8H1K5K0C8A2B9E4",
"createdAt": "2026-04-30T09:00:00Z",
"updatedAt": "2026-04-30T09:10:00Z",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"channel": "whatsapp",
"externalId": "112233445566778",
"createdBy": "usr_01HV8Y3K2R6G7K3F5B9N8M1Q0",
"name": "Support WhatsApp",
"teamId": "team_01HV8Y6W0W4T5A8S9V7Q2P1M3",
"status": {
"state": "active",
"reasons": []
},
"config": {
"phoneNumberId": "112233445566778"
}
}/inboxes/{id}/teamClear team from inbox#
Removes team routing so conversations use the workspace fallback.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:update
Allowed roles
- owner
- admin
Clear team assignment from an inbox.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Responses
- Name
200- Type
- application/json
- Description
- Team cleared
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X DELETE "https://api.flownally.com/v1/inboxes/{id}/team" \
-H "Authorization: Bearer {token}"Response
{
"id": "ibx_01HV8Y4QH7C8H1K5K0C8A2B9E4",
"createdAt": "2026-04-30T09:00:00Z",
"updatedAt": "2026-04-30T09:10:00Z",
"tenantId": "tn_01HV8Y1N3QPY9X2HBQ1M9E8D0",
"channel": "whatsapp",
"externalId": "112233445566778",
"createdBy": "usr_01HV8Y3K2R6G7K3F5B9N8M1Q0",
"name": "Support WhatsApp",
"teamId": "team_01HV8Y6W0W4T5A8S9V7Q2P1M3",
"status": {
"state": "active",
"reasons": []
},
"config": {
"phoneNumberId": "112233445566778"
}
}/inboxes/{id}/whatsapp/templatesList WhatsApp templates#
Returns approved and pending WhatsApp templates available for this inbox. Use template names and languages from this response when sending `template` message content.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:read
Allowed roles
- owner
- admin
- agent
List WhatsApp templates for an inbox.
Required parameters
- Name
id- Type
- path string
- Description
- Required parameter.
Optional parameters
- Name
pageSize- Type
- query integer
- Description
- Number of templates to return. Defaults to 100 and is capped at 1000.
- Name
pageToken- Type
- query string
- Description
- Token returned as `nextPageToken` from the previous page.
Responses
- Name
200- Type
- application/json
- Description
- List of WhatsApp templates
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -G "https://api.flownally.com/v1/inboxes/{id}/whatsapp/templates" \
-H "Authorization: Bearer {token}" \
-d pageSize="{pageSize}" \
-d pageToken="{pageToken}"Response
{
"templates": [
{
"id": "987654321",
"name": "order_ready",
"language": "en",
"status": "APPROVED",
"category": "UTILITY",
"components": [
{
"type": "BODY",
"text": "Hi {{1}}, your order {{2}} is ready for pickup."
}
]
}
]
}/whatsapp/{wabaId}/phone-numbersList WABA phone numbers#
Returns WhatsApp phone numbers that can be connected as Flownally inboxes.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:create
Allowed roles
- owner
- admin
List WhatsApp phone numbers available for inbox creation.
Required parameters
- Name
wabaId- Type
- path string
- Description
- Required parameter.
Responses
- Name
200- Type
- application/json
- Description
- List of phone numbers
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X GET "https://api.flownally.com/v1/whatsapp/{wabaId}/phone-numbers" \
-H "Authorization: Bearer {token}"Response
{
"phoneNumbers": [
{
"id": "112233445566778",
"displayPhoneNumber": "+48 123 456 789",
"verifiedName": "Flownally Support",
"qualityRating": "GREEN",
"codeVerificationStatus": "VERIFIED",
"isRegistered": true
}
]
}/twilio/{accountSid}/phone-numbersList Twilio phone numbers#
Returns Twilio sender phone numbers available for installation as Flownally inboxes.
Authorization
Scheme
- bearerAuth
Required scopes
- inbox:create
Allowed roles
- owner
- admin
List Twilio phone numbers available for inbox creation.
Required parameters
- Name
accountSid- Type
- path string
- Description
- Required parameter.
Request body
Send a application/json body. The body is required for this operation.
Required attributes
- Name
authToken- Type
- string
- Description
- Twilio Auth Token.
Responses
- Name
200- Type
- application/json
- Description
- List of Twilio phone numbers
- Name
default- Type
- application/json
- Description
- Error
Related schemas
Request
curl -X POST "https://api.flownally.com/v1/twilio/{accountSid}/phone-numbers" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"authToken": "string"
}'Response
{
"pendingCredentialId": "pcr_01HZXM3E2WMK7Q1R8Y9Z2A3B4C",
"phoneNumbers": [
{
"phoneNumberSid": "PN1234567890abcdef1234567890abcdef",
"phoneNumber": "+15557650000",
"friendlyName": "Support",
"capabilities": {
"sms": true,
"mms": true,
"voice": false
}
}
]
}