The ID API

The ID API as documented publicly: 36 operations. Contract generated from the documentation by API Evangelist (2026-10-21); not the provider's own document.

Operations 36

POST /account-verification/v3/consents/{consentid} Trigger a bank account validation. #
GET /advanced-insights/v1/consents/{consentid}/business-financial-health If the individual has connected their account using Atto Connect, you can use the GET /advanced-insights/v1/consents/{consentId}/business-financial-health endpoint to verify a busi #
GET /advanced-insights/v1/consents/{consentid}/consumer-financial-health If the individual has connected their account using Atto Connect, you can use the GET /advanced-insights/v1/consents/{consentId}/consumer-financial-health endpoint to verify an ind #
GET /affordability/v1/consents/{consentid} Maximum of 12 months returned. #
GET /atto-score/v1/consents/{consentid}/accounts/{accountid} If you wish to receive the Atto score, you can do so using the GET /atto-score/v1/consents/{consentId}/accounts/{accountId} endpoint #
POST /connect-invitations/v1 Returns Invitation ID of the sent invitation #
GET /connect-invitations/v1/{invitationid} Returns an email invitation with the supplied invitationId, if it exists. #
POST /connect/users/v1/verification This API validates a users personal information which if successful will retrieve their credit profile. #
DELETE /connect/users/v1/{userid}/accounts This API deletes all credit bureau reported accounts information held for a user from the database and will no longer be retrievable #
GET /connect/users/v1/{userid}/accounts This API returns a list of connected accounts and unconnected accounts. #
GET /consents/v1 GET /consents/v1 #
GET /consents/v1/{consentid} Returns a single consent which details information regarding the connection #
POST /consents/v1/{consentid}/revoke Revokes a consent stopping further interaction without reauthenticating or reconfirming #
GET /consents/v2 Returns a list of consents that can be filtered with a number of optional parameters and ordered descending by status updated datetime value #
GET /data/v1/consents/{consentid}/accounts Returns a list containing the accounts shared for a consent. Does a fresh pull from the external provider. #
GET /data/v2/consents/{consentid}/accounts Returns a list containing the accounts shared for a consent. Does a fresh pull from the external provider. #
GET /data/v2/consents/{consentid}/accounts/{accountid} Returns a specific account shared for a consent. Does a fresh pull from the external provider. #
GET /data/v2/consents/{consentid}/accounts/{accountid}/balances Returns the balance information for a specific account. #
GET /data/v2/consents/{consentid}/accounts/{accountid}/transactions Returns a list of transactions tied to a specific account. #
GET /income-verification/v1/consents/{consentid}/verifications If the individual has connected their account using Atto Connect, you can use the GET endpoint to verify an individual's income. #
POST /insights-engine/v1/affordability Processes affordability for the transactions supplied. #
POST /insights-engine/v1/enrich-transactions Adds categorisation, classification and predicts a merchant name for transactions supplied #
POST /insights-engine/v1/income-verification Processes the income verifications for the accounts supplied #
DELETE /stored-data/v1/consents/{consentid} Deletes all the stored data associated with the consent #
GET /stored-data/v1/consents/{consentid}/accounts Returns a list of accounts that contains the relevant account information #
GET /stored-data/v1/consents/{consentid}/accounts/{accountid}/balances Returns balances for an account for a consent which contains credit lines #
GET /stored-data/v1/consents/{consentid}/accounts/{accountid}/end-of-day-balances Returns the end of day balances for an account for a given consent. #
GET /stored-data/v1/consents/{consentid}/accounts/{accountid}/transactions Returns a list of transactions for an account for a consent. #
GET /stored-data/v1/consents/{consentid}/affordability Returns the affordability of one or more accounts including monthly affordability and transactions #
GET /stored-data/v1/consents/{consentid}/income-verifications Gets the income verifications for the accounts shared for a consent including income sources #
GET /stored-data/v1/consents/{consentid}/payment-account-confirmation Returns the payment account confirmation for the consent #
GET /stored-data/v1/consents/{consentid}/provider-details Returns details of the connection with bank name and relevant connection dates #
POST /stored-data/v1/consents/{consentid}/refresh Refreshes the underlying connection for the banking data with the provider, then performs enrichment #
DELETE /stored-data/v1/users/{userid} Deletes all the stored data associated with the user #
GET /stored-data/v2/consents/{consentid}/accounts/{accountid}/balances Returns balances for an account for a consent which contains credit lines #
POST /v1/oauth2/token Returns a token. Only client_credentials grant type is supported. #

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

theidco-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: The ID API
  version: '2026-10-21'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-21: 36 operation(s) read from 4 public documentation page(s) (each operation
    names its page in x-source). This is not the provider''s published contract; The ID has published no machine-readable contract that the pipeline
    could find. Engine: local.'
  x-evidence-tiers:
    code-example: 0
    documentation: 36
    pages-with-code: 0
    pages-read: 4
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-10-21'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://docs.atto.co/content/apis/statements.md
  - https://docs.atto.co/content/apis/stored-data-api.md
  - https://docs.atto.co/content/apis/connect-invitation-api.md
  - https://docs.atto.co/content/apis.md
