> ## Documentation Index
> Fetch the complete documentation index at: https://openphone-dev.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Update a phone number

> Update the name and business hours of a phone number. Only the fields in the request change; a field left out keeps its stored value, and the body must name at least one field. With a user token, only the number’s owners and admins can update it: a member assigned to it gets `403 Forbidden`, and a user not assigned to it gets `404 Not Found`. The response is the updated phone number with its `businessHours`, as `GET /phone-numbers/{phoneNumberId}?include=businessHours` returns it.



## OpenAPI

````yaml https://openphone-public-api-dev.s3.us-west-2.amazonaws.com/public/openphone-public-api-2026-03-30-dev.json patch /phone-numbers/{phoneNumberId}
openapi: 3.1.0
info:
  title: Quo Public API
  version: 1.0.0
  description: API for connecting with Quo.
  contact:
    name: Quo Support
    email: support@quo.com
    url: https://support.quo.com/
  termsOfService: https://www.quo.com/terms
servers:
  - description: Development server
    url: https://dev-public-api.openphone.dev
security:
  - apiKey: []
tags:
  - description: Operations related to the organization's A2P registration
    name: A2P Registration
  - description: Operations related to calls placed by an AI agent
    name: Agent Calls
  - description: Operations related to text conversations held by an AI agent
    name: Agent Conversations
  - description: Operations related to calls
    name: Calls
  - description: >-
      Operations related to call summaries, including AI-generated summaries and
      Sona voice assistant summaries
    name: Call Summaries
  - description: >-
      Operations related to call transcripts, including AI-generated transcripts
      and Sona voice assistant transcripts
    name: Call Transcripts
  - description: Operations related to contacts
    name: Contacts
  - description: Operations related to contact shares
    name: Contact Shares
  - description: Operations related to contact notes
    name: Contact Notes
  - description: Operations related to contact properties
    name: Contact Properties
  - description: Operations related to conversations
    name: Conversations
  - description: Operations related to workspace invitations
    name: Invites
  - description: Operations related to text messages
    name: Messages
  - description: Operations related to the organization
    name: Organization
  - description: Operations related to phone numbers
    name: Phone Numbers
  - description: Operations related to users
    name: Users
  - description: Operations related to webhooks
    name: Webhooks
  - description: >-
      Operations related to webhook events, including delivery history and test
      events
    name: Webhook Events
