18 Transport Connections

18.1 Get Transport Connection

GET https://<HOST>:<PORT>/api/transportConnections/get?version=0

Returns detailed information about the selected transport connection.

Required Permissions

  • API

  • Configuration Mode Read Access

Request parameters

  • id

    The identifier or display name of the transport connection.

Response Body Structure

The response body is structured as StandardTransportConnection JSON object. A description for its fields is at section 27.24.1. For the JSON schema refer to section 27.24.2.

Example

GET http://127.0.0.1:8110/api/transportConnections/get?id=2ff1cbb9-3481-415d-b0d5-cd81011e83a5&version=0
HTTP Response
HTTP/1.1 200 OK
HTTP Response Body
{
  "proxy": {
    "iri": "sip:test.test",
    "options": true,
    "optionsNextHop": true,
    "omitInitialRouteSet": true,
    "flow": true
  },
  "authenticationEnabled": true,
  "credentials": {
    "authenticationProfileId": "2c2bba75-eade-45f7-8119-0d0fb36dda00",
    "username": "user"
  },
  "displayName": "test_connection",
  "registration": {
    "sipDomain": "sip:sip.domain",
    "addressOfRecord": "sip:registration.aor"
  },
  "id": "2ff1cbb9-3481-415d-b0d5-cd81011e83a5",
  "type": "STANDARD"
}

18.2 Create Standard Transport Connection

PUT https://<HOST>:<PORT>/api/transportConnections/addStandard?version=0

Creates a new standard transport connection.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • displayName

    The display name of the new transport connection.

Request Body Structure

The request body is structured as StandardTransportConnection JSON object. A description for its fields is at section 27.24.1. For the JSON schema refer to section 27.24.2.

Response Body Structure

The response body is structured as StandardTransportConnection JSON object. A description for its fields is at section 27.24.1. For the JSON schema refer to section 27.24.2.

Example

PUT http://127.0.0.1:8110/api/transportConnections/addStandard?displayName=test_connection&version=0
HTTP Request Body
{
  "proxy": {
    "iri": "sip:test.test",
    "options": true,
    "optionsNextHop": true,
    "omitInitialRouteSet": true,
    "flow": true
  },
  "credentials": {
    "password": "pw",
    "username": "user"
  },
  "registration": {
    "sipDomain": "sip:sip.domain",
    "addressOfRecord": "sip:registration.aor"
  },
  "authencationEnabled": true
}
HTTP Response Body
{
  "proxy": {
    "iri": "sip:test.test",
    "options": true,
    "optionsNextHop": true,
    "omitInitialRouteSet": true,
    "flow": true
  },
  "authenticationEnabled": true,
  "credentials": {
    "authenticationProfileId": "ffb818ac-93cf-44e6-8f32-f7f9db689a01",
    "username": "user"
  },
  "displayName": "test_connection",
  "registration": {
    "sipDomain": "sip:sip.domain",
    "addressOfRecord": "sip:registration.aor"
  },
  "id": "17c5ed82-2523-4b10-9a30-0a9404960532",
  "type": "STANDARD"
}

18.3 Add Plain Transport Connection

PUT https://<HOST>:<PORT>/api/transportConnections/addPlain?version=0

Creates a new plain transport connection.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • displayName

    The display name of the new transport connection.

Request Body Structure

The request body is structured as PlainTransportConnection JSON object. A description for its fields is at section 27.25.1. For the JSON schema refer to section 27.25.2.

Response Body Structure

The response body is structured as PlainTransportConnection JSON object. A description for its fields is at section 27.25.1. For the JSON schema refer to section 27.25.2.

Example

