{"openapi":"3.1.0","info":{"title":"NKO find_missing","description":"Consulta si una entidad con LEI (Legal Entity Identifier) tiene correspondencia de alta confianza en el registro mercantil nacional que su propia jurisdiccion declarada haria esperable. GRATIS, v0, sin garantia de disponibilidad. Nunca afirma ilegalidad, fraude ni entidades ficticias - solo 'sin correspondencia de alta confianza', con la regla de expectativa siempre incluida.","version":"v0"},"servers":[{"url":"https://api.nkodatalabs.com","description":"Produccion (unico entorno, v0)"}],"paths":{"/v0/keys":{"post":{"summary":"Issue Key","description":"Clave gratuita por formulario email -> clave (self-service, sin\naprobacion manual). Cada llamada emite una clave NUEVA - no hay\ndeduplicacion por email en v0 (una organizacion real puede querer\nvarias claves; medir eso tambien es parte del experimento de\ndemanda).","operationId":"issue_key_v0_keys_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KeyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v0/checkout":{"post":{"summary":"Create Checkout","description":"Prueba de precio (Mision 30 dias): crea una sesion REAL de Stripe\nCheckout para el paquete unico de creditos. Requiere una x-api-key ya\nemitida y no revocada - el pago se ata a esa clave (client_reference_id\n+ metadata), nunca a un email suelto sin clave. Este endpoint NUNCA\nmarca nada como pagado - solo el webhook verificado lo hace.","operationId":"create_checkout_v0_checkout_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v0/stripe/webhook":{"post":{"summary":"Stripe Webhook","description":"Unico lugar del sistema que puede marcar un pago como exitoso -\nregla dura del dueno: 'Nunca marcar pago como exitoso sin\nconfirmacion de Stripe (webhook verificado)'. Verifica la firma real\n(billing.verify_webhook) antes de tocar nada; idempotente por\nstripe_session_id (credit_paid_calls) frente a reentregas de Stripe.","operationId":"stripe_webhook_v0_stripe_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Stripe Webhook V0 Stripe Webhook Post"}}}}}}},"/v0/find_missing":{"post":{"summary":"Find Missing","operationId":"find_missing_v0_find_missing_post","parameters":[{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FindMissingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FindMissingResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v0/health":{"get":{"summary":"Health","operationId":"health_v0_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health V0 Health Get"}}}}}}},"/llms.txt":{"get":{"summary":"Llms Txt","operationId":"llms_txt_llms_txt_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}}},"components":{"schemas":{"Candidate":{"properties":{"lei":{"type":"string","title":"Lei"},"legal_name":{"type":"string","title":"Legal Name"},"country":{"type":"string","title":"Country"},"matched_on":{"type":"string","title":"Matched On"}},"type":"object","required":["lei","legal_name","country","matched_on"],"title":"Candidate"},"CheckoutRequest":{"properties":{"api_key":{"type":"string","title":"Api Key"},"success_url":{"type":"string","title":"Success Url","default":"https://nkodatalabs.com/products/find-missing/?paid=1"},"cancel_url":{"type":"string","title":"Cancel Url","default":"https://nkodatalabs.com/products/find-missing/?paid=0"}},"type":"object","required":["api_key"],"title":"CheckoutRequest"},"CheckoutResponse":{"properties":{"checkout_url":{"type":"string","title":"Checkout Url"},"credits":{"type":"integer","title":"Credits"},"price_eur":{"type":"number","title":"Price Eur"}},"type":"object","required":["checkout_url","credits","price_eur"],"title":"CheckoutResponse"},"ExpectedIn":{"properties":{"registry":{"type":"string","title":"Registry"},"reason":{"type":"string","title":"Reason"}},"type":"object","required":["registry","reason"],"title":"ExpectedIn"},"FindMissingRequest":{"properties":{"identifier_type":{"type":"string","enum":["lei","company_number","name"],"title":"Identifier Type"},"identifier":{"type":"string","maxLength":300,"minLength":2,"title":"Identifier"},"jurisdiction":{"anyOf":[{"type":"string","maxLength":2,"minLength":2},{"type":"null"}],"title":"Jurisdiction","description":"Codigo pais ISO-3166 alpha-2, ej. GB/ES/FR"}},"type":"object","required":["identifier_type","identifier"],"title":"FindMissingRequest"},"FindMissingResponse":{"properties":{"entity_seen_in":{"items":{"$ref":"#/components/schemas/SeenIn"},"type":"array","title":"Entity Seen In","default":[]},"expected_in":{"items":{"$ref":"#/components/schemas/ExpectedIn"},"type":"array","title":"Expected In","default":[]},"not_found_in":{"items":{"$ref":"#/components/schemas/NotFoundIn"},"type":"array","title":"Not Found In","default":[]},"candidates":{"items":{"$ref":"#/components/schemas/Candidate"},"type":"array","title":"Candidates","default":[]},"verdict":{"anyOf":[{"type":"string","enum":["CONSISTENT","NO_HIGH_CONFIDENCE_MATCH","AMBIGUOUS_NEEDS_DISAMBIGUATION"]},{"type":"null"}],"title":"Verdict"},"method_version":{"type":"string","title":"Method Version"},"evidence_refs":{"items":{"type":"string"},"type":"array","title":"Evidence Refs"}},"type":"object","required":["method_version","evidence_refs"],"title":"FindMissingResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"KeyRequest":{"properties":{"email":{"type":"string","format":"email","title":"Email"}},"type":"object","required":["email"],"title":"KeyRequest"},"KeyResponse":{"properties":{"api_key":{"type":"string","title":"Api Key"},"email":{"type":"string","title":"Email"},"free_tier_monthly_limit":{"type":"integer","title":"Free Tier Monthly Limit"}},"type":"object","required":["api_key","email","free_tier_monthly_limit"],"title":"KeyResponse"},"NotFoundIn":{"properties":{"registry":{"type":"string","title":"Registry"},"confidence":{"type":"number","title":"Confidence"},"searched_at":{"type":"string","title":"Searched At"},"evidence":{"type":"string","title":"Evidence"}},"type":"object","required":["registry","confidence","searched_at","evidence"],"title":"NotFoundIn"},"SeenIn":{"properties":{"registry":{"type":"string","title":"Registry"},"id":{"type":"string","title":"Id"},"matched_on":{"type":"string","title":"Matched On"},"confidence":{"type":"number","title":"Confidence"}},"type":"object","required":["registry","id","matched_on","confidence"],"title":"SeenIn"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}