Meta Graph API Onboarding Guide
Onboarding Guide
This guide walks you through the end-to-end onboarding process for integrating with Meta APIs directly via the Graph API. Follow each step in sequence to ensure your WhatsApp Business Account (WABA) is correctly configured.
Prerequisites
Before proceeding, ensure you have a valid global username and the following identifiers ready:
| Prerequisite | Description |
|---|---|
| Global Username | Created before starting onboarding |
| WABA ID | WhatsApp Business Account ID |
| Phone Number ID | Linked phone number identifier |
| Client MSISDN | Your registered phone number |
| User Token | Authorization token for API requests |
Onboarding flow
Create the user using the parent token provided to the TSP.
Generate the Login API user token using the username and password received on Email ID.
Map your WABA ID to a system user.
Store and map WABA details for coexistence.
Map a credit line to your WABA account.
Step 1: User Creation
Use the provided API to create a user. Ensure that the country in the payload is from the supported countries list (refer to the attached file for the list).
Endpoint Details
| Field | Value |
|---|---|
| Method | POST |
| URL | https://apis.rmlconnect.net/wbm-analytics-apis/api/analytics/create-user-with-pageaccess |
| Authorization | Parent token provided to the TSP (in Authorization header) |
| Additional Headers | Api-Type: reseller-onboard |
Note: This API must be called using the parent token provided to the TSP.
Request Body
{
"first_name": "XXXX",
"last_name": "XXXX",
"username": "XXXX",
"isv_username": "<ISV_USERNAME>",
"email": "XXXX",
"phone": "+9123232XXXX",
"legal_company_name": "RML",
"legal_company_address": "RML",
"country": "American Samoa"
}Sample cURL Command
curl --location '[https://apis.rmlconnect.net/wbm-analytics-apis/api/analytics/create-user-with-pageaccess](https://apis.rmlconnect.net/wbm-analytics-apis/api/analytics/create-user-with-pageaccess)' <br />--header 'Authorization: <token>' <br />--header 'Api-Type: reseller-onboard' <br />--header 'Accept: application/json' <br />--header 'Content-Type: application/json' <br />--data '{
st_name": "XXXX",
t_name": "XXXX",
rname": "XXXX",
_username": "<ISV_USERNAME>",
il": "XXXX",
ne": "+9123232XXXX",
al_company_name": "RML",
al_company_address": "RML",
ntry": "American Samoa"
'After hitting the user creation API, the username and password generated will be triggered to the registered Email ID.
Step 2: Login API (User Token)
Hit the Login API using the username and password generated on Email ID in order to create the user token.
Endpoint Details
| Field | Value |
|---|---|
| Method | POST |
| URL | https://apis.rmlconnect.net/auth/v1/login/ |
| Authorization | This API must be called using the parent token provided to the TSP. |
Sample cURL Command
curl --location '[https://apis.rmlconnect.net/auth/v1/login/](https://apis.rmlconnect.net/auth/v1/login/)' <br />--header 'Content-Type: application/json' <br />--header 'Accept: application/json' <br />--data '{
rd": "<string>",
me": "<string>"
'Step 3: System User Mapping
Map your WABA ID to a system user by calling the System User Mapping API. This establishes the permissions your integration will have over the WhatsApp Business Account.
Endpoint Details
| Field | Value |
|---|---|
| Method | POST |
| URL | https://apis.rmlconnect.net/wam/v1/system-user-mapping |
| Authorization | Login API (User Token) generated for the user (in Authorization header) |
Request Body
{
"waba_id": "2061629777XXXXX",
"tasks": [
"DEVELOP",
"MANAGE_TEMPLATES",
"MANAGE_PHONE",
"VIEW_COST",
"MANAGE_EXTENSIONS",
"MANAGE_PHONE_ASSETS",
"VIEW_TEMPLATES",
"VIEW_INSIGHTS",
"MANAGE_USERS",
"MANAGE_BILLING",
"VIEW_PHONE_ASSETS"
]
}Sample cURL Command
curl --location '[https://apis.rmlconnect.net/wam/v1/system-user-mapping](https://apis.rmlconnect.net/wam/v1/system-user-mapping)' <br />--header 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...' <br />--header 'Content-Type: application/json' <br />--data '{
id":"2061629777XXXXX",
":["DEVELOP","MANAGE_TEMPLATES","MANAGE_PHONE",
"VIEW_COST","MANAGE_EXTENSIONS","MANAGE_PHONE_ASSETS",
"VIEW_TEMPLATES","VIEW_INSIGHTS","MANAGE_USERS",
"MANAGE_BILLING","VIEW_PHONE_ASSETS"]
'Step 4: Redis Entry — Set Details for Coexistence
After completing the system user mapping, use the Redis Entry API to store and map the WABA details. This is required to configure the coexistence settings for the Graph API integration.
Endpoint Details
| Field | Value |
|---|---|
| Method | POST |
| URL | https://apis.rmlconnect.net/wba/management/v1/set-details-for-coexistence?debug=1 |
| Authorization | Login API (User Token) generated for the user (in authorization header) |
Request Body
{
"waba_id": "<WABA_ID>",
"phone_no_id": "<PHONE_NUMBER_ID>",
"client_msisdn": "<PHONE_NUMBER>",
"user_type": "GRAPH-API"
}Sample cURL Command
curl --location '[https://apis.rmlconnect.net/wba/management/v1/set-details-for-coexistence?debug=1](https://apis.rmlconnect.net/wba/management/v1/set-details-for-coexistence?debug=1)' <br />--header 'authorization: \<USER_TOKEN>' <br />--header 'content-type: application/json' <br />--data '{
id": "<WABA_ID>",
_no_id": "<PHONE_NUMBER_ID>",
t_msisdn": "<PHONE_NUMBER>",
type": "GRAPH-API"
'Note: Always select 'GRAPH-API' in the user_type field. Do not use any other value for Graph API onboarding.
Step 5: Credit Line Mapping
Map a credit line to your WABA account. This ensures that the account is correctly linked to its payment and billing setup before sending messages.
Endpoint Details
| Field | Value |
|---|---|
| Method | POST |
| URL | https://apis.rmlconnect.net/wam/v1/credit-line-mapping?debug=True |
| Authorization | Login API (User Token) generated for the user (in Authorization header) |
Request Body
{
"waba_id": "1234",
"waba_currency": "INR"
}Sample cURL Command
curl --location '[https://apis.rmlconnect.net/wam/v1/credit-line-mapping?debug=True](https://apis.rmlconnect.net/wam/v1/credit-line-mapping?debug=True)' <br />--header 'Authorization: Rml Token' <br />--header 'Content-Type: application/json' <br />--data '{
id": "1234",
currency": "INR"
'Summary
Once all four steps are completed successfully, your WhatsApp Business Account will be fully onboarded to the Meta Graph API. The table below summarizes the process:
| Step | Name | API Endpoint | Key Parameter |
|---|---|---|---|
| 1 | User Creation | /wbm-analytics-apis/api/analytics/create-user-with-pageaccess | first_name, username, country |
| 2 | Login API (User Token) | /auth/v1/login/ | username, password |
| 3 | System User Mapping | /wam/v1/system-user-mapping | waba_id + tasks |
| 4 | Redis Entry (Coexistence) | /wba/management/v1/set-details-for-coexistence | waba_id, phone_no_id, user_type |
| 5 | Credit Line Mapping | /wam/v1/credit-line-mapping | waba_id, waba_currency |
Updated 12 days ago