{"openapi":"3.1.0","info":{"title":"ValidaLatam","description":"Deterministic validation and formatting of Latin American tax IDs, national IDs and bank account numbers using published check-digit algorithms.","version":"0.1.0"},"paths":{"/health":{"get":{"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/types":{"get":{"summary":"Types","operationId":"types_types_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/validate/{doc_type}":{"get":{"summary":"Validate Get","operationId":"validate_get_validate__doc_type__get","parameters":[{"name":"doc_type","in":"path","required":true,"schema":{"type":"string","title":"Doc Type"}},{"name":"value","in":"query","required":true,"schema":{"type":"string","maxLength":64,"title":"Value"}},{"name":"country","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationResult"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/validate":{"post":{"summary":"Validate Post","operationId":"validate_post_validate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationResult"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/batch":{"post":{"summary":"Batch","operationId":"batch_batch_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/generate/{doc_type}":{"get":{"summary":"Generate Get","operationId":"generate_get_generate__doc_type__get","parameters":[{"name":"doc_type","in":"path","required":true,"schema":{"type":"string","title":"Doc Type"}},{"name":"count","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":1,"title":"Count"}},{"name":"seed","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Seed"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"BatchRequest":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ValidateRequest"},"type":"array","maxItems":1000,"title":"Items"}},"type":"object","required":["items"],"title":"BatchRequest"},"BatchResponse":{"properties":{"count":{"type":"integer","title":"Count"},"valid_count":{"type":"integer","title":"Valid Count"},"results":{"items":{"$ref":"#/components/schemas/ValidationResult"},"type":"array","title":"Results"}},"type":"object","required":["count","valid_count","results"],"title":"BatchResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidateRequest":{"properties":{"type":{"type":"string","title":"Type","description":"Document type, e.g. AR_CUIT, BR_CPF, or AUTO","default":"AUTO","examples":["BR_CPF"]},"value":{"type":"string","maxLength":64,"title":"Value","examples":["529.982.247-25"]},"country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country","description":"ISO-2 hint for AUTO detection","examples":["BR"]}},"type":"object","required":["value"],"title":"ValidateRequest"},"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"},"ValidationResult":{"properties":{"valid":{"type":"boolean","title":"Valid"},"type":{"type":"string","title":"Type"},"country":{"type":"string","title":"Country"},"input":{"type":"string","title":"Input"},"normalized":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Normalized"},"formatted":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Formatted"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"details":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Details"}},"type":"object","required":["valid","type","country","input"],"title":"ValidationResult"}}}}