PUT http://127.0.0.1:8111/api/transportConnections/addPlain?displayName=test&version=0
HTTP Request Body
{
  "transportErrorFlags": ["TERMINATE_INCOMING"],
  "assertedUri": {
    "iri": "sip:test",
    "displayName": "test"
  },
  "initialRouteSet": [{"iri": "sip:qwe"}],
  "statusCodesErrorFlags": [{
    "errorHandling": ["TERMINATE_INCOMING"],
    "statusCode": "501"
  }],
  "optionsErrorFlags": ["DOWN"],
  "uri": {
    "iri": "sip:iri",
    "displayName": "displayName"
  },
  "properties": ["FLOW"],
  "sipTransport": "ea384604-80cf-4906-82f2-c75f44094e0c",
  "timeoutErrorFlags": ["FAILOVER"],
  "authentication": {
    "password": "qwe",
    "username": "asd"
  }
}
HTTP Response
HTTP/1.1 200 OK
HTTP Response Body
{
  "transportErrorFlags": ["TERMINATE_INCOMING"],
  "displayName": "test",
  "initialRouteSet": [],
  "type": "PLAIN",
  "optionsErrorFlags": ["DOWN"],
  "uri": {
    "iri": "sip:iri",
    "displayName": "displayName"
  },
  "timeoutErrorFlags": ["TERMINATE_INCOMING"],
  "assertedUri": {
    "iri": "sip:test",
    "displayName": "test"
  },
  "statusCodesErrorFlags": [{
    "errorHandling": ["TERMINATE_INCOMING"],
    "statusCode": "501"
  }],
  "id": "e440dc06-1dee-4cc6-adc3-248a1762be7b",
  "properties": ["FLOW"],
  "sipTransport": "ea384604-80cf-4906-82f2-c75f44094e0c",
  "authentication": {
    "authenticationProfileId": "390800f2-4ac5-49cb-a81f-ca2b22832ede",
    "username": "asd"
  }
}

18.4 Add Load Balancing Transport Connection

PUT https://<HOST>:<PORT>/api/transportConnections/addSipLoadBalancing?version=0

Create a new load balancing transport connection.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • displayName

    The display name of the new transport connection.

Request Body Structure

The request body is structured as SipLoadBalancingTransportConnection JSON object. A description for its fields is at section 27.26.1. For the JSON schema refer to section 27.26.2.

Response Body Structure

The response body is structured as SipLoadBalancingTransportConnection JSON object. A description for its fields is at section 27.26.1. For the JSON schema refer to section 27.26.2.

Example

PUT http://127.0.0.1:8111/api/transportConnections/addSipLoadBalancing?displayName=test%20Load%20Balancer&version=0
HTTP Request Body
{
  "targets": [{
    "routeId": "b1223e77-5844-403a-b263-e8088a8056ee",
    "defaultLoad": "HIGH",
    "targetIriFlags": [
      "USER_INFO",
      "USER_PARAMETER"
    ]
  }],
  "properties": [
    "FAILOVER",
    "SEQUENTIAL_FAILOVER",
    "REDIRECT_INVITE",
    "REDIRECT_NOTIFY",
    "REDIRECT_OPTIONS",
    "REDIRECT_REFER",
    "REDIRECT_REGISTER"
  ]
}
HTTP Response
HTTP/1.1 200 OK
HTTP Response Body
{
  "displayName": "test Load Balancer",
  "id": "82ecb718-ca77-45d9-98e9-dd0415117cfa",
  "type": "LOAD_BALANCING",
  "targets": [{
    "routeId": "b1223e77-5844-403a-b263-e8088a8056ee",
    "defaultLoad": "HIGH",
    "targetIriFlags": [
      "USER_INFO",
      "USER_PARAMETER"
    ]
  }],
  "properties": [
    "FAILOVER",
    "SEQUENTIAL_FAILOVER",
    "REDIRECT_INVITE",
    "REDIRECT_NOTIFY",
    "REDIRECT_OPTIONS",
    "REDIRECT_REFER",
    "REDIRECT_REGISTER"
  ]
}

18.5 Add SIP Registration As Transport Connection

PUT https://<HOST>:<PORT>/api/transportConnections/addSipRegistrar?version=0

Creates a new SIP registration.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • displayName

    The display name of the new SIP registration.

Request Body Structure

The request body is structured as SipRegistrationAsTransportConnection JSON object. A description for its fields is at section 27.27.1. For the JSON schema refer to section 27.27.2.

Response Body Structure

The response body is structured as SipRegistrationAsTransportConnection JSON object. A description for its fields is at section 27.27.1. For the JSON schema refer to section 27.27.2.

Example

