Token.io · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Token Banks API

12 actions 12 updates phrasing extends openapi/token-io-banks-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Token.io's API. It is a proposal applied on top of the contract, not a document Token.io publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 12

$.info
$.paths['/banks/{bankId}/consent-requests/{requestId}'].get
$.paths['/banks/{bankId}/consents'].post
$.paths['/banks/{bankId}/consents/{consentId}'].get
$.paths['/banks/{bankId}/consents/{consentId}'].delete
$.paths['/banks/{bankId}/reports/availability'].get
$.paths['/banks/{bankId}/reports/tpp-access'].get
$.paths['/banks/{bankId}/reports/tpp-performance'].get
$.paths['/banks/{bankId}/users'].post
$.paths['/banks/{bankId}/users/{userId}'].delete
$.paths['/banks/{bankId}/users/{userId}/access-consents'].get
$.paths['/banks/{bankId}/users/{userId}/access-consents'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Token Banks API
  version: 1.0.0
extends: openapi/token-io-banks-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 11
- target: $.paths['/banks/{bankId}/consent-requests/{requestId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a consent request at a bank
      effect: read
      questions:
      - As a bank, how do I look up a consent request by its request id?
      - Can I see what a TPP asked for in a pending consent request?
      instructions:
      - text: Get consent request {request_id} at bank {bank_id}.
        slots:
          request_id: path.requestId
          bank_id: path.bankId
      - text: Show the details of consent request {request_id} for bank {bank_id}.
        slots:
          request_id: path.requestId
          bank_id: path.bankId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/consents'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a consent at a bank from a request
      effect: write
      questions:
      - How does a bank turn a consent request into an actual consent?
      - Can I create a consent for bank users after they approve a request?
      instructions:
      - text: Create a consent at bank {bank_id}.
        slots:
          bank_id: path.bankId
      - text: Create a consent at bank {bank_id} with parameters {params}.
        slots:
          bank_id: path.bankId
          params: requestBody.params
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/consents/{consentId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a consent at a bank
      effect: read
      questions:
      - Can a bank look up a consent it granted by consent id?
      - What status and scope does an existing bank consent have?
      instructions:
      - text: Get consent {consent_id} at bank {bank_id}.
        slots:
          consent_id: path.consentId
          bank_id: path.bankId
      - text: Show bank {bank_id}'s consent {consent_id}.
        slots:
          bank_id: path.bankId
          consent_id: path.consentId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/consents/{consentId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Cancel a consent at a bank
      effect: destructive
      questions:
      - Can a bank cancel a consent it previously granted to a TPP?
      - What happens to TPP access when a bank cancels the consent?
      instructions:
      - text: Cancel consent {consent_id} at bank {bank_id}.
        slots:
          consent_id: path.consentId
          bank_id: path.bankId
      - text: Withdraw bank {bank_id}'s consent {consent_id}.
        slots:
          bank_id: path.bankId
          consent_id: path.consentId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/reports/availability'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a bank's API availability report
      effect: read
      questions:
      - How available has a bank's open banking API been recently?
      - Can I choose how many days back the availability report covers?
      instructions:
      - text: Get the availability report for bank {bank_id}.
        slots:
          bank_id: path.bankId
      - text: Show bank {bank_id}'s availability over the last {days} days.
        slots:
          bank_id: path.bankId
          days: query.daysBack
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/reports/tpp-access'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a bank's TPP access report
      effect: read
      questions:
      - Which third-party providers have been accessing a bank's APIs?
      - Can a bank report on TPP access over a set number of days?
      instructions:
      - text: Get the TPP access report for bank {bank_id}.
        slots:
          bank_id: path.bankId
      - text: Show which TPPs accessed bank {bank_id} in the last {days} days.
        slots:
          bank_id: path.bankId
          days: query.daysBack
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/reports/tpp-performance'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a bank's TPP performance report
      effect: read
      questions:
      - How is a bank's API performing for third-party providers?
      - Is there a performance report per TPP for a bank over recent days?
      instructions:
      - text: Get the TPP performance report for bank {bank_id}.
        slots:
          bank_id: path.bankId
      - text: Show TPP performance at bank {bank_id} for the past {days} days.
        slots:
          bank_id: path.bankId
          days: query.daysBack
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/users'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a user in a bank's realm
      effect: write
      questions:
      - Can a bank create a user record in its Token.io realm?
      - What do I get back when I create a bank user?
      instructions:
      - text: Create a new user at bank {bank_id}.
        slots:
          bank_id: path.bankId
      - text: Add a user to bank {bank_id}'s realm and return the user id.
        slots:
          bank_id: path.bankId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/users/{userId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a user from a bank's realm
      effect: destructive
      questions:
      - Can a bank delete a user from its realm?
      - What's needed to remove a bank user by id?
      instructions:
      - text: Delete user {user_id} at bank {bank_id}.
        slots:
          user_id: path.userId
          bank_id: path.bankId
      - text: Remove user {user_id} from bank {bank_id}'s realm.
        slots:
          user_id: path.userId
          bank_id: path.bankId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/users/{userId}/access-consents'].get
  update:
    x-apievangelist-phrasing:
      intent: List a bank user's access consents
      effect: read
      questions:
      - Which access consents has a bank user granted, including expired ones?
      - Can I filter a user's access consents by status?
      instructions:
      - text: List every access consent, any status, for user {user_id} at bank {bank_id}.
        slots:
          user_id: path.userId
          bank_id: path.bankId
      - text: Show user {user_id}'s access consents at bank {bank_id} with status {status}.
        slots:
          user_id: path.userId
          bank_id: path.bankId
          status: query.status
      method: generated
      generated: '2026-09-26'
- target: $.paths['/banks/{bankId}/users/{userId}/access-consents'].post
  update:
    x-apievangelist-phrasing:
      intent: List a bank user's active access consents
      effect: read
      questions:
      - Which access consents are still active for a bank user?
      - Can I page through only the currently active consents for a user?
      instructions:
      - text: Only show consents still in force for user {user_id} at bank {bank_id}.
        slots:
          user_id: path.userId
          bank_id: path.bankId
      - text: Show {limit} active consents for user {user_id} at bank {bank_id}.
        slots:
          limit: query.page.limit
          user_id: path.userId
          bank_id: path.bankId
      method: generated
      generated: '2026-09-26'

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/token-io-banks-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.