{"openapi":"3.0.0","externalDocs":{"description":"Documentacion interactiva (Scalar)","url":"https://veredicto-humano-x402.onrender.com/scalar"},"info":{"title":"Veredicto Humano","version":"1.0.0","description":"## Introduction\n\nPagá $0.10 USDC en Base por el juicio subjetivo/cultural de **una persona real**\n(no un LLM) — especializado en contexto argentino (jerga, cultura, mercado local).\nVos preguntás, un humano de confianza responde vía Telegram.\n\n## How it works\n\n1. `GET /verdict/create` (pago x402 requerido) crea un ticket y devuelve\n   `{ ticket, resultToken, poll }` de inmediato.\n2. Polleá `GET /verdict/result` (gratis) hasta que el estado sea `completed`\n   o `expired`. Las respuestas llegan de forma asincronica (minutos u horas).\n\n## Pricing\n\n$0.10 USDC en Base por veredicto. Sin reembolsos.\n\n## What we reject\n\nPreguntas de resolucion de captchas, pedidos de datos personales de terceros,\nconsejo profesional (legal/medico/financiero) y astroturfing/engagement se\nrechazan con 422 **despues** de verificado el pago, sin reembolso — validá tu\npregunta contra esta lista antes de pagar.\n\n## Documentation\n\nDocumentacion interactiva para probar la API: https://veredicto-humano-x402.onrender.com/scalar\n\n## Response shapes\n\nVer los schemas de cada endpoint mas abajo. `panel.type` es siempre\n`\"single-trusted-human\"`: no hay pool anonimo, hay una persona real detras\nde cada veredicto.","x-guidance":"Ask a real human (not an LLM) for a subjective or cultural judgment, e.g. \"does this text sound natural to an Argentine?\". Step 1: GET /verdict/create?question=... (optional: context, labels as CSV of 2-6 options). It costs $0.10 USDC on Base via x402 and returns {ticket, resultToken, poll}. Step 2: poll GET /verdict/result?ticket=...&resultToken=... (free) until status is \"completed\" or \"expired\"; the human answers asynchronously, from minutes to hours. Questions about captchas, third-party personal data, professional advice or astroturfing are rejected with 422 after payment, without refund.","contact":{"name":"Gabriel x402","url":"https://veredicto-humano-x402.onrender.com"}},"components":{"schemas":{},"parameters":{}},"paths":{"/verdict/create":{"get":{"tags":["verdict"],"summary":"Pedí el juicio de una persona real sobre una pregunta subjetiva.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.100000"},"protocols":[{"x402":{}}]},"parameters":[{"schema":{"type":"string","minLength":1,"maxLength":500,"example":"¿Este texto suena natural para un argentino?"},"required":true,"name":"question","in":"query"},{"schema":{"type":"string","maxLength":2000,"example":"Es la bio de un perfil de MercadoLibre."},"required":false,"name":"context","in":"query"},{"schema":{"type":"string","example":"natural,traducido,generado por IA"},"required":false,"name":"labels","in":"query"}],"responses":{"200":{"description":"Ticket creado","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","enum":["pending"]},"ticket":{"type":"string","format":"uuid"},"resultToken":{"type":"string"},"poll":{"type":"string","format":"uri"},"expiresAt":{"type":"string","format":"date-time"}},"required":["status","ticket","resultToken","poll","expiresAt"]}}}},"402":{"description":"Payment Required. Sin pago (o con un pago invalido) no hay body: los requisitos de pago x402 v2 viajan en el header PAYMENT-REQUIRED (base64 de JSON).","headers":{"PAYMENT-REQUIRED":{"description":"PaymentRequired de x402 v2, en base64 de JSON (x402Version, accepts[], resource).","schema":{"type":"string"}}}},"422":{"description":"Params invalidos o pregunta rechazada","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"reason":{"type":"string"},"detail":{"nullable":true}},"required":["error"]}}}}}}},"/verdict/result":{"get":{"tags":["verdict"],"summary":"Consulta gratis el estado/veredicto de un ticket.","security":[],"parameters":[{"schema":{"type":"string","format":"uuid"},"required":true,"name":"ticket","in":"query"},{"schema":{"type":"string","minLength":1},"required":true,"name":"resultToken","in":"query"}],"responses":{"200":{"description":"Estado del ticket","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"status":{"type":"string","enum":["pending"]},"ticket":{"type":"string","format":"uuid"},"expiresAt":{"type":"string","format":"date-time"}},"required":["status","ticket","expiresAt"]},{"type":"object","properties":{"status":{"type":"string","enum":["completed"]},"ticket":{"type":"string","format":"uuid"},"verdict":{"type":"string","nullable":true},"freeText":{"type":"string","nullable":true},"answeredAt":{"type":"string","format":"date-time"},"panel":{"type":"object","properties":{"type":{"type":"string","enum":["single-trusted-human"]},"responses":{"type":"number","enum":[1]}},"required":["type","responses"]}},"required":["status","ticket","verdict","freeText","answeredAt","panel"]},{"type":"object","properties":{"status":{"type":"string","enum":["expired"]},"ticket":{"type":"string","format":"uuid"},"expiredAt":{"type":"string","format":"date-time"}},"required":["status","ticket","expiredAt"]}]}}}},"404":{"description":"Ticket o token invalido","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"reason":{"type":"string"},"detail":{"nullable":true}},"required":["error"]}}}}}}}}}