paths:
  /phone-numbers/{phoneNumberId}:
    patch:
      tags:
        - Phone Numbers
      summary: Update a phone number
      description: >-
        Update the name and business hours of a phone number. Only the fields in
        the request change; a field left out keeps its stored value, and the
        body must name at least one field. With a user token, only the number’s
        owners and admins can update it: a member assigned to it gets `403
        Forbidden`, and a user not assigned to it gets `404 Not Found`. The
        response is the updated phone number with its `businessHours`, as `GET
        /phone-numbers/{phoneNumberId}?include=businessHours` returns it.
      operationId: updatePhoneNumber
      parameters:
        - in: path
          name: phoneNumberId
          required: true
          schema:
            description: The unique identifier of the phone number being referenced (used).
            examples:
              - PNlja6rrtI
            type: string
            pattern: ^PN(.*)$
          example: PNlja6rrtI
        - in: header
          name: Quo-Api-Version
          required: true
          schema:
            type: string
            enum:
              - '2026-03-30'
            description: 'API version header. Supported values: 2026-03-30'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: >-
                    The display name of the phone number. Left out, the stored
                    name is kept.
                  minLength: 1
                  maxLength: 500
                  examples:
                    - My phone number
                  example: My phone number
                businessHours:
                  type: object
                  properties:
                    enabled:
                      type: boolean
                      description: >-
                        Specifies if business hours is enforced for this number.
                        Left out, the stored value is kept. Turning it on has no
                        effect until the number has a `schedule`.
                    timezone:
                      type: string
                      description: >-
                        IANA timezone used to interpret `schedule`. Left out,
                        the stored timezone is kept, or `America/Los_Angeles`
                        when none is stored. Required when the stored timezone
                        is not a valid IANA timezone and the resulting schedule
                        has any window.
                      examples:
                        - America/New_York
                      example: America/New_York
                    schedule:
                      anyOf:
                        - type: object
                          properties:
                            monday:
                              anyOf:
                                - type: object
                                  required:
                                    - start
                                    - end
                                  properties:
                                    start:
                                      type: string
                                      description: >-
                                        Start of the available window, in
                                        24-hour `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                    end:
                                      type: string
                                      description: >-
                                        End of the available window, in 24-hour
                                        `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                - type: 'null'
                            tuesday:
                              anyOf:
                                - type: object
                                  required:
                                    - start
                                    - end
                                  properties:
                                    start:
                                      type: string
                                      description: >-
                                        Start of the available window, in
                                        24-hour `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                    end:
                                      type: string
                                      description: >-
                                        End of the available window, in 24-hour
                                        `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                - type: 'null'
                            wednesday:
                              anyOf:
                                - type: object
                                  required:
                                    - start
                                    - end
                                  properties:
                                    start:
                                      type: string
                                      description: >-
                                        Start of the available window, in
                                        24-hour `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                    end:
                                      type: string
                                      description: >-
                                        End of the available window, in 24-hour
                                        `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                - type: 'null'
                            thursday:
                              anyOf:
                                - type: object
                                  required:
                                    - start
                                    - end
                                  properties:
                                    start:
                                      type: string
                                      description: >-
                                        Start of the available window, in
                                        24-hour `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                    end:
                                      type: string
                                      description: >-
                                        End of the available window, in 24-hour
                                        `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                - type: 'null'
                            friday:
                              anyOf:
                                - type: object
                                  required:
                                    - start
                                    - end
                                  properties:
                                    start:
                                      type: string
                                      description: >-
                                        Start of the available window, in
                                        24-hour `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                    end:
                                      type: string
                                      description: >-
                                        End of the available window, in 24-hour
                                        `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                - type: 'null'
                            saturday:
                              anyOf:
                                - type: object
                                  required:
                                    - start
                                    - end
                                  properties:
                                    start:
                                      type: string
                                      description: >-
                                        Start of the available window, in
                                        24-hour `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                    end:
                                      type: string
                                      description: >-
                                        End of the available window, in 24-hour
                                        `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                - type: 'null'
                            sunday:
                              anyOf:
                                - type: object
                                  required:
                                    - start
                                    - end
                                  properties:
                                    start:
                                      type: string
                                      description: >-
                                        Start of the available window, in
                                        24-hour `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                    end:
                                      type: string
                                      description: >-
                                        End of the available window, in 24-hour
                                        `HHMM` local time.
                                      pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                      examples:
                                        - '0900'
                                        - '1600'
                                      example: '0900'
                                - type: 'null'
                          minProperties: 1
                        - type: 'null'
                  minProperties: 1
              minProperties: 1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    type: object
                    required:
                      - id
                      - groupId
                      - name
                      - phoneNumber
                      - formattedNumber
                      - forward
                      - portRequestId
                      - portingStatus
                      - symbol
                      - createdAt
                      - updatedAt
                    properties:
                      id:
                        description: The unique identifier of the Quo phone number.
                        examples:
                          - PNlja6rrtI
                        example: PNlja6rrtI
                        type: string
                        pattern: ^PN(.*)$
                      groupId:
                        description: >-
                          The unique identifier of the group to which the Quo
                          number belongs.
                        examples:
                          - GRcei8k90o
                        example: GRcei8k90o
                        type: string
                        pattern: ^GR(.*)$
                      name:
                        type: string
                        description: The display name of the phone number.
                        examples:
                          - My phone number
                        example: My phone number
                      phoneNumber:
                        type: string
                        description: >-
                          A phone number in E.164 format, including the country
                          code.
                        examples:
                          - '+15555555555'
                        pattern: ^\+[1-9]\d{1,14}$
                        example: '+15555555555'
                      formattedNumber:
                        anyOf:
                          - type: string
                            description: >-
                              A human-readable representation of the phone
                              number.
                            examples:
                              - (555) 555-5555
                            example: (555) 555-5555
                          - type: 'null'
                      forward:
                        anyOf:
                          - type: string
                            description: >-
                              Forwarding number for incoming calls, null if no
                              forwarding number is configured.
                            examples:
                              - '+15555555555'
                            example: '+15555555555'
                          - type: 'null'
                      portRequestId:
                        anyOf:
                          - type: string
                            description: >-
                              Unique identifier for the phone number’s porting
                              request, if applicable.
                            examples:
                              - 123abc
                            example: 123abc
                          - type: 'null'
                      portingStatus:
                        anyOf:
                          - type: string
                            description: >-
                              Current status of the porting process, if
                              applicable.
                            examples:
                              - completed
                            example: completed
                          - type: 'null'
                      symbol:
                        anyOf:
                          - type: string
                            description: >-
                              Custom symbol or emoji associated with the phone
                              number.
                            examples:
                              - 🏡
                            example: 🏡
                          - type: 'null'
                      createdAt:
                        description: >-
                          Timestamp of when the phone number was added to the
                          workspace, in ISO 8601 format.
                        examples:
                          - '2022-01-01T00:00:00Z'
                        example: '2022-01-01T00:00:00Z'
                        type: string
                        format: date-time
                      updatedAt:
                        description: >-
                          Timestamp of the last update to the phone number’s
                          details, in ISO 8601 format.
                        examples:
                          - '2022-01-01T00:00:00Z'
                        example: '2022-01-01T00:00:00Z'
                        type: string
                        format: date-time
                      restrictions:
                        type: object
                        required:
                          - calling
                          - messaging
                        properties:
                          calling:
                            type: object
                            required:
                              - CA
                              - Intl
                              - US
                            properties:
                              CA:
                                type: string
                                enum:
                                  - restricted
                                  - unrestricted
                                description: >-
                                  The phone-number usage restriction status for
                                  a specific region.
                                examples:
                                  - unrestricted
                                example: unrestricted
                              Intl:
                                type: string
                                enum:
                                  - restricted
                                  - unrestricted
                                description: >-
                                  The phone-number usage restriction status for
                                  a specific region.
                                examples:
                                  - unrestricted
                                example: unrestricted
                              US:
                                type: string
                                enum:
                                  - restricted
                                  - unrestricted
                                description: >-
                                  The phone-number usage restriction status for
                                  a specific region.
                                examples:
                                  - unrestricted
                                example: unrestricted
                          messaging:
                            type: object
                            required:
                              - CA
                              - Intl
                              - US
                            properties:
                              CA:
                                type: string
                                enum:
                                  - restricted
                                  - unrestricted
                                description: >-
                                  The phone-number usage restriction status for
                                  a specific region.
                                examples:
                                  - unrestricted
                                example: unrestricted
                              Intl:
                                type: string
                                enum:
                                  - restricted
                                  - unrestricted
                                description: >-
                                  The phone-number usage restriction status for
                                  a specific region.
                                examples:
                                  - unrestricted
                                example: unrestricted
                              US:
                                type: string
                                enum:
                                  - restricted
                                  - unrestricted
                                description: >-
                                  The phone-number usage restriction status for
                                  a specific region.
                                examples:
                                  - unrestricted
                                example: unrestricted
                      businessHours:
                        type: object
                        required:
                          - enabled
                          - timezone
                          - schedule
                        properties:
                          enabled:
                            type: boolean
                            description: >-
                              Specifies if business hours is enforced for this
                              number. `false` when nothing is stored.
                          timezone:
                            anyOf:
                              - type: string
                                description: >-
                                  IANA timezone used to interpret `schedule`.
                                  `America/Los_Angeles` when none is stored,
                                  since that is the timezone account applies the
                                  schedule in.
                                examples:
                                  - America/New_York
                                example: America/New_York
                              - type: string
                            description: >-
                              IANA timezone used to interpret `schedule`.
                              `America/Los_Angeles` when none is stored, since
                              that is the timezone account applies the schedule
                              in.
                            examples:
                              - America/New_York
                            example: America/New_York
                          schedule:
                            anyOf:
                              - type: object
                                required:
                                  - monday
                                  - tuesday
                                  - wednesday
                                  - thursday
                                  - friday
                                  - saturday
                                  - sunday
                                properties:
                                  monday:
                                    anyOf:
                                      - type: object
                                        required:
                                          - start
                                          - end
                                        properties:
                                          start:
                                            type: string
                                            description: >-
                                              Start of the available window, in
                                              24-hour `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                          end:
                                            type: string
                                            description: >-
                                              End of the available window, in 24-hour
                                              `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                      - type: 'null'
                                  tuesday:
                                    anyOf:
                                      - type: object
                                        required:
                                          - start
                                          - end
                                        properties:
                                          start:
                                            type: string
                                            description: >-
                                              Start of the available window, in
                                              24-hour `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                          end:
                                            type: string
                                            description: >-
                                              End of the available window, in 24-hour
                                              `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                      - type: 'null'
                                  wednesday:
                                    anyOf:
                                      - type: object
                                        required:
                                          - start
                                          - end
                                        properties:
                                          start:
                                            type: string
                                            description: >-
                                              Start of the available window, in
                                              24-hour `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                          end:
                                            type: string
                                            description: >-
                                              End of the available window, in 24-hour
                                              `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                      - type: 'null'
                                  thursday:
                                    anyOf:
                                      - type: object
                                        required:
                                          - start
                                          - end
                                        properties:
                                          start:
                                            type: string
                                            description: >-
                                              Start of the available window, in
                                              24-hour `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                          end:
                                            type: string
                                            description: >-
                                              End of the available window, in 24-hour
                                              `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                      - type: 'null'
                                  friday:
                                    anyOf:
                                      - type: object
                                        required:
                                          - start
                                          - end
                                        properties:
                                          start:
                                            type: string
                                            description: >-
                                              Start of the available window, in
                                              24-hour `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                          end:
                                            type: string
                                            description: >-
                                              End of the available window, in 24-hour
                                              `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                      - type: 'null'
                                  saturday:
                                    anyOf:
                                      - type: object
                                        required:
                                          - start
                                          - end
                                        properties:
                                          start:
                                            type: string
                                            description: >-
                                              Start of the available window, in
                                              24-hour `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                          end:
                                            type: string
                                            description: >-
                                              End of the available window, in 24-hour
                                              `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                      - type: 'null'
                                  sunday:
                                    anyOf:
                                      - type: object
                                        required:
                                          - start
                                          - end
                                        properties:
                                          start:
                                            type: string
                                            description: >-
                                              Start of the available window, in
                                              24-hour `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                          end:
                                            type: string
                                            description: >-
                                              End of the available window, in 24-hour
                                              `HHMM` local time.
                                            pattern: ^([01][0-9]|2[0-3])[0-5][0-9]$
                                            examples:
                                              - '0900'
                                              - '1600'
                                            example: '0900'
                                      - type: 'null'
                              - type: 'null'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    type: string
                    const: https://quo.com/docs
                  title:
                    type: string
                    const: Bad Request
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: The input was invalid
                docs: https://quo.com/docs
                title: Bad Request
                errors:
                  - path: /include
                    message: 'Value must be one of: users, restrictions'
                    value: settings
                    schema:
                      type: array
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    type: string
                    const: https://quo.com/docs
                  title:
                    type: string
                    const: Unauthorized
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: Unauthorized
                docs: https://quo.com/docs
                title: Unauthorized
                trace: '6897907457496870895'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    type: string
                    const: https://quo.com/docs
                  title:
                    type: string
                    const: Forbidden
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: User is forbidden to perform this action
                docs: https://quo.com/docs
                title: Forbidden
                trace: '6897907457496870895'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    type: string
                    const: https://quo.com/docs
                  title:
                    type: string
                    const: Not Found
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: Phone number with ID PNlja6rrtI not found
                docs: https://quo.com/docs
                title: Not Found
                trace: '6897907457496870895'
        '500':
          description: Unknown Error
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    type: string
                    const: https://quo.com/docs
                  title:
                    type: string
                    const: Unknown
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: We have encountered an unknown error
                docs: https://quo.com/docs
                title: Unknown
                trace: '6897907457496870895'
      security:
        - bearerAuth: []
components:
  securitySchemes:
    apiKey:
      in: header
      name: Authorization
      type: apiKey

````