Skip to main content
POST
/
api
/
v2
/
platform
/
telephony
/
bridges
/
{slug}
/
connect-provider
Connect Provider to Bridge
curl --request POST \
  --url http://localhost:3001/api/v2/platform/telephony/bridges/{slug}/connect-provider/ \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --header 'Org-Handle: <org-handle>' \
  --data '
{
  "provider_config_id": 1,
  "phone_number": "+1234567890"
}
'
{
  "status_code": 200,
  "message": "Provider connected to bridge successfully.",
  "data": {
    "message": "Provider connected successfully",
    "bridge_slug": "sales-bridge-001",
    "phone_number": "+1234567890"
  }
}
{
  "status_code": 200,
  "message": "Provider connected to bridge successfully.",
  "data": {
    "message": "Provider connected successfully",
    "bridge_slug": "sales-bridge-001",
    "phone_number": "+1234567890"
  }
}

Connect Provider to Bridge

Connect a telephony provider configuration to a specific bridge, linking a phone number to the bridge for call routing. This enables inbound and outbound calls through the connected provider.
Prerequisites: Make sure you have your API Token, Org-Handle, a configured Bridge, and a Provider Configuration ready. See Authentication for details.
The provider_config_id must be a valid provider configuration already created for your organization. You can only use a phone_number that is linked to the provider account.

Path Parameters

NameTypeRequiredDescription
slugstringYesUnique bridge slug
You can get the bridge slug by hitting the Get All Bridges API. The slug field in the response is your Bridge Slug.

Headers

NameTypeRequiredDescription
AuthorizationstringYesAPI Key format: Token <token>
Org-HandlestringYesOrganization domain handle
Content-TypestringYesapplication/json
You can get the Org-Handle by hitting the Get All Organizations API. The domain_handle field in the response is your Org-Handle.

Request Body

FieldTypeRequiredDescription
provider_config_idintegerYesID of the provider configuration to connect
phone_numberstringYesPhone number (E.164 format) to assign to the bridge

Response Fields

FieldTypeDescription
status_codeintegerHTTP status code
messagestringResponse message
dataobjectConnection result

Data Object Fields

FieldTypeDescription
messagestringSuccess message
bridge_slugstringThe bridge slug the provider connected to
phone_numberstringThe phone number assigned to the bridge

Common Error Codes

Status CodeDescription
200Success - Provider connected successfully
400Bad Request - Invalid provider ID or phone number
401Unauthorized - Invalid or missing API token
403Forbidden - Invalid organization handle
404Not Found - Bridge not found
500Internal Server Error - Server-side error

Code Examples

const axios = require('axios');

const headers = {
  'Authorization': 'Token your-api-token',
  'Org-Handle': 'your-org-handle',
  'Content-Type': 'application/json'
};

// Connect a provider to a bridge
const connectProviderToBridge = async (slug, providerConfigId, phoneNumber) => {
  const response = await axios.post(
    `https://unpod.dev/api/v2/platform/telephony/bridges/${slug}/connect-provider/`,
    { provider_config_id: providerConfigId, phone_number: phoneNumber },
    { headers }
  );
  console.log(`Provider connected to bridge: ${response.data.data.bridge_slug}`);
  console.log(`Phone number assigned: ${response.data.data.phone_number}`);
  return response.data.data;
};

// Example usage
connectProviderToBridge('sales-bridge-001', 42, '+1234567890');

Best Practices

  1. Provider Config ID: Get the correct provider_config_id from Get All Providers before connecting
  2. Phone Number Format: Use E.164 format (e.g., +1234567890) for phone numbers
  3. Verify Bridge: Confirm the bridge exists using Get Bridge by Slug before connecting
  4. One Provider per Bridge: A bridge typically connects to one provider — verify current state before re-connecting
  5. Error Handling: Handle 400 errors that may indicate an invalid phone number or provider config
  6. Security: Keep API tokens secure and rotate them regularly

Authorizations

Authorization
string
header
required

Format: Token

Headers

Org-Handle
string
required

Organization domain handle

Example:

"unpod"

Path Parameters

slug
string
required
Example:

"sales-bridge"

Body

application/json
provider_config_id
integer
required
Example:

1

phone_number
string
required
Example:

"+1234567890"

Response

Provider connected to bridge