PUT http://127.0.0.1:8111/api/transportConnections/addSipRegistrar?displayName=test%20SIP%20reg&version=0
HTTP Request Body
{
  "innerTransportConnectionId": "b1223e77-5844-403a-b263-e8088a8056ee",
  "registrar": "sip:test",
  "assertedUri": {
    "iri": "sip:test",
    "displayName": "test"
  },
  "sipUserAgentStackId": "f115606a-be1f-4f60-8e1f-0c74e48d2bed",
  "authentication": {
    "password": "qwe",
    "username": "asd"
  },
  "aorUri": {
    "iri": "sip:aor",
    "displayName": "aorDn"
  }
}
HTTP Response
HTTP/1.1 200 OK
HTTP Response Body
{
  "innerTransportConnectionId": "b1223e77-5844-403a-b263-e8088a8056ee",
  "registrar": "sip:test",
  "displayName": "test SIP reg",
  "assertedUri": {
    "iri": "sip:test",
    "displayName": "test"
  },
  "id": "015f7c60-f3f7-4d14-a597-65f47ac1e479",
  "type": "SIP_REGISTRATION",
  "sipUserAgentStackId": "f115606a-be1f-4f60-8e1f-0c74e48d2bed",
  "authentication": {
    "authenticationProfileId": "08f0cbbd-0e79-4f76-b278-5b381650f106",
    "username": "asd"
  },
  "aorUri": {
    "iri": "sip:aor",
    "displayName": "aorDn"
  }
}

18.6 Add SRV Load Balancer

PUT https://<HOST>:<PORT>/api/transportConnections/addSrvLoadBalancer?version=0

Creates a new SRV Load Balancer.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • displayName

    The display name of the new transport connection.

Request Body Structure

The request body is structured as SrvLoadBalancer JSON object. A description for its fields is at section 27.28.1. For the JSON schema refer to section 27.28.2.

Response Body Structure

The response body is structured as SrvLoadBalancer JSON object. A description for its fields is at section 27.28.1. For the JSON schema refer to section 27.28.2.

Example

PUT http://127.0.0.1:8111/api/transportConnections/addSrvLoadBalancer?displayName=srv%20test&version=0
HTTP Request Body
{
  "domain": "qwe.asd",
  "transportProtocol": "TLS",
  "sipTransportId": "ea384604-80cf-4906-82f2-c75f44094e0c",
  "targetTemplateOptions": {
    "transportErrorFlags": ["TERMINATE_INCOMING"],
    "statusCodesErrorFlags": [{
      "errorHandling": ["TERMINATE_INCOMING"],
      "statusCode": "501"
    }],
    "optionsErrorFlags": ["DOWN"],
    "properties": ["FLOW"],
    "timeoutErrorFlags": ["FAILOVER"]
  }
}
HTTP Response
HTTP/1.1 200 OK
HTTP Response Body
{
  "displayName": "srv test",
  "domain": "qwe.asd",
  "transportProtocol": "TLS",
  "sipTransportId": "ea384604-80cf-4906-82f2-c75f44094e0c",
  "targetTemplateOptions": {
    "transportErrorFlags": ["TERMINATE_INCOMING"],
    "statusCodesErrorFlags": [{
      "errorHandling": ["TERMINATE_INCOMING"],
      "statusCode": "501"
    }],
    "optionsErrorFlags": ["DOWN"],
    "properties": ["FLOW"],
    "timeoutErrorFlags": ["TERMINATE_INCOMING"]
  },
  "id": "316608c3-699e-4bf9-b8ae-3d8ce8da5752",
  "type": "SRV_LOAD_BALANCER"
}

18.7 Remove Transport Connection

DELETE https://<HOST>:<PORT>/api/transportConnections/remove?version=0

Removes a transport connection from the current configuration.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • transportConnection

    The id of the transport connection.

  • force

    If set to true the transport connection and it's referenced objects will be removed, even if it is referenced by other objects.

Example

DELETE http://127.0.0.1:8111/api/transportConnections/remove?transportConnection=fa6f5ae7-38c9-44f4-a427-107e4068305b&force=true&version=0
HTTP Response
HTTP/1.1 200 OK

18.8 Get Authentication

GET https://<HOST>:<PORT>/api/transportConnections/authentication/get?version=0

Returns the authentication configuration of the requested transport connection.

Required Permissions

  • API

  • Configuration Mode Read Access

Request parameters

  • transportConnection

    The id of the Transport Connection..

Response Body Structure

The response body is structured as SipCredentials JSON object. A description for its fields is at section 27.29.1. For the JSON schema refer to section 27.29.2.

Example

