Triodos Bank UK Account Information Service API

This service may be used by an AISP to request information about the account of a PSU. The account is managed by the ASPSP providing the XS2A Interface. Functionality and restrictions of this service comply with the requirements defined by article 67 of PSD2.

Operations 13

GET /{tenant}/v1/accounts/{account-id} Get account #
GET /{tenant}/v1/accounts Get accounts #
GET /{tenant}/v1/accounts/{account-id}/balances Get account balances #
GET /{tenant}/v1/accounts/{account-id}/transactions Get account transactions #
GET /{tenant}/v1/accounts/{account-id}/transactions/page Paginate account transactions (deprecated, pass edge token to transactions endpoint instead) #
GET /{tenant}/v1/consents/{resource-id}/authorisations Get authorisations #
POST /{tenant}/v1/consents/{resource-id}/authorisations Create authorisation #
GET /{tenant}/v1/consents/{resource-id}/authorisations/{authorisation-id} Get authorisation status #
PUT /{tenant}/v1/consents/{resource-id}/authorisations/{authorisation-id} Update consent authorisation with access token #
GET /{tenant}/v1/consents/{resource-id} Get consent #
DELETE /{tenant}/v1/consents/{resource-id} Delete consent #
GET /{tenant}/v1/consents/{resource-id}/status Get consent status #
POST /{tenant}/v1/consents Register consent #

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/triodos-bank-uk-account-information-service-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

triodos-bank-uk-account-information-service-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Triodos XS2A BG service Account Information Service API
  description: Triodos XS2A BG service
  termsOfService: https://www.triodos.com
  contact:
    name: Triodos Support
    url: https://www.triodos.com
    email: info@triodos.com
  license:
    name: Creative Commons Attribution 4.0 International Public License
    url: https://creativecommons.org/licenses/by/4.0/
  version: '1.1'
servers:
- url: https://xs2a-sandbox.triodos.com/xs2a-bg
  description: Triodos XS2A Sandbox
tags:
- name: Account Information Service
  description: This service may be used by an AISP to request information about the account of a PSU. The account is managed by the ASPSP providing the XS2A Interface. Functionality and restrictions of this service comply with the requirements defined by article 67 of PSD2.
  externalDocs:
    description: 'Berlin Group XS2A Implementation Version 1.3 - Chapter 6: Account Information Service'
    url: https://docs.wixstatic.com/ugd/c2914b_bec5f9d0d3c94cfca2ad1b9da36dc752.pdf
