Shippit
Test Connection
Validates a Shippit API key without saving a connection. Shippit is a courier aggregator; this probes the supplied key against Shippit's merchant endpoint and returns the merchant profile it resolves to, so you can confirm the key is correct before creating an instance.
Create Integration Instance
Creates and connects a new Shippit integration instance for the current account, then returns it together with a live dashboard summary (merchant profile, order-state counts, courier and warehouse-mapping counts, and the webhook URL to paste into your Shippit account).
Get Integration Instance
Returns a single Shippit integration instance together with a live dashboard summary: the resolved Shippit merchant profile, per-state order counts, total order/courier/warehouse-mapping counts, the webhook URL, and the last webhook and sync timestamps.
Update Integration Instance
Updates settings on an existing Shippit integration instance. All fields are optional — send only what should change; omitted fields are left untouched. Returns the updated instance with a refreshed dashboard summary.
Delete Integration Instance
Disconnects and removes a Shippit integration instance. The teardown runs asynchronously: this endpoint records the disconnect and hands the cascade cleanup (cached orders, couriers, webhook events, and related records) to a background job, then returns immediately with no content.
Get Dashboard Metrics
Returns just the live dashboard summary for a Shippit integration instance — the lightweight refresh endpoint for the dashboard widget, without the full instance settings payload.
List Orders
Paginated, filterable list of Shippit orders for the integration instance.
Sync Orders
Queue a background job that reconciles the current state of existing Shippit orders for this instance (Shippit has no bulk order list, so the sweep refreshes each non-terminal order individually via its tracking number). The response returns the tracked job log id, which you can poll for progress.
Get Order
Returns the full details for a single Shippit order scoped to the integration instance. Includes the raw provider identifiers (shippit_id, tracking_number, state), courier and delivery fields, price, tracking URL, a deep link to the Shippit merchant portal (external_url), and cross-link fields to the originating fulfillment order / sales order.
Book Order
Books a courier pickup for an already-created Shippit order (transitions it out of order_placed toward despatch). Runs as a background job; the response returns the tracked job log id, which you can poll for progress.
List Shipments
List shipments (consignments) for the shipping-provider instance, paginated. Each shipment carries the despatch data — courier job, tracking number and URL, service level, price, parcel count, and despatch/delivery timestamps — a deep link into the Shippit portal (`external_url`), plus a cross-link to the fulfillment it realized (link_type_label / link_reference / link_route). Shipments belonging to another instance are not returned.
Sync Shipments
Queue a background (tracked) job that reconciles despatch and delivery timestamps for the instance's undelivered shipments against the provider's current tracking state. Poll the returned tracked_job_log_id for progress.
Get Shipment
Retrieve a single shipment scoped to the instance. Returns 404 if the shipment does not exist or belongs to another instance. Pass include_json=1 to include the stored provider tracking payload.
List Couriers
List couriers for the shipping-provider instance, paginated. Each row is one courier type + service-level combination the merchant offers, with its enabled state and an optional mapping to an internal shipping method (sku_shipping_method_id / shipping_method_name). Unmapped couriers have null link fields.
Sync Couriers
Queue a background (tracked) job that discovers the couriers and service levels available to the merchant and upserts them for the instance. Takes no request body. Poll the returned tracked_job_log_id for progress.
Get Courier
Retrieve a single courier scoped to the instance, including its mapping to an internal shipping method (if any). Returns 404 if the courier does not exist or belongs to another instance.
Map Courier To Shipping Method
Map a courier (its courier type / service level) to an internal shipping method so the dispatcher knows which courier to request when submitting an order. Send shipping_method_id as null (or omit it) to remove an existing mapping. Returns the updated courier.
List Warehouse Mappings
Returns a paginated list of warehouse-to-sender mappings for this Shippit instance, newest first. Each mapping links one of your warehouses to the Shippit sender (pickup origin) details used when despatching from it.
Map Warehouse
Links one of your warehouses to Shippit sender (pickup origin) details so despatches from that warehouse originate from the correct address. Idempotent upsert on the (instance, warehouse) pair: calling it again for an already-linked warehouse updates its sender details in place rather than creating a duplicate.
Unmap Warehouse
Removes a warehouse-to-sender mapping. Despatches from that warehouse will no longer use the stored sender override.
Toggle Warehouse Mapping
Flips a mapping's enabled flag: an enabled mapping becomes disabled and vice versa. Disabled mappings are retained but no longer supply sender details for despatch.
Subscribe Webhook
Register this instance's inbound webhook URL with Shippit via the merchant API (PUT /merchant), so despatch and delivery events are delivered without pasting the URL into the Shippit dashboard. Runs automatically on connect; this endpoint re-registers it.
Unsubscribe Webhook
Clear this instance's webhook URL at Shippit (PUT /merchant with null), stopping inbound events.
List Webhook Events
Returns a paginated list of inbound webhook events received from Shippit for this instance, newest first. Every inbound webhook is persisted so you can audit and inspect deliveries; each row records the event type, tracking number, courier job id, the dedup key, the raw payload, and whether it has been processed yet (`processed` / `processed_at`).
Get Webhook Event
Returns a single webhook event received from Shippit, including its full raw `payload`. `processed_at` (and the `processed` flag) reflect whether the ingest pipeline has already handled the event.
List Activity
Returns a paginated activity feed for this Shippit instance, newest first — the audit trail of actions taken across the integration (connect, settings update, disconnect, syncs, order submit/book/cancel, warehouse link/unlink, etc.). Each entry carries the acting user (`causer`, `null` for system-generated entries), a human description, and a `properties` bag of contextual data.