Skip to content

List tracked links

GET
/links
curl --request GET \
--url 'https://app.whatsetter.com/api/v1/links?status=active&limit=25' \
--header 'Authorization: Bearer <token>'

The workspace’s tracked WhatsApp links, newest first, with their click counter and last click. Filter by campaign (document id or slug) and status. Requires scope links:read.

campaign_id
string

Campaign document id or campaign_id slug.

status
string
Allowed values: active inactive
limit
integer
default: 25 >= 1 <= 100
cursor
string

Opaque cursor from the previous page’s pagination.next_cursor.

The links

Media typeapplication/json
object
data
Array<object>
object
id
string
slug
string
name
string | null
url

The public short link, https://app.whatsetter.com/l/<slug>.

string
campaign_id

The campaign slug the link routes to.

string | null
status
string
Allowed values: active inactive
channel

auto = the platform is read on each click (default); otherwise a forced platform (instagram, tiktok, …).

string
clicks

Click counter

integer
last_click_at
string | null format: date-time
created_at
string format: date-time
pagination
object
has_more
boolean
next_cursor
string | null
Example
{
"data": [
{
"id": "68d9aa11bb22cc33dd44ee55",
"slug": "insta-bio",
"name": "Instagram bio",
"url": "https://app.whatsetter.com/l/insta-bio",
"campaign_id": "auto24-maroc-4-bu76",
"status": "active",
"channel": "auto",
"clicks": 128,
"last_click_at": "2026-09-18T10:00:00.000Z",
"created_at": "2026-09-01T08:00:00.000Z"
}
],
"pagination": {
"has_more": false,
"next_cursor": null
}
}

Missing, unknown or revoked API key

Media typeapplication/json
object
error
object
code
string
message
string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}

The key lacks the required scope

Media typeapplication/json
object
error
object
code
string
message
string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}

Invalid parameter or body (also an invalid or expired cursor)

Media typeapplication/json
object
error
object
code
string
message
string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}