# Proof of Delivery

Triggered when Scurri retrieves a Proof of Delivery document from a carrier. 
The payload includes a direct link to retrieve the file, and extra consignment related information.

Endpoint: POST ProofOfDelivery
Version: 2025.1

## Request fields (application/json):

  - `event_type` (string, required)
    The type of event that triggered the webhook.
    Example: proof_of_delivery

  - `event_id` (string, required)
    A unique identifier for the event.
    Example: AB12C3

  - `payload_version` (string, required)
    The version of the payload schema.
    Example: 2025.1

  - `payload` (array)

  - `payload.document_id` (string, required)
    The unique identifier for the proof of delivery document.
    Example: AB12C3

  - `payload.document_url` (string, required)
    A temporary URL to retrieve the proof of delivery document. Expires after 72 hours.
    Example: https://example.com/storage/document-with-unique-name.pdf?signature=sample-signature

  - `payload.file_type` (string, required)
    The file type of the proof of delivery document.
    Enum: "image/jpeg", "image/png", "application/pdf", "image/svg+xml"

  - `payload.proof_of_delivery_type` (string, required)
    The type of proof of delivery (e.g., image, signature).
    Enum: "image", "signature"

  - `payload.consignment_identifier` (string, required)
    The identifier of the consignment.
    Example: 2154321

  - `payload.order_number` (string, required)
    The order number of the consignment.
    Example: order-12345

  - `payload.package_tracking_number` (string)
    The tracking number for the package. Optional; only populated if provided by the carrier alongside the proof of delivery.
    Example: JD014600003281234567

  - `payload.package_reference` (string)
    The reference for the package.
    Example: ref-12345

  - `payload.carrier` (string, required)
    The name of the carrier who shipped the consignment.
    Example: DHL

  - `payload.service_id` (string, required)
    Service identifier (e.g., carrier and service name).
    Example: Generic Carrier|Next Day

## Response 200:

  - `200` (unknown)
    Return a 200 response to acknowledge receipt of the webhook.

