There is no hand-maintained Postman collection to download, and that is deliberate: the Wapito
API is described by one OpenAPI 3.1 document, https://wapito.com/openapi.yaml, and it is the
same document that generates the API reference, the code snippets on every page and
the contract test the API itself is held to. Postman, Insomnia and Bruno all import OpenAPI
directly, so the collection you get is complete, current, and never a version behind the API.
This page shows the import in each tool, the two values you set once, and a few habits that keep
a shared collection from leaking a token.
What you will need
- A channel token (
wpt_…) from the channel's API tab. If you do not have one yet, getting started takes about five minutes. - The base URL, which is the same for every plan:
https://api.wapito.com/v1. The OpenAPI document carries it in itsserversblock, so every importer below picks it up as a variable.
Nothing else. The document declares one security scheme, bearerAuth, and every operation uses
it, which is why a single collection-level authorization setting covers all of them.
Postman
- In a workspace, choose Import, then paste
https://wapito.com/openapi.yamlinto the link/URL field (or download the file and drop it in). Postman recognises it as OpenAPI 3.1 and offers to import it as a Postman collection; accept the defaults. - Open the new Wapito API collection. Its requests are grouped into folders by tag —
messages, groups, webhooks and so on — and each carries the example body from the
reference, so a
POST /messages/textalready has atoand abodyto edit. - Open the collection's Variables tab. The import created
baseUrlfrom theserversblock; confirm it readshttps://api.wapito.com/v1. - Open the collection's Authorization tab, set the type to Bearer Token and the token
to
{{wapitoToken}}. Then addwapitoTokenas a variable — in a Postman environment rather than on the collection, and in its current value only (see the note on sharing below). - Select the environment and send
GET /channel. A200with your channel's name and"status": "connected"means the token and the base URL are right; a401means one of them is not — the authentication guide lists the three codes.
Postman shows the OpenAPI examples for each response as well, so you can read what a 429 or a
409 looks like before you ever get one.
Insomnia
Choose Import from the workspace menu, pick URL and paste
https://wapito.com/openapi.yaml. Insomnia creates a collection with the same tag folders and a
base environment holding base_url. Open the collection's environment, add token, and set the
collection's Auth to Bearer Token with {{ _.token }}. Requests inherit it. Send
GET /channel to check.
Bruno
Bruno keeps collections as plain files, which suits a repository. Download the document first
(curl -O https://wapito.com/openapi.yaml), then choose Import Collection → OpenAPI V3 File
and pick it. In the collection settings, set Auth to Bearer Token with {{token}}, create
an environment with baseUrl and token, and commit the collection folder to your repo with the
environment file listed in .gitignore. Bruno's .bru files diff cleanly, so a re-import after
an API change shows exactly which requests moved.
The same thing without a desktop app
The interactive reference is the same OpenAPI document rendered in the browser with a request runner: paste a token into its authentication field — it stays in your browser — pick an operation, and send. It is the fastest way to try one call, and the reference pages beside it show the same request in twelve languages.
And for anything you will run twice, curl with the token in the environment beats every GUI:
export WAPITO_TOKEN="wpt_…"
curl https://api.wapito.com/v1/channel -H "Authorization: Bearer $WAPITO_TOKEN"
Working with the collection
Sends are real. A POST /messages/text from Postman sends a WhatsApp message from your
linked number and counts against the daily quota exactly like one from production. Point the
collection at a sandbox channel linked to a number of your own, and message yourself.
Use one environment per channel. A sandbox environment and a production one, each with
its own wapitoToken, is the cheapest way to make sure a test never leaves the wrong number.
Switching channels is switching environments; nothing in the requests changes, because the token
is the only thing that names a channel.
Keep tokens out of synced workspaces. In a team workspace Postman syncs collection variables
and environments' initial values to its cloud; only the current value stays on your machine.
Put wapitoToken in the current value and leave the initial value empty, or the token is a
shared secret the moment you press save. Insomnia and Bruno keep environments local unless you
opt into sync; check before you enable it.
Re-import after a changelog entry. The document's info.version moves when the API changes,
and the changelog says what changed. Re-importing replaces the collection's
requests but keeps your variables, so it is safe to do often. Breaking changes are announced
before they ship, never after.
Expect some 501s. Around thirty operations are published for contract stability — the
communities and business-catalog endpoints, interactive and carousel messages, story listing
and a few more — and answer 501 feature_not_available today. They are marked x-phase: 2 in
the document and shown as planned in the reference. A 501 engine_unsupported_feature, by contrast, means the
operation exists but not on the engine this channel runs; its details.hint says which engine to
switch to.
Read the errors tab. Every operation in the document lists the error codes it can return, and
each code links to a page under error codes with its cause and fix. When a
request in Postman comes back red, the code in the body is the thing to search for.