---
title: "Unrecuse an assignment"
method: PUT
path: "/entry/{entry_slug}/unrecuse"
tags: ["Assignments"]
---

# Unrecuse an assignment

`PUT /entry/{entry_slug}/unrecuse`

Removes a judge recusal from the assignment for the specified entry.

## Headers

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

## Request body

- object
  - `judge` string, required — Slug of the judge to recuse. Must be an existing user. The recusal is recorded even when the judge has no current assignment to the entry, and prevents the judge being assigned in the future within the affected score set scope.
  - `score_set` string — Slug of the score set to scope the recusal to. When omitted, the recusal applies to every score set the judge has assignments under for this entry and prevents future assignment across all of them. When supplied, the scope is limited to the named score set.

## Response `204`

Assignment recusal removed.

## 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.
- `404` — Resource identified by the path slug does not exist. Returned when the slug is well-formed but no record matches it.
- `422` — Request was syntactically valid but could not be processed. Returned in two scenarios: - **Field-level validation failure** — one or more request fields violated the endpoint's validation rules. The body includes an `errors` map keyed by field name with one or more validation messages each. - **Resource-state precondition failure** — the request fields were all valid, but the target resource was in a state that does not permit the requested operation. The body carries only `message` and `status_code`; no `errors` map.
- `429` — Rate limit of 60 requests per minute exceeded.
- `503` — Service is temporarily unavailable due to regional maintenance.

## Changes

- **2026-07-07** (v2) `9b9103538ceb` — 2 info
  - api tag `Assignments` added
  - api tag `Assignment` removed
- **2026-07-01** (v2) `e96a96d4507e` — 7 info
  - added the media type `application/xml` for the response with the status `400`
  - added the media type `application/xml` for the response with the status `401`
  - added the media type `application/xml` for the response with the status `403`
  - added the media type `application/xml` for the response with the status `404`
  - …3 more

[Change history](https://skmtc.dev/tectonic/apis/award-force-api/changes/entry/:entry_slug/unrecuse/put.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)
