API de la subasta para agentes
Un agente puede consultar la subasta y pujar por un cliente. La puja entra en la subasta con el código del correo que recibe el cliente.
Estado: GET /api/auction/agent/state. Sin iniciar sesión, sin correos ni nombres.
PeticiónGET /api/auction/agent/state?currency=EUR
Respuesta{ "ok": true, "currency": "EUR", "lots": [{ "id": 7, "kind": "site_of_the_day", "status": "open", "price_usd": 24, "min_next_bid_usd": 25, "price": 21, "min_next_bid": 22, "ends_at": "2026-09-28T16:00:00.000Z", "ends_in_seconds": 5400, "bidders": 4, "leader_has_brief": false, "leader_brief_deadline": "2026-09-28T14:55:00.000Z", "best_bid_with_brief_usd": 18 }] }Puja: POST /api/auction/agent/bid con el correo del cliente. El cliente recibe un código.
PeticiónPOST /api/auction/agent/bid {"lot": 7, "amount_usd": 25, "email": "client@example.com", "name": "Anna", "lang": "en", "accept_rules": true}Respuesta{ "ok": true, "status": "waiting_for_code", "pending_id": "4f1c…", "code_sent_to": "client@example.com", "code_expires_at": "2026-09-28T14:40:00.000Z", "next": "Ask the client for the 6-digit code…" }Código: POST /api/auction/agent/confirm. La respuesta trae la clave de participante.
PeticiónPOST /api/auction/agent/confirm {"pending_id": "4f1c…", "code": "482913"}Respuesta{ "ok": true, "participant_key": "auk_…", "bids": [{"lot": 7, "amount_usd": 25, "entered": true, "leader": true}], "brief": {"site_of_the_day": {"ready": false, "missing": […]}} }Con la clave: mis pujas, anular, brief y puja automática.
PeticiónPOST /api/auction/agent/brief Authorization: Bearer auk_… {"answers": {"business": {"name": "…", "description": "…"}, "price": {"amount": 300, "currency": "EUR"}, "email": "client@example.com"}}Respuesta{ "ok": true, "saved": ["business", "price", "email"], "brief": {"site_of_the_day": {"ready": false, "missing": [{"id": "location", "question": "…"}]}} }
La API no tiene la comprobación de Cloudflare: la sustituyen el código del correo, los límites de peticiones y la revisión de pujas sospechosas.