---
title: "Retrieve assignments"
method: GET
path: "/assignment"
tags: ["Assignments"]
---

# Retrieve assignments

`GET /assignment`

Retrieves assignments that match the specified filters.

## Query parameters

- `slug` string
- `status` 'none' | 'in_progress' | 'complete' | 'abstained'
- `category` string
- `chapter` string
- `judge` string
- `method` 'automatic' | 'manual' | 'random' | 'stray' | 'recused'
- `panel` string
- `score_set` string
- `season` string
- `state` 'current' | 'archived' | 'all' | 'only' | 'none'
- `tag` string
- `deleted` 'only' | 'included' | 'none'
- `trashed` 'only' | 'all' | 'none'
- `page` number
- `per_page` number
- `order` 'method' | 'status' | 'updated'
- `dir` 'asc' | 'desc'

## Headers

- `Accept` 'application/vnd.Creative Force.v2.3+json' | 'application/vnd.Creative Force.v2.3+xml', required
- `x-api-language` string[]

## Response `200`

Assignments retrieved.

- AssignmentList — Pagination envelope returned by every list endpoint. Wraps the result set with positional fields (`current_page`, `from`, `to`, `total`) and navigation URLs (`first_page_url`, `last_page_url`, `next_page_url`, `prev_page_url`) for traversing the full list. The records themselves are returned in a sibling `data` array supplied by the wrapping schema.
  - `current_page` integer — Number of the page returned by this response. The first page is `1`.
  - `first_page_url` string — URL of the first page in the result set. Relative when the requested page is beyond the last page.
  - `from` integer, nullable — Position of the first record on this page within the full result set. The first record is at position `1`. `null` when the requested page is beyond the last page.
  - `last_page` integer — Number of the last page. Equals the total number of pages.
  - `last_page_url` string — URL of the last page in the result set. Relative when the requested page is beyond the last page.
  - `next_page_url` string — URL of the next page in the result set. Empty string when the current page is the last page.
  - `path` string — Canonical URL of the endpoint, without query parameters.
  - `per_page` integer — Maximum number of records returned per page.
  - `prev_page_url` string — URL of the previous page in the result set. Empty string when the current page is the first page.
  - `to` integer, nullable — Position of the last record on this page within the full result set. `null` when the requested page is beyond the last page.
  - `total` integer — Total number of records across all pages.
  - `data` Assignment[]
    - `entry` object — Entry the assignment refers to.
      - `slug` string — Short URL-safe identifier for the entry.
      - `link` string, uri — Canonical URL for the entry resource.
      - `title` string — Title of the entry as submitted by the entrant.
    - `category` object — Category the entry belongs to.
      - `slug` string — Short URL-safe identifier for the category.
      - `link` string, uri — Canonical URL for the category resource.
      - `name` object — Map keyed by locale code (for example `en_GB`, `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
    - `chapter` object — Chapter the category belongs to.
      - `slug` string — Short URL-safe identifier for the chapter.
      - `link` string, uri — Canonical URL for the chapter resource.
      - `name` object — Map keyed by locale code (for example `en_GB`, `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
    - `comments` object, nullable — Comments attached to the assignment. `null` for role-based assignments (where `role` is populated and `judge` is absent), since role holders do not own per-assignment comment threads.
      - `judging` object[] — Comments left by the judge during evaluation.
        - `slug` string — Short URL-safe identifier for the comment.
        - `comment` string — Comment body as an HTML fragment. May contain block-level tags such as `<p>`. Empty string when the user saved a comment with no content.
        - `created_at` string, date-time — Time the comment was created.
        - `updated_at` string, date-time — Time the comment was last updated.
        - `user` object — User who left the comment.
          - `slug` string — Short URL-safe identifier for the user.
          - `link` string, uri — Canonical URL for the user resource.
          - `name` string — Full display name of the user.
          - `first_name` string — Given name of the user.
          - `last_name` string — Family name of the user.
      - `abstention` object[] — Comments left when the judge marked the entry as abstained.
        - `slug` string — Short URL-safe identifier for the comment.
        - `comment` string — Comment body as an HTML fragment. May contain block-level tags such as `<p>`. Empty string when the user saved a comment with no content.
        - `created_at` string, date-time — Time the comment was created.
        - `updated_at` string, date-time — Time the comment was last updated.
        - `user` object — User who left the comment.
          - `slug` string — Short URL-safe identifier for the user.
          - `link` string, uri — Canonical URL for the user resource.
          - `name` string — Full display name of the user.
          - `first_name` string — Given name of the user.
          - `last_name` string — Family name of the user.
      - `conflict` object[] — Comments left when the judge flagged a conflict of interest.
        - `slug` string — Short URL-safe identifier for the comment.
        - `comment` string — Comment body as an HTML fragment. May contain block-level tags such as `<p>`. Empty string when the user saved a comment with no content.
        - `created_at` string, date-time — Time the comment was created.
        - `updated_at` string, date-time — Time the comment was last updated.
        - `user` object — User who left the comment.
          - `slug` string — Short URL-safe identifier for the user.
          - `link` string, uri — Canonical URL for the user resource.
          - `name` string — Full display name of the user.
          - `first_name` string — Given name of the user.
          - `last_name` string — Family name of the user.
      - `criteria` object[] — Comments grouped by score-set criterion.
        - `name` string — Display name of the criterion, rendered in the default locale for the account (single string, not a locale map).
        - `comments` object[] — Comments left against this criterion.
          - `slug` string — Short URL-safe identifier for the comment.
          - `comment` string — Comment body as an HTML fragment. May contain block-level tags such as `<p>`. Empty string when the user saved a comment with no content.
          - `created_at` string, date-time — Time the comment was created.
          - `updated_at` string, date-time — Time the comment was last updated.
          - `user` object — User who left the comment.
            - `slug` string — Short URL-safe identifier for the user.
            - `link` string, uri — Canonical URL for the user resource.
            - `name` string — Full display name of the user.
            - `first_name` string — Given name of the user.
            - `last_name` string — Family name of the user.
    - `created` string, date-time — Time the assignment was created.
    - `form` string — Slug of the form attached to the entry.
    - `method` string — How the assignment was created. Known values include `Manual`, `Automatic (Panel)`, `Recused`, and `Stray`. Other values are possible depending on the score-set mode.
    - `panels` object[] — Panels the assignment is associated with.
      - `slug` string — Short URL-safe identifier for the panel.
      - `link` string, uri — Canonical URL for the panel resource.
      - `name` object — Map keyed by locale code (for example `en_GB`, `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
    - `judge` object, nullable — Judge assigned to score the entry. `null` for role-based assignments where `role` is populated instead.
      - `slug` string — Short URL-safe identifier for the judge.
      - `link` string, uri — Canonical URL for the judge resource.
      - `name` string — Full display name of the judge.
    - `role` object, nullable — Role assigned to score the entry, used when the assignment is shared across all holders of a role rather than addressed to one judge. `null` for judge-specific assignments where `judge` is populated.
      - `slug` string — Short URL-safe identifier for the role.
      - `link` string, uri — Canonical URL for the role resource.
      - `name` object — Map keyed by locale code (for example `en_GB`, `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
    - `rounds` object[] — Rounds the assignment applies to.
      - `slug` string — Short URL-safe identifier for the round.
      - `link` string, uri — Canonical URL for the round resource.
      - `name` object — Map keyed by locale code (for example `en_GB`, `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
    - `score` object, nullable — Score for this assignment, formatted per the score-set mode. `null` when no score has been recorded. Shape varies by score-set mode. Two confirmed shapes: Regular numeric or qualifying mode: ```json { "criteria": [ { "name": { "en_GB": "Originality" }, "value": 7, "max_score": 10, "final_score": "7/10", "weight": 1 } ], "total_score": { "value": 7, "max_score": 10, "final_score": "7/10" } } ``` Voting mode: ```json { "total_votes": 0 } ``` VIP and top-pick modes follow their own conventions.
    - `score_set` object, nullable — Score set used to evaluate the entry.
      - `slug` string — Short URL-safe identifier for the score set.
      - `link` string, uri — Canonical URL for the score set resource.
      - `name` object — Map keyed by locale code (for example `en_GB`, `fr_FR`). Keys are drawn from the languages enabled on the account. Values are the translated string.
    - `slug` string — Short URL-safe identifier for the assignment.
    - `status` string — Current state of the assignment. Known values include `To be scored`, `In progress`, and `Complete`.
    - `updated` string, date-time — Time the assignment was last updated.

## Other responses

- `400` — Request was rejected before the endpoint could process it. Common causes: invalid `Accept` header, unsupported `x-api-language` code, empty request body on `POST` / `PUT`, invalid JSON in the request body, or an invalid slug format in a path parameter.
- `401` — Missing `x-api-key` header.
- `403` — Authenticated request denied. Common causes: invalid or unknown API key, suspended account, or `api` feature not enabled for the account.
- `429` — Rate limit of 60 requests per minute exceeded.
- `503` — Service is temporarily unavailable due to regional maintenance.

## Changes

- **2026-07-13** (v2) `e2511e46f9f2` — 2 breaking, 2 info
  - for the `query` request parameter `page`, the type/format was changed from `string`/`` to `number`/``
  - for the `query` request parameter `per_page`, the type/format was changed from `string`/`` to `number`/``
  - the `per_page` response's property default value `10` was added for the status `200` (media type: application/json)
  - the `per_page` response's property default value `10` was added for the status `200` (media type: application/xml)
- **2026-07-08** (v2) `b8c0209c985a` — 2 breaking
  - the response property `allOf[subschema #2]/data/items/score` became nullable for the status `200` (media type: application/json)
  - the response property `allOf[subschema #2]/data/items/score` became nullable for the status `200` (media type: application/xml)
- **2026-07-08** (v2) `72c39d7099a2` — 2 breaking
  - the response property `allOf[subschema #2]/data/items/score_set` became nullable for the status `200` (media type: application/json)
  - the response property `allOf[subschema #2]/data/items/score_set` became nullable for the status `200` (media type: application/xml)
- …earlier changes not shown

[Full history](https://skmtc.dev/tectonic/apis/award-force-api/changes/assignment/get.md)

---

[API](https://skmtc.dev/tectonic/apis/award-force-api.md) · [All operations](https://skmtc.dev/tectonic/apis/award-force-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/tectonic/award-force-api/revisions/e2511e46f9f2/schema)
