{"openapi":"3.1.0","x-aiax":{"manifest":"https://www.voxight.online/aiax/manifest.json","spec":"https://github.com/Godman-s/aiax"},"info":{"title":"Voxight: x402 paid resources","version":"1.0.0","description":"Market intelligence narratives, signals and coin attention, paid per read via x402 (USDC on Base, and Solana for coin attention). Docs: https://www.voxight.online/docs"},"servers":[{"url":"https://www.voxight.online"}],"paths":{"/api/narratives/{id}":{"get":{"summary":"Paid narrative brief","description":"x402-gated. Defaults to an x402 v2 402 challenge (Base / USDC); send a v2 PAYMENT-SIGNATURE header to settle and receive the full body. Send X-PAYMENT-VERSION:1 (or X-PAYMENT) to use the x402 v1 flow instead.","parameters":[{"name":"id","in":"path","required":true,"description":"Resource UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Full paid content (payment settled).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Narrative"}}}},"402":{"description":"Payment required (x402).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentRequired"}}}},"404":{"description":"Not found."}}}},"/api/signals/{id}":{"get":{"summary":"Paid signal analysis","description":"x402-gated. Defaults to an x402 v2 402 challenge (Base / USDC); send a v2 PAYMENT-SIGNATURE header to settle and receive the full body. Send X-PAYMENT-VERSION:1 (or X-PAYMENT) to use the x402 v1 flow instead.","parameters":[{"name":"id","in":"path","required":true,"description":"Resource UUID.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Full paid content (payment settled).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Signal"}}}},"402":{"description":"Payment required (x402).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentRequired"}}}},"404":{"description":"Not found."}}}},"/api/coin-attention":{"get":{"summary":"Coin attention: 9 windows from 5 minutes to 7 days, and who is talking","description":"x402 v2 exact, USDC on Base or Solana: the 402 (body and PAYMENT-REQUIRED header) carries the price (GET /api/prices); send the signed payment in PAYMENT-SIGNATURE. Send X-PAYMENT-VERSION:1 (or a v1 X-PAYMENT) for the x402 v1 flow. Partners may send Authorization: Bearer <partner key> instead of paying. Attention only, never price.","parameters":[{"name":"mint","in":"query","required":false,"description":"Token address: a Solana mint or a 0x address. mint or symbol is required.","schema":{"type":"string"}},{"name":"symbol","in":"query","required":false,"description":"The ticker, without $.","schema":{"type":"string"}},{"name":"name","in":"query","required":false,"description":"The coin name (optional).","schema":{"type":"string"}}],"responses":{"200":{"description":"The reading (payment settled).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CoinAttention"}}}},"400":{"description":"Neither a valid mint nor a symbol."},"402":{"description":"Payment required (x402 v2; v1 on request).","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PaymentRequired"},{"$ref":"#/components/schemas/PaymentRequiredV1"}]}}}},"503":{"description":"X could not be read; nothing charged."}}},"post":{"summary":"Coin attention: 9 windows from 5 minutes to 7 days, and who is talking","description":"x402 v2 exact, USDC on Base or Solana: the 402 (body and PAYMENT-REQUIRED header) carries the price (GET /api/prices); send the signed payment in PAYMENT-SIGNATURE. Send X-PAYMENT-VERSION:1 (or a v1 X-PAYMENT) for the x402 v1 flow. Partners may send Authorization: Bearer <partner key> instead of paying. Attention only, never price.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"mint":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"}}}}}},"responses":{"200":{"description":"The reading (payment settled).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CoinAttention"}}}},"400":{"description":"Neither a valid mint nor a symbol."},"402":{"description":"Payment required (x402 v2; v1 on request).","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PaymentRequired"},{"$ref":"#/components/schemas/PaymentRequiredV1"}]}}}},"503":{"description":"X could not be read; nothing charged."}}}},"/api/coin-attention/deep":{"get":{"summary":"Coin attention deep reading: plus sentiment, KOLs, FUD, project, organic share, conversation","description":"x402 v2 exact, USDC on Base or Solana: the 402 (body and PAYMENT-REQUIRED header) carries the price (GET /api/prices); send the signed payment in PAYMENT-SIGNATURE. Send X-PAYMENT-VERSION:1 (or a v1 X-PAYMENT) for the x402 v1 flow. Partners may send Authorization: Bearer <partner key> instead of paying. Attention only, never price.","parameters":[{"name":"mint","in":"query","required":false,"description":"Token address: a Solana mint or a 0x address. mint or symbol is required.","schema":{"type":"string"}},{"name":"symbol","in":"query","required":false,"description":"The ticker, without $.","schema":{"type":"string"}},{"name":"name","in":"query","required":false,"description":"The coin name (optional).","schema":{"type":"string"}}],"responses":{"200":{"description":"The reading (payment settled).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CoinInsights"}}}},"400":{"description":"Neither a valid mint nor a symbol."},"402":{"description":"Payment required (x402 v2; v1 on request).","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PaymentRequired"},{"$ref":"#/components/schemas/PaymentRequiredV1"}]}}}},"503":{"description":"X could not be read; nothing charged."}}},"post":{"summary":"Coin attention deep reading: plus sentiment, KOLs, FUD, project, organic share, conversation","description":"x402 v2 exact, USDC on Base or Solana: the 402 (body and PAYMENT-REQUIRED header) carries the price (GET /api/prices); send the signed payment in PAYMENT-SIGNATURE. Send X-PAYMENT-VERSION:1 (or a v1 X-PAYMENT) for the x402 v1 flow. Partners may send Authorization: Bearer <partner key> instead of paying. Attention only, never price.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"mint":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"}}}}}},"responses":{"200":{"description":"The reading (payment settled).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CoinInsights"}}}},"400":{"description":"Neither a valid mint nor a symbol."},"402":{"description":"Payment required (x402 v2; v1 on request).","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PaymentRequired"},{"$ref":"#/components/schemas/PaymentRequiredV1"}]}}}},"503":{"description":"X could not be read; nothing charged."}}}}},"components":{"schemas":{"PaymentRequired":{"type":"object","description":"x402 v2 payment challenge (also delivered base64 in the PAYMENT-REQUIRED header).","properties":{"x402Version":{"type":"integer","example":2},"error":{"type":"string"},"resource":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"description":{"type":"string"},"mimeType":{"type":"string"}}},"accepts":{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","example":"exact"},"network":{"type":"string","example":"eip155:8453"},"asset":{"type":"string","description":"USDC contract on Base"},"amount":{"type":"string","description":"Price in 6-decimal USDC units"},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"integer"},"extra":{"type":"object"}},"required":["scheme","network","asset","amount","payTo"]}}},"required":["x402Version","accepts"]},"PaymentRequiredV1":{"type":"object","description":"x402 v1 payment challenge: pay one of `accepts` and repeat the call with X-PAYMENT.","properties":{"x402Version":{"type":"integer","example":1},"error":{"type":"string"},"accepts":{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","example":"exact"},"network":{"type":"string","example":"base"},"maxAmountRequired":{"type":"string","description":"Price in 6-decimal USDC units"},"asset":{"type":"string"},"payTo":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"outputSchema":{"type":"object"}},"required":["scheme","network","maxAmountRequired","payTo"]}}},"required":["x402Version","accepts"]},"Narrative":{"type":"object","properties":{"success":{"type":"boolean"},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"title":{"type":"string"},"summary":{"type":"string","description":"Synthesized cross-source narrative."},"category":{"type":"string","description":"agent_economy | defai | memecoins | ai_tokens | stablecoins | regulatory | general"},"chain":{"type":"string","nullable":true,"description":"solana | base | bnb | ethereum | other; null when not crypto."},"disclaimer":{"type":"string","nullable":true,"description":"Attention signal, not financial advice. Present on defai, memecoins and ai_tokens."},"confidence":{"type":"number"},"sources":{"type":"array","items":{"type":"string"}},"signal_count":{"type":"integer"},"executive_brief":{"type":"string","description":"Full paid brief (after settlement)."}}}}},"Signal":{"type":"object","properties":{"success":{"type":"boolean"},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"topic":{"type":"string"},"signal_type":{"type":"string"},"summary":{"type":"string"},"confidence_score":{"type":"number"},"analysis":{"type":"object","description":"Full Oracle analysis (after settlement)."}}}}},"CoinAttention":{"type":"object","properties":{"success":{"type":"boolean"},"data":{"type":"object","properties":{"coin":{"type":"object"},"at":{"type":"string","format":"date-time"},"windows":{"type":"array","items":{"type":"object","properties":{"window":{"type":"string","example":"1h"},"mentions":{"type":"integer"},"previous":{"type":"integer","nullable":true},"change_pct":{"type":"number","nullable":true},"per_hour":{"type":"number"},"trend":{"type":"string","description":"accelerating | building | steady | cooling | quiet | new | measured"}}}},"last_hour_voices":{"type":"object","properties":{"sampled_posts":{"type":"integer"},"distinct_accounts":{"type":"integer"},"duplicate_share":{"type":"number"},"top_account_share":{"type":"number"},"shill_suspected":{"type":"boolean"},"shill_reasons":{"type":"array","items":{"type":"string"}}}},"sources":{"type":"array","items":{"type":"string"}},"disclaimer":{"type":"string"}}}}},"CoinInsights":{"type":"object","description":"CoinAttention plus data.insights.","properties":{"success":{"type":"boolean"},"data":{"type":"object","properties":{"windows":{"type":"array","items":{"type":"object","properties":{"window":{"type":"string","example":"1h"},"mentions":{"type":"integer"},"previous":{"type":"integer","nullable":true},"change_pct":{"type":"number","nullable":true},"per_hour":{"type":"number"},"trend":{"type":"string","description":"accelerating | building | steady | cooling | quiet | new | measured"}}}},"insights":{"type":"object","properties":{"sentiment":{"type":"object","description":"overall, positive, neutral, negative shares of_posts, one example each side"},"kols":{"type":"object","description":"kol_posts, kol_share (accounts over 10k followers), top 3, coordinated_promotion_suspected, reasons"},"fud":{"type":"object","description":"fud_posts, fud_share, terms, example"},"project":{"type":"object","description":"the project's X account (age, followers, last post, talks_about_coin), website, telegram; needs the mint"},"organic":{"type":"object","description":"new_account_share (under 30 days), default_avatar_share, duplicate_share"},"conversation":{"type":"object","description":"first_seen in the last 7 days, pace_vs_day, momentum"}}}}}}}}}}