{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/twilio/main/json-schema/twilio-update-byoc-trunk-request-schema.json",
  "title": "UpdateByocTrunkRequest",
  "x-generated": "2026-10-08",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/twilio-byoctrunks-api-openapi.yml#/components/schemas/UpdateByocTrunkRequest",
  "type": "object",
  "properties": {
    "FriendlyName": {
      "type": "string",
      "description": "A descriptive string that you create to describe the resource. It is not unique and can be up to 255 characters long."
    },
    "VoiceUrl": {
      "type": "string",
      "format": "uri",
      "description": "The URL we should call when the BYOC Trunk receives a call."
    },
    "VoiceMethod": {
      "type": "string",
      "format": "http-method",
      "enum": [
        "HEAD",
        "GET",
        "POST",
        "PATCH",
        "PUT",
        "DELETE"
      ],
      "description": "The HTTP method we should use to call `voice_url`"
    },
    "VoiceFallbackUrl": {
      "type": "string",
      "format": "uri",
      "description": "The URL that we should call when an error occurs while retrieving or executing the TwiML requested by `voice_url`."
    },
    "VoiceFallbackMethod": {
      "type": "string",
      "format": "http-method",
      "enum": [
        "HEAD",
        "GET",
        "POST",
        "PATCH",
        "PUT",
        "DELETE"
      ],
      "description": "The HTTP method we should use to call `voice_fallback_url`. Can be: `GET` or `POST`."
    },
    "StatusCallbackUrl": {
      "type": "string",
      "format": "uri",
      "description": "The URL that we should call to pass status parameters (such as call ended) to your application."
    },
    "StatusCallbackMethod": {
      "type": "string",
      "format": "http-method",
      "enum": [
        "HEAD",
        "GET",
        "POST",
        "PATCH",
        "PUT",
        "DELETE"
      ],
      "description": "The HTTP method we should use to call `status_callback_url`. Can be: `GET` or `POST`."
    },
    "CnamLookupEnabled": {
      "type": "boolean",
      "description": "Whether Caller ID Name (CNAM) lookup is enabled for the trunk. If enabled, all inbound calls to the BYOC Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](https://www.twilio.com/docs/sip-trunking#CNAM) for more information."
    },
    "ConnectionPolicySid": {
      "type": "string",
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^NY[0-9a-fA-F]{32}$",
      "description": "The SID of the Connection Policy that Twilio will use when routing traffic to your communications infrastructure."
    },
    "FromDomainSid": {
      "type": "string",
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^SD[0-9a-fA-F]{32}$",
      "description": "The SID of the SIP Domain that should be used in the `From` header of originating calls sent to your SIP infrastructure. If your SIP infrastructure allows users to \"call back\" an incoming call, configure this with a [SIP Domain](https://www.twilio.com/docs/voice/api/sending-sip) to ensure proper routing. If not configured, the from domain will default to \"sip.twilio.com\"."
    }
  }
}