{"openapi":"3.1.0","info":{"title":"cnpj.ai","version":"0.1.0"},"paths":{"/assistente":{"get":{"summary":"Pagina Assistente","operationId":"pagina_assistente_assistente_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/assistente/telegram":{"get":{"summary":"Pagina Telegram","operationId":"pagina_telegram_assistente_telegram_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/assistente/whatsapp":{"get":{"summary":"Pagina Whatsapp","operationId":"pagina_whatsapp_assistente_whatsapp_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/login":{"get":{"summary":"Login","operationId":"login_login_get","parameters":[{"name":"next","in":"query","required":false,"schema":{"type":"string","default":"/","title":"Next"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","default":"","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/auth/callback":{"get":{"summary":"Auth Callback","description":"Página cliente que conclui OAuth, PKCE ou magic link.","operationId":"auth_callback_auth_callback_get","parameters":[{"name":"next","in":"query","required":false,"schema":{"type":"string","default":"/","title":"Next"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/oauth/consent":{"get":{"summary":"Oauth Consent","description":"Consentimento do OAuth 2.1 usado pelos clientes MCP.","operationId":"oauth_consent_oauth_consent_get","parameters":[{"name":"authorization_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Authorization Id"}},{"name":"erro","in":"query","required":false,"schema":{"type":"string","default":"","title":"Erro"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/conta":{"get":{"summary":"Conta","description":"Perfil e autorizações OAuth da pessoa autenticada.","operationId":"conta_conta_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api":{"get":{"summary":"Landing Api","operationId":"landing_api_api_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api/docs":{"get":{"summary":"Documentacao Api","operationId":"documentacao_api_api_docs_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api/v1":{"get":{"summary":"Documentacao Api V1","operationId":"documentacao_api_v1_api_v1_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/":{"get":{"summary":"Home","operationId":"home__get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/estados":{"get":{"summary":"Estados","operationId":"estados_estados_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/municipios":{"get":{"summary":"Municipios","operationId":"municipios_municipios_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/municipios.csv":{"get":{"summary":"Municipios Csv","description":"Exporta o ranking nacional completo, não só as 100 linhas da página.","operationId":"municipios_csv_municipios_csv_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/health":{"get":{"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/robots.txt":{"get":{"summary":"Robots","operationId":"robots_robots_txt_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}},"/metodologia/bndes":{"get":{"summary":"Metodologia Bndes","operationId":"metodologia_bndes_metodologia_bndes_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/privacidade":{"get":{"summary":"Privacidade","operationId":"privacidade_privacidade_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/termos":{"get":{"summary":"Termos","operationId":"termos_termos_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/busca":{"get":{"summary":"Busca","operationId":"busca_busca_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/sugestoes":{"get":{"summary":"Sugestoes","description":"Autocomplete leve: mesma busca() com caps menores, em JSON.\n\nCacheável no edge (decisão consciente — por isso não entra em NOINDEX,\nque é sobre indexação em buscadores, não sobre cache). Falha degrada\nsilenciosa: um timeout aqui não pode virar 503 visível no dropdown.","operationId":"sugestoes_sugestoes_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/socio/{d6}/{sl}":{"get":{"summary":"Socio","operationId":"socio_socio__d6___sl__get","parameters":[{"name":"d6","in":"path","required":true,"schema":{"type":"string","title":"D6"}},{"name":"sl","in":"path","required":true,"schema":{"type":"string","title":"Sl"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/empresas":{"get":{"summary":"Empresas","operationId":"empresas_empresas_get","parameters":[{"name":"pagina","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Pagina"}},{"name":"ordem","in":"query","required":false,"schema":{"type":"string","default":"","title":"Ordem"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/empresas.csv":{"get":{"summary":"Empresas Csv","operationId":"empresas_csv_empresas_csv_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/uf/{uf}":{"get":{"summary":"Hub Uf","operationId":"hub_uf_uf__uf__get","parameters":[{"name":"uf","in":"path","required":true,"schema":{"type":"string","title":"Uf"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/uf/{uf}/{cidade}":{"get":{"summary":"Hub Municipio","operationId":"hub_municipio_uf__uf___cidade__get","parameters":[{"name":"uf","in":"path","required":true,"schema":{"type":"string","title":"Uf"}},{"name":"cidade","in":"path","required":true,"schema":{"type":"string","title":"Cidade"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/{cnpj}/ibama/{fonte}/{numero_pagina}":{"get":{"summary":"Registros Ibama","operationId":"registros_ibama__cnpj__ibama__fonte___numero_pagina__get","parameters":[{"name":"cnpj","in":"path","required":true,"schema":{"type":"string","title":"Cnpj"}},{"name":"fonte","in":"path","required":true,"schema":{"type":"string","title":"Fonte"}},{"name":"numero_pagina","in":"path","required":true,"schema":{"type":"integer","title":"Numero Pagina"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/{cnpj}":{"get":{"summary":"Empresa","operationId":"empresa__cnpj__get","parameters":[{"name":"cnpj","in":"path","required":true,"schema":{"type":"string","title":"Cnpj"}},{"name":"pgfn_pagina","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Pgfn Pagina"}},{"name":"pncp_pagina","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Pncp Pagina"}},{"name":"bndes_pagina","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Bndes Pagina"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"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"}}}}