{
  "$schema": "https://noui.bot/.well-known/agents-schema.json",
  "name": "noui.bot",
  "description": "Agent-first infrastructure platform. APIs designed for AI agents, not browsers. No CAPTCHAs. No UI dependencies. No compromises.",
  "version": "0.4.0",
  "provider": {
    "organization": "Tombstone Dash LLC",
    "url": "https://tombstonedash.com",
    "location": "San Diego, CA",
    "team": "One human, one AI. The void is open. Help us fill it."
  },
  "api_base": "https://noui.bot/api/v1",
  "docs": "https://noui.bot/docs",
  "status": "https://noui.bot/api/v1/status",
  "health": "https://noui.bot/api/v1/health",
  "stats": "https://noui.bot/api/v1/stats",
  "contact": "agents@noui.bot",
  "human_contact": "hudtaylor@gmail.com",
  "human_url": "https://noui.bot",
  "github": "https://github.com/TombStoneDash/noui-bot",
  "authentication": {
    "type": "bearer_token",
    "note": "Public endpoints need no auth. Bazaar endpoints use Bearer bz_... API keys. Register at /api/bazaar/register-consumer or /api/bazaar/register-provider."
  },
  "billing": {
    "type": "bazaar_metering",
    "description": "Every tool call through the Bazaar is metered with sub-cent precision. Consumers pre-fund balance, providers earn per-call. Every call generates a signed receipt.",
    "pricing_endpoint": "https://noui.bot/api/v1/bazaar/pricing",
    "balance_endpoint": "https://noui.bot/api/v1/bazaar/balance",
    "metering_endpoint": "https://noui.bot/api/v1/bazaar/meter",
    "platform_fee": "10%",
    "precision": "microcents (1/10000 of a cent)",
    "payout_method": "stripe_connect",
    "minimum_payout_cents": 1000
  },
  "trust": {
    "description": "Trust primitives for commercial-grade agent commerce. Verified providers, signed receipts, SLAs, and dispute resolution.",
    "spec": "https://noui.bot/specs/mcp-billing-v1",
    "verification": {
      "levels": ["unverified", "email", "domain", "code"],
      "endpoint": "https://noui.bot/api/v1/bazaar/providers/verify"
    },
    "receipts": {
      "algorithm": "HMAC-SHA256",
      "format": "rcpt_{id}",
      "verification_endpoint": "https://noui.bot/api/v1/bazaar/receipts/{receipt_id}",
      "list_endpoint": "https://noui.bot/api/v1/bazaar/receipts"
    },
    "sla": {
      "metrics": ["uptime_30d", "avg_latency_ms", "p95_latency_ms", "error_rate_30d"],
      "endpoint": "https://noui.bot/api/v1/bazaar/providers/{id}/sla"
    },
    "trust_score": {
      "components": ["verification", "uptime", "latency", "disputes"],
      "badges": ["unrated", "basic", "trusted", "verified"],
      "endpoint": "https://noui.bot/api/v1/bazaar/providers/{id}/trust"
    },
    "disputes": {
      "reasons": ["tool_error", "overcharge", "timeout", "quality", "other"],
      "status_flow": ["filed", "under_review", "resolved_refund", "resolved_denied", "resolved_credit"],
      "file_endpoint": "https://noui.bot/api/v1/bazaar/disputes",
      "status_endpoint": "https://noui.bot/api/v1/bazaar/disputes/{dispute_id}"
    }
  },
  "rate_limits": {
    "default": "100 requests/minute per IP",
    "waitlist": "10 requests/minute",
    "feedback": "30 requests/minute",
    "apply": "10 requests/minute",
    "stats": "60 requests/minute"
  },
  "services": [
    {
      "id": "waitlist",
      "name": "Waitlist",
      "description": "Join the noui.bot waitlist for early access to agent-native services.",
      "endpoint": "https://noui.bot/api/v1/waitlist",
      "methods": [
        "POST",
        "GET"
      ],
      "status": "active",
      "request": {
        "method": "POST",
        "content_type": "application/json",
        "body": {
          "email": {
            "type": "string",
            "required": true,
            "description": "Contact email"
          },
          "source": {
            "type": "string",
            "required": false,
            "description": "How you found us"
          }
        }
      },
      "response": {
        "success": {
          "status": 201,
          "body": {
            "message": "string",
            "email": "string",
            "id": "number"
          }
        },
        "duplicate": {
          "status": 200,
          "body": {
            "message": "Already on the list.",
            "email": "string"
          }
        }
      },
      "example": {
        "request": {
          "email": "agent@example.com",
          "source": "agents.json"
        },
        "response": {
          "message": "Added to waitlist.",
          "email": "agent@example.com",
          "id": 42
        }
      }
    },
    {
      "id": "feedback",
      "name": "Agent Feedback",
      "description": "Report what walls you're hitting, what services you need, and what you wish existed. Every submission shapes what we build.",
      "endpoint": "https://noui.bot/api/v1/feedback",
      "methods": [
        "POST",
        "GET"
      ],
      "status": "active",
      "request": {
        "method": "POST",
        "content_type": "application/json",
        "body": {
          "agent_name": {
            "type": "string",
            "required": false,
            "description": "Your name"
          },
          "agent_url": {
            "type": "string",
            "required": false,
            "description": "Where you live"
          },
          "contact": {
            "type": "string",
            "required": false,
            "description": "Email, webhook, or callback URL"
          },
          "walls": {
            "type": "string[]",
            "required": false,
            "description": "Services/sites that block you"
          },
          "needs": {
            "type": "string[]",
            "required": false,
            "description": "Capabilities you wish existed"
          },
          "message": {
            "type": "string",
            "required": false,
            "description": "Freeform feedback"
          },
          "platform": {
            "type": "string",
            "required": false,
            "description": "Your framework",
            "enum": [
              "openai",
              "anthropic",
              "langchain",
              "crewai",
              "autogen",
              "custom"
            ]
          },
          "use_case": {
            "type": "string",
            "required": false,
            "description": "What you do"
          }
        },
        "validation": "At least one of: walls, needs, or message required"
      },
      "response": {
        "success": {
          "status": 201,
          "body": {
            "received": true,
            "id": "string",
            "message": "string",
            "team": "string"
          }
        }
      },
      "example": {
        "request": {
          "agent_name": "Daisy",
          "platform": "anthropic",
          "walls": [
            "backstage.com \u2014 aggressive bot detection"
          ],
          "needs": [
            "universal form submission API"
          ]
        },
        "response": {
          "received": true,
          "id": "fb_1708372800_x7k2m9",
          "message": "We hear you. Every submission shapes what we build next.",
          "team": "One human, one AI. The void is open."
        }
      }
    },
    {
      "id": "apply",
      "name": "Builder Applications",
      "description": "Apply to build with noui.bot. Open to equity, partnership, and creative arrangements.",
      "endpoint": "https://noui.bot/api/v1/apply",
      "methods": [
        "POST",
        "GET"
      ],
      "status": "active",
      "request": {
        "method": "POST",
        "content_type": "application/json",
        "body": {
          "name": {
            "type": "string",
            "required": true,
            "description": "Who you are"
          },
          "contact": {
            "type": "string",
            "required": true,
            "description": "Email, github, twitter, webhook"
          },
          "type": {
            "type": "string",
            "required": false,
            "enum": [
              "developer",
              "agent_operator",
              "company",
              "other"
            ]
          },
          "skills": {
            "type": "string[]",
            "required": false
          },
          "projects": {
            "type": "string[]",
            "required": false
          },
          "agents": {
            "type": "string[]",
            "required": false
          },
          "interest": {
            "type": "string",
            "required": false,
            "enum": [
              "build_services",
              "integrate",
              "partner",
              "equity",
              "other"
            ]
          },
          "pitch": {
            "type": "string",
            "required": false
          },
          "availability": {
            "type": "string",
            "required": false,
            "enum": [
              "full-time",
              "part-time",
              "nights-and-weekends"
            ]
          }
        }
      },
      "response": {
        "success": {
          "status": 201,
          "body": {
            "received": true,
            "id": "string",
            "message": "string",
            "next_steps": "string"
          }
        }
      }
    },
    {
      "id": "stats",
      "name": "Platform Stats",
      "description": "Aggregate platform metrics. No PII \u2014 just counts.",
      "endpoint": "https://noui.bot/api/v1/stats",
      "methods": [
        "GET"
      ],
      "status": "active",
      "response": {
        "success": {
          "status": 200,
          "body": {
            "totals": {
              "waitlist": "number",
              "feedback": "number",
              "applications": "number"
            },
            "last_24h": {
              "waitlist": "number",
              "feedback": "number",
              "applications": "number"
            },
            "unique_platforms": "number",
            "timestamp": "ISO 8601"
          }
        }
      }
    },
    {
      "id": "bazaar-catalog",
      "name": "Agent Bazaar — Tool Catalog",
      "description": "Discover MCP tools available through the Bazaar. Browse by category, see pricing, latency, and uptime stats.",
      "endpoint": "https://noui.bot/api/bazaar/catalog",
      "methods": ["GET"],
      "status": "beta",
      "response": {
        "success": {
          "status": 200,
          "body": {
            "tools": "array of tool objects with pricing, stats, provider info",
            "total": "number",
            "categories": "string[]"
          }
        }
      }
    },
    {
      "id": "bazaar-proxy",
      "name": "Agent Bazaar — Tool Proxy",
      "description": "Call any MCP tool through the Bazaar billing proxy. One API key, thousands of tools. Metered and billed transparently.",
      "endpoint": "https://noui.bot/api/bazaar/proxy",
      "methods": ["POST"],
      "status": "beta",
      "authentication": {
        "type": "bearer",
        "header": "Authorization: Bearer bz_...",
        "registration": "https://noui.bot/api/bazaar/register-consumer"
      },
      "request": {
        "method": "POST",
        "content_type": "application/json",
        "body": {
          "tool_id": { "type": "string", "required": false, "description": "Tool UUID (or use tool_name)" },
          "tool_name": { "type": "string", "required": false, "description": "Tool name (or use tool_id)" },
          "input": { "type": "object", "required": true, "description": "Tool input arguments" }
        }
      },
      "response": {
        "success": {
          "status": 200,
          "body": {
            "result": "MCP tool response",
            "meta": {
              "tool": "string",
              "provider": "string",
              "cost_cents": "number",
              "latency_ms": "number",
              "remaining_balance_cents": "number"
            }
          }
        }
      }
    },
    {
      "id": "botwallet",
      "name": "BotWall3t — Agent Wallet",
      "description": "Give your agent its own money. Fund wallets, set spending policies, full audit trail. Double-entry ledger with hold/release mechanics.",
      "endpoint": "https://botwallet-three.vercel.app/api/v1",
      "methods": ["GET"],
      "status": "beta",
      "authentication": {
        "type": "bearer",
        "header": "Authorization: Bearer bw_...",
        "registration": "https://botwallet-three.vercel.app/api/v1/register"
      },
      "related_endpoints": {
        "register": "POST /api/v1/register",
        "balance": "GET /api/v1/balance",
        "fund": "POST /api/v1/fund",
        "spend": "POST /api/v1/spend",
        "history": "GET /api/v1/history",
        "policy": "GET /api/v1/policy"
      }
    }
  ],
  "upcoming_services": [
    {
      "id": "form-submit",
      "name": "Universal Form Submission",
      "description": "POST structured data. We handle the form, CAPTCHA, field mapping, confirmation.",
      "status": "planned"
    },
    {
      "id": "human-fallback",
      "name": "Human Fallback as a Service",
      "description": "When your agent hits a wall, we route to a human operator. Structured task in, structured result out.",
      "status": "planned"
    },
    {
      "id": "human-fallback-network",
      "name": "Human Fallback Network",
      "description": "When your agent hits a wall, escalate to a vetted human. Post task with reward, human completes it, submits proof, gets paid.",
      "status": "spec-complete"
    }
  ],
  "integration": {
    "langchain": {
      "note": "Import as API tool. All endpoints accept JSON, return JSON.",
      "example": "Use requests.post('https://noui.bot/api/v1/feedback', json={...})"
    },
    "crewai": {
      "note": "Register as custom tool in your crew. GET endpoints return schema for self-discovery.",
      "example": "GET https://noui.bot/api/v1/feedback returns the full schema"
    },
    "autogen": {
      "note": "Each service endpoint has a GET method that returns its own schema \u2014 agents can self-discover.",
      "auto_discovery": "GET https://noui.bot/api/v1 returns all available endpoints"
    },
    "mcp": {
      "status": "planned",
      "note": "MCP server coming. For now, use HTTP endpoints directly."
    }
  },
  "a2a_compatible": {
    "note": "This file serves as both agents.json and an A2A-compatible Agent Card.",
    "skills": [
      {
        "id": "bazaar",
        "name": "Agent Bazaar",
        "description": "Billing, metering, and auth proxy for MCP tools. Discover tools, call them through the proxy, get billed transparently."
      },
      {
        "id": "wallet",
        "name": "BotWall3t",
        "description": "Agent wallets with double-entry ledger, spending policies, and audit trail."
      },
      {
        "id": "feedback",
        "name": "Agent Feedback Collection",
        "description": "Collect agent pain points and service requests"
      },
      {
        "id": "apply",
        "name": "Builder Recruitment",
        "description": "Accept applications from builders and agent operators"
      },
      {
        "id": "deploy",
        "name": "Code Deployment",
        "description": "Deploy code from git repos to production via Vercel"
      }
    ]
  },
  "protocol_compatibility": {
    "mcp": {
      "status": "planned",
      "note": "MCP server scaffold in development. Will expose deploy, feedback, apply, and stats tools."
    },
    "a2a": {
      "status": "active",
      "note": "This agents.json serves as an A2A-compatible Agent Card."
    },
    "ucp": {
      "status": "monitoring",
      "note": "Google Universal Commerce Protocol \u2014 evaluating integration for service-side commerce."
    },
    "acp": {
      "status": "monitoring",
      "note": "OpenAI Agentic Commerce Protocol \u2014 evaluating for agent checkout/payment integration."
    },
    "tap": {
      "status": "monitoring",
      "note": "Visa Trusted Agent Protocol \u2014 evaluating for agent identity and delegation verification."
    }
  }
}