Documentation
List collections
GET
/v1/collectionsCollectionsThe account's collections, newest first, with how many links each holds. Free holds 20; Pro holds 500; past that, create answers 429 quota_exceeded (details.reason collection_limit). Also available as the MCP tool list_collections.
Example request
curl -s "https://snip.link/v1/collections" \ -H "Authorization: Bearer $SNIP_KEY"
Example response
{
"collections": [
{
"id": "3f6c2a9e-1b4d-4e8a-9c7f-2d5b8e1a0c64",
"name": "Spring launch",
"description": "Everything for the spring menu.",
"public": true,
"slug": "spring-launch",
"page_url": "https://snip.link/c/spring-launch",
"held": false,
"link_count": 6,
"created_at": "2026-10-20T12:00:00.000Z",
"updated_at": "2026-10-21T08:30:00.000Z"
}
]
}Response fields
| Field | Type | Description |
|---|---|---|
collections | Collection[] | |
collections[].id | string | Stable id. |
collections[].name | string | |
collections[].description | string, null | The line under the name on the page. Null for none. |
collections[].public | boolean | True while the page is on: anyone with its address sees the collection's live links. |
collections[].slug | string, null | The page's address after /c/ (https://snip.link/c/<slug>). Kept while the page is off, so it can come back. |
collections[].page_url | string, null | The page, while it is public and not held. Null otherwise. |
collections[].held | boolean | True while the page is down after a report. The collection itself still works. |
collections[].link_count | integer | |
collections[].created_at | string | |
collections[].updated_at | string | |
limit | integer | Collections the plan holds. |
Errors
| Status | Meaning |
|---|---|
| 401 | The API key is missing, malformed or revoked. |
| 429 | Either the key exceeded its requests-per-second limit (honor Retry-After), or a daily or plan quota is used up (details.reason). |