Saves
Newest first. Includes the caller's private saves, with one exception: if the caller has enabled Hide private board saves from profile feed in their Savee settings, saves that belong to a private board are left out here too. The user field on each save is omitted because the caller is implicitly the owner.
AuthorizationBearer <token>Personal access token (sv_live_…) — represents you and carries every scope, so no scope is required for this call. Best for your own scripts and internal tools. Generate one at https://savee.com/developers/.
limit?integerPage size (default 30, max 100).
1 <= value <= 100cursor?stringOpaque cursor returned in next_cursor from the previous page. Pass it through verbatim — the encoding is an implementation detail and may change.
A page of saves.
application/json- response
data*array<>next_cursor*|Pass as cursor to fetch the next page. null on the last page.
has_more*booleanWhether another page is available. Keep paging while this is true.
curl -X GET 'https://api.savee.com/v1/saves'{ "data": [ { "id": "string", "short_id": "string", "url": "http://example.com", "name": "string", "source_url": "string", "created_at": "2019-08-24T14:15:22Z", "is_private": true, "total_saves": 0, "media": { "type": "image", "width": 0, "height": 0, "thumbnail": "http://example.com", "original": "http://example.com" }, "detected_aesthetics": "string", "colors": [ { "color": "string", "amount": 0 } ], "user": { "id": "string", "username": "string", "name": "string", "url": "http://example.com", "avatar_url": "http://example.com" } } ], "next_cursor": "string", "has_more": true}Look up one save by either of its identifiers.
saveID accepts the id returned by any listing endpoint (67aada20d242ec0009400825) or the save's short_id — the segment in its savee.com URL. So a link like https://savee.com/i/997d6DW/ becomes GET /v1/saves/997d6DW directly, with no lookup step in between. The two forms can't be confused: an id is 24 hex characters, a short_id is 7.
Visible to the caller are their own saves (including private ones) and any public save on Savee. A save that exists but isn't visible returns 404 rather than 403 — the API does not confirm whether someone else's private save exists. Unlike /v1/saves, the response always includes the user who created the save, since it may not be the caller.
AuthorizationBearer <token>Personal access token (sv_live_…) — represents you and carries every scope, so no scope is required for this call. Best for your own scripts and internal tools. Generate one at https://savee.com/developers/.
saveID*stringThe save id, or its short_id from a savee.com /i/…/ URL.
The save.
application/json- response
data*curl -X GET 'https://api.savee.com/v1/saves/string'{ "data": { "id": "string", "short_id": "string", "url": "http://example.com", "name": "string", "source_url": "string", "created_at": "2019-08-24T14:15:22Z", "is_private": true, "total_saves": 0, "media": { "type": "image", "width": 0, "height": 0, "thumbnail": "http://example.com", "original": "http://example.com" }, "detected_aesthetics": "string", "colors": [ { "color": "string", "amount": 0 } ], "user": { "id": "string", "username": "string", "name": "string", "url": "http://example.com", "avatar_url": "http://example.com" } }}Saves from users this user follows (and platform-curated content), newest first. Each save includes a user object describing the saver.
AuthorizationBearer <token>Personal access token (sv_live_…) — represents you and carries every scope, so no scope is required for this call. Best for your own scripts and internal tools. Generate one at https://savee.com/developers/.
limit?integerPage size (default 30, max 100).
1 <= value <= 100cursor?stringOpaque cursor returned in next_cursor from the previous page. Pass it through verbatim — the encoding is an implementation detail and may change.
A page of feed saves.
application/json- response
data*array<>next_cursor*|Pass as cursor to fetch the next page. null on the last page.
has_more*booleanWhether another page is available. Keep paging while this is true.
curl -X GET 'https://api.savee.com/v1/feed'{ "data": [ { "id": "string", "short_id": "string", "url": "http://example.com", "name": "string", "source_url": "string", "created_at": "2019-08-24T14:15:22Z", "is_private": true, "total_saves": 0, "media": { "type": "image", "width": 0, "height": 0, "thumbnail": "http://example.com", "original": "http://example.com" }, "detected_aesthetics": "string", "colors": [ { "color": "string", "amount": 0 } ], "user": { "id": "string", "username": "string", "name": "string", "url": "http://example.com", "avatar_url": "http://example.com" } } ], "next_cursor": "string", "has_more": true}boardID is either the board id or the short_id returned by /v1/boards; both are accepted. Accessible by any user with a role on the board (owner, admin, editor, viewer) and by team members for team-owned boards. Returns 404 when the board does not exist or the caller has no role on it — the API does not confirm whether someone else’s board exists.
AuthorizationBearer <token>Personal access token (sv_live_…) — represents you and carries every scope, so no scope is required for this call. Best for your own scripts and internal tools. Generate one at https://savee.com/developers/.
boardID*stringThe board id, or its short_id — both are returned by /v1/boards.
limit?integerPage size (default 30, max 100).
1 <= value <= 100cursor?stringOpaque cursor returned in next_cursor from the previous page. Pass it through verbatim — the encoding is an implementation detail and may change.
A page of saves on the board.
application/json- response
data*array<>next_cursor*|Pass as cursor to fetch the next page. null on the last page.
has_more*booleanWhether another page is available. Keep paging while this is true.
curl -X GET 'https://api.savee.com/v1/boards/string/saves'{ "data": [ { "id": "string", "short_id": "string", "url": "http://example.com", "name": "string", "source_url": "string", "created_at": "2019-08-24T14:15:22Z", "is_private": true, "total_saves": 0, "media": { "type": "image", "width": 0, "height": 0, "thumbnail": "http://example.com", "original": "http://example.com" }, "detected_aesthetics": "string", "colors": [ { "color": "string", "amount": 0 } ], "user": { "id": "string", "username": "string", "name": "string", "url": "http://example.com", "avatar_url": "http://example.com" } } ], "next_cursor": "string", "has_more": true}