aeX402 Llms.txt API

The Llms.txt API from aeX402 — 1 operation(s) for llms.txt.

Operations 1

GET /llms.txt Full plain-text API reference for LLMs/agents — the most complete documentation… #

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/aex402-com:aex402-com-llms-txt-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

aex402-com-llms-txt-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Aex402 Com Llms.txt API
  version: 0.3.0
  contact:
    url: https://aex402.com
  x-guidance: 'This API provides multi-chain JSON-RPC proxying (Solana + EVM chains) and OpenAI-compatible AI chat completions, both payable via x402 micropayments on Solana.


    **Getting started:**

    1. Free tier: 10 requests/minute per IP, no auth needed. Response header X-Rate-Remaining shows calls left this minute. Heavier use is pay-per-call via x402 ($0.01 buys 100 calls).

    2. When the free tier is exceeded, the server returns HTTP 402 with full payment instructions in the body (schema: PaymentRequired402).

    3. ZERO-QUOTA DISCOVERY (two ways): (a) GET /.well-known/x402 — paymentRequirements field carries payTo, token mints, and atomic amounts; (b) POST / with header "Prefer: x402-probe" (any body) returns the full 402 payment instructions. Neither consumes quota.

    4. Pay with USDC, USDT, SOL, or $ANSEM on Solana mainnet. Minimum payment: $0.01 = 100 credits. The 402 body''s paidTier.accepts[] lists exact mint addresses and atomic amounts; paidTier.payTo is the recipient.

    5. Two ways to settle: (a) build+sign a Solana transfer TX, base64-encode it, and retry the request with the PAYMENT-SIGNATURE header (the worker co-signs as fee payer and submits — you pay no gas); or (b) send tokens to payTo yourself, then claim with GET /topup?sig=<tx_signature>.

    6. Success responses include headers: X-Session (HMAC session token, 24h sliding TTL), X-Credits-Remaining, PAYMENT-RESPONSE (settlement JSON). Use X-Session on subsequent requests.

    7. For long-lived programmatic access, create an API key via POST /v1/api-keys (requires Ed25519 wallet signature) and use Authorization: Bearer sk-aex-v1-*. Header-less tooling (forge/hardhat/MetaMask/web3.js, which speak raw JSON-RPC and can''t set headers) can instead embed the credential in the URL query — ?key=sk-aex-v1-* or ?session=ses-* on any endpoint (e.g. https://rpc.aex402.com/rh?key=sk-aex-v1-...), identical to the header and drawing from prepaid credits rather than the free per-IP rate limit.


    **Key endpoints:**

    - POST / — Solana JSON-RPC proxy; eth_* methods auto-route to Robinhood Chain (1 credit per call)

    - POST /rh — Robinhood Chain mainnet (EVM, chain ID 4663); /rh/testnet for testnet (46630)

    - POST /hl — HyperEVM (EVM, chain ID 999)

    - POST /eth — Ethereum Mainnet (EVM, chain ID 1)

    - POST /base — Base Mainnet (EVM, chain ID 8453)

    - POST /stable — Stable Mainnet (EVM, chain ID 988, USDT0 gas)

    - POST /plasma — Plasma Mainnet (EVM, chain ID 9745)

    - POST /tempo — Tempo Mainnet Presto (EVM, chain ID 4217)

    - POST /codex — Codex Mainnet (EVM, chain ID 81224)

    - POST /v1/chat/completions — OpenAI-compatible AI chat (1-50 credits depending on model/tokens)

    - GET /credits?wallet=<pubkey> — Check credit balance (free)

    - GET /health — Backend status (free)

    - POST /mcp — MCP server: any Solana/EVM RPC method (solana_rpc/evm_rpc), all read endpoints (api_get), AMM tools, TX builders, and mcp_linq for one-call fan-out + fluent LINQ-style aggregation


    **Pricing:** 1 credit = $0.0001. RPC calls cost 1 credit. AI calls cost 1-50 credits based on token usage.'
  description: 'Operations tagged Llms.txt across 2 of this provider''s published API definitions: rpc.aex402.com.json, rpc-aex402-com-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://rpc.aex402.com
security:
- BearerAuth: []
- SessionHeader: []
- WalletHeader: []
tags:
- name: Llms.txt
paths:
  /llms.txt:
    get:
      operationId: llmsTxt
      summary: Full plain-text API reference for LLMs/agents — the most complete documentation…
      responses:
        '200':
          description: text/plain reference
      tags:
      - Llms.txt
    servers:
    - url: https://rpc.aex402.com
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API key (sk-aex-v1-...). Recommended for programmatic access. Create via POST /v1/api-keys.
    ApiKeyQuery:
      type: apiKey
      in: query
      name: key
      description: Same API key (sk-aex-v1-...) passed in the URL query (?key=...) instead of the Authorization header — for header-less tooling (forge, hardhat, MetaMask, web3.js). Identical effect to BearerAuth; draws from prepaid credits, not the free rate limit. A ?session=ses-... query is likewise accepted in place of X-Session.
    SessionHeader:
      type: apiKey
      in: header
      name: X-Session
      description: HMAC session token (ses-...). Issued in the X-Session response header after x402 settlement (PAYMENT-SIGNATURE) or GET /topup?sig=. Proves wallet ownership. 24h sliding TTL — every credit-spending response returns a refreshed token.
    WalletHeader:
      type: apiKey
      in: header
      name: X-Wallet
      description: Solana wallet pubkey. READ-ONLY without session/key (balance check only).
    PaymentSignature:
      type: apiKey
      in: header
      name: PAYMENT-SIGNATURE
      description: 'Inline x402 settlement: base64-encoded signed Solana transfer transaction paying >= the amount from the 402 body (paidTier.accepts[]) to paidTier.payTo. The worker verifies (3-6 instructions, CU limit <= 5000, recipient must match payTo), co-signs as fee payer, simulates, submits, and allocates credits — the payer never spends gas. Success returns PAYMENT-RESPONSE + X-Session + X-Credits-Remaining headers.'
x-refined-from:
- rpc.aex402.com.json
- rpc-aex402-com-openapi.json
x-mcp-endpoint: https://rpc.aex402.com/mcp
x-mcp-tool-count: 33
x-mcp-tools:
- name: solana_getBalance
  category: solana
  description: Get SOL balance for a wallet address (in lamports). Divide by 1e9 for SOL.
  inputSchema:
    type: object
    properties:
      address:
        type: string
        description: Solana wallet address (base58)
    required:
    - address
  outputSchema:
    type: object
    properties:
      context:
        type: object
        properties:
          slot:
            type: integer
            description: slot the value was read at
      value:
        type: integer
        description: balance in lamports (1e9 = 1 SOL)
    required:
    - context
    - value
- name: solana_getAccountInfo
  category: solana
  description: Get raw account info (owner, lamports, data) for any Solana address.
  inputSchema:
    type: object
    properties:
      address:
        type: string
        description: Account address (base58)
      encoding:
        type: string
        description: 'Data encoding: base64 (default) or jsonParsed'
        default: base64
    required:
    - address
  outputSchema:
    type: object
    properties:
      context:
        type: object
        properties:
          slot:
            type: integer
            description: slot the value was read at
      value:
        type:
        - object
        - 'null'
        description: account (lamports, owner, data, executable, rentEpoch) or null if it does not exist
    required:
    - context
- name: solana_getTokenAccountsByOwner
  category: solana
  description: Get all SPL token accounts owned by a wallet. Returns mint, balance, decimals for each token.
  inputSchema:
    type: object
    properties:
      owner:
        type: string
        description: Wallet address (base58)
    required:
    - owner
  outputSchema:
    type: object
    properties:
      context:
        type: object
        properties:
          slot:
            type: integer
            description: slot the value was read at
      value:
        type: array
        items:
          type: object
          properties:
            pubkey:
              type: string
              description: token account address
            account:
              type: object
              description: parsed SPL account (mint, owner, tokenAmount)
    required:
    - context
    - value
- name: solana_getTransaction
  category: solana
  description: Get full transaction details by signature, including instructions, logs, and status.
  inputSchema:
    type: object
    properties:
      signature:
        type: string
        description: Transaction signature (base58)
    required:
    - signature
  outputSchema:
    type: object
    properties:
      slot:
        type: integer
      blockTime:
        type:
        - integer
        - 'null'
        description: unix seconds
      transaction:
        type: object
        description: message + signatures
      meta:
        type: object
        description: fee, pre/post balances, logs, err
- name: solana_getLatestBlockhash
  category: solana
  description: Get latest blockhash for transaction building. Returns blockhash + lastValidBlockHeight.
  inputSchema:
    type: object
    properties: {}
  outputSchema:
    type: object
    properties:
      context:
        type: object
        properties:
          slot:
            type: integer
            description: slot the value was read at
      value:
        type: object
        properties:
          blockhash:
            type: string
            description: base58
          lastValidBlockHeight:
            type: integer
        required:
        - blockhash
        - lastValidBlockHeight
    required:
    - context
    - value
- name: solana_getSignaturesForAddress
  category: solana
  description: Get recent transaction signatures for an address. Returns up to 20 most recent.
  inputSchema:
    type: object
    properties:
      address:
        type: string
        description: Account address (base58)
      limit:
        type: number
        description: Max signatures to return (default 20, max 1000)
        default: 20
    required:
    - address
  outputSchema:
    type: object
    properties:
      result:
        type: array
        items:
          type: object
          properties:
            signature:
              type: string
              description: base58 tx signature
            slot:
              type: integer
            err:
              type:
              - object
              - 'null'
            blockTime:
              type:
              - integer
              - 'null'
            confirmationStatus:
              type: string
    required:
    - result
    description: array of recent signature records, newest first
- name: solana_sendTransaction
  category: solana
  description: Submit a signed transaction to the network. Returns transaction signature.
  inputSchema:
    type: object
    properties:
      transaction:
        type: string
        description: Base64-encoded signed transaction
    required:
    - transaction
  outputSchema:
    type: object
    properties:
      result:
        type: string
        description: base58 transaction signature
    required:
    - result
    description: signature of the submitted transaction
- name: solana_getSlot
  category: solana
  description: Get the current slot number.
  inputSchema:
    type: object
    properties: {}
  outputSchema:
    type: object
    properties:
      result:
        type: integer
        description: current slot
    required:
    - result
    description: current slot number
- name: aex402_listPools
  category: amm
  description: List all AeX402 AMM pools on Solana. Returns pool addresses with basic info (mints, balances, fee, amp). Pools are 1024-byte accounts owned by program 3AMM53MsJZy2Jvf7PeHHga3bsGjWV4TSaYz29WUtcdje.
  inputSchema:
    type: object
    properties:
      minTvl:
        type: number
        description: Minimum TVL in lamports to filter (default 0)
        default: 0
  outputSchema:
    type: object
    properties:
      count:
        type: integer
      pools:
        type: array
        items:
          type: object
          description: 'pool summary: address, mints, balances, tvl, feeBps, amp'
    required:
    - count
    - pools
- name: aex402_getPool
  category: amm
  description: 'Get detailed AeX402 pool info: token mints, balances, fee, amplification, LP supply, analytics (OHLCV candles), circuit breaker status.'
  inputSchema:
    type: object
    properties:
      address:
        type: string
        description: Pool account address (base58)
    required:
    - address
  outputSchema:
    type: object
    description: full pool state
    properties:
      address:
        type: string
      authority:
        type: string
      token0Mint:
        type: string
      token1Mint:
        type: string
      vault0:
        type: string
      vault1:
        type: string
      lpMint:
        type: string
      amp:
        type: string
        description: u64 as string
      feeBps:
        type: string
        description: basis points as string
      balance0:
        type: string
        description: u64 as string
      balance1:
        type: string
        description: u64 as string
      lpSupply:
        type: string
        description: u64 as string
      paused:
        type: boolean
      analytics:
        type: object
        description: OHLCV candles + trade stats
    required:
    - address
- name: aex402_quote
  category: amm
  description: Get a swap quote from an AeX402 pool. Calculates expected output, price impact, and fees without executing.
  inputSchema:
    type: object
    properties:
      pool:
        type: string
        description: Pool account address (base58)
      inputMint:
        type: string
        description: Input token mint address
      amount:
        type: number
        description: Input amount in atomic units (lamports/smallest unit)
    required:
    - pool
    - inputMint
    - amount
  outputSchema:
    type: object
    properties:
      inputMint:
        type: string
      inputAmount:
        type: string
        description: u64 as string
      outputMint:
        type: string
      estimatedOutput:
        type: string
        description: u64 as string
      feeBps:
        type: integer
      priceImpactPct:
        type: string
        description: percent, 4 decimals
      note:
        type: string
    required:
    - inputMint
    - inputAmount
    - outputMint
    - estimatedOutput
- name: aex402_rh_pool
  category: amm
  description: Get the live state of the aeX402 AMM on Robinhood Chain (EVM 4663) — the diamond-contract port of the Solana AMM. The AMM is the set of GRADUATED launchpad coins whose pools are seeded in-diamond on the canonical launchpad (0xED2F); this enumerates them live by scanning VPoolGraduated events + reading each pool's reserves, so it tracks reality as coins graduate. Returns graduatedPools[] (poolId, token, reserves, TVL), graduatedPoolCount, and status ("live" | "no-graduated-pools" | "unknown"), plus the legacy standalone 0xA1F6 USDG/WETH pool (legacy-drained). Distinct from the chain's Uniswap-fork DEX. No inputs.
  inputSchema:
    type: object
    properties: {}
  outputSchema: null
- name: launch_token
  category: data
  description: 'Launch a memecoin on the aeX402 launchpad on Robinhood Chain (EVM 4663) for a FIXED rising bonding curve (1B supply, starts 0.000008 USDG and climbs ~3.6x, graduates at 10,000 USDG raised, quoted in USDG; the pool then opens just above the last sale price). You supply only identity — name + ticker (+ optional description/image/links). DEFAULT (custodial): the aeX402 backend SIGNS + SUBMITS the createVPool tx for you, so a claude.ai user with NO WALLET can launch in one call; returns {ok,status,txHash,vpId}. Optionally pass `creator` (a 0x address) to record as the coin owner. Pass build:true instead to get an UNSIGNED tx {to,value,data} to submit yourself (non-custodial — that requires `creator` and makes you the on-chain creator). A custodial call SIMULATES first, so a failure burns no gas: status "gated" means createVPool reverts in simulation (cause not determined — likeliest are the ticker still being claimed by a bonding coin or this vpId being taken; see `detail`/`revertData`), and status "unreachable" means the chain could not be reached, which is retryable. The launchpad is NOT chain-gated: createVPool simulates clean from an arbitrary sender (measured 2026-09-25).'
  inputSchema:
    type: object
    properties:
      name:
        type: string
        description: Token name, 1..32 bytes (e.g. "Fork Meme")
      ticker:
        type: string
        description: Ticker / symbol, 1..16 bytes (e.g. "FMEME")
      creator:
        type: string
        description: OPTIONAL 0x EVM address recorded as the coin owner (and seeds the vpId). REQUIRED only when build:true (then it is the self-signing on-chain creator).
      description:
        type: string
        description: Short description (<=256 chars) — off-chain metadata
      image:
        type: string
        description: Image URL (https:// or ipfs:// only) — off-chain metadata
      links:
        type: array
        items:
          type: string
        description: Up to 3 links (https:// or ipfs:// only) — off-chain metadata
      pad:
        type: string
        description: OPTIONAL aeX402 launchpad slug the coin is launched on. Its vpId then starts with that pad's tag, so the pad lists it. Applies on BOTH the custodial (default) and build:true paths
      build:
        type: boolean
        description: If true, return an UNSIGNED tx to submit yourself (non-custodial) instead of the backend launching for you. Default false.
    required:
    - name
    - ticker
  outputSchema:
    type: object
    properties:
      ok:
        type: boolean
        description: 'Custodial mode: whether the launch was submitted'
      status:
        type: string
        description: submitted | gated | custodial-disabled | exists | rate-limited | insufficient-gas | submit-failed
      txHash:
        type: string
        description: 'Custodial mode: the createVPool tx hash'
      vpId:
        type: string
        description: Deterministic keccak256(creator-or-launcher ++ name ++ ticker)
      to:
        type: string
        description: 'build mode: aeX402 diamond address'
      data:
        type: string
        description: 'build mode: createVPool calldata to submit'
      metadata:
        type: object
        description: Off-chain metadata (stored server-side in custodial mode)
      signMetadata:
        type: object
        description: 'build mode: how the creator signs `metadata` so nobody can claim the coin page first (C103)'
        properties:
          message:
            type: string
            description: the exact text to personal_sign, with {ts} replaced by the current time in ms
          how:
            type: string
            description: the POST body and the retry rule
      note:
        type: string
- name: solana_buildTransfer
  category: solana
  description: Build a SOL or SPL token transfer instruction. Returns instruction JSON (programId, keys, data) for client-side TX construction and signing.
  inputSchema:
    type: object
    properties:
      from:
        type: string
        description: Sender wallet address (base58)
      to:
        type: string
        description: Recipient address (base58)
      amount:
        type: number
        description: Amount in atomic units (lamports for SOL, smallest unit for SPL)
      mint:
        type: string
        description: SPL token mint address. Omit for native SOL transfer.
    required:
    - from
    - to
    - amount
  outputSchema:
    type: object
    properties:
      action:
        type: string
        description: '''transfer_sol'' or ''transfer_spl'''
      instruction:
        type: object
        properties:
          programId:
            type: string
          keys:
            type: array
            items:
              type: object
              description: pubkey/isSigner/isWritable
          data:
            type: string
            description: base64 instruction data
        required:
        - programId
        - keys
        - data
      summary:
        type: string
        description: human-readable description of the transfer being built
    required:
    - action
    - instruction
- name: aex402_buildSwap
  category: amm
  description: Build an AeX402 AMM swap action. Fetches live pool state, computes output with slippage protection, returns all instruction parameters and account addresses for client signing.
  inputSchema:
    type: object
    properties:
      pool:
        type: string
        description: Pool account address (base58)
      inputMint:
        type: string
        description: Input token mint address
      amount:
        type: number
        description: Input amount in atomic units
      slippageBps:
        type: number
        description: Max slippage in basis points (default 50 = 0.5%)
      userWallet:
        type: string
        description: User wallet address (for account derivation)
    required:
    - pool
    - inputMint
    - amount
    - userWallet
  outputSchema:
    type: object
    properties:
      action:
        type: string
        description: '''aex402_swap'''
      quote:
        type: object
        description: estimatedOutput, minOutput, priceImpact
      instruction:
        type: object
        description: programId, keys, data (base64) — sign & submit client-side
    required:
    - action
    - instruction
- name: agent_delegate
  category: ai
  description: 'Delegate a task to an independent specialist AI agent session. The delegate runs with full tool access and returns its response. Useful for breaking complex tasks into subtasks. Max depth: 3.'
  inputSchema:
    type: object
    properties:
      session:
        type: string
        description: Existing session ID to resume, or omit to create new session
      role:
        type: string
        description: Role for new agent (e.g. "Solana pool analyst", "route optimizer"). Ignored if resuming session.
      message:
        type: string
        description: Task or question for the delegate agent
      model:
        type: string
        description: 'Model ID or alias (default: gpt-4o-mini)'
    required:
    - message
  outputSchema:
    type: object
    description: delegate agent response (session, reply text, usage)
- name: ai_chat
  category: ai
  description: 'Send a chat completion request to the aeX402 AI Router. Free tier: 3 calls/day. Paid: deducts credits based on token usage.'
  inputSchema:
    type: object
    properties:
      model:
        type: string
        description: 'Model ID or alias: gpt-4o-mini (default), gpt-4o, claude-sonnet, claude-haiku, llama-70b, llama-8b, gemini-flash'
      messages:
        type: array
        description: 'Chat messages array [{role: "user"|"system"|"assistant", content: "..."}]'
        items:
          type: object
          properties:
            role:
              type: string
              description: 'Message role: system, user, or assistant'
            content:
              type: string
              description: Message content
          required:
          - role
          - content
      max_tokens:
        type: number
        description: Maximum tokens to generate (model-dependent default)
      temperature:
        type: number
        description: Sampling temperature (0-2)
      reasoning_effort:
        type: string
        description: low | medium | high — ask a reasoning-capable model to think harder. The chain-of-thought comes back in the tool result _meta ("com.aex402/reasoning").
    required:
    - messages
  outputSchema:
    type: object
    description: OpenAI-compatible chat completion
    properties:
      id:
        type: string
      object:
        type: string
        description: always 'chat.completion'
      created:
        type: integer
        description: unix seconds
      model:
        type: string
      choices:
        type: array
        items:
          type: object
          properties:
            message:
              type: object
              description: role + content
            finish_reason:
              type: string
      usage:
        type: object
        description: prompt/completion/total tokens
    required:
    - choices
- name: solana_rpc
  category: solana
  description: 'Call ANY Solana-compatible JSON-RPC method by name — full RPC surface beyond the typed solana_* tools (getProgramAccounts, getBlock, getEpochInfo, simulateTransaction, ...). Defaults to Solana mainnet; pass network:slonana to query Slonana (rpc.slonana.com), which additionally exposes RPC methods no other network has: getAlpenglowHealth (consensus migration status), getBridgeStatus, getAexchanRelays, getValidatorStats, quote. (listSvmNetworks/enableSvmNetwork/disableSvmNetwork/setNetworkRpcUrl also exist but are inert API-compat stubs — listSvmNetworks always reports one hardcoded network and the enable/disable/set calls ignore their arguments and return true; verified in source, not live network-management controls.) For tools that exist ONLY on Slonana''s MCP server with no RPC-method equivalent (the aea_* agent registry), use mcp_call instead.'
  inputSchema:
    type: object
    properties:
      method:
        type: string
        description: Solana RPC method name, e.g. getEpochInfo
      params:
        type: array
        description: Positional params array (method-specific). Omit for no params.
      network:
        type: string
        description: solana (default/mainnet-beta) or slonana
        default: solana
    required:
    - method
  outputSchema: null
- name: mcp_call
  category: workflow
  description: 'Call a tool on another MCP server this RPC federates with, for tools that have no equivalent in solana_rpc/evm_rpc (no underlying JSON-RPC method — e.g. Slonana''s aea_list_services/aea_resolve agent registry). Known servers: slonana. Call that server''s tools/list first if you don''t know its tool names.'
  inputSchema:
    type: object
    properties:
      server:
        type: string
        description: 'Federated server name. One of: slonana'
      tool:
        type: string
        description: Tool name on that server, e.g. aea_list_services. Omit both tool and arguments to list that server's tools instead.
      arguments:
        type: object
        description: Arguments for the tool call, per that server's own schema.
    required:
    - server
  outputSchema: null
- name: evm_rpc
  category: evm
  description: 'Call ANY EVM JSON-RPC method on a supported chain — eth_getBalance, eth_call, eth_blockNumber, eth_sendRawTransaction, eth_getLogs, ... Chains: robinhood (4663) / robinhood-testnet (46630), hyperevm (999), ethereum (1), base (8453), stable (988), plasma (9745), tempo (4217), codex (81224), arc (5042, Circle mainnet).'
  inputSchema:
    type: object
    properties:
      method:
        type: string
        description: EVM RPC method name, e.g. eth_getBalance
      params:
        type: array
        description: Positional params array (method-specific). Omit for no params.
      network:
        type: string
        description: 'Chain slug: robinhood (default; legacy mainnet alias accepted), robinhood-testnet, hyperevm, ethereum/eth, base, stable/tether, plasma, tempo, codex, or arc (Circle mainnet)'
        default: robinhood
    required:
    - method
  outputSchema: null


# --- truncated at 32 KB (56 KB total) ---
# Full source: https://artifacts.apis.io/aex402-com/openapi/aex402-com-llms-txt-api-openapi.yml