---
title: "Update document status"
method: POST
path: "/documents/{document_id}/status_data"
tags: ["documents"]
---

# Update document status

`POST /documents/{document_id}/status_data`

Update the given document status data with the request user and date.

Each document defines some status:
- lock
- escalate
- reject
- delete
- archive
- submitted

These fields have 3 attributes:
- status true / false
- since: datetime (UTC)
- by: user ID

By calling this endpoint you can update the given status data with the request user
(the one authenticated) and the current datetime.
**Note** : You cannot pass a user in the request nor a datetime

**Permission required:** review

## Headers

- `X-Fields` string, mask

## Request body

- StatusDataPost
  - `escalate` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `last_version` string
  - `lock` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `opened_by` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `reject` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `status_data` StatusDataModel
    - `archived` boolean
    - `data` boolean
    - `escalate` boolean
    - `feedback` boolean
    - `lock` boolean
    - `ready_accepted` boolean
    - `ready_attempts` integer
    - `reject` boolean
    - `reject_accepted` boolean
    - `reject_attempts` integer
    - `sampling` boolean
    - `submit_accepted` boolean
    - `submit_attempts` integer
    - `success` boolean
  - `submitted` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `timings` TimingsModelGet
    - `done_time` string, date-time
    - `feedback_time` string, date-time
    - `processing_period` number
    - `receive_time` string, date-time
    - `start_time` string, date-time
    - `submit_time` string, date-time

## Response `200`

Success

- DocumentModelGet
  - `escalate` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `feedback` object
  - `files` FileModelGet[]
    - `embedded_attachment` boolean
    - `filehash` string
    - `filename` string
    - `leaf` boolean
    - `page` integer
    - `page_count` integer
  - `flag_for_review` boolean
  - `id` string, required
  - `inbox` string, required
  - `last_version` string
  - `lock` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `meta_information` object
  - `opened_by` StateModelGet[]
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `original_filename` string, required
  - `page_count` integer, required
  - `prediction` object
  - `reject` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `status_data` StatusDataModel
    - `archived` boolean
    - `data` boolean
    - `escalate` boolean
    - `feedback` boolean
    - `lock` boolean
    - `ready_accepted` boolean
    - `ready_attempts` integer
    - `reject` boolean
    - `reject_accepted` boolean
    - `reject_attempts` integer
    - `sampling` boolean
    - `submit_accepted` boolean
    - `submit_attempts` integer
    - `success` boolean
  - `submitted` StateModelGet
    - `by` string
    - `since` string, date-time
    - `value` boolean
  - `timings` TimingsModelGet
    - `done_time` string, date-time
    - `feedback_time` string, date-time
    - `processing_period` number
    - `receive_time` string, date-time
    - `start_time` string, date-time
    - `submit_time` string, date-time
  - `usage_data` object
  - `versions` object[]

## Other responses

- `403` — Permission insufficient

---

[API](https://skmtc.net/contractp/apis/contract-p.md) · [All operations](https://skmtc.net/contractp/apis/contract-p/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/contractp/contract-p/versions/8ce53ebd6bd3/schema)
