# Update a voice application

Endpoint: PUT /voice/application
Version: 3.0.0
Security: bearerAuth, apiKeyAuth

## Security:

  - `bearerAuth` (unknown)
    http bearer Token

  - `apiKeyAuth` (unknown)
    apiKey in header Key

## Query parameters:

  - `appId` (string)
    Voice application id

## Request fields (application/json):

  - `appId` (string)
    Voice application Id; required on update, generated by system on create

  - `provider` (string)
    Telephony provider; required on create, not accepted on update

  - `accountSid` (string)
    Account SID; read-only, set by system. Not accepted on create or update

  - `name` (string)
    Name of Voice Application

  - `phoneNumber` (string)
    Phone number of Voice Application

  - `secondaryPhoneNumbers` (array)
    Secondary phone numbers of Voice Application

  - `voiceAccountId` (string)
    Voice Account Id of Voice Application

  - `description` (string)
    Description of Voice Application

  - `country` (string)
    Country of Voice Application

  - `dndCheckRequired` (array)
    DND checks of Voice Application

  - `dtmfTimeoutSeconds` (integer)
    DTMF timeout seconds of Voice Application

  - `speechTimeoutSeconds` (integer)
    Speech timeout seconds of Voice Application

  - `externalCaseUrlTemplate` (string)
    External case URL template of Voice Application

  - `callerSipDomain` (string)
    Caller SIP domain of Voice Application

  - `contactSipDomain` (string)
    Contact SIP domain of Voice Application

  - `fromNumberSipHeaderKey` (string)
    From number SIP header key of Voice Application

  - `ivrProcessId` (string)
    IVR process Id of Voice Application

  - `supervisorEligibleForAcwOnBargeIn` (boolean)
    Whether supervisor is eligible for ACW on barge in

  - `fallbackAcwId` (string)
    Fallback ACW Id of Voice Application

  - `callerIds` (array)
    Caller IDs of Voice Application

  - `callEventWorkflowIvrId` (string)
    Call event workflow IVR Id of Voice Application

  - `byocTrunkId` (string)
    BYOC trunk ID; supported providers: Twilio, Sprinklr

  - `outboundWaitMessage` (string)
    Outbound wait message; supported providers: Twilio, Ozonetel

  - `providerDomain` (string)
    Provider domain; supported provider: Sprinklr

  - `jitterBufferSize` (string)
    Jitter buffer size; supported provider: Sprinklr

  - `locationSipContext` (string)
    Location SIP context; supported provider: Ozonetel

## Response 200:

  - `200` (unknown)
    Success

## Response 200 fields (application/json):

  - `data` (object)

  - `errors` (array)

  - `errors.id` (string, required)
    24-character hex ObjectId

  - `errors.code` (integer, required)

  - `errors.message` (string, required)
    Dotted error key (e.g. account.not.found)

  - `metadata` (object)

## Response 400:

  - `400` (unknown)
    Bad request

## Response 400 fields (application/json):

  - `data` (object)

  - `errors` (array)

  - `errors.id` (string, required)
    24-character hex ObjectId

  - `errors.code` (integer, required)

  - `errors.message` (string, required)
    Dotted error key (e.g. account.not.found)

  - `metadata` (object)

## Response 401:

  - `401` (unknown)
    Missing or invalid authentication

## Response 401 fields (application/json):

  - `data` (object)

  - `errors` (array)

  - `errors.id` (string, required)
    24-character hex ObjectId

  - `errors.code` (integer, required)

  - `errors.message` (string, required)
    Dotted error key (e.g. account.not.found)

  - `metadata` (object)

## Response 403:

  - `403` (unknown)
    Insufficient permissions

## Response 403 fields (application/json):

  - `data` (object)

  - `errors` (array)

  - `errors.id` (string, required)
    24-character hex ObjectId

  - `errors.code` (integer, required)

  - `errors.message` (string, required)
    Dotted error key (e.g. account.not.found)

  - `metadata` (object)

## Response 404:

  - `404` (unknown)
    Resource not found

## Response 404 fields (application/json):

  - `data` (object)

  - `errors` (array)

  - `errors.id` (string, required)
    24-character hex ObjectId

  - `errors.code` (integer, required)

  - `errors.message` (string, required)
    Dotted error key (e.g. account.not.found)

  - `metadata` (object)

