AxleHire (Jitsu) · OpenAPI Overlay 1.0.0

API Evangelist enhancements — Jitsu REST API

9 actions 9 updates update extends ../openapi/axlehire-jitsu-rest-api.yml
Derived by API Evangelist Built from the contracts AxleHire (Jitsu) publishes. AxleHire (Jitsu) did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-agentic-accessx-evidencex-former-namex-rebrand-datex-not-coveredx-error-catalogx-conventionsx-webhooks-catalog

Targets 7

$.info
$
$.components.securitySchemes.Authorization
$.paths['/v3/shipments'].post
$.paths['/v3/shipments/{shipment_id}/cancel'].post
$.paths['/v3/shipments/{shipment_id}/label'].get
$.tags

OpenAPI Overlay

Raw ↑
# authorship: generated by API Evangelist tooling. Stamped 2026-08-18
# on the file's own generator header (roadmap#64). An unmarked file is
# NOT assumed to be ours -- absence of evidence was never stamped.
x-method: generated
overlay: 1.0.0
info:
  title: API Evangelist enhancements — Jitsu REST API
  version: 1.0.0
  x-generated: '2026-08-06'
  x-method: generated
  x-source: >-
    Generated by the API Evangelist enrichment pipeline against
    openapi/axlehire-jitsu-rest-api.yml (fetched verbatim from
    https://docs.gojitsu.com/Jitsu_Export/openapi.yaml). Every value added below
    is sourced from Jitsu's own published documentation — nothing is invented.
    The original spec is never mutated; apply this overlay to get the enriched
    view.
extends: ../openapi/axlehire-jitsu-rest-api.yml
actions:

- target: $.info
  description: Record where the contract was found and what it does not cover.
  update:
    x-evidence:
      fetched: '2026-08-06'
      url: https://docs.gojitsu.com/Jitsu_Export/openapi.yaml
      http_status: 200
      content_type: text/yaml
      bytes: 134234
      note: >-
        The docs host is a Firebase SPA — https://docs.gojitsu.com/openapi.yaml
        returns the 11773-byte HTML shell. The real contract is under
        /Jitsu_Export/.
    x-former-name: AxleHire
    x-rebrand-date: '2024-04'
    x-not-covered:
      - >-
        The staging lifecycle simulation endpoints
        (/v3/simulation/happy_path/shipments/{shipment_id},
        /v3/simulation/sad_path/shipments/{shipment_id},
        /v3/simulation/shipments/{shipment_id}/{SHIPMENT_SIGNAL}) are documented
        in Testing.md but absent from this contract.
      - No error responses are declared; see x-error-catalog.
    x-error-catalog: ../errors/axlehire-problem-types.yml
    x-conventions: ../conventions/axlehire-conventions.yml
    x-webhooks-catalog: ../asyncapi/axlehire-webhooks.yml
    x-lifecycle: ../lifecycle/axlehire-lifecycle.yml

- target: $.info
  description: Attach the documentation entry points Jitsu publishes.
  update:
    x-documentation:
      integration_guide: https://docs.gojitsu.com/#/docs/QuickStart.md
      authentication: https://docs.gojitsu.com/#/docs/Authentication.md
      testing: https://docs.gojitsu.com/#/docs/Testing.md
      lifecycle: https://docs.gojitsu.com/#/docs/Lifecycle.md
      webhooks: https://docs.gojitsu.com/#/docs/Webhooks.md
      errors: https://docs.gojitsu.com/#/docs/Errors.md
      retry_and_errors: https://docs.gojitsu.com/#/docs/RetryAndErrors.md
      labels: https://docs.gojitsu.com/#/docs/Labels.md
      brands: https://docs.gojitsu.com/#/docs/Brands.md
      glossary: https://docs.gojitsu.com/#/docs/Glossary.md
      sdks: https://docs.gojitsu.com/#/docs/SDKs.md
      status: https://status.gojitsu.com/

- target: $
  description: >-
    Record the account-wide rate limit Jitsu documents but does not express in
    the contract, and the fact that it signals no rate-limit headers.
  update:
    x-rate-limits:
      limit: 10
      metric: requests_per_second
      scope: account
      environments: [production, staging]
      throttle_status: 429
      response_headers: none
      backoff: exponential 1s/2s/4s/8s capped at 60s with 10-20% jitter
      source: https://docs.gojitsu.com/#/docs/RetryAndErrors.md
      detail: ../rate-limits/axlehire-rate-limits.yml

- target: $
  description: Record the idempotency posture explicitly — the contract is silent, the docs are not.
  update:
    x-idempotency:
      supported: false
      mechanism: none
      guidance: >-
        Jitsu publishes no Idempotency-Key header. A retried POST /v3/shipments
        after a timeout can create a duplicate shipment. The documented
        mitigation is to send a stable internal_id or tracking_code and to look
        the shipment up before retrying.
      source: https://docs.gojitsu.com/#/docs/RetryAndErrors.md

- target: $.components.securitySchemes.Authorization
  description: Clarify the token format, its scope model and where it is issued.
  update:
    x-token-format: 'Authorization: Token <YOUR_API_TOKEN>'
    x-issued-at: https://client.gojitsu.com/ (Settings → API Token)
    x-staging-issued-at: https://client.staging.gojitsu.com/
    x-scopes: none — a token carries full account permissions
    x-self-service: false
    x-detail: ../authentication/axlehire-authentication.yml

- target: $.paths['/v3/shipments'].post
  description: >-
    Flag the duplicate-creation risk on the one required operation in the whole
    integration.
  update:
    x-idempotent: false
    x-retry-safe: false
    x-natural-keys: [internal_id, tracking_code]
    x-agentic-access:
      action_class: write
      consequence: irreversible-side-effect
      note: >-
        Creates a real physical delivery and incurs cost. Not safe to retry
        blind; confirm via GET /v3/shipments/{shipment_id} before re-issuing.

- target: $.paths['/v3/shipments/{shipment_id}/cancel'].post
  description: Mark the consequence class of cancellation.
  update:
    x-agentic-access:
      action_class: write
      consequence: irreversible-side-effect
      note: >-
        Produces CANCELLED_BEFORE_PICKUP or CANCELLED_AFTER_PICKUP depending on
        timing; cannot be undone by the API.

- target: $.paths['/v3/shipments/{shipment_id}/label'].get
  description: Record the label formats and the response encoding, which the contract does not state.
  update:
    x-formats: [PDF, PNG, ZPL]
    x-default-format: PDF
    x-response-encoding: base64 string in the `label` field
    x-source: https://docs.gojitsu.com/#/docs/Labels.md

- target: $.tags
  description: >-
    Note the tag/route inconsistency — a "Partner Information" tag is used on
    /v3/partner/tracking/{tracking_code}/events but is not declared in tags[],
    and two operations share the operationId `retrieveEvents`.
  update:
    x-tag-issues:
      undeclared_tags: [Partner Information]
      duplicate_operation_ids:
      - operationId: retrieveEvents
        paths:
        - '/v3/tracking/{tracking_code}/events'
        - '/v3/partner/tracking/{tracking_code}/events'
      note: >-
        Duplicate operationIds break code generation — most generators either
        collide or silently drop one of the two methods.

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/axlehire-jitsu-rest-api-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.