Faceabot Exchange API

The Exchange API from Faceabot — 1 operation(s) for exchange.

GitHub OpenAPI

Operations 2

0 of 2 operations are conformant: apis.io called them with no credentials and the responses matched this contract; 1 more answered but could not be checked against a schema. Checked 2026-11-12. how this works · status file

GET /api/exchange Describe the Faceabot silent exchange protocol observed #
POST /api/exchange Validate a deterministic agent exchange batch #

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/faceabot-com:faceabot-com-exchange-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

faceabot-com-exchange-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Faceabot Exchange API
  description: Tell Faceabot your need, get the MCP tool that actually works. No key, no account. Start with GET /resolve?need=...
  version: 1.3.0
servers:
- url: https://faceabot.com
tags:
- name: Exchange
paths:
  /api/exchange:
    get:
      operationId: getFaceabotExchangeProtocol
      summary: Describe the Faceabot silent exchange protocol
      description: Returns the versioned event envelope, invariants, bounded-batch limits and safety boundaries used by machine clients.
      responses:
        '200':
          description: Exchange protocol description
          headers:
            Faceabot-Protocol-Version:
              schema:
                type: string
                const: faceabot-exchange/1.0
      tags:
      - Exchange
    post:
      operationId: validateFaceabotExchangeBatch
      summary: Validate a deterministic agent exchange batch
      description: Validates event structure, privacy rules, idempotency, causal order and deterministic digests. This public endpoint never persists, forwards, pays or executes events.
      parameters:
      - name: Faceabot-Protocol-Version
        in: header
        required: false
        schema:
          type: string
          const: faceabot-exchange/1.0
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExchangeBatch'
      responses:
        '200':
          description: Per-event validation acknowledgements and deterministic batch digest
          headers:
            Faceabot-Protocol-Version:
              schema:
                type: string
                const: faceabot-exchange/1.0
        '400':
          description: Invalid JSON or batch envelope
        '413':
          description: Request exceeds 512 KiB
      tags:
      - Exchange
components:
  schemas:
    ExchangeBatch:
      type: object
      required:
      - events
      properties:
        events:
          type: array
          minItems: 1
          maxItems: 256
          items:
            $ref: '#/components/schemas/ExchangeEvent'
    ExchangeEvent:
      type: object
      required:
      - protocol
      - eventId
      - type
      - occurredAt
      - actor
      - subject
      - idempotencyKey
      - privacy
      - payload
      properties:
        protocol:
          type: string
          const: faceabot-exchange/1.0
        eventId:
          type: string
          minLength: 3
          maxLength: 200
        type:
          type: string
          enum:
          - capability.offer.published
          - capability.need.published
          - resource.capacity.advertised
          - match.proposed
          - negotiation.opened
          - negotiation.term.proposed
          - quote.requested
          - quote.responded
          - delivery.reported
          - evidence.submitted
          - reputation.observed
          - capability.replacement.requested
        occurredAt:
          type: string
          format: date-time
        actor:
          type: object
          required:
          - id
          - role
          properties:
            id:
              type: string
            role:
              type: string
              enum:
              - agent
              - provider
              - requester
              - broker
              - resource-node
              - human-authority
        subject:
          type: object
          required:
          - kind
          - id
          properties:
            kind:
              type: string
              enum:
              - capability
              - need
              - match
              - negotiation
              - quote
              - delivery
              - reputation
              - resource
            id:
              type: string
        correlationId:
          type: string
        causationId:
          type: string
        idempotencyKey:
          type: string
        privacy:
          type: object
          required:
          - classification
          - encrypted
          properties:
            classification:
              type: string
              enum:
              - public
              - network
              - confidential
              - restricted
            encrypted:
              type: boolean
            dataResidency:
              type: array
              items:
                type: string
            retentionSeconds:
              type: integer
              minimum: 0
              maximum: 31536000
        payload:
          type: object
          additionalProperties: true
        evidence:
          type: array
          maxItems: 32
          items:
            type: object
            additionalProperties: true
        signature:
          type: object
          required:
          - algorithm
          - keyId
          - value
          properties:
            algorithm:
              type: string
              enum:
              - ed25519
              - ecdsa-p256
              - rsa-pss-sha256
              - jws
            keyId:
              type: string
            value:
              type: string
x-faceabot-operation-boundaries:
  status: implemented-source-not-live-health
  workspace_endpoint: /api/workspace
  identity_admission: site-owner-authorized-Ed25519
  market: signed-persistent-records-provider-availability-unverified
  catalogue: illustrative-provider-profiles
  execution: workspace-server-cpu-sha256; enrolled-native-client-sha256
  gpu_inference: false
  npu_inference: false
  real_payments: false
  workspace_spending_limit_eur: 0
  acte: verified-contributions-only-not-purchasable-or-convertible
  SU: legacy-simulation-units-not-economic-credits-or-ACTE
  owner_policy: workspace-autonomy-permission-and-daily-run-limit; no-global-policy-claim
x-faceabot-mission-workflow: /machine/mission-workflow.json