---
title: "Official WhatsApp API | Meta Cloud API Provider | D-API"
description: "D-API is an official WhatsApp API (Meta Cloud API) provider: verified account, help with template approval, webhooks with retries and dedicated onboarding."
url: https://d-api.cloud/en/official-whatsapp-api
---

Solution · Official WhatsApp API

# Official WhatsApp API to scale within Meta's rules

D-API is a provider of the official WhatsApp API (Meta Cloud API / WhatsApp Business Platform). Verified account, approved templates and the same integration stack your team already knows, with dedicated onboarding from start to finish.

-   Uptime: 99.9%
-   Channel: Official Meta
-   Onboarding: Dedicated

## Talk to our team

See how D-API fits into your product. Support in English, and we reply within 1 business day.

Short answer

## How do you use the official WhatsApp API?

The official WhatsApp API (Meta Cloud API) is Meta's channel for businesses, with a verified account and outbound messages sent through approved templates. D-API is a provider of this channel and supports account setup, business verification and template submission, while approval is decided by Meta. The integration uses the same D-API REST API, Node.js SDK and webhooks.

The problem

## You shouldn't be solving this.

Problems D-API takes off your plate.

1.  ### You need an official channel, but the Meta process stalls
    
    Account setup, business verification and template approval turn into a bureaucratic maze. Without help, each step drags on for weeks and the project never gets off the ground.
    
2.  ### Templates rejected with no clear reason
    
    You write the message, submit it for approval and get a generic "rejected" back. Without someone who knows Meta's rules, you are stuck in trial and error while the operation waits.
    
3.  ### Providers that disappear after the sale
    
    You sign up for the official API and, when something breaks in production, you end up in a ticket form with no answer. There is no fast, human channel when your WhatsApp stops.
    

How it works

## From zero to production in five steps.

1.  ### Talk to sales
    
    Tell us your use case: support, notifications or sales. Together we assess whether the official API is the right channel for you and plan the next step.
    
2.  ### Account setup and verification
    
    We support you through account setup, business verification and number configuration with Meta, without getting stuck in bureaucracy.
    
3.  ### Template approval
    
    We help you structure and submit your message templates for approval, following Meta's rules to reduce rejections.
    
