Tradeshift · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Tradeshift External API

5 actions 5 updates documentation extends openapi/tradeshift-external-api-openapi.yml
Derived by API Evangelist Built from the contracts Tradeshift publishes. Tradeshift did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

descriptioncontacttermsOfServicex-apievangelist-rating-sourcex-logocomponentssecurityx-apievangelist-artifacts

Targets 5

$.info
$.servers
$
$.paths['/rest/external/documents/{documentId}'].put
$.paths['/rest/external/documents/{documentId}'].get

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the Tradeshift External API
  version: 1.0.0
extends: openapi/tradeshift-external-api-openapi.yml
x-generated: '2026-08-02'
x-method: generated
x-source: >-
  Derived from the harvested spec plus Tradeshift's own published documentation (developer center guides, API root,
  RFC 8414 metadata). Applies our enhancements without mutating openapi/_original/tradeshift-openapi.json.
actions:
  - target: $.info
    description: Fill in the metadata the harvested spec omits.
    update:
      description: >-
        REST API over the Tradeshift business commerce platform — company accounts and branches, legal entities,
        taxes and dynamic validations, network connections and connection properties, document profiles, UBL/TSUBL
        business documents, document files, attachments, requisitions, quotes, receipt advices, users, assignments,
        buyer-sourced documents, and document validation and clearance.
      contact:
        name: Tradeshift Developer Center
        url: https://developers.tradeshift.com/
      termsOfService: https://tradeshift.com/terms-of-service/
      x-apievangelist-rating-source: https://apis.io/providers/tradeshift
      x-logo:
        url: https://tradeshift.com/wp-content/uploads/2021/01/Logo-symbol-white-on-blue-bg-@10x.png
  - target: $.servers
    description: Add the sandbox server alongside production; the harvested spec lists production only.
    update:
      - url: https://api-sandbox.tradeshift.com/tradeshift
        description: Sandbox environment.
  - target: $
    description: >-
      Add the security schemes Tradeshift documents in prose but never declares in the spec, and apply them globally.
    update:
      components:
        securitySchemes:
          TradeshiftOAuth2:
            type: oauth2
            description: >-
              Three-legged OAuth 2.0 for apps acting on behalf of a Tradeshift user. Client Id and Client Secret are
              issued by the Developer App.
            flows:
              implicit:
                authorizationUrl: https://go.tradeshift.com/oauth2/authorize
                scopes: {}
          TradeshiftOAuth1:
            type: http
            scheme: oauth
            description: >-
              Two-legged OAuth 1.0a with HMAC-SHA1 signing, using the consumer key/secret and token/token secret from
              the "API Access to Own Account" app. Marked deprecated by Tradeshift — backward compatibility only.
        parameters:
          TradeshiftTenantId:
            name: X-Tradeshift-TenantId
            in: header
            required: true
            description: UUID of the Tradeshift company account (tenant) the request acts on.
            schema:
              type: string
              pattern: '^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$'
      security:
        - TradeshiftOAuth2: []
        - TradeshiftOAuth1: []
      x-apievangelist-artifacts:
        authentication: authentication/tradeshift-authentication.yml
        conventions: conventions/tradeshift-conventions.yml
        errors: errors/tradeshift-problem-types.yml
        lifecycle: lifecycle/tradeshift-lifecycle.yml
        webhooks: asyncapi/tradeshift-webhooks.yml
        data_model: data-model/tradeshift-data-model.yml
        sandbox: sandbox/tradeshift-sandbox.yml
        json_schema: json-schema/
      x-apievangelist-conventions:
        idempotency:
          mechanism: client-assigned-resource-uuid
          note: PUT with a client-chosen UUID makes document/tag/property/branch writes replay-safe.
        pagination:
          style: page-number
          request: [page, limit, count]
          response: [itemsPerPage, itemCount, numPages, pageId]
        errors:
          envelope: '{ErrorCode, Message, ErrorDetail[{Key, Value}]}'
          rfc9457: false
        rate_limits:
          documented: false
  - target: $.paths['/rest/external/documents/{documentId}'].put
    description: Record the idempotency semantics Tradeshift describes in prose.
    update:
      x-idempotent: true
      x-idempotency-mechanism: client-assigned-resource-uuid
      x-idempotency-key-parameter: documentId
  - target: $.paths['/rest/external/documents/{documentId}'].get
    description: Record the supported representations for document retrieval.
    update:
      x-representations:
        - application/xml (UBL / TSUBL, default)
        - application/json
        - Oasis JSON
        - application/pdf

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/tradeshift-external-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.