BanQu · OpenAPI Overlay 1.0.0
API Evangelist enhancements for the BanQu API
6 actions
6 updates
update
extends
openapi/banqu-openapi-original.json
Derived by API Evangelist
Built from the contracts BanQu publishes. BanQu did not publish this file.
What the actions change
x-apievangelist-notecontactx-apievangelist-profilex-apievangelist-reviewedx-apievangelist-artifactsx-apievangelist-findings
Targets 5
$.info
$.servers
$.tags
$.components.parameters.Limit
$.components.responses['429']
OpenAPI Overlay
overlay: 1.0.0
info:
title: API Evangelist enhancements for the BanQu API
version: 1.0.0
extends: openapi/banqu-openapi-original.json
x-generated: '2026-08-06'
x-method: generated
x-source: >-
Derived from the live OpenAPI 3.0.3 document at https://banqu.app/api/v1/schema plus the artifacts
in this repository. The original spec is never mutated; every enhancement below is expressed as an
overlay action.
actions:
- target: $.info
update:
contact:
name: BanQu Support
email: info@banqu.co
url: https://www.banqu.co/support-policy
x-apievangelist-profile: https://apievangelist.com/providers/banqu
x-apievangelist-reviewed: '2026-08-06'
x-apievangelist-artifacts:
authentication: authentication/banqu-authentication.yml
conventions: conventions/banqu-conventions.yml
errors: errors/banqu-problem-types.yml
data_model: data-model/banqu-data-model.yml
lifecycle: lifecycle/banqu-lifecycle.yml
conformance: conformance/banqu-conformance.yml
webhooks: asyncapi/banqu-webhooks.yml
skills: skills/_index.yml
- target: $.info
update:
x-apievangelist-findings:
operation_ids: >-
None of the 191 operations declares an operationId. Every generator, SDK, MCP bridge and
agent tool built against this spec must synthesize identifiers from method+path, and any two
tools will synthesize them differently. Adding stable operationIds is the single
highest-leverage change to this document.
operation_summaries: >-
No operation declares a `summary`; several declare only a terse `description`. Tag-level
descriptions exist for 8 of the 25 tags.
error_schemas: >-
The shared 4xx response components carry a description but no content or schema, so no error
body is machine-readable from the contract.
rate_limits: >-
A 429 response component is defined but referenced by zero operations, and no rate-limit
headers are declared.
idempotency: >-
No idempotency-key mechanism, including on the two batch write endpoints
(POST /transactions/batch and POST /assets/{assetId}/transfers/batch).
auth_header: >-
components.securitySchemes declares HTTP Bearer while components.schemas.AuthTokens
documents an X-BQ-Token header. The two statements conflict.
server_url: >-
servers[0].url is "https://banqu.app:443/api/v1" - the explicit :443 is redundant for https
and breaks some strict URL parsers and code generators.
- target: $.servers
update:
- url: https://banqu.app/api/v1
description: >-
Production (API Evangelist normalization of the published
"https://banqu.app:443/api/v1" - same host, redundant default port removed)
- target: $.tags
update:
- name: Authentication
description: >-
Account discovery, short-lived session tokens, and persistent API tokens. Start here: list
accounts, mint a token for the account you intend to act as, then call everything else.
- name: Assets
description: >-
Tracked commodity or product units - the nouns that move through the chain of custody.
- name: Asset Transfers
description: >-
Movements of asset quantity between accounts. /sources on a transfer or an asset is what makes
farm-to-shelf traceability queryable.
- name: Forms
description: >-
Structured questionnaire definitions used to capture supplier, plot, and compliance evidence.
- name: Form Data Entries
description: >-
Submitted form instances with an approve / deny / review / reject / withdraw lifecycle.
Entries may be addressed by a double-pipe-separated natural key instead of a BanQu id.
- name: Public Profiles
description: Read-only supplier profile data shared to the acting account by another party.
- name: Attachments
description: Pre-signed upload URL minting for files referenced by assets, forms, and processors.
- name: Notifications
description: >-
Polled notification feed. Writes accept a `preventNotify` query parameter to suppress
notification side effects during bulk import.
- target: $.components.parameters.Limit
update:
x-apievangelist-note: >-
No maximum is declared. Clients should not assume an unbounded page size.
- target: $.components.responses['429']
update:
x-apievangelist-note: >-
Defined but referenced by zero operations, and no RateLimit-* or Retry-After headers are
declared. Treat rate limits as undocumented and back off on 429 regardless.
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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/banqu-openapi-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.