mapping.completed fires when one of your mapping jobs finishes processing. The event is delivered to every active subscription in the org that owns the inventory.
When it fires
Immediately after the final job record is persisted. This includes both successful and partially successful runs — check thematchedCount and unmatchedCount to decide what to do next.
Required plan
All plans.Payload
mapping.completed delivery from the older export-webhooks pipeline emits a flat payload (no envelope, no signing) for backwards compatibility. Subscribing via the new /api/v1/webhook-subscriptions endpoint uses the envelope shown above and is HMAC-signed.
Fields
| Field | Type | Notes |
|---|---|---|
data.partnerInventoryId | UUID | Inventory that was mapped. |
data.mappingJobId | UUID | Job that produced these results. |
data.rowCount | int | Total input rows. |
data.matchedCount | int | Rows that matched a reference hotel. |
data.unmatchedCount | int | Rows that did not match. |
data.resultS3Url | string | null | Internal S3 URL of the result file. |
data.resultPresignedUrl | string | null | Time-limited public URL for downloading the result (1 hour TTL). |