Echo Global Logistics token API

Obtaining and using tokens

Operations 1

POST /token Process to acquire a bearer token from Echo Global Logistics #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/echo-global-token-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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.

OpenAPI Specification

echo-global-token-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    name: Echo Global Logistics
    url: https://www.echo.com
    email: info@echo.com
  version: 1.0.0
  title: Echo Authorizer documents Token API
  description: 'All API operations require an access token to be passed in the Authorization Header for each request. The token type is an OAuth 2.0 Bearer token. To get the token you have to call the /token operation of this API and provide **client_id** and **client_secret**.


    **`Access Token Lifecycle:`** When you recieve an Access Token, it is valid for defined amount of time. The expiration time for the token is returned in the response along with the bearer token.  Developers should implement the client application in a way that  token will be requested again only after it expires. During this time you don''t have to request new token per each request, but you can simply reuse the same token to access API resources, until the token expires. The invalid token or token expiration will be indicated by HTTP Status Code 401 Unauthorized, then your application has to request new Access token.


    **`Access Token Request Rate Limiting:`** The Access Token should be used for the lifetime of the token until it has expired. Partners requesting new tokens multiple times in an hour may be subject to rate limiting.


    **`API Request Rate Limiting:`** Please do not exceed more than 3 requests per second. Partners who exceed this limit may be subject to rate limiting.'
servers:
- description: SwaggerHub API Auto Mocking
  url: https://virtserver.swaggerhub.com/echogl/Echo_Authorizer_Public/1.0.0
- description: Production environment.
  url: https://auth.echo.com
tags:
- name: token
  description: Obtaining and using tokens
paths:
  /token:
    post:
      summary: Process to acquire a bearer token from Echo Global Logistics
      tags:
      - token
      description: Endpoint to obtain a token - either used for the Client Credentials Flow or as the second leg of the Authorization Code Flow w/ or w/out PKCE
      operationId: token
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                client_id:
                  type: string
                  description: The supplied client ID generated for your application
                client_secret:
                  type: string
                  description: The supplied client secret generated for your application <p>**Required if grant_type is** ***client_credentials***</p>
                grant_type:
                  type: string
                  description: The type of grant you are using to obtain a token
                  enum:
                  - client_credentials
                scope:
                  type: string
                  description: The scope(s) being requested by the application <p>Scopes are space-delimited</p> <p>Scopes that are granted will be returned in the access token</p> <p>**Required if grant_type is** ***client_credentials***</p>
                  enum:
                  - quotes:create
                  - tender:action
                  - load_status:read
                  - invoice:read
                  - connect_api:action
                  - loads:read
                  - loads:action
              required:
              - client_id
              - client_secret
              - grant_type
              - scope
      responses:
        '200':
          $ref: '#/components/responses/TokenResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                invalid_client:
                  summary: Invalid client id
                  value:
                    error: invalid_request
                    error_desc: Resource not found
                invalid_grant:
                  summary: Grant has been used or has expired
                  value:
                    error: invalid_grant
                    error_desc: grant request is invalid
                missing_param:
                  summary: Missing required parameter
                  value:
                    error: invalid_request
                    error_desc: missing required parameter(s). (redirect_uri)
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                failed_auth:
                  summary: Failed authentication
                  value:
                    error: invalid_request
                    error_desc: Authentication Failed
                no_access:
                  summary: No access
                  value:
                    error: invalid_request
                    error_desc: Access is unauthorized
      security:
      - apiKey: []
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
          description: Short indicator of error type
        error_desc:
          type: string
          description: Description of error
    Token:
      type: object
      properties:
        access_token:
          type: string
          description: JSON Web Token (JWT) that represents a session generated for a client
        expires_in:
          type: integer
          description: Number of seconds until the session expires
        token_type:
          type: string
          description: Type of access token - always set to Bearer
        scope:
          type: string
          description: scope(s) approved with the token
  responses:
    TokenResponse:
      description: Success
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Token'
          examples:
            grant_type_client_credentials:
              summary: Grant type as client_credentials
              value:
                access_token: NWE4Nzg2ZDEtNzQyMS00ZDViLThjMjctMGQwNjlmZjU5MWNkBGjFElT7CWzl0d....
                expires_in: 3600
                token_type: Bearer
                scope: quotes:create
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
    apiKey:
      type: apiKey
      name: x-api-key
      in: header