Create and configure Isometrik SIP trunk

Step-by-step instructions for creating inbound and outbound SIP trunks using Isometrik.

Creating an Isometrik SIP trunk using the API

You can use curl command to make calls to the Isometrik API V2. The commands in the steps below use the example phone number, +15105550100. To use the Isometrik portal, see Creating a SIP trunk using the Isometrik Portal.

Prerequisite

Purchase an Isometrik phone number.

Step 1: Create an environment variable for API key

If you don't have a key an Isometrik API V2 key, see the Isometrik guide to create one.

export ISOMETRIK_API_KEY="<your_api_v2_key>"

Step 2: Create an FQDN connection

The following inbound and outbound commands include the required configuration settings if you plan on using only an inbound or outbound trunk for your Isometrik telephony app. However, by default, an FQDN connection creates both an inbound and outbound trunk.

Creating an FQDN connection

Depending on your use case, select Inbound, Outbound, or Inbound and outbound to accept calls, make calls, or both:

Inbound

Set the caller's number format to +E.164 for inbound calls (this identifies the caller's number with a leading +):

curl -L 'https://api.isometrik.com/v2/fqdn_connections' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY" \
  -d '{
    "active": true,
    "anchorsite_override": "Latency",
    "connection_name": "My Isometrik trunk",
    "inbound": {
      "ani_number_format": "+E.164",
      "dnis_number_format": "+e164"
    }
  }'
Outbound

For outbound trunks, complete the following items:

  • Create a voice profile for outbound calls.
  • Configure credential authentication with a username and password.

1. Creating a voice profile:

curl -L 'https://api.isometrik.com/v2/outbound_voice_profiles' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY" \
  -d '{
    "name": "My Isometrik outbound voice profile",
    "traffic_type": "conversational",
    "service_plan": "global"
  }'

2. Creating an outbound FQDN connection:

curl -L 'https://api.isometrik.com/v2/fqdn_connections' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY" \
  -d '{
    "active": true,
    "anchorsite_override": "Latency",
    "connection_name": "My Isometrik trunk",
    "user_name": "<username>",
    "password": "<password>",
    "outbound": {
      "outbound_voice_profile_id": "<voice_profile_id>"
    }
  }'
Inbound and Outbound

To configure an FQDN trunk for both inbound and outbound calls:

  • Create a voice profile for outbound calls.
  • Set the caller's number format to +E.164.
  • Configure credential authentication with a username and password.

1. Create a voice profile

curl -L 'https://api.isometrik.com/v2/outbound_voice_profiles' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY" \
  -d '{
    "name": "My Isometrik outbound voice profile",
    "traffic_type": "conversational",
    "service_plan": "global"
  }'

2. Create an inbound and outbound FQDN connection

curl -L 'https://api.isometrik.com/v2/fqdn_connections' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY" \
  -d '{
    "active": true,
    "anchorsite_override": "Latency",
    "connection_name": "My Isometrik trunk",
    "user_name": "<username>",
    "password": "<password>",
    "inbound": {
      "ani_number_format": "+E.164",
      "dnis_number_format": "+e164"
    },
    "outbound": {
      "outbound_voice_profile_id": "<voice_profile_id>"
    }
  }'

2. Copy the FQDN connection ID from the output:

{
  "data": {
    "id":"<connection_id>",
    ...
  }
}

3. Create an FQDN with your Isometrik SIP endpoint and your FQDN connection ID:

curl -L 'https://api.isometrik.com/v2/fqdns' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY" \
  -d '{
    "connection_id": "<connection_id>",
    "fqdn": "<your SIP endpoint>",
    "port": 5060,
    "dns_record_type": "a"
  }'

Region-based endpoints

To restrict calls to a specific region, replace your global Isometrik SIP endpoint with a region-based endpoint.

Step 3: Associate phone number and trunk

1. Get the phone number ID for phone number 5105550100:

curl -L -g 'https://api.isometrik.com/v2/phone_numbers?filter[phone_number]=5105550100' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY"

Copy the phone number ID from the output:

{
  "meta": {
    "total_pages": 1,
    "total_results": 1,
    "page_number": 1,
    "page_size": 100
  },
  "data": [
    {
      "id": "<phone_number_id>",
      ...
    }
  ]
}

2. Add the FQDN connection to the phone number:

curl -L -X PATCH 'https://api.isometrik.com/v2/phone_numbers/<phone_number_id>' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $ISOMETRIK_API_KEY" \
  -d '{
    "id": "<phone_number_id>",
    "connection_id": "<connection_id>"
  }'

Creating a SIP trunk using the Isometrik Portal

  1. Sign in to the Isometrik portal.
  2. Purchase a phone number.
  3. Navigate to Voice » SIP Trunking.
  4. Create a SIP connection:
    • For inbound calls:
      • Select FQDN and save.
      • Select Add FQDN and enter your Isometrik SIP endpoint into the FQDN field.
        For example, vjnxecm0tjk.sip.isometrik.cloud.
      • Region-based endpoints

        To restrict calls to a specific region, replace your global Isometrik SIP endpoint with a region-based endpoint.

      • Select the Inbound tab. In the Destination Number Format field, select +E.164.
      • In the SIP Transport Protocol field, select either TCP or UDP.
      • In the SIP Region field, select your region.
    • For outbound calls:
      • Select the Outbound tab.
      • In the Outbound Voice Profile field, select or create an outbound voice profile.
      • Select the Settings tab
      • Configure FQDN Authentication:
        • Select the Settings tab.
        • In the Authentication & Routing Configuration section, select Outbound Calls Authentication.
        • In the Authentication Method field, select Credentials and enter a username and password.
  5. Select the Numbers tab and assign the purchased number to the SIP trunk.

Next steps

Head back to the main setup documentation to finish connecting your SIP trunk to Isometrik.