Checking usage and statistics
Last updated
Last updated
Businesses using the WhatsApp Business Platform are being charged per conversation until 2025, which includes all messages delivered in a 24-hour session with a particular WhatsApp user. See Conversations documentation.
Through the Monthly usage data, you get to see the number of conversations the phone number had and when; it includes All, Free, and Paid Conversations.
This information is an estimate and can slightly differ from invoices. It can be checked in the 360dialog Hub (by Partners and Clients), via Partner API (by Partners only, which can be used to create personalized dashboards for their clients) and via Webhook notifications (which requires development of an additional counter).
Please note that final information about charges in only available in the invoices sent after the month has ended.
Clients and Partners can see a specific WABA usage in the Funds dashboard. To access it, click in Show details in the specific WABA you wish to use and select Insights on the top menu.
Through the Monthly usage graphs, you get to see the number of conversations the phone number had and when; it includes All, Free, and Paid Conversations.
Here, you can also estimate costs for the future through the Approximate charges graph, which shows the estimation of the costs of charges.
If the client is registered under Direct Payment, you will also be able to see their balance settings in this same page.
Please be aware that the Approximate Charges displayed in the 360dialog Hub is financially binding in its totality. The precise amount due will be determined by Meta's invoice at the end of the month, which will serve as the authoritative record of charges.
If your clients are registered with direct payment, you can use the check balance endpoint to get usage information.
Please see how to use this here.
You can use the granularity parameter to retrieve metrics about the conversations associated with the WhatsApp Business Account (WABA).
Specifically, you can get the number of messages sent and delivered as well as conversation and cost information for a given period. This parameter works together with the /balance
endpoint in the Partner API. See below how to parse your request.
GET
https://hub.360dialog.io/api/v2/partners/{partner_id}/clients/{client_id}/info/balance
Rate limit: 5 requests per 30 seconds.
Request example
curl --request GET
--url https://hub.360dialog.io/api/v2/partners/{partner_id}/clients/{client_id}/info/balance
?
start_date
=1664582400
&
end_date
=1667260799
&
granularity
=day
--header 'Authorization: '
--header 'Content-Type: application/json'
Name | Type | Description |
---|---|---|
client_id* | string | ID of the client |
partner_id* | string | ID of the partner |
Name | Type | Description |
---|---|---|
end_date | UNIX Timestamp | The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date. Example: |
start_date | UNIX Timestamp | The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date. Example: |
granularity | string | The granularity by which you would like to retrieve the analytics.
Supported Options:
Defaults with |
The balance
field is only relevant for clients who are registered with direct payment.
usage
: The response contains an array called "usage" that provides a breakdown of the channel's usage in different categories. These categories may include authentication, marketing, service, utility. Each category within the array includes details such as paid quantity, price, and quantity. This allows you to analyze the usage patterns and associated costs for different aspects of the channel's messaging services.
GET
https://hub.360dialog.io/api/v2/partners/{partner_id}/clients/{client_id}/channels/{channel_id}/info/balance
Request Example
curl --request GET
--url https://hub.360dialog.io/api/v2/partners/partner_id/clients/client_id/channels/channel_id/info/balance
--header 'Accept: application/json'
--header 'Authorization: '
Name | Type | Description |
---|---|---|
partner_id* | string | |
client_id* | string | |
channel_id* | string |
Name | Type | Description |
---|---|---|
start_date | string | The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date. Example: |
end_date | string | The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date. Example: |
granularity | string | The granularity by which you would like to retrieve the analytics.
Supported Options:
Defaults with |
app_ids | To get usage accumulated from selected app_ids (e.g. |
/info/balance
?
<FILTERING_PARAMETER>
https://hub.360dialog.io/api/v2/partners/{partner_id}/clients/{client_id}/info/balance
?
start_date
=1664582400
&
end_date
=1667260799
&
granularity
=day
Placeholder | Description | Example Value |
---|---|---|
| Required. Metric filtering parameter. Append additional filtering parameters using dots. For possible values, see: |
|
When calling the GET request, you can attach the following{filtering-parameters}
to retrieve the cost and conversation information for a specific WABA.
Name | Description |
---|---|
type: UNIX Timestamp | Required. The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date. Example: 1672531200 |
type: UNIX Timestamp | Required. The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date. Example: 1672531200 |
type: String | Required. The granularity by which you would like to retrieve the analytics. Supported Options:
Defaults with |
| Available only for Get Client Balance endpoint. An array of |
Usage data is approximate and may differ from what’s shown on invoices due to small variations in data processing.
With granularity parameters, you can filter and break down your results. See the code sample below for examples.
A successful response returns the usage
object with the data you have requested.
Every time a message is sent, you can see the conversation information in the webhook. You can build a counter to understand usage and statistics based on this objects.
Please see how this is presented in this specific documentation.