---
title: "POST /api/v3/submissions/{id}/commit"
method: POST
path: "/api/v3/submissions/{id}/commit"
tags: ["Submissions"]
---

# POST /api/v3/submissions/{id}/commit

`POST /api/v3/submissions/{id}/commit`

## Request

- Base URL: `/` (relative, and the document was published on a file host, not at the API’s origin)
- URL: `/api/v3/submissions/{id}/commit`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/wildmeorg/apis/wildbook-v3-api/docs/api/v3/submissions/:id/commit/post.ts> (a function with typed inputs; its response is checked against the schema)

Atomically freezes a validated draft and accepts at most one execution. Same keyed request returns the original acceptance before checking stale If-Match. A different key cannot queue a second execution. Invalid validation returns 422 VALIDATION_INVALID; stale validation/config returns 409 VALIDATION_STALE; a different key after acceptance returns 409 ALREADY_COMMITTED. After admission shutdown recover via GET status/results; mutation retries may return 503 instead of replaying 202.

## Path parameters

- `id` string, uuid, required

## Headers

- `If-Match` string, required
- `Idempotency-Key` string, required

## Request body

- SubmissionApiCommit
  - `validationId` string, uuid, required

## Response `202`

Success

- SubmissionApiAccepted
  - `submissionId` string, uuid, required
  - `operationId` string, uuid, required
  - `importTaskId` string, uuid, required
  - `acceptedRevision` integer, required
  - `statusUrl` string, required

## Other responses

- `400`: Malformed request
- `401`: Authentication required or invalid
- `403`: Not enrolled or not permitted
- `404`: Not found or not visible
- `405`: Method not allowed; Allow header lists supported methods
- `409`: State, key or content conflict
- `412`: Stale revision
- `413`: Input too large
- `422`: Input or validation unacceptable
- `428`: Required revision precondition missing
- `429`: Quota or concurrency limit
- `500`: Internal failure; retry only according to operation idempotency rules
- `503`: Feature temporarily unavailable

## Changes

- **2026-09-28** `e22b05e67794`: 12 info
  - added the optional property `issues/items/reason` to the response with the `400` status
  - added the optional property `issues/items/reason` to the response with the `401` status
  - added the optional property `issues/items/reason` to the response with the `403` status
  - added the optional property `issues/items/reason` to the response with the `404` status
  - …8 more
- **2026-09-28** `2918ab3fac48`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/wildmeorg/apis/wildbook-v3-api/changes/api/v3/submissions/:id/commit/post.md)

---

[API](https://skmtc.dev/wildmeorg/apis/wildbook-v3-api.md) - [All operations](https://skmtc.dev/wildmeorg/apis/wildbook-v3-api/llms.txt) - [OpenAPI document](https://skmtc.dev/wildmeorg/apis/wildbook-v3-api/revisions/e22b05e67794?raw)
