---
title: "Update document"
method: PUT
path: "/api/v2/documents/{id}"
tags: ["KYC Documents"]
---

# Update document

`PUT /api/v2/documents/{id}`

## Request

- Base URL: `https://app.didlogic.com`
- URL: `https://app.didlogic.com/api/v2/documents/{id}`
- Auth: HTTP bearer

Update an existing document's name or identity.

`document_id` feeds documents_show.

## Path parameters

- `id` integer, required

## Request body

- object
  - `document` object
    - `name` string: Updated document name
    - `identity_id` integer: Updated identity ID from identities_index, identities_create

## Response `200`

updates the document

- object
  - `message` string, required: Success message
  - `document_id` integer, required
  - `document` object, required: Updated document details
    - `name` string, required: Document name
    - `id` integer, required: Document identifier
    - `user_id` integer, required: Owner user ID
    - `country` string, required: Country of the document, as given at upload; for a letter of intent, the country of the purchased number
    - `created_at` string, required: Upload timestamp
    - `expired_at` string, required: Document expiration timestamp
    - `approvement_status` 'in review' | 'verified' | 'rejected' | 'expired', required: Document approval status (in review = pending, verified = approved)
    - `doc_type` 'Personal ID' | 'Proof of address' | 'Business Registration' | 'Letter of Intent', required: Document type identifier
    - `identity_id` integer, required: Associated identity ID
    - `identity` object, required: Identity details
      - `id` integer, required: Identity identifier
      - `name` string, required: Identity name
      - `user_id` integer, required: Owner user ID
      - `created_at` string, required: Identity creation timestamp
      - `persistence_status` 'active' | 'archived' | 'active-immortal', required: Identity persistence status
      - `is_default` boolean, required: Is default identity flag
    - `files` object[], required
      - `role` string, required
      - `label` string, required
      - `url` string, required
      - `name` string, required

## Other responses

- `401`: returns unauthorized
- `404`: returns not found
- `422`: returns unprocessable entity

---

[API](https://skmtc.dev/didlogic/apis/get-started.md) · [All operations](https://skmtc.dev/didlogic/apis/get-started/llms.txt) · [OpenAPI document](https://skmtc.dev/didlogic/apis/get-started/revisions/dc972d592b34?raw)
