> ## Documentation Index
> Fetch the complete documentation index at: https://docs.voxo.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Edit SIP Extension

> Update a SIP (trunk) extension (partial update)



## OpenAPI

````yaml https://api.voxo.co/v2/docs/openapi.json patch /v2/admin/extensions/sip/{id}
openapi: 3.1.0
info:
  title: VOXO API
  description: VOXO Communication Platform API
  version: 2.0.0
servers:
  - url: https://api.voxo.co
security:
  - bearerAuth: []
paths:
  /v2/admin/extensions/sip/{id}:
    patch:
      tags:
        - Extensions
      summary: Edit SIP Extension
      description: Update a SIP (trunk) extension (partial update)
      parameters:
        - schema:
            type: string
            pattern: ^[1-9]\d*$
          in: path
          name: id
          required: true
          description: Extension ID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 3
                emergencyLocationId:
                  type: number
                  exclusiveMinimum: 0
                emergencyLocation:
                  anyOf:
                    - type: string
                    - type: 'null'
                branchId:
                  type: number
                  exclusiveMinimum: 0
                authMethod:
                  type: string
                  enum:
                    - NORMAL
                    - IP
                publicIp:
                  type: string
                  format: ipv4
                  pattern: >-
                    ^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$
                callLimit:
                  type: number
                  exclusiveMinimum: 0
                trunkCallerIdSource:
                  type: string
                  enum:
                    - PAI
                    - RPID
                    - FROM
                callerIdNumber:
                  anyOf:
                    - type: string
                      pattern: ^[1-9]\d{9}$
                    - type: 'null'
                outboundDialPrefix:
                  anyOf:
                    - type: string
                      pattern: ^[1-9][0-9]{6}$
                    - type: string
                      enum:
                        - ''
                dialTimeout:
                  type: number
                  exclusiveMinimum: 0
                  maximum: 180
                  multipleOf: 5
                musicOnHoldId:
                  type: number
                  exclusiveMinimum: 0
                routingProfileId:
                  type: number
                  exclusiveMinimum: 0
                includeInPhonebook:
                  type: boolean
                includeInDialByName:
                  type: boolean
                enable911Override:
                  type: number
                  minimum: 0
                  maximum: 1
              additionalProperties: false
      responses:
        '200':
          description: Updated SIP extension
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                    description: Extension ID
                  tenant:
                    type: object
                    properties:
                      id:
                        type: number
                      name:
                        type: string
                    required:
                      - id
                      - name
                    additionalProperties: false
                    description: Owning tenant
                  name:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Extension name
                  number:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Extension number
                  email:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Extension email
                  peerName:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: SIP peer name
                  callerIdNumber:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Outbound caller ID number
                  recording:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Call recording mode
                  trunk:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Trunk state
                  trunkHost:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Trunk host
                  trunkCallerIdSource:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Trunk caller ID source
                  trunkEmergencyCallerIdOverride:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Trunk emergency caller ID override
                  callLimit:
                    anyOf:
                      - type: number
                      - type: 'null'
                    description: Concurrent call limit
                  dialTimeout:
                    anyOf:
                      - type: number
                      - type: 'null'
                    description: Inbound ring timeout (seconds)
                  routingProfileId:
                    anyOf:
                      - type: number
                      - type: 'null'
                    description: Routing profile ID
                  musicOnHoldId:
                    anyOf:
                      - type: number
                      - type: 'null'
                    description: Music on hold ID
                  emergencyLocationId:
                    anyOf:
                      - type: number
                      - type: 'null'
                    description: Emergency location ID
                  outboundDialPrefix:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Outbound dial prefix
                  includeInDialByName:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Dial-by-name inclusion
                  includeInPhonebook:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Phonebook inclusion
                  emergencyLocationComment:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: Free-text emergency location comment
                  branch:
                    type: object
                    properties:
                      id:
                        type: number
                      name:
                        type: string
                    required:
                      - id
                      - name
                    additionalProperties: false
                    description: Branch)
                  emergencyLocation:
                    anyOf:
                      - type: object
                        properties:
                          id:
                            type: number
                          address: {}
                        required:
                          - id
                          - address
                        additionalProperties: false
                      - type: 'null'
                    description: Emergency location
                  musicOnHold:
                    anyOf:
                      - type: object
                        properties:
                          id:
                            type: number
                          name:
                            type: string
                        required:
                          - id
                          - name
                        additionalProperties: false
                      - type: 'null'
                    description: Music on hold
                  routingProfile:
                    type: object
                    properties:
                      id:
                        type: number
                      name:
                        anyOf:
                          - type: string
                          - type: 'null'
                      type:
                        type: string
                    required:
                      - id
                      - name
                      - type
                    additionalProperties: false
                    description: Routing profile
                required:
                  - id
                  - tenant
                  - name
                  - number
                  - email
                  - peerName
                  - callerIdNumber
                  - recording
                  - trunk
                  - trunkHost
                  - trunkCallerIdSource
                  - trunkEmergencyCallerIdOverride
                  - callLimit
                  - dialTimeout
                  - routingProfileId
                  - musicOnHoldId
                  - emergencyLocationId
                  - outboundDialPrefix
                  - includeInDialByName
                  - includeInPhonebook
                  - emergencyLocationComment
                  - branch
                  - emergencyLocation
                  - musicOnHold
                  - routingProfile
                additionalProperties: false
        '400':
          description: Error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  name:
                    type: string
                  message:
                    type: string
                  code:
                    type: number
                  validationErrors:
                    type: array
                    items:
                      type: string
                required:
                  - name
                  - message
                  - code
                additionalProperties: false
        '404':
          description: Error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  name:
                    type: string
                  message:
                    type: string
                  code:
                    type: number
                  validationErrors:
                    type: array
                    items:
                      type: string
                required:
                  - name
                  - message
                  - code
                additionalProperties: false
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````