One step in the WA.Expert builder lets you connect WhatsApp to almost any service on the internet. Learn it once here, and every connection guide we publish becomes a five-minute job.
Most of what people want WhatsApp to do, fetch an order status, ask an AI a question, push a lead into a CRM, look something up in a Google Sheet, comes down to one thing: talking to another service's API. WA.Expert gives you a single step for that, the External API Request step, available in both the automation builder and the chatbot builder.
This page explains that step completely, field by field. It is the foundation for everything in our Connect section. Once you understand the seven fields here, every specific guide, connect to Gemini, connect to Razorpay, connect to Shopify, is just us telling you which values to type into which field. The concept never changes; only the values do.
The interface of every service you connect to will change over time. Buttons move, pages get renamed, model versions get retired. What does not change is the shape of an API request: a method, a URL, authentication, and a body. Learn that shape once and you can connect to a service even after its setup screens have been redesigned. That is why this guide leads with the idea and links to each provider's live documentation for the parts that drift.
Here is the External API Request step as it appears in the builder. Every field is covered below, in the order you fill them in.
It looks like a lot of fields, but most requests use only three or four of them. A simple data lookup needs a method, a URL, and usually an authentication header. That is it.
A WhatsApp number you use to test the step while you build it. When you press Run and Save, WA.Expert runs the request as if this contact had triggered it, so you can see a real response before the automation goes live. It has no effect once the flow is running for real customers; it is purely a testing convenience.
The kind of request you are making. The two you will use most are GET and POST.
| Method | What it does | Typical use |
|---|---|---|
| GET | Reads data without changing anything | Look up an order, fetch a price, check stock |
| POST | Sends data to create or trigger something | Ask an AI a question, create a CRM lead, send to a sheet |
| PUT / PATCH | Updates an existing record | Change an order status, edit a contact |
| DELETE | Removes a record | Cancel a booking, delete an entry |
The service's documentation states which method each of its endpoints expects. Use the one it specifies.
Most API documentation gives you a ready-made example as a cURL command (a block starting with curl). The step has an Import cURL button: paste that command and WA.Expert fills in the method, URL, headers, and body for you automatically. When a provider's docs offer a cURL example, this is the fastest way to set the step up correctly.
The web address of the specific endpoint you are calling. This is the single most important value, and it always comes straight from the service's API documentation. It usually looks like a normal URL with a path that names what you want, for example a path ending in /orders or /messages or /generateContent. Some services include a version such as /v1/ or /v1beta/ in the path; copy it exactly as the docs show, including the version.
How the service checks that you are allowed to call it. The step offers a few types; which one you pick depends entirely on what the service uses.
| Auth type | What it means | Where the key goes |
|---|---|---|
| No Auth | The endpoint is open, no key needed | Nothing to add (rare for real services) |
| API key in header | A secret key sent as a header | Header Parameters, e.g. Authorization or x-api-key |
| API key in query | A secret key added to the URL | Query Parameters, e.g. key=YOUR_KEY |
| Bearer token | A token sent as Authorization: Bearer | Header Parameters |
If you are unsure, the service's authentication docs will tell you. Header-based keys are more secure than query-based ones and are the modern default.
Extra information attached to the request, added as name and value pairs. This is where authentication usually lives. The two you will meet constantly are the authentication header (carrying your API key) and Content-Type, which tells the service you are sending JSON. A typical pair looks like the name Content-Type with the value application/json.
Values added to the end of the Request URL after a question mark, again as name and value pairs. Use them when the documentation asks for them, for filters, page numbers, or, on some older services, the API key itself. You can type them into the URL directly or add them here; adding them as parameters keeps the URL tidy and is easier to edit later.
The data you send with the request, used mainly with POST. For most modern APIs this is JSON, a structured block of fields. Set the body type to JSON (raw) and paste the structure the documentation specifies, then replace the example values with your own data or with values pulled from your flow. A GET request usually has no body, so this stays as None.
How WA.Expert should interpret the reply. Default Response handles standard JSON, which covers nearly everything. After the step runs, you map fields out of that response, for example pulling the answer text out of an AI reply, or the status out of an order lookup, and use them in the next step of your flow.
Every connection, to any service, comes down to finding four things in that service's documentation. Once you have them, filling in the step takes minutes.
Connecting WhatsApp to a new service is never harder than answering those four questions from its documentation. Our guides do the finding for you: each one points to the exact doc section and gives you the values to paste. If a guide ever goes out of date because a provider moved something, these four questions are how you find the new location yourself.
Suppose a service lets you look up a postal code and returns the city and state. Its docs say: send a GET request to a URL ending in the postal code, no authentication needed. Here is how that maps onto the step.
Method is GET because we are only reading. The Request URL is the endpoint with the pincode on the end. There is no authentication, so Auth Type stays No Auth and there are no headers. There is no body on a GET, so Body Type stays None. Response Type is Default Response, and from the reply we would map out the city and state to use in the next WhatsApp message. That is a complete, working connection with three fields filled in.
Now that you know the step, pick a service from the Connect hub. Each guide gives you the exact method, URL, auth, and body for that service, plus a worked WhatsApp example and troubleshooting. The AI guides (starting with Gemini) are a good place to begin, since adding an AI reply to a chatbot is one of the most popular uses of this step.
Free trial, no credit card required. And if you ever get stuck, we are the only platform in India that answers you live on WhatsApp.