Viso.li

Get All Campaigns

GEThttps://viso.li/api/campaign

Returns a paginated list of campaigns you own, including goal config and current progress. Attached links are omitted here — use GET campaign for the full link set.

Filter by createdAt window, stored status, or template key.

Send Authorization: Bearer sk_api_your_api_key on every request. See authentication.

Query parameters

All filters are optional. Newest campaigns first.

FieldTypeDescription
createdFromstringISO 8601 inclusive start of the createdAt window.
createdTostringISO 8601 inclusive end of the createdAt window. Must be on or after createdFrom.
statusstringDRAFT, ACTIVE, or ENDED.
templateKeystringKnown template key, for example bio-evergreen.
searchstringCase-insensitive match on name or description.
pagenumberPage number, starting at 1. Defaults to 1.
pageSizenumberItems per page, max 100. Defaults to 20.

Example request

This lists active campaigns created in 2026 through 23 August.

1curl "https://viso.li/api/campaign?createdFrom=2026-01-01T00:00:00.000Z&createdTo=2026-08-23T23:59:59.000Z&status=ACTIVE&page=1&pageSize=20" \
2 -H "Authorization: Bearer sk_api_your_api_key"

Success response

Returns 200 OK.

response.json
1{
2 "campaigns": [
3 {
4 "id": "3f1c0c2a-7b4e-4d91-9c2a-1b8e6f0d2a11",
5 "name": "Bio link",
6 "description": null,
7 "status": "ACTIVE",
8 "templateKey": "bio-evergreen",
9 "goal": {
10 "type": "CLICKS",
11 "config": {
12 "target": 10000,
13 "windowDays": 30
14 }
15 },
16 "progress": {
17 "type": "CLICKS",
18 "target": 10000,
19 "current": 1240,
20 "remaining": 8760,
21 "percent": 12,
22 "reached": false
23 },
24 "linkCount": 1,
25 "startsAt": null,
26 "endsAt": null,
27 "createdAt": "2026-08-22T14:00:00.000Z"
28 }
29 ],
30 "page": 1,
31 "pageSize": 20,
32 "total": 1,
33 "totalPages": 1
34}

Response fields

FieldTypeDescription
campaignsobject[]Page of campaigns. Same fields as GET campaign, without links.
pagenumberCurrent page.
pageSizenumberRequested page size.
totalnumberTotal matching campaigns.
totalPagesnumberTotal pages at this page size.

Errors

StatusErrorDescription
400Bad RequestInvalid page, dates, status, or template key.
401UnauthorizedMissing, malformed, or invalid Bearer token.
403ForbiddenCampaigns are not available on the current plan.
429Too Many RequestsMore than 10 requests per minute or 50 requests per day.
500Internal Server ErrorUnexpected server error. Retry the request.