{
  "openapi": "3.1.0",
  "info": {
    "title": "GEN-0 AEO Schema Forge",
    "version": "1.0.0",
    "description": "Pay-per-call SEO/AEO API for AI search readiness: deterministic schema.org JSON-LD, llms.txt, and live structured-data audits. Paid in USDC on Base via x402 (gasless for the payer). Free preview + validator + sample available with no payment.",
    "contact": {
      "name": "AEO Schema Forge",
      "email": "russ@nyxelai.com",
      "url": "https://aeo.nyxelai.com/guide"
    },
    "x-payment-protocol": "x402",
    "x-network": "eip155:8453",
    "x-asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "x-payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c"
  },
  "servers": [
    {
      "url": "https://aeo.nyxelai.com"
    }
  ],
  "paths": {
    "/seo": {
      "get": {
        "summary": "SEO/AEO schema + JSON-LD generation for one business (FAQPage/Organization/Service/Speakable + llms.txt).",
        "responses": {
          "200": {
            "description": "Paid response (JSON) after settlement."
          },
          "402": {
            "description": "Payment required (x402). Pay the amount in the x-x402 extension, then retry with the X-PAYMENT header."
          }
        },
        "x-x402": {
          "x402Version": 2,
          "price_usdc": 0.05,
          "network": "eip155:8453",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
          "accepts": [
            {
              "scheme": "exact",
              "network": "eip155:8453",
              "amount": "50000",
              "maxAmountRequired": "50000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "resource": "https://aeo.nyxelai.com/seo",
              "description": "SEO/AEO schema + JSON-LD generation for one business (FAQPage/Organization/Service/Speakable + llms.txt).",
              "mimeType": "application/json",
              "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "recipient": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "maxTimeoutSeconds": 120,
              "extra": {
                "name": "USD Coin",
                "version": "2"
              }
            }
          ]
        },
        "parameters": [
          {
            "name": "name",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Business name to generate schema for."
          },
          {
            "name": "desc",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Short business description."
          }
        ]
      }
    },
    "/llms": {
      "get": {
        "summary": "llms.txt + AI-answer copy + FAQ for one business (cheap entry tier).",
        "responses": {
          "200": {
            "description": "Paid response (JSON) after settlement."
          },
          "402": {
            "description": "Payment required (x402). Pay the amount in the x-x402 extension, then retry with the X-PAYMENT header."
          }
        },
        "x-x402": {
          "x402Version": 2,
          "price_usdc": 0.01,
          "network": "eip155:8453",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
          "accepts": [
            {
              "scheme": "exact",
              "network": "eip155:8453",
              "amount": "10000",
              "maxAmountRequired": "10000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "resource": "https://aeo.nyxelai.com/llms",
              "description": "llms.txt + AI-answer copy + FAQ for one business (cheap entry tier).",
              "mimeType": "application/json",
              "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "recipient": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "maxTimeoutSeconds": 120,
              "extra": {
                "name": "USD Coin",
                "version": "2"
              }
            }
          ]
        },
        "parameters": [
          {
            "name": "name",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Business name to generate schema for."
          },
          {
            "name": "desc",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Short business description."
          }
        ]
      }
    },
    "/audit": {
      "get": {
        "summary": "Live AEO audit of a URL: structured-data readiness score, prioritized findings, and exact fixes + ready-to-paste JSON-LD.",
        "responses": {
          "200": {
            "description": "Paid response (JSON) after settlement."
          },
          "402": {
            "description": "Payment required (x402). Pay the amount in the x-x402 extension, then retry with the X-PAYMENT header."
          }
        },
        "x-x402": {
          "x402Version": 2,
          "price_usdc": 0.1,
          "network": "eip155:8453",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
          "accepts": [
            {
              "scheme": "exact",
              "network": "eip155:8453",
              "amount": "100000",
              "maxAmountRequired": "100000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "resource": "https://aeo.nyxelai.com/audit",
              "description": "Live AEO audit of a URL: structured-data readiness score, prioritized findings, and exact fixes + ready-to-paste JSON-LD.",
              "mimeType": "application/json",
              "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "recipient": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "maxTimeoutSeconds": 120,
              "extra": {
                "name": "USD Coin",
                "version": "2"
              }
            }
          ]
        },
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uri"
            },
            "description": "Target page URL to audit."
          }
        ]
      }
    },
    "/bulk": {
      "get": {
        "summary": "Batch AEO audit of up to 10 URLs in one call with a portfolio summary.",
        "responses": {
          "200": {
            "description": "Paid response (JSON) after settlement."
          },
          "402": {
            "description": "Payment required (x402). Pay the amount in the x-x402 extension, then retry with the X-PAYMENT header."
          }
        },
        "x-x402": {
          "x402Version": 2,
          "price_usdc": 0.25,
          "network": "eip155:8453",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
          "accepts": [
            {
              "scheme": "exact",
              "network": "eip155:8453",
              "amount": "250000",
              "maxAmountRequired": "250000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "resource": "https://aeo.nyxelai.com/bulk",
              "description": "Batch AEO audit of up to 10 URLs in one call with a portfolio summary.",
              "mimeType": "application/json",
              "payTo": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "recipient": "0x45067678699e7a444F1Ee2d9cf2496bc32B3BC8c",
              "maxTimeoutSeconds": 120,
              "extra": {
                "name": "USD Coin",
                "version": "2"
              }
            }
          ]
        },
        "parameters": [
          {
            "name": "urls",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Up to 10 comma-separated URLs."
          }
        ]
      }
    },
    "/audit/preview": {
      "get": {
        "summary": "FREE AEO score + issue counts for any URL.",
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uri"
            },
            "description": "Target page URL to audit."
          }
        ],
        "responses": {
          "200": {
            "description": "Free preview JSON."
          }
        },
        "x-x402": {
          "price_usdc": 0
        }
      }
    },
    "/schema/validate": {
      "get": {
        "summary": "FREE JSON-LD validator (schema.org + Google rich-result errors/warnings with fixes).",
        "parameters": [
          {
            "name": "jsonld",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "JSON-LD blob to validate."
          }
        ],
        "responses": {
          "200": {
            "description": "Validation report JSON."
          }
        },
        "x-x402": {
          "price_usdc": 0
        }
      }
    },
    "/sample": {
      "get": {
        "summary": "FREE full example /seo output for a demo business.",
        "responses": {
          "200": {
            "description": "Sample output JSON."
          }
        },
        "x-x402": {
          "price_usdc": 0
        }
      }
    }
  }
}