KPMG Token API

APIs for Access Token

Operations 1

POST /cr/client-api/v1/token Retrieve Access Token #

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/kpmg:kpmg-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

kpmg-token-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: KPMG Origins Token API
  description: '- How to authenticate

    - Definitions of Key API Endpoints

    - Other Information


    KPMG Origins provides customers with access to their data, and data shared with them, through APIs. The APIs allow customers with the ability to create, update and extract available data.


    ## How to authenticate

    1) Create API credentials via KPMG Origins UI (NB: only users with the Administrator role can manage API credentials):

    - Login to KPMG Origins

    - Go to Settings page, then API Credentials tab

    - Create API credentials

    - Copy the Client Id and Secret (NB: you will not be able to recover the secret value if lost, however, you can generate a new one)

    2) Exchange API Credentials for a short-lived _access token_

    - Make a POST request to **https://<KPMG Origins hostname>/cr/client-api/v1/token**

    ```

    {

    "clientId": "",

    "secret": ""

    }

    ```

    3) Make authenticated requests to KPMG Origins API:

    - Use the access token value form the token API response as a Bearer token to make requests to the API i.e. set Authorization header like this: `Authorization: Bearer `

    ```

    NB: access token is only valid for a short time, if requests start failing with 401 status code, repeat steps 2) and 3)

    ```


    ## Definitions of Key API Endpoints


    This section explains key definitions of key data entities and API endpoints


    * **Organisation**: the organisation can either be an organisation or an individual.

    - An *organisation* is a participant which usually holds an ABN or ACN, usually an entity participating in commercial activities.

    - An *individual* is a participant who has no ABN or ACN. For example, in Movement, a generator who is a private individual (e.g. residential asbestos pick-up).


    This distinction is necessary as it relates to a validation in the ``post organisation`` API.

    * **Location**: locations represent geographical sites which are operated by organisations. Each location possesses a unique location ID to distinguish it from other locations in the system, as well as an organisation / client ID that specifies which organisation operates it.


    Please see the details on each individual API to learn more about the specific criteria needed for a successful payload.


    ## Other Information

    - The format for Client Id mentioned in the APIs is ``IDType.IDValue``

    - By default, the collection of items returned can include up to 10,000 items, but this can be changed via the ``Limit`` and ``Skip`` parameters.'
  version: '1.0'
tags:
- name: Token
  description: APIs for Access Token
paths:
  /cr/client-api/v1/token:
    post:
      tags:
      - Token
      summary: Retrieve Access Token
      description: '### Get access token

        Exchange Client ID and Secret for an access token (NB: Client ID and Secret can be created by a tenant Administrator via KPMG Origins UI)'
      requestBody:
        content:
          application/json-patch+json:
            schema:
              title: IssueTokenRequest
              allOf:
              - $ref: '#/components/schemas/IssueTokenRequest'
          application/json:
            schema:
              title: IssueTokenRequest
              allOf:
              - $ref: '#/components/schemas/IssueTokenRequest'
          text/json:
            schema:
              title: IssueTokenRequest
              allOf:
              - $ref: '#/components/schemas/IssueTokenRequest'
          application/*+json:
            schema:
              title: IssueTokenRequest
              allOf:
              - $ref: '#/components/schemas/IssueTokenRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerFaultErrorResponse'
        '200':
          description: Access Token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssueTokenResponse'
        '423':
          description: Locked
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LockedErrorResponse'
      operationId: postCrClientApiV1Token
      x-operation-id-source: derived
components:
  schemas:
    ValidationError:
      title: ValidationError
      type: object
      properties:
        code:
          title: String
          type:
          - string
          - 'null'
        target:
          title: String
          type:
          - string
          - 'null'
        message:
          title: String
          type:
          - string
          - 'null'
      additionalProperties: false
    ServerFaultErrorResponse:
      title: ServerFaultErrorResponse
      allOf:
      - $ref: '#/components/schemas/ErrorResponse__ServerFaultErrorDetails'
      - type: object
        additionalProperties: false
    IssueTokenResponse:
      title: IssueTokenResponse
      type: object
      properties:
        access_Token:
          title: String
          type:
          - string
          - 'null'
      additionalProperties: false
    ErrorDetails:
      title: ErrorDetails
      type: object
      properties:
        code:
          title: String
          type:
          - string
          - 'null'
        message:
          title: String
          type:
          - string
          - 'null'
      additionalProperties: false
    ErrorResponse__ValidationErrorDetails:
      title: ErrorResponse<ValidationErrorDetails>
      type: object
      properties:
        error:
          title: ValidationErrorDetails
          allOf:
          - $ref: '#/components/schemas/ValidationErrorDetails'
        debugDetail:
          title: String
          type:
          - string
          - 'null'
      additionalProperties: false
    LockedErrorDetails:
      title: LockedErrorDetails
      allOf:
      - $ref: '#/components/schemas/ErrorDetails'
      - type: object
        additionalProperties: false
    ErrorResponse__ServerFaultErrorDetails:
      title: ErrorResponse<ServerFaultErrorDetails>
      type: object
      properties:
        error:
          title: ServerFaultErrorDetails
          allOf:
          - $ref: '#/components/schemas/ServerFaultErrorDetails'
        debugDetail:
          title: String
          type:
          - string
          - 'null'
      additionalProperties: false
    ValidationErrorDetails:
      title: ValidationErrorDetails
      allOf:
      - $ref: '#/components/schemas/ErrorDetails'
      - type: object
        properties:
          details:
            title: IEnumerable<ValidationError>
            type:
            - array
            - 'null'
            items:
              $ref: '#/components/schemas/ValidationError'
        additionalProperties: false
    LockedErrorResponse:
      title: LockedErrorResponse
      allOf:
      - $ref: '#/components/schemas/ErrorResponse__LockedErrorDetails'
      - type: object
        additionalProperties: false
    ErrorResponse__LockedErrorDetails:
      title: ErrorResponse<LockedErrorDetails>
      type: object
      properties:
        error:
          title: LockedErrorDetails
          allOf:
          - $ref: '#/components/schemas/LockedErrorDetails'
        debugDetail:
          title: String
          type:
          - string
          - 'null'
      additionalProperties: false
    ServerFaultErrorDetails:
      title: ServerFaultErrorDetails
      allOf:
      - $ref: '#/components/schemas/ErrorDetails'
      - type: object
        additionalProperties: false
    IssueTokenRequest:
      title: IssueTokenRequest
      type: object
      properties:
        clientId:
          title: String
          type:
          - string
          - 'null'
        secret:
          title: String
          type:
          - string
          - 'null'
      additionalProperties: false
    ValidationErrorResponse:
      title: ValidationErrorResponse
      allOf:
      - $ref: '#/components/schemas/ErrorResponse__ValidationErrorDetails'
      - type: object
        additionalProperties: false
  securitySchemes:
    Bearer_token:
      type: apiKey
      description: 'Please enter: "Bearer YOUTOKEN"'
      name: Authorization
      in: header
x-provenance:
  method: harvested
  publisher: KPMG
  source: https://app.kpmgorigins.com/cr/client-api/swagger/v1/swagger.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)