InvergeDocs

Voice

Calls, legs, IVR, transfers, devices, presence and quality.

SDK-facing in-call operations: quality reporting, transfer, conference moderation.

SDK-facing Nexus Voice control plane (API-key authenticated). The tenant is ALWAYS the authenticated environment — never taken from the body. Grants, room, identity and caller-ID are all decided server-side.

POST /partner/voice/calls

POST 201 x-api-key

Body — CreateCallDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/calls' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "direction": "inbound",
      "applicationId": "string",
      "proxyIdentityId": "string"
    }'

POST /partner/voice/conference/mute

POST 200 x-api-key

Body — ConferenceMuteDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/conference/mute' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "legId": "string",
      "muted": true
    }'

POST /partner/voice/conference/remove

POST 200 x-api-key

Body — ConferenceRemoveDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/conference/remove' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string",
      "legId": "string"
    }'

POST /partner/voice/devices

POST 200 x-api-key

Body — RegisterDeviceDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/devices' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "identityId": "string",
      "deviceId": "string",
      "platform": "ios"
    }'

POST /partner/voice/dtmf

POST 202 x-api-key

Body — DtmfDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/dtmf' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string",
      "legId": "string",
      "digit": "string"
    }'

POST /partner/voice/ivr/advance

POST 200 x-api-key

Body — IvrStepDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/ivr/advance' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string"
    }'

POST /partner/voice/ivr/input

POST 200 x-api-key

Body — IvrInputDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/ivr/input' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string",
      "digit": "string"
    }'

POST /partner/voice/ivr/start

POST 201 x-api-key

Body — StartIvrDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/ivr/start' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "flowId": "string"
    }'

POST /partner/voice/legs

POST 201 x-api-key

Add a leg. For webrtc legs we ensure the media room and return a scoped join bundle (media token + TURN). SIP/PSTN legs are dialed by the media/carrier plane (Phase 3) — here the leg is created + fraud-authorized.

Body — AddLegDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/legs' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string",
      "role": "caller",
      "endpointType": "webrtc"
    }'

POST /partner/voice/legs/answer

POST 200 x-api-key

Body — LegActionDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/legs/answer' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "legId": "string"
    }'

POST /partner/voice/legs/hangup

POST 200 x-api-key

Body — HangupDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/legs/hangup' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "legId": "string"
    }'

POST /partner/voice/legs/hold

POST 200 x-api-key

Body — LegActionDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/legs/hold' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "legId": "string"
    }'

POST /partner/voice/legs/resume

POST 200 x-api-key

Body — LegActionDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/legs/resume' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "legId": "string"
    }'

POST /partner/voice/legs/ring

POST 200 x-api-key

Body — LegActionDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/legs/ring' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "legId": "string"
    }'

POST /partner/voice/presence

POST 200 x-api-key

Body — PresenceDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/presence' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "identityId": "string",
      "deviceId": "string",
      "status": "ONLINE"
    }'

POST /partner/voice/quality

POST 202 x-api-key

Body — QualityDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/quality' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string"
    }'

POST /partner/voice/transfer/blind

POST 200 x-api-key

Body — TransferBlindDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/transfer/blind' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string",
      "legId": "string",
      "targetType": "webrtc"
    }'

POST /partner/voice/transfer/warm/cancel

POST 200 x-api-key

Body — TransferWarmFinishDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/transfer/warm/cancel' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "otherPartyLegId": "string",
      "legId": "string"
    }'

POST /partner/voice/transfer/warm/complete

POST 200 x-api-key

Body — TransferWarmFinishDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/transfer/warm/complete' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "otherPartyLegId": "string",
      "legId": "string"
    }'

POST /partner/voice/transfer/warm/start

POST 200 x-api-key

Body — TransferWarmStartDto

Prop

Type

Request
curl -X POST 'https://services.inverge.net/partner/voice/transfer/warm/start' \
  -H 'x-api-key: nxs_live_xxx' \
  -H 'content-type: application/json' \
  -d '{
      "sessionId": "string",
      "otherPartyLegId": "string",
      "targetType": "webrtc"
    }'

On this page