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

# Read WhatsApp business profile

> Use for current provider profile fields on a discovered WhatsApp channel. Returns public business description, address, websites and profile picture URL through the native provider reader. Requires current admin ownership; no access tokens are exposed. Use update_whatsapp_channel_profile only for requested edits. Profile availability does not prove phone activation or message delivery. Requires `channels:read`.



## OpenAPI

````yaml /openapi.json get /channels/{channelId}/whatsapp/profile
openapi: 3.0.3
info:
  title: Visito M2M API
  version: 1.0.0
  description: >-
    Tenant-scoped server-to-server API for channels, conversations, commerce,
    custom AI tools, and WhatsApp templates. Send operations are asynchronous
    and return queued acknowledgements. Expansion adds conversation controls,
    knowledge, sales opportunities, delivery status, reporting, and signed
    webhooks.
servers:
  - url: https://platform-api.visitoai.com/m2m/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Channels
  - name: Conversations
  - name: Commerce
  - name: Custom tools
  - name: WhatsApp templates
  - name: Properties
  - name: Knowledge
  - name: Sales CRM
  - name: Delivery
  - name: Reporting
  - name: Webhooks
paths:
  /channels/{channelId}/whatsapp/profile:
    get:
      tags:
        - Channels
      summary: Read WhatsApp business profile
      description: >-
        Use for current provider profile fields on a discovered WhatsApp
        channel. Returns public business description, address, websites and
        profile picture URL through the native provider reader. Requires current
        admin ownership; no access tokens are exposed. Use
        update_whatsapp_channel_profile only for requested edits. Profile
        availability does not prove phone activation or message delivery.
        Requires `channels:read`.
      operationId: get_whatsapp_channel_profile
      parameters:
        - name: channelId
          in: path
          required: true
          description: >-
            Stored channel.id from list_channels or get_channel. Provider page,
            phone, account and WABA IDs are not this ID.
          schema:
            type: string
            pattern: ^[a-fA-F0-9]{24}$
      responses:
        '200':
          description: Read WhatsApp business profile
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsAppChannelProfile'
        default:
          $ref: '#/components/responses/Error'
      security:
        - bearerAuth: []
components:
  schemas:
    WhatsAppChannelProfile:
      type: object
      properties:
        channelId:
          type: string
        phoneNumberId:
          type: string
        profile:
          type: object
          properties:
            about:
              type: string
            address:
              type: string
            description:
              type: string
            email:
              type: string
            vertical:
              type: string
            profilePictureUrl:
              type: string
            websites:
              type: array
              items:
                type: string
              maxItems: 2
          additionalProperties: false
          required:
            - websites
      additionalProperties: false
      required:
        - channelId
        - phoneNumberId
        - profile
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
          properties:
            code:
              type: string
              example: M2M_AUTH_INSUFFICIENT_SCOPE
            message:
              type: string
            details:
              type: object
              additionalProperties: true
      example:
        error:
          code: M2M_AUTH_INSUFFICIENT_SCOPE
          message: M2M credential does not have required scope.
          details:
            requiredScopes:
              - conversations:write
            missingScopes:
              - conversations:write
  responses:
    Error:
      description: Structured error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Visito M2M API key
      description: Server-side tenant-scoped credential created from Build > API Keys.

````

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