AnyGas Privacy API

Selectable, per-request privacy. Oblivious HTTP, stealth addresses, and the proofs that let you check the claims rather than trust them.

Operations 11

GET /api/stealth/info Stealth address support (ERC-5564) #
POST /api/stealth/derive Derive a stealth address from a meta-address #
GET /api/stealth/announcements Announcement feed to scan with your viewing key #
GET /api/netting/proof/root Proof-of-liabilities root (Merkle sum tree) #
POST /api/netting/proof Your inclusion proof (signature required) #
GET /api/ohttp/keys OHTTP gateway key config #
POST /api/ohttp/gateway OHTTP gateway (send via the relay, not here) #
GET /api/privacy/spec Machine-readable privacy capability spec #
POST /api/privacy/receipt/verify Verify a privacy receipt #
GET /api/route/nettingset Netting-as-anonymity-set shadow report #
GET /api/posture What is private, what is public — before you act #

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/anygas-xyz:anygas-xyz-privacy-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

anygas-xyz-privacy-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Anygas Xyz Privacy API
  version: 3.28.2
  contact:
    name: Robyn AnyGas
    url: https://anygas.xyz
  license:
    name: Service terms
    url: https://anygas.xyz/svc/api/terms
  x-lastUpdated: '2026-07-29'
  description: 'Operations tagged privacy across 2 of this provider''s published API definitions: anygas-openapi.json, anygas-xyz-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.anygas.xyz/svc
  description: Production gateway (also https://anygas.xyz/svc)
tags:
- name: privacy
  description: Selectable, per-request privacy. Oblivious HTTP, stealth addresses, and the proofs that let you check the claims rather than trust them.
paths:
  /api/stealth/info:
    get:
      summary: Stealth address support (ERC-5564)
      tags:
      - privacy
      description: 'Publish ONE meta-address; every payer derives a FRESH address from it, so two payments to you cannot be linked on-chain and the payer never learns where your funds actually live. Pay to one by sending "toStealth": "st:eth:0x..." instead of "toAddress" on /api/route/execute. Scanning is a CLIENT operation — this service never accepts a viewing key, because handing it over would let us link every payment to you, which is precisely what stealth addresses remove.'
      responses:
        '200':
          description: Scheme status, self-check result, and the honest limits
      operationId: getApiStealthInfo
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/stealth/derive:
    post:
      summary: Derive a stealth address from a meta-address
      tags:
      - privacy
      responses:
        '200':
          description: stealthAddress, ephemeralPubKey, viewTag
        '400':
          description: BAD_META_ADDRESS
      operationId: postApiStealthDerive
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/stealth/announcements:
    get:
      summary: Announcement feed to scan with your viewing key
      tags:
      - privacy
      responses:
        '200':
          description: Paginated announcements
      operationId: getApiStealthAnnouncements
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/netting/proof/root:
    get:
      summary: Proof-of-liabilities root (Merkle sum tree)
      tags:
      - privacy
      description: Solvency without disclosure. We publish a Merkle sum-tree ROOT and the TOTAL of all netting liabilities; each account can request an inclusion proof showing their balance is inside that total, and the total is checkable against on-chain backing. Nobody learns anybody else's balance. This proves inclusion and the total — it cannot alone prove no account was omitted; that assurance comes from many users each checking their own proof.
      responses:
        '200':
          description: root, totalUnits, backingUnits, solvent
      operationId: getApiNettingProofRoot
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/netting/proof:
    post:
      summary: Your inclusion proof (signature required)
      tags:
      - privacy
      description: A proof discloses that account's balance, so it is released only to whoever controls the account. Sign the returned challenge with the account key (EIP-191).
      responses:
        '200':
          description: Inclusion proof + self-verification
        '401':
          description: Signature required; challenge returned
      operationId: postApiNettingProof
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/ohttp/keys:
    get:
      tags:
      - privacy
      summary: OHTTP gateway key config
      description: 'HPKE public key configuration for Oblivious HTTP. Fetch this, encapsulate your request to the returned publicKey, then POST the sealed bytes to the RELAY at https://relay.nightferry.net/relay — not to this host. Suite: DHKEM(X25519,HKDF-SHA256)/HKDF-SHA256/AES-128-GCM. Response encryption uses the HPKE export secret with info "robyn-ohttp-response-v1"; the response is 12-byte nonce || ciphertext || 16-byte GCM tag under AES-256-GCM. NOTE: this wire format is the OHTTP architecture, not RFC 9458 byte-compatible — the inner message is JSON, not RFC 9292 BHTTP.'
      responses:
        '200':
          description: Key configuration
          content:
            application/json:
              schema:
                type: object
                properties:
                  keyId:
                    type: string
                  kem:
                    type: string
                  kdf:
                    type: string
                  aead:
                    type: string
                  publicKey:
                    type: string
                    description: base64 X25519 public key
                  wireFormat:
                    type: string
      operationId: getApiOhttpKeys
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/ohttp/gateway:
    post:
      tags:
      - privacy
      summary: OHTTP gateway (send via the relay, not here)
      description: 'Accepts an encapsulated request: 32-byte HPKE enc || ciphertext, content-type application/octet-stream. Returns an encapsulated response. DENY BY DEFAULT — only /api/status, /api/route/compare, /api/route/quote, /api/privacy/*, /api/stealth/announcements and /api/netting/reserves are dispatchable; owner and capability surfaces are refused with OHTTP_PATH_DENIED. Posting here DIRECTLY works but gives you NO address protection: we see your IP exactly as on any other call. Send through https://relay.nightferry.net/relay instead, which sees your address and cannot read your request.'
      requestBody:
        required: true
        content:
          application/octet-stream:
            schema:
              type: string
              format: binary
      responses:
        '200':
          description: Encapsulated response (opaque bytes)
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '400':
          description: Could not decapsulate — deliberately uninformative to avoid a decapsulation oracle
      operationId: postApiOhttpGateway
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/privacy/spec:
    get:
      tags:
      - privacy
      summary: Machine-readable privacy capability spec
      description: What privacy features exist, which are selectable per request, and what each one does and does not protect against. Read this before assuming a guarantee.
      responses:
        '200':
          description: Capability spec
          content:
            application/json:
              schema:
                type: object
      operationId: getApiPrivacySpec
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/privacy/receipt/verify:
    post:
      tags:
      - privacy
      summary: Verify a privacy receipt
      description: Check a receipt against what was actually done, so a privacy claim is verifiable rather than asserted.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Verification result
          content:
            application/json:
              schema:
                type: object
      operationId: postApiPrivacyReceiptVerify
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/route/nettingset:
    get:
      tags:
      - privacy
      summary: Netting-as-anonymity-set shadow report
      description: 'What the fused netting/privacy settlement mechanism would do over observed real flow (advisory until armed): internal-net vs batch vs defer, realCrowdRatio, and the guarantee that a sub-K real batch defers rather than settle filterably.'
      operationId: getApiRouteNettingset
      x-operation-id-source: derived
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
  /api/posture:
    get:
      tags:
      - privacy
      summary: What is private, what is public — before you act
      operationId: privacyPosture
      description: 'One read: the lane you reached Robyn on (private via the BATMAN relay vs direct), PQ transport + one-size envelope facts, the chain''s mempool class / private-submit default, the live mode of every privacy feature, what remains public, and recommendations. Reachable over OHTTP. Reads live flags — never a brochure.'
      parameters:
      - name: chainId
        in: query
        required: false
        schema:
          type: string
        example: '8453'
      responses:
        '200':
          description: posture
          content:
            application/json:
              schema:
                type: object
    servers:
    - url: https://api.anygas.xyz/svc
      description: Production gateway (also https://anygas.xyz/svc)
x-refined-from:
- anygas-openapi.json
- anygas-xyz-openapi.json