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'
client_id*
string
ID of the client
partner_id*
string
ID of the partner
end_date
UNIX Timestamp
The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date.
Example: 1672531200
start_date
UNIX Timestamp
The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date.
Example: 1672531200
granularity
string
The granularity by which you would like to retrieve the analytics.
Supported Options:
DAY
, MONTH
Defaults with MONTH
if no value is provided in the request.
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: '
partner_id*
string
client_id*
string
channel_id*
string
start_date
string
The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date.
Example: 1672531200
end_date
string
The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date.
Example: 1672531200
granularity
string
The granularity by which you would like to retrieve the analytics.
Supported Options:
DAY
, MONTH
Defaults with MONTH
if no value is provided in the request.
app_ids
To get usage accumulated from selected app_ids (e.g. ?app_ids=100,200)
/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
<FILTERING_PARAMATERS>
Required.
Metric filtering parameter. Append additional filtering parameters using dots.
For possible values, see:
start_date=1664582400&end_date=1667260799&granularity=day
When calling the GET request, you can attach the following{filtering-parameters}
to retrieve the cost and conversation information for a specific WABA.
start_date
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
end_date
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
granularity
type: String
Required.
The granularity by which you would like to retrieve the analytics. Supported Options:
DAY
MONTH
Defaults with MONTH
if no value is provided in the request.
app_id
type: array
Available only for Get Client Balance endpoint.
An array of app_ids
for which you would like to retrieve usage. If not provided, all app ids
in the WABA are included.
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.