Printables API — Contest Winners and Placed Models
Documentation menu
FetchLayer FetchLayer API

Get one contest and its winners

One contest with its placed entries, best placing first, each carrying the winning model in full summary form — designer, category, stats and cover image. Accepts a contest id or a Printables contest URL. A contest winner list is the closest thing Printables has to an editorial ranking, which makes it a useful training set for what the community rewards.

POST /contest-detail Contests
https://api.fetchlayer.dev/printables/contest-detail
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

contest string required

Contest id, or a Printables contest URL.

format string optional

json, or markdown to get the result rendered as text. (default: json)

timeoutMs number optional

Per-request time limit in milliseconds (max 600000).

Response Fields

contest-detail

Get one contest and its winners

contestId string

The resolved contest id.

contest object

The contest record.

contest.name string | null

Contest name.

contest.descriptionHtml string | null

Rules and prize list, as authored by the organiser.

contest.entryCount number | null

Models entered into the contest.

contest.winners object[]

Placed entries, best placing first.

contest.winners[].placement number | null

1 is first place.

contest.winners[].model object

The winning model, in the same shape as a search result.

notes string[]

Caveats about this specific result — a truncated walk, a listing that may be incomplete, an upstream limit. Read it before treating a result set as complete.

requestedUrl string

The Printables page this result corresponds to.

scrapedAt string

ISO 8601 timestamp of when the data was collected.

resultType string

Which shape this response is, e.g. model-search or contest-detail.

blocked boolean

Always false on a successful response.

Request

curl -X POST "https://api.fetchlayer.dev/printables/contest-detail" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"contest":"312"}'

Response

{
  "resultType": "contest-detail",
  "contestId": "312",
  "notes": [],
  "contest": {
    "id": "312",
    "name": "Kitchen Helpers",
    "entryCount": 486,
    "winners": [
      {
        "placement": 1,
        "model": {
          "id": "498112",
          "name": "Magnetic spice rack",
          "stats": {
            "downloads": 88210,
            "makes": 512
          }
        }
      }
    ]
  }
}