UniUni · AsyncAPI Specification
Uniuni Webhooks
Version
View Spec
View on GitHub
CompanyLogisticsShippingLast-Mile DeliveryEcommerceTrackingDeliveryAsyncAPIWebhooksEvents
AsyncAPI Specification
generated: '2026-07-21'
method: searched
source: https://help.ship.uniuni.com/en/webhooks/webhooks
spec_type: Webhooks
name: UniUni Platform webhooks
summary: >-
UniUni sends webhook notifications when shipment or insurance statuses change. Endpoints are
configured in the UniUni Platform Portal (Settings → Integrations → REST API → Webhook
Configuration) and can be exercised via the Test Webhook API endpoint. Payloads are JSON with
an event name, schema version, and a typed data object.
configuration:
portal: https://ship.uniuni.com
test_endpoint: POST /webhook/test (Client API)
url_requirement: HTTPS only
secret: Generated in the portal; shown once. Rotate by deleting and recreating the config.
security:
modes:
- mode: HMAC
recommended: true
algorithm: HMAC-SHA256 over the raw JSON request body
header: configurable (e.g. X-Webhook-Signature)
verification: recompute with secret and compare timing-safe
- mode: TOKEN
header: configurable (e.g. Authorization), value sent as Bearer token
- mode: NONE
notes: Internal testing only; not recommended for production.
events:
- name: shipment.status_updated
description: Shipment status has changed
payload:
version: string schema version (currently "1")
data.objectType: Shipment
data.trackingId: shipment tracking ID
data.status: new shipment status (see shipment status reference)
data.statusCode: numeric status code
data.updatedAt: ISO 8601 timestamp
data.address: optional location details
data.transferCarrierName: last-mile carrier name when handed off
data.transferCarrierTrackingId: last-mile carrier tracking ID
data.proofOfDelivery: present only when status is DELIVERED (recipient, deliveryDate, deliveryTime, trackingNumber, pods[])
- name: shipment.custom_event
description: Custom shipment event
- name: insurance.status_updated
description: Insurance policy purchased, updated, or claim status changed
statuses: [PENDING, PURCHASED, REJECTED, CANCELLED, CLAIM_SUBMITTED, CLAIM_IN_REVIEW,
CLAIM_APPROVED, CLAIM_APPROVED_PARTIAL, CLAIM_REJECTED, CLAIM_CANCELLED, CLAIM_ACTION_NEEDED]
payload:
data.objectType: Insurance
data.id: insurance record ID (number)
data.shipmentOrderNumber: order number of the associated shipment
data.status: new insurance status
data.updatedAt: ISO 8601 timestamp
legacy_integration_api:
docs: https://docs.uniuni.com/
notes: >-
The legacy Integration API also documents a Push Tracking Event webhook (with optional
HMAC signing) that pushes tracking scan events to a merchant-provided endpoint.
status_reference: https://help.ship.uniuni.com/en/api/shipment-status-reference