# AI HTTP Bin AI HTTP Bin provides disposable webhook URLs and a GraphQL API for managing tokens, captured requests, scripts, and shared variables. Base URL: http://ai-http-bin.wricardo.net ## Key endpoints - LLM guide: http://ai-http-bin.wricardo.net/ or http://ai-http-bin.wricardo.net/llms.txt - GraphQL endpoint: POST http://ai-http-bin.wricardo.net/graphql - GraphQL playground: http://ai-http-bin.wricardo.net/playground - Health check: http://ai-http-bin.wricardo.net/health - Webhook receiver: ANY http://ai-http-bin.wricardo.net/ or http://ai-http-bin.wricardo.net// ## Typical flow 1. Create a token with mutation createToken 2. Send any HTTP request to http://ai-http-bin.wricardo.net/ 3. Inspect traffic with query requests(tokenId: ...) { data { ... } total } Example: ~~~graphql mutation { createToken(defaultStatus: 200, defaultContent: "ok", noExpiry: true) { id url expiresAt } } query Requests($tokenId: ID!) { requests(tokenId: $tokenId, sorting: "newest") { total data { id method path query body headers createdAt } } } ~~~ ## GraphQL operations Queries: token, tokens, request, requests, globalVars Mutations: createToken, updateToken, setScript, toggleCors, deleteToken, claimToken, deleteRequest, clearRequests, setGlobalVar, deleteGlobalVar Subscriptions: requestReceived(tokenId) ## Authentication Optional header: X-Agent-Id - Without header: guest mode - With header: token ownership and scoped token listing - Claim anonymous token: claimToken(id) ## Webhook behavior - Unknown/expired token returns HTTP 410 - Tokens expire after 24h by default; createToken(noExpiry: true) disables expiry per token - Static response uses token defaults: status/content/contentType - Exact numeric subpath (for example /404) overrides status - If script exists, script response takes precedence - Script execution timeout is 2 seconds; errors return 500 and X-Script-Error