GET http://127.0.0.1:8110/api/transportConnections/authentication/get?transportConnection=17c5ed82-2523-4b10-9a30-0a9404960532&version=0
HTTP Response Body
{
  "authenticationProfileId": "ffb818ac-93cf-44e6-8f32-f7f9db689a01",
  "username": "user"
}

18.9 Set Authentication

PUT https://<HOST>:<PORT>/api/transportConnections/authentication/set?version=0

Modifies the username and password of the selected transport connection.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • transportConnection

    The id of the transport connection.

Request Body Structure

The request body is structured as Credentials JSON object. A description for its fields is at section 27.30.1. For the JSON schema refer to section 27.30.2.

Response Body Structure

The response body is structured as SipCredentials JSON object. A description for its fields is at section 27.29.1. For the JSON schema refer to section 27.29.2.

Example

PUT http://127.0.0.1:8110/api/transportConnections/authentication/set?transportConnection=17c5ed82-2523-4b10-9a30-0a9404960532&version=0
HTTP Request Body
{
  "password": "pw",
  "username": "user"
}
HTTP Response Body
{
  "authenticationProfileId": "ffb818ac-93cf-44e6-8f32-f7f9db689a01",
  "username": "user"
}

18.10 Get Asserted URI

GET https://<HOST>:<PORT>/api/transportConnections/assertedUri/get?version=0

Returns the asserted URI of the selected transport connection.

Required Permissions

  • API

  • Configuration Mode Read Access

Request parameters

  • transportConnection

    The id of the transport connection.

Response Body Structure

The response body is structured as AssertedUri JSON object. A description for its fields is at section 27.31.1. For the JSON schema refer to section 27.31.2.

Example

GET http://127.0.0.1:8110/api/transportConnections/assertedUri/get?transportConnection=17c5ed82-2523-4b10-9a30-0a9404960532&version=0

18.11 Set Asserted URI

PUT https://<HOST>:<PORT>/api/transportConnections/assertedUri/set?version=0

Modifies the asserted URI of the selected transport connection.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • transportConnection

    The id of the transport connection

Request Body Structure

The request body is structured as AssertedUri JSON object. A description for its fields is at section 27.31.1. For the JSON schema refer to section 27.31.2.

Response Body Structure

The response body is structured as AssertedUri JSON object. A description for its fields is at section 27.31.1. For the JSON schema refer to section 27.31.2.

Example

PUT http://127.0.0.1:8110/api/transportConnections/assertedUri/set?transportConnection=17c5ed82-2523-4b10-9a30-0a9404960532&version=0
HTTP Request Body
{
  "iri": "sip:asserted.uri",
  "displayName": "display.name"
}
HTTP Response Body
{
  "iri": "sip:asserted.uri",
  "displayName": "display.name"
}

18.12 Get Address of Record

GET https://<HOST>:<PORT>/api/transportConnections/addressOfRecord/get?version=0

Returns the Address of Record for the selected transport connection

Required Permissions

  • API

  • Configuration Mode Read Access

Request parameters

  • transportConnection

    The id of the transport connection.

Response Body Structure

The response body is structured as AssertedUri JSON object. A description for its fields is at section 27.31.1. For the JSON schema refer to section 27.31.2.

Example

GET http://127.0.0.1:8110/api/transportConnections/addressOfRecord/get?transportConnection=17c5ed82-2523-4b10-9a30-0a9404960532&version=0
HTTP Response Body
{"iri": "sip:registration.aor"}

18.13 Set Address of Record

PUT https://<HOST>:<PORT>/api/transportConnections/addressOfRecord/set?version=0

Modifies the transport connection of the requested node.

Required Permissions

  • API

  • Configuration Mode Read/Write Access

Request parameters

  • transportConnection

    The id of the transport connection.

Request Body Structure

The request body is structured as AssertedUri JSON object. A description for its fields is at section 27.31.1. For the JSON schema refer to section 27.31.2.

Response Body Structure

The response body is structured as AssertedUri JSON object. A description for its fields is at section 27.31.1. For the JSON schema refer to section 27.31.2.

Example

PUT http://127.0.0.1:8110/api/transportConnections/addressOfRecord/set?transportConnection=17c5ed82-2523-4b10-9a30-0a9404960532&version=0
HTTP Request Body
{
  "iri": "sip:aor",
  "displayName": "display.name"
}
HTTP Response Body
{"iri": "sip:aor"}