WABA Profile Info

In the 360dialog Client Hub

The client can update their WABA profile information in their 360dialog Client Hub.

To access the options, in 360dialog Client Hub v1, they need to click on Show details in the specific account they wish to edit and click on the Profile tab.

On 360dialog Client Hub v2, users can manage their Profile Info on the WABA manager page.

In the Messaging API

You can use the following endpoints to update WhatsApp Account about, photo and business profile information.

Every request to WhatsApp API needs to be authorized using API Key authentication. Adding theD360-API-KEY header with your API Key as a value will give you permission.

If the WABA is registered in Cloud API

See below the endpoints for retrieving and updating Business Profile information for Cloud API hosting. Please also refer to Meta's Official Documentation.

Profile Photo and Business Profile information

Retrieve Business Profile information

GET https://[base-path]/whatsapp_business_profile?fields=about,address,description,email,profile_picture_url,websites,vertical

Use this edge to retrieve the information available in the Business Profile: business address, business description, email for business contact, business industry, and business website.

Request example

GET /whatsapp_business_profile?fields=about,address,description,email,profile_picture_url,websites,vertical'

Request Body

A successful response includes the profile object containing the business profile data.

{
  "data": [{
    "messaging_product": "whatsapp",
    "address": "ADDRESS",
    "description": "DESCRIPTION",
    "vertical": "INDUSTRY",
    "email": "EMAIL",
    "websites": [
       "https://WEBSITE-1",
       "https://WEBSITE-2"
     ],
     "profile_picture_url": PROFILE_PICTURE_HANDLE
  }]
}

Update Business Profile information

POST https://[base-path]/whatsapp_business_profile

Use the endpoint to configure the following business profile settings: business address, business description, email for business contact, business industry, and business website.

If you only need to update a couple of fields with new information, you can make a request which changes only the necessary fields. You can use the profile_picture_handle parameter to update the profile photo.

HANDLE_OF_PROFILE_PICTURE is url obtained from the Resumable Upload API.

Request example

curl -X POST 'https://waba-v2.360dialog.io/whatsapp_business_profile' -H 'D360-API-KEY: YOUR_API_KEY' -d '{ "messaging_product": "whatsapp", "about": "ABOUT", "address": "ADDRESS", "description": "DESCRIPTION", "vertical": "INDUSTRY", "email": "EMAIL", "websites": [ "https://WEBSITE-1", "https://WEBSITE-2" ], "profile_picture_handle": "HANDLE_OF_PROFILE_PICTURE" }'

Request Body

{
    // Response
}

Resumable Upload API for Profile Pictures

The Resumable Upload API allows you to upload profile pictures and essentially large files to the Cloud API. Once uploaded, you can use a file's handle fetched in step 2 to update your profile_picture_handle.

Please note that to access and utilize the Resumable Upload API, it is mandatory to include the 360dialog-API-key within the header.

Step 1: Create a Session

Send a POST request that describes your file to the endpoint /uploads.Upon success, an upload session ID will be returned that you can use in the next step to initiate the upload.

Request Syntax

POST-https://waba-v2.360dialog.io/uploads
  &file_length={file-length}
  &file_type={file-type}

​Parameters

Response

  • {id} — Upload session ID.

Sample Request

curl -X POST \
 "https://waba-v2.360dialog.io/uploads?file_length=109981&file_type=image/png"

Sample Response

{
    "id": "upload:MTphd..."
}

Step 2: Initiate Upload

Initiate the upload session by sending a POST request and append your upload session {id} along with the authentication header. Upon success, a file handle {h},is returned that you can then use the {h} value to update your profile picture.

Request Syntax

POST waba-v2.360dialog.io/{session_id}  
--header 'file_offset: 0'
--data-binary @{file-name}

Placeholder Values

  • {session_id} — Upload session ID returned in step 1.

  • {file-name} — Name of the file to upload.

Response

{
  "h": "{h}"
}

Response property values:

  • {h} — The uploaded file's file handle

Sample Request

curl -X POST \
 "https://waba-v2.360dialog.io/upload:MTphd..." \

Sample Response

{
    "h": "2:c2FtcGxl..."
} 

You can then use the Update Business Profile information endpoint to update the profile photo using the {h} value.

[will be deprecated] If the WABA is registered in On-premise API

As announced in November 2023, Meta is transitioning to a fully Cloud-hosted WhatsApp Business Platform and will stop supporting On-Premise API in October 2025.

Starting from On-Premise client v2.53, all new feature updates will be exclusively delivered to Cloud API. While the On-Premise API client will receive quarterly releases, they will focus solely on bug fixes and security patches. From May 15, 2024, 360dialog will not allow for new numbers to be onboarded with On-Premise API. We will continue supporting already registered On-Premise API throughout 2024, but we strongly recommend to start changing the hosting type of numbers to Cloud as soon as possible. Learn here how to integrate with Cloud API.

About section

Retrieve About section for a specific channel

GET https://[base-path]/v1/settings/profile/about

Use this edge to retrieve the profile About section.

Request example

GET /v1/settings/profile/about

A successful response contains the profile object with the text parameter containing your profile's About content.

{
  "settings": {
    "profile": {
      "about": {
        "text": "your-profile-about-text"
      }
    }
  }
}

Set About section for a specific channel

PATCH https://[base-path]/v1/settings/profile/about

Use this edge to update the profile's About section.

Request example

PATCH /v1/settings/profile/about

{

"text": "your-profile-about-text"

}

Request Body

Profile Photo

Retrieve Photo for a specific channel in base64-encoded binary format

GET https://[base-path]/v1/settings/profile/photo

Use this edge to retrieve the profile Photo in base64-encoded binary format

Request example

GET /v1/settings/profile/photo

Content-Type: mage/jpeg, or other appropriate type
Content-Length: content-size

binary-image-content

Retrieve Photo URL for a specific channel

GET https://[base-path]/v1/settings/profile/photo

Use this edge to retrieve the profile Photo URL

Request example

GET /v1/settings/profile/photo?format=link

{
    "settings": {
        "profile": {
            "photo": {
                "link": "profile-photo-url"
            }
        }
    }
}

Update Photo for a specific channel using base64-encoded binary format image

POST https://[base-path]/v1/settings/profile/photo

Use this edge to update the profile Photo with a base64-encoded binary format image

Request example

POST /v1/settings/profile/photo

Content-Type: image/jpeg //or other appropriate type

your-binary-image-content

Request Body

Example in Postman

Business Profile information

Retrieve Business Profile information

GET https://[base-path]/v1/settings/business/profile

Use this edge to retrieve the information available in the Business Profile: business address, business description, email for business contact, business industry, and business website.

Request example

GET /v1/settings/business/profile

Request Body

A successful response includes the profile object containing the business profile data.

{
   "settings": {
     "business": {
        "profile": {
          "address": "new-business-address",
          "description": "business-description",
          "email": "new-business-email",
          "vertical": "business-industry",
          "websites": [ "website-1", "website-2" ]
        }
      }
}

Update Business Profile information

POST https://[base-path]/v1/settings/business/profile

Use the endpoint to configure the following business profile settings: business address, business description, email for business contact, business industry, and business website.

If you only need to update a couple of fields with new information, you can make a request which changes only the necessary fields.

Request example

POST /v1/settings/business/profile

{

"address": "your-business-address",

"description": "your-business-description",

"email": "your-business-email",

"vertical": "your-business-industry",

"websites": [ "your-website-1", "your-website-2" ]

}

Request Body

Last updated