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

# Save phone number settings

> Saves phone number specific settings. Send `calling`, `capture`, or both.
When both are supplied, the service independently attempts both saves after shared
authorization and phone-number validation. A failure in either branch does not prevent
the other branch from being attempted. If either branch fails, the existing error response
is returned and the other setting may already have been saved.



## OpenAPI

````yaml /openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/settings
openapi: 3.0.0
info:
  description: >-
    The [YCloud](https://ycloud.com) API is organized around
    [REST](https://en.wikipedia.org/wiki/Representational_state_transfer). Our
    API is designed to have predictable, resource-oriented URLs, return
    [JSON](https://www.json.org) responses, and use standard HTTP response codes
    and verbs.
  version: v2
  title: YCloud API
  termsOfService: https://ycloud.com/terms-service
  contact:
    email: service@ycloud.com
servers:
  - url: https://api.ycloud.com/v2
    description: Base URL
security:
  - api_key: []
tags:
  - name: Balance
  - name: Contacts
  - name: Custom Events
  - name: Emails
  - name: SMS
  - name: Unsubscribers
  - name: Verify
  - name: Voices
  - name: Webhook Endpoints
  - name: WhatsApp Business Accounts
  - name: WhatsApp Inbound Messages
  - name: WhatsApp Media
  - name: WhatsApp Messages
  - name: WhatsApp Blocked Users
  - name: WhatsApp Groups
  - name: WhatsApp Calling
  - name: WhatsApp Phone Numbers
  - name: WhatsApp Templates
  - name: WhatsApp Flows
  - name: Meta Business Agent
  - name: WhatsApp Group Messages
externalDocs:
  description: Homepage
  url: https://ycloud.com
paths:
  /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/settings:
    post:
      tags:
        - WhatsApp Phone Numbers
      summary: Save phone number settings
      description: >-
        Saves phone number specific settings. Send `calling`, `capture`, or
        both.

        When both are supplied, the service independently attempts both saves
        after shared

        authorization and phone-number validation. A failure in either branch
        does not prevent

        the other branch from being attempted. If either branch fails, the
        existing error response

        is returned and the other setting may already have been saved.
      operationId: whatsapp_phone_number-save-settings
      parameters:
        - name: wabaId
          in: path
          description: WhatsApp Business Account ID.
          required: true
          schema:
            type: string
            example: whatsapp-business-account-id
        - name: phoneNumber
          in: path
          description: Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.
          required: true
          schema:
            type: string
            example: '+6283138205150'
      requestBody:
        description: Phone number settings to save.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WhatsappPhoneNumberSettings'
            examples:
              callingSettings:
                summary: Save existing Calling settings
                value:
                  calling:
                    status: ENABLED
                    iconVisibility: DEFAULT
              captureSettings:
                summary: Save Capture settings
                value:
                  capture:
                    recordingEnabled: true
                    transcriptionEnabled: true
                    purpose: quality_assurance
                    announcementLanguage: en_US
              callingAndCaptureSettings:
                summary: Save Calling and Capture settings together
                value:
                  calling:
                    status: ENABLED
                    iconVisibility: DEFAULT
                  capture:
                    recordingEnabled: true
                    transcriptionEnabled: true
                    purpose: quality_assurance
                    announcementLanguage: en_US
        required: true
      responses:
        '200':
          description: Successfully saved the phone number settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPhoneNumberSettings'
              examples:
                callingSettings:
                  summary: Existing Calling settings response
                  value:
                    calling:
                      id: '19213232132'
                      status: ENABLED
                      iconVisibility: DEFAULT
                captureSettings:
                  summary: Capture settings response
                  value:
                    capture:
                      recordingEnabled: true
                      transcriptionEnabled: true
                      purpose: quality_assurance
                      announcementLanguage: en_US
                callingAndCaptureSettings:
                  summary: Calling and Capture settings response
                  value:
                    calling:
                      id: '19213232132'
                      status: ENABLED
                      iconVisibility: DEFAULT
                    capture:
                      recordingEnabled: true
                      transcriptionEnabled: true
                      purpose: quality_assurance
                      announcementLanguage: en_US
        '400':
          description: >-
            Bad request. A Calling or Capture setting is invalid. For a combined
            request, the other setting may already have been saved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The requested resource does not exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    WhatsappPhoneNumberSettings:
      type: object
      description: WhatsApp business phone number settings.
      properties:
        calling:
          type: object
          description: Calling feature settings for the phone number.
          properties:
            id:
              type: string
              description: Phone number ID.
              example: '19213232132'
            status:
              type: string
              description: |-
                Calling feature status:
                - `ENABLED`: Calling feature is enabled
                - `DISABLED`: Calling feature is disabled
              enum:
                - ENABLED
                - DISABLED
              example: ENABLED
            iconVisibility:
              type: string
              description: |-
                Calling icon display configuration:
                - `DEFAULT`: Show icon by default
                - `DISABLE_ALL`: Hide all calling icons
              enum:
                - DEFAULT
                - DISABLE_ALL
              example: DEFAULT
        capture:
          $ref: '#/components/schemas/CallingCaptureSettings'
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/Error'
          description: >-
            Contains the error code and human-readable message for the API
            error.
    CallingCaptureSettings:
      type: object
      description: >-
        Phone-number-level recording and transcription capture settings used for
        new WhatsApp calls.
      required:
        - recordingEnabled
        - transcriptionEnabled
      properties:
        recordingEnabled:
          type: boolean
          description: Whether recording capture is enabled.
        transcriptionEnabled:
          type: boolean
          description: Whether transcription capture is enabled.
        purpose:
          type: string
          maxLength: 250
          description: >-
            Customer-defined capture purpose passed to the Calling provider
            configuration. Required when either capture switch is enabled.
          example: quality_assurance
        announcementLanguage:
          type: string
          description: >-
            Meta-supported announcement language. Required when either capture
            switch is enabled.
          enum:
            - en
            - en_US
            - en_AU
            - en_CA
            - en_GB
            - en_IN
            - en_NZ
            - nl
            - fr
            - de
            - hi
            - it
            - kn
            - pt
            - es
            - es_ES
            - te
            - vi
          example: en_US
    Error:
      type: object
      required:
        - status
        - code
      properties:
        status:
          type: integer
          format: int32
          pattern: '[45]\d{2}'
          description: >-
            HTTP status code, [RFC 7231, Section
            6](https://datatracker.ietf.org/doc/html/rfc7231#section-6). It
            conveys the HTTP status code used for the convenience of the
            consumer.
          example: 404
        code:
          type: string
          description: >-
            One of a server-defined error codes. Some `4xx` errors that could be
            handled programmatically include an error code that briefly explains
            the error reported.
          example: NOT_FOUND
        message:
          type: string
          description: >-
            A human-readable representation of the error. It is intended as an
            aid to developers and is not suitable for exposure to end users.
          example: The requested resource does not exist.
        target:
          type: string
          description: The target of the error.
          example: ''
        docUrl:
          type: string
          description: A URL to more information about the error.
          example: ''
        requestId:
          type: string
          description: >-
            Each API request has an associated request ID. It conveys the
            response header `YCloud-Request-ID` used for the convenience of the
            consumer.
          example: req_1KjtKI80IKoaJNa6n6p
        whatsappApiError:
          $ref: '#/components/schemas/WhatsappApiError'
          description: >-
            The original error object returned by WhatsApp. See [Handling
            Errors](https://developers.facebook.com/docs/graph-api/guides/error-handling),
            [Cloud API Error
            Codes](https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes).


            Note: This field is returned if we tried to request the WhatsApp
            Business API and got an error response.
        metaBusinessAgentApiError:
          $ref: '#/components/schemas/MetaBusinessAgentApiError'
          description: >-
            Sanitized upstream details returned when a Meta Business Agent
            request fails.
    WhatsappApiError:
      type: object
      description: >-
        The original error object returned by WhatsApp. See [Handling
        Errors](https://developers.facebook.com/docs/graph-api/guides/error-handling),
        [Cloud API Error
        Codes](https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes).
      required:
        - message
        - code
      properties:
        message:
          type: string
          description: A human-readable description of the error.
          example: HSM Template creation failed
        code:
          type: string
          description: An error code.
          example: 200002
        type:
          type: string
          description: Error type.
          example: OAuthException
        is_transient:
          type: boolean
          description: Whether the error is transient.
          example: false
        error_subcode:
          type: string
          description: Additional code about the error.
          example: 2388109
        error_user_msg:
          type: string
          description: >-
            The message to display to the user. The language of the message is
            based on the locale of the API request.
          example: This message template cannot be created.
        error_user_title:
          type: string
          description: >-
            The title of the dialog, if shown. The language of the message is
            based on the locale of the API request.
          example: Message Cannot Be Submitted
        fbtrace_id:
          type: string
          description: >-
            Internal support identifier. When reporting a bug related to a Graph
            API call, include the fbtrace_id to help us find log data for
            debugging.
          example: AVGjJ7ia2zJkrHG
        error_data:
          description: >-
            Additional data about the error. A string or map.

            - For template APIs, this field is a string describing the reason
            for the error.

            - For message APIs, this field is a map with property `details`
            describing the reason for the error.
          oneOf:
            - type: string
            - type: object
              additionalProperties: true
    MetaBusinessAgentApiError:
      type: object
      description: Sanitized details from a failed Meta Business Agent upstream request.
      properties:
        title:
          type: string
        detail:
          type: string
        type:
          type: string
        status:
          type: integer
          format: int32
        requestId:
          type: string
  securitySchemes:
    api_key:
      type: apiKey
      name: X-API-Key
      in: header

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.