Skip to content
API PlatformDevelopers
GET/v1/short-linksbeta

List WhatsApp short links

Needs
Read your data (mcp:read)
Plan
Any plan with API access
Limits
300 a minute per key
Undo
Nothing to undo: this only reads.

Lists your WhatsApp click-to-chat short links, newest first. Each one is a https://wa.me/message/… link that opens a chat with one of your WhatsApp numbers with a message already typed, and usually a QR code image of it. Each link names the number it belongs to.

Try it

Query (5)

Only links of this WhatsApp channel.

Only links of this WhatsApp number, in any format (`+1 555-555-0100`).

The message contains this text (case-insensitive).

The `next_cursor` from the previous page. Cursors expire after 24 hours.

How many items per page (1–100).

This only reads. It uses your real data and changes nothing.

Code and response

curl -X GET 'https://mcp.wa-api.cloud/v1/short-links' \
  -H "Authorization: Bearer $API_KEY"

The code reads your key from $API_KEY.

Parameters

Parameters
FieldTypeWhat it is
channel_idstring · queryOnly links of this WhatsApp channel.0–64 charactersSigned in? Pick one from your data with “My data”.
phonestring · queryOnly links of this WhatsApp number, in any format (+1 555-555-0100).0–32 characters
searchstring · queryThe message contains this text (case-insensitive).0–100 characters
cursorstring · queryThe next_cursor from the previous page. Cursors expire after 24 hours.1–2048 characters
limitinteger · queryHow many items per page (1–100).1–100 · default 25

Headers

Headers
FieldTypeWhat it is
AuthorizationrequiredheaderBearer $API_KEY — your API key.
Api-VersionheaderThe API version to use, e.g. 2026-10-01. Default: the version your key is pinned to.one of: 2026-10-01 · pattern ^\d{4}-\d{2}-\d{2}$

Response 200

A page of short links.

Response fields
FieldTypeWhat it is
datarequiredarray of object
idrequiredstring
coderequiredstringThe code at the end of the link.
urlrequiredstringThe click-to-chat link (https://wa.me/message/…). Share it, or print its QR code.
messagerequiredstring or nullThe text the customer finds already typed; they can edit it before sending.
qr_image_urlrequiredstring or nullQR code image of the link, hosted by WhatsApp. The link can expire: download and keep your own copy for print.
qr_image_formatrequiredstring or nullPNG or SVG; null when there is no image or its format is not known.one of: PNG, SVG
channelrequiredobject or nullThe WhatsApp number it belongs to.
idrequiredstringWorkspace channel id (as GET /v1/channels lists it).
namerequiredstring or null
phonerequiredstring or nullThe WhatsApp number the link opens a chat with.
created_atrequiredstring or null
updated_atrequiredstring or null
totalrequirednumber
next_cursorrequiredstring or nullPass as "cursor" to get the next page; null when there are no more results.

Errors

Errors are application/problem+json. Branch on code.

StatusCodeWhen
400invalid_input

A field is missing or has the wrong format. errors[] points at each field.

401unauthenticated

The Authorization header is missing, the key is unknown, expired or revoked.

403entitlement_required

The workspace's plan does not include API access (api_access).

403insufficient_scope

The key does not have the permission this operation needs.

404not_found

The channel, or a connected number with this phone, is not in your workspace.

429rate_limited

The key or workspace went over its rate limit. Wait for Retry-After seconds.

503upstream_unavailable

A service behind the API is briefly unavailable. Safe to retry with backoff.

Examples

All short links

Response 200

{
  "data": [
    {
      "id": "sl-12",
      "code": "4PZQX7M2LCKHA1",
      "url": "https://wa.me/message/4PZQX7M2LCKHA1",
      "message": "Hi! I'd like to order 🍕",
      "qr_image_url": "https://scontent-bom5-2.xx.fbcdn.net/m1/v/t6/An9_qr4PZQX7M2LCKHA1?ccb=10-5&oe=66F00000",
      "qr_image_format": "PNG",
      "channel": {
        "id": "301",
        "name": "Main WhatsApp",
        "phone": "+1 555-555-0100"
      },
      "created_at": "2026-09-12T10:00:00.000Z",
      "updated_at": "2026-09-12T10:00:00.000Z"
    }
  ],
  "next_cursor": null,
  "total": 1
}

Operation path

The same operation is also at POST /v1/ops/messaging_list_short_links, with every field in the JSON body.