---
title: "Set proof of delivery configuration for a parcel."
method: POST
path: "/v1/parcels/{parcel_id}/proof_configuration"
tags: ["parcels"]
---

# Set proof of delivery configuration for a parcel.

`POST /v1/parcels/{parcel_id}/proof_configuration`

Creates or replaces the proof of delivery methods configured for the specified parcel.

## Path parameters

- `parcel_id` string, uuid, required

## Request body

- CreateProofConfiguration — Request body for creating or replacing proof of delivery configuration for a parcel.
  - `delivered_proofs` object — Configuration for each proof of delivery method. Methods not included in the request will be set to inactive.
    - `code_proof` object — Configuration for code-based proof of delivery. Omitting this field sets the method as inactive. This method is **mutually exclusive** with the other proof methods — it can only be activated on its own.
      - `active` boolean — Activates or deactivates this proof method. Defaults to `false` if omitted.
      - `hashed_code` string — SHA-256 hash of the verification code. If omitted, a 4-digit code will be automatically generated and returned in the response.
    - `ic_proof` object — Configuration for identity card (IC) based proof of delivery. Omitting this field sets the method as inactive.
      - `active` boolean — Activates or deactivates this proof method. Defaults to `false` if omitted.
    - `photo_proof` object — Configuration for photo-based proof of delivery. Omitting this field sets the method as inactive.
      - `active` boolean — Activates or deactivates this proof method. Defaults to `false` if omitted.
    - `comment_proof` object — Configuration for comment-based proof of delivery. Omitting this field sets the method as inactive.
      - `active` boolean — Activates or deactivates this proof method. Defaults to `false` if omitted.

## Response `200`

Configuration saved successfully.

- ProofConfiguration — The proof of delivery methods configured for a parcel.
  - `parcel_id` string, uuid, required — UUID of the parcel this configuration applies to.
  - `delivered_proofs` object, required — Configuration for each available proof of delivery method.
    - `code_proof` object, required — Configuration for code-based proof of delivery.
      - `active` boolean, required — Whether this proof method is active for the parcel.
      - `code` string — Four-digit code shown to the driver (only present if no `hashed_code` was provided).
      - `hashed_code` string — SHA-256 hash of the code (only present if a hashed code was supplied).
    - `ic_proof` object, required — Configuration for identity card (IC) based proof of delivery.
      - `active` boolean, required — Whether this proof method is active for the parcel.
    - `photo_proof` object, required — Configuration for photo-based proof of delivery.
      - `active` boolean, required — Whether this proof method is active for the parcel.
    - `comment_proof` object, required — Configuration for comment-based proof of delivery.
      - `active` boolean, required — Whether this proof method is active for the parcel.

## Other responses

- `401` — Unauthorized. Missing or invalid authentication token.
- `404` — No parcel found with the given ID.

---

[API](https://skmtc.dev/cabify/apis/ride-hailing-api.md) · [All operations](https://skmtc.dev/cabify/apis/ride-hailing-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/cabify/ride-hailing-api/revisions/8da1cb1270df/schema)
