> ## Documentation Index
> Fetch the complete documentation index at: https://docs.talaria.chat/llms.txt
> Use this file to discover all available pages before exploring further.

# Replace a DID document with proof

> Replace a public DID document with authorization proof.

Replace a public DID document with authorization proof.

## Request

<ParamField path="did" type="string" required>
  The DID to update.
</ParamField>

<ParamField body="did" type="string" required>
  The DID to update. It must match the path.
</ParamField>

<ParamField body="document" type="object">
  The replacement public DID document. Provide `document` or `doc_blob`.
</ParamField>

<ParamField body="doc_blob" type="string">
  An encoded public DID document. Provide `doc_blob` or `document`.
</ParamField>

<ParamField body="timestamp" type="string" required>
  The authorization timestamp.
</ParamField>

<ParamField body="pubkey" type="string" required>
  The public authorization key.
</ParamField>

<ParamField body="signature" type="string" required>
  The authorization signature.
</ParamField>

<RequestExample>
  ```bash Request theme={null}
  curl --request PUT \
    --url "https://directory.example.com/dids/did%3Atalaria%3A1111111111111111111111/document/proof" \
    --header "Content-Type: application/json" \
    --data '{
    "did": "did:talaria:1111111111111111111111",
    "document": {
      "id": "did:talaria:1111111111111111111111",
      "verificationMethod": [],
      "keyAgreement": [],
      "service": []
    },
    "timestamp": "2026-07-16T12:00:00Z",
    "pubkey": "<public-key>",
    "signature": "<signature>"
  }'
  ```
</RequestExample>

## Response

<ResponseField name="status" type="string" required>
  The submission status.
</ResponseField>

<ResponseField name="did" type="string" required>
  The DID affected by the request.
</ResponseField>

<ResponseField name="extrinsic" type="string" required>
  The public operation name.
</ResponseField>

<ResponseField name="tx_hash" type="string" required>
  The submitted transaction hash.
</ResponseField>

<ResponseField name="message" type="string" required>
  A human-readable submission result.
</ResponseField>

<ResponseExample>
  ```json 202 Response theme={null}
  {
    "status": "accepted",
    "did": "did:talaria:1111111111111111111111",
    "extrinsic": "set_document_with_proof",
    "tx_hash": "<transaction-hash>",
    "message": "Chain extrinsic submitted"
  }
  ```
</ResponseExample>

<Note>
  `202 Accepted` means the Directory accepted the request for processing. It does not confirm final settlement.
</Note>
