> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/dribbble/profiles-handle-collections-collectionid>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/dribbble/profiles-handle-collections-collectionid.mdx>

---

# Dribbble Collection API

A collection header and its shots as JSON, with likes, views and rebounds.

`GET /v1/dribbble/profiles/{handle}/collections/{collectionId}` returns `data.collection` with `id`, `slug`, `path`, `url`, `title`, `curator.handle`, `curator.name`, `shotsCount`, `designersCount` and up to 24 shots in `collection.shots`. Each shot has `id`, `slug`, `path`, `url`, `title`, `author`, `likesCount`, `viewsText`, `viewsEstimate`, `viewsApproximate`, `reboundsCount`, `thumbnailUrl` and `isMotion`.

The collection id is the id slug form the collections list returns, for example `4582-Data-Viz`; the numeric id alone also works. `data.page.totalPages` is known from `shotsCount` when that is available. A page past the last one is found with an empty `shots` array. A hidden or empty tile is dropped, so a page can hold fewer than 24 shots.

## Request

- **Endpoint:** `GET /v1/dribbble/profiles/{handle}/collections/{collectionId}`
- **Credits:** 1 credit
Failed requests are free
- **Input:** by handle and collection id
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v1/dribbble/profiles/handle/collections/collectionid/get)
- **Platform page:** [/platforms/dribbble](https://www.socialfetch.dev/platforms/dribbble)

## FAQ

### How do I find the collection id?

Call GET /v1/dribbble/profiles/{handle}/collections and read data.collections[].id and .slug. The collection route accepts the combined form, for example 4582-Data-Viz, or the numeric id on its own.

### Why does a page have fewer shots than expected?

A collection can hold a hidden or empty tile, which is left out. The header's shotsCount still describes the collection, so read data.collection.shotsCount rather than counting tiles.

### How do I page through a collection?

Send page or the cursor from data.page.nextCursor, and stop when data.page.hasMore is false. A page past the end is found with an empty shots array.

### How many credits does a collection page cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth. Each paginated page is a separate billed request.