paths:
  /{tenant}/v1/accounts/{account-id}:
    get:
      tags:
      - Account Information Service
      summary: Get account
      description: Reads details about an account, with balances where required. It is assumed that a consent of the PSU to this access is already given and stored on the ASPSP system. The addressed details of this account depends then on the stored consent addressed by consentId, respectively the OAuth2 access token.
      operationId: getAccount
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: PSU-IP-Address
        in: header
        description: IP Address of the PSU if involved in the request.
        schema:
          type: string
      - name: Consent-ID
        in: header
        description: ID of registered and authorized consent.
        required: true
        schema:
          type: string
          format: uuid
      - name: account-id
        in: path
        description: ID of account.
        required: true
        schema:
          type: string
          format: uuid
      - name: withBalance
        in: query
        description: Not supported, should be unset
        schema:
          type: boolean
      responses:
        '200':
          description: Account returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aAccountResponse'
        '400':
          description: ConsentID invalid/ AccountID invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '401':
          description: Invalid scope/ Invalid consent/ Given access token is not coupled to the given consent/ User has no access to the given account/ Consented product is blocked
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '404':
          description: AccountID not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
  /{tenant}/v1/accounts:
    get:
      tags:
      - Account Information Service
      summary: Get accounts
      description: Reads a list of bank accounts, with balances where required. It is assumed that a consent of the PSU to this access is already given and stored on the ASPSP system. The addressed list of accounts depends then on the PSU ID and the stored consent addressed by consentId, respectively the OAuth2 access token.
      operationId: getAccounts
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: PSU-IP-Address
        in: header
        description: IP Address of the PSU if involved in the request.
        schema:
          type: string
      - name: Consent-ID
        in: header
        description: ID of registered and authorized consent.
        required: true
        schema:
          type: string
          format: uuid
      - name: withBalance
        in: query
        description: Not supported, should be unset
        schema:
          type: boolean
      responses:
        '200':
          description: Accounts returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aAccountsResponse'
        '400':
          description: ConsentID invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '401':
          description: Invalid scope/ Invalid consent/ Given access token is not coupled to the given consent/ User does not have access to the consented accounts/ Consented products are blocked
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
  /{tenant}/v1/accounts/{account-id}/balances:
    get:
      tags:
      - Account Information Service
      summary: Get account balances
      description: Reads account data from a given account addressed by "account-id".
      operationId: getBalances
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: PSU-IP-Address
        in: header
        description: IP Address of the PSU if involved in the request.
        schema:
          type: string
      - name: Consent-ID
        in: header
        description: ID of registered and authorized consent.
        required: true
        schema:
          type: string
          format: uuid
      - name: account-id
        in: path
        description: ID of account.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Balances returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aBalancesResponse'
        '400':
          description: ConsentUUID invalid/ AccountID invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '401':
          description: Invalid scope/ Invalid consent/ Given access token is not coupled to the given consent/ User has no access to the given account/ Consented product is blocked/ Given consent does not provide access to balance of account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '404':
          description: AccountID not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '429':
          description: Too many requests - number of requests exceeds FrequencyPerDay of consent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
  /{tenant}/v1/accounts/{account-id}/transactions:
    get:
      tags:
      - Account Information Service
      summary: Get account transactions
      description: Reads account data from a given account addressed by "account-id".
      operationId: getTransactions
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: PSU-IP-Address
        in: header
        description: IP Address of the PSU if involved in the request.
        schema:
          type: string
      - name: Consent-ID
        in: header
        description: ID of registered and authorized consent.
        required: true
        schema:
          type: string
          format: uuid
      - name: account-id
        in: path
        description: ID of account.
        required: true
        schema:
          type: string
          format: uuid
      - name: bookingStatus
        in: query
        description: Permitted codes are "booked", "pending" and "both", mandated if no delta access is required.
        schema:
          type: string
          enum:
          - booked
          - pending
          - both
          - information
          - all
      - name: dateFrom
        in: query
        description: Starting date (inclusive the date dateFrom) of the transaction list, mandated if no delta access is required.
        schema:
          type: string
          format: date
      - name: dateTo
        in: query
        description: End date (inclusive the date dateTo) of the transaction list, default is now if not given.
        schema:
          type: string
          format: date
      - name: withBalance
        in: query
        description: Not supported, should be unset
        schema:
          type: boolean
      - name: entryReferenceFrom
        in: query
        description: Not supported, should be unset
        schema:
          type: string
      - name: deltaList
        in: query
        description: Not supported, should be unset
        schema:
          type: boolean
      - name: edgeToken
        in: query
        description: Pagination edge token, to be used when paging through transactions
        schema:
          $ref: '#/components/schemas/Xs2aTransactionSearchCriteriaEdgeToken'
      responses:
        '200':
          description: Transactions returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aTransactionsResponse'
        '400':
          description: ConsentID invalid/ AccountID invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '401':
          description: Invalid scope/ Invalid consent/ Given access token is not coupled to the given consent/ User has no access to the given account/ Consented product is blocked/ Given consent does not provide access to transactions of account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '404':
          description: AccountID not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '429':
          description: Too many requests - number of requests exceeds FrequencyPerDay of consent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
  /{tenant}/v1/accounts/{account-id}/transactions/page:
    get:
      tags:
      - Account Information Service
      summary: Paginate account transactions (deprecated, pass edge token to transactions endpoint instead)
      description: Reads account data from a given account addressed by "account-id".
      operationId: getTransactionsPage
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: PSU-IP-Address
        in: header
        description: IP Address of the PSU if involved in the request.
        schema:
          type: string
      - name: Consent-ID
        in: header
        description: ID of registered and authorized consent.
        required: true
        schema:
          type: string
          format: uuid
      - name: account-id
        in: path
        description: ID of account.
        required: true
        schema:
          type: string
          format: uuid
      - name: edgeToken
        in: query
        description: Pagination edge token.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Transactions returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aTransactionsResponse'
        '400':
          description: ConsentID invalid/ AccountID invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '401':
          description: Invalid scope/ Invalid consent/ Given access token is not coupled to the given consent/ User has no access to the given account/ Consented product is blocked/ Given consent does not provide access to transactions of account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '404':
          description: AccountID not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '429':
          description: Too many requests - number of requests exceeds FrequencyPerDay of consent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
      deprecated: true
  /{tenant}/v1/consents/{resource-id}/authorisations:
    get:
      tags:
      - Account Information Service
      summary: Get authorisations
      description: Will deliver an array of resource ids of all generated authorisation sub-resources.
      operationId: getAisAuthorisations
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: resource-id
        in: path
        description: ID of the consent.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Authorisations returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aAuthorisationsRequestResponse'
        '400':
          description: ConsentID is invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
    post:
      tags:
      - Account Information Service
      summary: Create authorisation
      description: Creates a consent authorisation sub-resource.
      operationId: createAisAuthorisation
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: resource-id
        in: path
        description: ID of the consent to create authorisation sub-resource for.
        required: true
        schema:
          type: string
          format: uuid
      - name: TPP-Redirect-URI
        in: header
        description: URI of the TPP, where the transaction flow shall be redirected to after a Redirect.
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Consent authorisation created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aAuthorisationRequestResponse'
        '400':
          description: ConsentID is invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
  /{tenant}/v1/consents/{resource-id}/authorisations/{authorisation-id}:
    get:
      tags:
      - Account Information Service
      summary: Get authorisation status
      description: Checks the SCA status of an authorisation sub-resource.
      operationId: getAisAuthorisationStatus
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: resource-id
        in: path
        description: ID of the consent.
        required: true
        schema:
          type: string
          format: uuid
      - name: authorisation-id
        in: path
        description: ID of the authorisation sub-resource.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Authorisation status returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aAuthorisationStatusRequestResponse'
        '400':
          description: AuthorisationID is invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
    put:
      tags:
      - Account Information Service
      summary: Update consent authorisation with access token
      description: Updates the account information consent authorisation with an access token. If the access token has sufficient privileges, the consent will be authorized
      operationId: submitAisAuthorisation
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: resource-id
        in: path
        description: ID of the consent.
        required: true
        schema:
          type: string
          format: uuid
      - name: authorisation-id
        in: path
        description: ID of the authorisation sub-resource
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Consent authorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aAuthorisationRequestResponse'
        '400':
          description: ConsentID is invalid/ consent status is invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '401':
          description: Invalid scope/ Invalid consent/ Given access token is not coupled to the given consent/ User does not have access to all products requested for consent/ Authorization timed out
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
  /{tenant}/v1/consents/{resource-id}:
    get:
      tags:
      - Account Information Service
      summary: Get consent
      description: Returns the content of an account information consent object. This is returning the data for the TPP especially in cases, where the consent was directly managed between ASPSP and PSU e.g. in a re-direct SCA Approach.
      operationId: getAisConsent
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: resource-id
        in: path
        description: ID of the consent.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Consent returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Xs2aConsentRequestResponse'
        '400':
          description: ConsentID is invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
    delete:
      tags:
      - Account Information Service
      summary: Delete consent
      description: Deletes a given consent.
      operationId: deleteAisConsent
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        required: true
        schema:
          type: string
      - name: resource-id
        in: path
        description: ID of the consent.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: Consent deleted
        '400':
          description: ConsentID is invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '401':
          description: Invalid scope/ Invalid consent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
        '403':
          description: ConsentID not found, or not registered for this TPP
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TppMessages'
  /{tenant}/v1/consents/{resource-id}/status:
    get:
      tags:
      - Account Information Service
      summary: Get consent status
      description: Check the status of an account information consent resource.
      operationId: getAisConsentStatus
      parameters:
      - name: X-Request-ID
        in: header
        description: ID of the request, unique to the call, as determined by the initiating party.
        required: true
        schema:
          type: string
      - name: tenant
        in: path
        description: Branch of the request.
        required: true
        schema:
          type: string
          enum:
          - uk
          - nl
          - be_fr
          - be_nl
      - name: Signature
        in: header
        description: A signature of the request by the TPP on application level.
        required: true
        schema:
          type: string
      - name: Digest
        in: header
        description: Digest contains a Hash of the message body, used for authentication of the request. The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512.
        req

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/triodos-bank-uk/refs/heads/main/openapi/triodos-bank-uk-account-information-service-api-openapi.yml