Skip to main content

Get 17TRACK Instance

GET 

/api/integrations/17track/instances/:instance

Return the 17TRACK instance enriched with the LIVE dashboard summary — quota, per-status counts, the webhook URL, and the most recent webhook + event timestamps. This is the payload that powers the connect dashboard.

Authorization

Any valid API token can call this endpoint — no specific scope required. Manage tokens.

Route-model binding resolves the integer ID against SeventeenTrackIntegrationInstance; its global scope guarantees only 17TRACK rows resolve here.

Response includes:

  • Instance config (name, auto-sync flag, per-entity auto-track flags, timestamps)
  • webhook_url — the unique URL to paste into the 17TRACK dashboard
  • quota — live quota from 17TRACK's /getquota
  • status_counts — zero-filled map of EVERY DeliveryStatusEnum value to count (10 buckets)
  • last_webhook_at — ISO timestamp of the most recent webhook ingest
  • last_event_at — ISO timestamp of the most recent carrier event across all rows

Responses:

  • 200 OK — instance + dashboard summary
  • 404 Not Found — instance ID does not exist

Sales-channel scoping (auto_track_channels) — optional. default is all (track everything not explicitly disabled) or none (track nothing until explicitly enabled). channels is an optional object keyed by sales-channel id; each entry may carry a boolean enabled flag and/or a sub_channels object keyed by sub-channel id (booleans). Resolution is most-specific-first: a sub_channels override wins, then the channel enabled flag, then default. Fulfillment type is modeled as a sub-channel (e.g. Amazon FBA vs merchant-fulfilled, or Shopify Web vs POS), so excluding high-volume marketplace-fulfilled shipments is just disabling that sub-channel. Only sales order fulfillments are scoped; other shipment types are unaffected. Validation: default must be all or none (422 otherwise).

Request

Responses

OK

Response Headers
    Content-Type