Chainflip Broker as a Service Onboarding API

How to start: what works without a key, how to get one, the sandbox and a first call.

Operations 1

GET /onboarding Get the onboarding facts #

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/chainflip-broker-io:chainflip-broker-io-onboarding-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

chainflip-broker-io-onboarding-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Chainflip Broker as a Service Onboarding API
  description: Run your own Chainflip Broker without any hassle.
  version: v1
  x-onboarding:
    freeToStart: true
    noKeyNeeded:
    - /mcp
    - /assets
    - /networks
    apiKeys:
      selfServe: true
      signup: /register
      secret: false
    sandbox: Testing environment on the Chainflip Perseverance testnet; its URLs are listed at /onboarding.
    firstCall: GET /assets
    facts: /onboarding
servers:
- url: /
  description: 'Free to start. The MCP server (/mcp), /assets and /networks need no key or account; get an API key self-serve at /register, free and without payment details. Onboarding facts: /onboarding.'
tags:
- name: Onboarding
  description: 'How to start: what works without a key, how to get one, the sandbox and a first call.'
paths:
  /onboarding:
    get:
      tags:
      - Onboarding
      summary: Get the onboarding facts
      description: 'Machine-readable onboarding for agents, no key needed: what works without a key (the MCP server, `listAssets`, `listNetworks`), how to get a key self-serve, the testnet sandbox, a first call and the pricing. Every claim carries URLs you can fetch anonymously to verify it, on the origin of the transport you called (onion over Tor).'
      operationId: getOnboarding
      responses:
        '200':
          description: The onboarding facts.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChainflipBaas.Infrastructure.Http.OnboardingDocument'
components:
  schemas:
    ChainflipBaas.Infrastructure.Http.OnboardingDocument:
      type: object
      properties:
        service:
          type: string
          description: The service name.
          example: Chainflip Broker as a Service
        noKeyNeeded:
          $ref: '#/components/schemas/ChainflipBaas.Infrastructure.Http.NoKeyAccess'
        apiKeys:
          $ref: '#/components/schemas/ChainflipBaas.Infrastructure.Http.ApiKeyOnboarding'
        sandbox:
          $ref: '#/components/schemas/ChainflipBaas.Infrastructure.Http.SandboxEnvironment'
        firstCall:
          $ref: '#/components/schemas/ChainflipBaas.Infrastructure.Http.FirstCall'
        openApi:
          type: string
          description: The OpenAPI document of this API.
          example: https://chainflip-broker.io/docs/v1/docs.json
        llmsTxt:
          type: string
          description: The llms.txt index for agents.
          example: https://chainflip-broker.io/llms.txt
        documentation:
          type:
          - string
          - 'null'
          description: The getting-started guide, when a docs site is configured.
          example: https://docs.chainflip-broker.io/getting-started/
        pricing:
          $ref: '#/components/schemas/ChainflipBaas.Infrastructure.Http.PricingSummary'
      additionalProperties: false
      description: 'The onboarding facts, for agents deciding whether and how to start: what works without a key, how to get

        one, the sandbox and a first call. Every claim carries URLs you can fetch anonymously to verify it.'
    ChainflipBaas.Infrastructure.Http.PricingSummary:
      type: object
      properties:
        description:
          type: string
          description: The pricing in one sentence.
          example: 'No subscription: a 0.05% (5 bps) operating fee is added to each swap, and you set your own broker fee on top.'
        documentation:
          type: string
          description: The pricing page.
          example: https://docs.chainflip-broker.io/resources/pricing/
      additionalProperties: false
      description: How pricing works.
    ChainflipBaas.Infrastructure.Http.ApiKeyOnboarding:
      type: object
      properties:
        selfServe:
          type: boolean
          description: 'True: keys are issued by a self-serve signup, no sales contact.'
          example: true
        requiredFor:
          type: string
          description: Which calls need a key.
          example: REST quotes, swaps, status, swap history and fees. Optional on the MCP tools.
        signupUrl:
          type: string
          description: The signup page.
          example: https://chainflip-broker.io/register
        signup:
          type: string
          description: What the signup asks for.
          example: 'One free web form, no payment details: a name, an optional email, your commission and an Ethereum address for payouts. The key is shown at once.'
        secret:
          type: boolean
          description: 'False: the API key identifies an account and may be shared.'
          example: false
        description:
          type: string
          description: What the key is.
          example: The API key identifies your partner account and is safe to share. Only the dashboard admin key is a secret.
        verify:
          type: array
          items:
            type: string
          description: URLs that show the signup is live.
      additionalProperties: false
      description: How to get an API key.
    ChainflipBaas.Infrastructure.Http.NoKeyAccess:
      type: object
      properties:
        available:
          type: boolean
          description: 'Always true: keyless access exists.'
          example: true
        description:
          type: string
          description: What works without a key.
          example: The MCP server and the asset and network listings work without any key or account.
        mcpServer:
          type: string
          description: The MCP server, keyless for every tool.
          example: https://chainflip-broker.io/mcp
        verify:
          type: array
          items:
            type: string
          description: Keyless URLs that answer 200 anonymously.
      additionalProperties: false
      description: What works with no API key or account at all.
    ChainflipBaas.Infrastructure.Http.SandboxEnvironment:
      type: object
      properties:
        name:
          type: string
          description: Which environment.
          example: Testing environment, connected to the Chainflip Perseverance testnet
        description:
          type: string
          description: How it differs from production.
          example: Same API, same paths and parameters, swapping testnet assets with no real value. Register there separately for a testnet API key.
        apiBaseUrl:
          type:
          - string
          - 'null'
          description: Its API base URL (clearnet only).
          example: https://perseverance.chainflip-broker.io/
        verify:
          type: array
          items:
            type: string
          description: URLs that show the sandbox is live.
        documentation:
          type:
          - string
          - 'null'
          description: Its documentation page, when a docs site is configured.
          example: https://docs.chainflip-broker.io/environments/testing/
      additionalProperties: false
      description: The test environment.
    ChainflipBaas.Infrastructure.Http.FirstCall:
      type: object
      properties:
        method:
          type: string
          description: The HTTP method.
          example: GET
        url:
          type: string
          description: The URL to call.
          example: https://chainflip-broker.io/assets
        authentication:
          type: string
          description: Always "none".
          example: none
        curl:
          type: string
          description: The same request as a curl command.
          example: curl -s https://chainflip-broker.io/assets
      additionalProperties: false
      description: A first request that needs no key.
  securitySchemes:
    apiKey:
      type: apiKey
      description: Your partner API key, from registering at /register on this site. It identifies your account and is not a secret; it grants no access beyond your own partner's quotes, swaps, fees and statuses. There is no OAuth and there are no scopes. A key is also accepted in an X-API-Key request header; when both are present, this query parameter wins, even when it is empty.
      name: apiKey
      in: query
    apiKeyHeader:
      type: apiKey
      description: Your partner API key, from registering at /register on this site, sent as a request header so it does not appear in URLs that proxies and access logs capture. It identifies your account and is not a secret; it grants no access beyond your own partner's quotes, swaps, fees and statuses. There is no OAuth and there are no scopes. When an apiKey query parameter is present it wins.
      name: X-API-Key
      in: header