servers:
- url: https://uk.api.atto.co
paths:
  /account-verification/v3/consents/{consentid}:
    post:
      operationId: post_account_verification_v3_consents_consentid
      tags:
      - Account Verification
      summary: Trigger a bank account validation.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /advanced-insights/v1/consents/{consentid}/business-financial-health:
    get:
      operationId: get_advanced_insights_v1_consents_consentid_business_financial_health
      tags:
      - Advanced Insights
      summary: If the individual has connected their account using Atto Connect, you can use the GET /advanced-insights/v1/consents/{consentId}/business-financial-health
        endpoint to verify a business
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /advanced-insights/v1/consents/{consentid}/consumer-financial-health:
    get:
      operationId: get_advanced_insights_v1_consents_consentid_consumer_financial_health
      tags:
      - Advanced Insights
      summary: If the individual has connected their account using Atto Connect, you can use the GET /advanced-insights/v1/consents/{consentId}/consumer-financial-health
        endpoint to verify an individual
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /affordability/v1/consents/{consentid}:
    get:
      operationId: get_affordability_v1_consents_consentid
      tags:
      - Affordability
      summary: Maximum of 12 months returned.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /atto-score/v1/consents/{consentid}/accounts/{accountid}:
    get:
      operationId: get_atto_score_v1_consents_consentid_accounts_accountid
      tags:
      - Atto Score
      summary: If you wish to receive the Atto score, you can do so using the GET /atto-score/v1/consents/{consentId}/accounts/{accountId} endpoint
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /connect-invitations/v1:
    post:
      operationId: post_connect_invitations_v1
      tags:
      - Connect Invitations
      summary: Returns Invitation ID of the sent invitation
      x-source: https://docs.atto.co/content/apis/connect-invitation-api.md
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostConnectInvitationsV1Response'
      x-evidence:
        kind: documentation
  /connect-invitations/v1/{invitationid}:
    get:
      operationId: get_connect_invitations_v1_invitationid
      tags:
      - Connect Invitations
      summary: Returns an email invitation with the supplied invitationId, if it exists.
      x-source: https://docs.atto.co/content/apis/connect-invitation-api.md
      parameters:
      - name: invitationid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetConnectInvitationsV1InvitationidResponse'
      x-evidence:
        kind: documentation
  /connect/users/v1/verification:
    post:
      operationId: post_connect_users_v1_verification
      tags:
      - Connect
      summary: This API validates a users personal information which if successful will retrieve their credit profile.
      x-source: https://docs.atto.co/content/apis.md
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /connect/users/v1/{userid}/accounts:
    delete:
      operationId: delete_connect_users_v1_userid_accounts
      tags:
      - Connect
      summary: This API deletes all credit bureau reported accounts information held for a user from the database and will no longer be retrievable
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: userid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    get:
      operationId: get_connect_users_v1_userid_accounts
      tags:
      - Connect
      summary: This API returns a list of connected accounts and unconnected accounts.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: userid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /consents/v1:
    get:
      operationId: get_consents_v1
      tags:
      - Consents
      summary: GET /consents/v1
      x-source: https://docs.atto.co/content/apis.md
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /consents/v1/{consentid}:
    get:
      operationId: get_consents_v1_consentid
      tags:
      - Consents
      summary: Returns a single consent which details information regarding the connection
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /consents/v1/{consentid}/revoke:
    post:
      operationId: post_consents_v1_consentid_revoke
      tags:
      - Consents
      summary: Revokes a consent stopping further interaction without reauthenticating or reconfirming
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /consents/v2:
    get:
      operationId: get_consents_v2
      tags:
      - Consents
      summary: Returns a list of consents that can be filtered with a number of optional parameters and ordered descending by status updated datetime
        value
      x-source: https://docs.atto.co/content/apis.md
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /data/v1/consents/{consentid}/accounts:
    get:
      operationId: get_data_v1_consents_consentid_accounts
      tags:
      - Data
      summary: Returns a list containing the accounts shared for a consent. Does a fresh pull from the external provider.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /data/v2/consents/{consentid}/accounts:
    get:
      operationId: get_data_v2_consents_consentid_accounts
      tags:
      - Data
      summary: Returns a list containing the accounts shared for a consent. Does a fresh pull from the external provider.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /data/v2/consents/{consentid}/accounts/{accountid}:
    get:
      operationId: get_data_v2_consents_consentid_accounts_accountid
      tags:
      - Data
      summary: Returns a specific account shared for a consent. Does a fresh pull from the external provider.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /data/v2/consents/{consentid}/accounts/{accountid}/balances:
    get:
      operationId: get_data_v2_consents_consentid_accounts_accountid_balances
      tags:
      - Data
      summary: Returns the balance information for a specific account.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /data/v2/consents/{consentid}/accounts/{accountid}/transactions:
    get:
      operationId: get_data_v2_consents_consentid_accounts_accountid_transactions
      tags:
      - Data
      summary: Returns a list of transactions tied to a specific account.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /income-verification/v1/consents/{consentid}/verifications:
    get:
      operationId: get_income_verification_v1_consents_consentid_verifications
      tags:
      - Income Verification
      summary: If the individual has connected their account using Atto Connect, you can use the GET endpoint to verify an individual's income.
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /insights-engine/v1/affordability:
    post:
      operationId: post_insights_engine_v1_affordability
      tags:
      - Insights Engine
      summary: Processes affordability for the transactions supplied.
      x-source: https://docs.atto.co/content/apis.md
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /insights-engine/v1/enrich-transactions:
    post:
      operationId: post_insights_engine_v1_enrich_transactions
      tags:
      - Insights Engine
      summary: Adds categorisation, classification and predicts a merchant name for transactions supplied
      x-source: https://docs.atto.co/content/apis.md
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /insights-engine/v1/income-verification:
    post:
      operationId: post_insights_engine_v1_income_verification
      tags:
      - Insights Engine
      summary: Processes the income verifications for the accounts supplied
      x-source: https://docs.atto.co/content/apis.md
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}:
    delete:
      operationId: delete_stored_data_v1_consents_consentid
      tags:
      - Stored Data
      summary: Deletes all the stored data associated with the consent
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/accounts:
    get:
      operationId: get_stored_data_v1_consents_consentid_accounts
      tags:
      - Stored Data
      summary: Returns a list of accounts that contains the relevant account information
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/accounts/{accountid}/balances:
    get:
      operationId: get_stored_data_v1_consents_consentid_accounts_accountid_balances
      tags:
      - Stored Data
      summary: Returns balances for an account for a consent which contains credit lines
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/accounts/{accountid}/end-of-day-balances:
    get:
      operationId: get_stored_data_v1_consents_consentid_accounts_accountid_end_of_day_balances
      tags:
      - Stored Data
      summary: Returns the end of day balances for an account for a given consent.
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/accounts/{accountid}/transactions:
    get:
      operationId: get_stored_data_v1_consents_consentid_accounts_accountid_transactions
      tags:
      - Stored Data
      summary: Returns a list of transactions for an account for a consent.
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/affordability:
    get:
      operationId: get_stored_data_v1_consents_consentid_affordability
      tags:
      - Stored Data
      summary: Returns the affordability of one or more accounts including monthly affordability and transactions
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/income-verifications:
    get:
      operationId: get_stored_data_v1_consents_consentid_income_verifications
      tags:
      - Stored Data
      summary: Gets the income verifications for the accounts shared for a consent including income sources
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/payment-account-confirmation:
    get:
      operationId: get_stored_data_v1_consents_consentid_payment_account_confirmation
      tags:
      - Stored Data
      summary: Returns the payment account confirmation for the consent
      x-source: https://docs.atto.co/content/apis.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/provider-details:
    get:
      operationId: get_stored_data_v1_consents_consentid_provider_details
      tags:
      - Stored Data
      summary: Returns details of the connection with bank name and relevant connection dates
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/consents/{consentid}/refresh:
    post:
      operationId: post_stored_data_v1_consents_consentid_refresh
      tags:
      - Stored Data
      summary: Refreshes the underlying connection for the banking data with the provider, then performs enrichment
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v1/users/{userid}:
    delete:
      operationId: delete_stored_data_v1_users_userid
      tags:
      - Stored Data
      summary: Deletes all the stored data associated with the user
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: userid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /stored-data/v2/consents/{consentid}/accounts/{accountid}/balances:
    get:
      operationId: get_stored_data_v2_consents_consentid_accounts_accountid_balances
      tags:
      - Stored Data
      summary: Returns balances for an account for a consent which contains credit lines
      x-source: https://docs.atto.co/content/apis/stored-data-api.md
      parameters:
      - name: consentid
        in: path
        required: true
        schema:
          type: string
      - name: accountid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /v1/oauth2/token:
    post:
      operationId: post_v1_oauth2_token
      tags:
      - Oauth2
      summary: Returns a token. Only client_credentials grant type is supported.
      x-source: https://docs.atto.co/content/apis.md
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
components:
  schemas:
    PostConnectInvitationsV1Response:
      type: object
      properties:
        invitationId:
          type: string
          description: Identifier of the created invitation
    GetConnectInvitationsV1InvitationidResponse:
      type: object
      properties:
        invitationId:
          type: string
          description: Identifier of the invitation
        email:
          type: string
          description: Email address of the invited user
        status:
          type: string
          description: Current status of the invitation
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      x-source: https://docs.atto.co/content/docs/guides/platform-integration/authentication.md
tags:
- name: Account Verification
- name: Advanced Insights
- name: Affordability
- name: Atto Score
- name: Connect
- name: Connect Invitations
- name: Consents
- name: Data
- name: Income Verification
- name: Insights Engine
- name: Oauth2
- name: Stored Data
security:
- Bearer: []