Host your own Embedded Signup
For even more personalization, you can also host your own Embedded Signup flow.
At the moment, this is only available for Partners using Partner Payment model.
Requirements
Tech Provider registration and approved Solution
To enable this option, you must be a Meta approved Tech Provider and have a live Solution with 360dialog.
Refer to the following documentation to understand details about this option:
Technical capacity to host and manage your own Embedded Signup
You will also need to be able to host and manage your own Embedded Signup script, which requires technical knowledge. We will not be able to support you on troubleshooting your own Embedded Signup.
Cloud API enabled
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.
This option is only available if your Partner Hub is already enabled for Cloud API.
Set Partner Hub Webhook URL and listen to Webhook Events
Building the Integration
Step 1: Create or retrieve a Client Account
In order to later submit the number, you need to either retrieve an existing client_id
or create a new client instance through our Partner API using the endpoint below. Make sure to store the Client ID of each client within your database, since it will be required afterwards. Alternatively, you can also retrieve it with this endpoint.
Create client account
POST
https://hub.360dialog.io/api/v2/partners/{partner_id}/account_sharing/clients
Request example
curl --request POST
--url https://hub.360dialog.io/api/v2/partners/partner_id/account_sharing/clients
--header 'Accept: application/json'
--header 'Authorization: Bearer 123'
--header 'Content-Type: application/json'
--data '{ "name": "string", "email": "string", "user_name": "string"}'
Request Body
Name | Type | Description |
---|---|---|
name* | string | Name of the client user |
email* | string | Email address of the client user. |
user_name* | string | Name of the client user. |
Step 2: Surface Embedded Signup to client and fetch information
When the Embedded Signup is completed by the client, you can use the code received in the payload to fetch detailed WABA information. See more here and here.
Step 3: Connect Client account to registered Phone Number
Use the endpoint below to submit the phone number/channel to 360dialog records. If the number was successfully onboarded via self-hosted Embedded Signup and the attached client_id
matches the user data in 360dialog records, the onboarding flow end by redirecting the Client to the Partner Redirect URL set.
Submit channel/number created via self-hosted Embedded Signup
POST
https://hub.360dialog.io/api/v2/partners/{partner_id}/account_sharing/numbers
Request example
curl --request POST
--url https://hub.360dialog.io/api/v2/partners/partner_id/account_sharing/numbers
--header 'Accept: application/json'
--header 'Authorization: Bearer 123'
--header 'Content-Type: application/json'
--data '{ "solution_id": "string", "waba_external_id": "string", "waba_business_id": "string", "client_id": "string", "tier": "string" }'
Path Parameters
Name | Type | Description |
---|---|---|
partner_id* | string |
Request Body
Name | Type | Description |
---|---|---|
solution_id* | string | Your approved Solution ID |
waba_business_id | string | The Client's Business Manager ID |
waba_external_id* | string | The WABA ID returned through the ES callback. |
client_id | string | The ID of the client |
tier | string | Can be used to set the default pricing plan for the number to be added. Will only work for partners enabled for tiered pricing. *If you are not sure of you billing plan, please reach out to our Support Team. Clients on partners with client payment will be able to change the pre-selected plan. Allowed values:
Default: |
Use the tier
parameter to set the pricing plan. If no value is provided, numbers will be connected with regular
pricing plan as default.
Step 4: Create API key to start messaging
When the number is fully live, you will receive the Channel Live Webhook Event.
You should be able to generate an API Key and connect it to your integration to start messaging with this phone number by default.
See Partner Permissions for details.
Last updated