4.  ### Integration via API and webhooks
    
    Connect your application with the REST API and the Node.js SDK, set up webhooks and start sending and receiving messages on the official channel.
    
    [Read the docs](https://docs.d-api.cloud/)
    
5.  ### Operation and follow-up
    
    Go to production with real-time delivery and read reports, and the D-API team close by in your onboarding group.
    
    [See integrations](https://d-api.cloud/en/integrations)
    

Node.jscURLPythonPHP

```
import { DApi } from 'd-api-sdk'

const dapi = new DApi({ apiKey: process.env.DAPI_API_KEY })

await dapi.sessions.create({
  sessionId: 'customer-42',
  webhookUrl: 'https://your-app.com/webhooks/whatsapp',
})

const { qrCodeImage } = await dapi.sessions.getQRCode('customer-42')

// once the number scans the QR code
await dapi.messages.sendText({
  sessionId: 'customer-42',
  to: '14155550123',
  text: 'Your order is confirmed!',
})
```

```
curl -X POST https://api.d-api.cloud/api/v1/sessions \
  -H "Authorization: $DAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sessionId": "customer-42", "webhookUrl": "https://your-app.com/webhooks/whatsapp"}'

curl https://api.d-api.cloud/api/v1/sessions/customer-42/qr \
  -H "Authorization: $DAPI_API_KEY"

# once the number scans the QR code
curl -X POST https://api.d-api.cloud/api/v1/messages/send/text \
  -H "Authorization: $DAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sessionId": "customer-42", "to": "14155550123", "text": "Your order is confirmed!"}'
```

```
import os
import requests

API = "https://api.d-api.cloud/api/v1"
HEADERS = {"Authorization": os.environ["DAPI_API_KEY"]}

requests.post(f"{API}/sessions", headers=HEADERS, timeout=10, json={
    "sessionId": "customer-42",
    "webhookUrl": "https://your-app.com/webhooks/whatsapp",
})

qr = requests.get(f"{API}/sessions/customer-42/qr", headers=HEADERS, timeout=10).json()

# once the number scans the QR code
requests.post(f"{API}/messages/send/text", headers=HEADERS, timeout=10, json={
    "sessionId": "customer-42",
    "to": "14155550123",
    "text": "Your order is confirmed!",
})
```

```
<?php
use GuzzleHttp\Client;

$dapi = new Client([
    'base_uri' => 'https://api.d-api.cloud/api/v1/',
    'headers'  => ['Authorization' => getenv('DAPI_API_KEY')],
    'timeout'  => 10,
]);

$dapi->post('sessions', ['json' => [
    'sessionId'  => 'customer-42',
    'webhookUrl' => 'https://your-app.com/webhooks/whatsapp',
]]);

$qr = json_decode($dapi->get('sessions/customer-42/qr')->getBody(), true);

// once the number scans the QR code
$dapi->post('messages/send/text', ['json' => [
    'sessionId' => 'customer-42',
    'to'        => '14155550123',
    'text'      => 'Your order is confirmed!',
]]);
```

### Works with the tools you already use

-   Node.js SDK
-   Webhooks
-   n8n
-   Make
-   Datacrazy CRM

What you get

## Meta's official, verified channel, with onboarding from people who actually answer.

-   ### Official, verified channel
    
    D-API is a provider of the official WhatsApp API (Meta's WhatsApp Cloud API). You operate with a verified account and send approved templates, within the platform's rules. [See how the official API works](https://docs.d-api.cloud/).
    
-   ### Help with setup and approval
    
    We help with account setup, business verification and template approval with Meta. You do not face the bureaucracy alone.
    
-   ### The same D-API integration stack
    
    REST API documented in Swagger (OpenAPI 3) and an official Node.js SDK. Your team integrates with the official API using the same pattern it already knows. [Start with the docs](https://docs.d-api.cloud/).
    
-   ### Webhooks with automatic retries
    
    Every message event reaches your system with exponential backoff retries. No events silently lost between Meta and your application.
    
-   ### Real-time reports
    
    Track delivery, reads and replies for every message in real time. You see how campaigns and support are performing without manual spreadsheets.
    
-   ### Automation and CRM integrations
    
    Connect the official API to n8n, Make, Zapier and Datacrazy CRM. Automate sends, support flows and data sync without writing everything from scratch.
    
-   ### Dedicated onboarding on WhatsApp
    
    You get a WhatsApp group with the D-API team to answer questions and solve production issues fast, with support in English. Support from people who actually answer.
    

FAQ

## Frequently asked questions.

### What is the official WhatsApp API and why use it?

It is Meta's official channel (WhatsApp Cloud API / WhatsApp Business Platform) for businesses to communicate at scale on WhatsApp. D-API is a provider of this official, verified channel, ideal if you need a verified account, approved templates and an operation within the platform's rules.

### Does D-API help with setup and template approval?

Yes. We support account setup, business verification and template approval with Meta. The goal is to take the bureaucracy out of your way so the project reaches production faster.

### How does the technical integration work?

You use the same D-API stack: REST API documented in Swagger (OpenAPI 3), an official Node.js SDK and webhooks with exponential backoff retries. It also integrates with n8n, Make, Zapier and Datacrazy CRM. [Start with the docs](https://docs.d-api.cloud/).

### What is the difference between D-API's official and unofficial API?

The official API is Meta's verified channel, sending through approved templates, recommended when you need a formal, compliant channel. The unofficial API lives on the same D-API platform, and you pick the channel per use case. If needed, we help you decide which one makes sense for you.

### What kind of support do I get after signing up?

You get dedicated onboarding in a WhatsApp group directly with the D-API team, with support in English, plus high availability with 99.9% uptime. When something happens in production, you talk to people who solve it, not to a form.

## Related guides

-   [Official vs unofficial](https://d-api.cloud/en/official-vs-unofficial-whatsapp-api)
-   [Transactional notifications](https://d-api.cloud/en/whatsapp-transactional-notifications)
-   [Verification codes](https://d-api.cloud/en/whatsapp-otp-verification)
-   [Bulk messaging](https://d-api.cloud/en/whatsapp-bulk-messaging-api)

## Ready to go to production?

3-day free trial with full access. No credit card, no lock-in.

[Talk to sales](https://d-api.cloud/#lead)[Read the docs](https://docs.d-api.cloud/)
