{"openapi":"3.1.0","info":{"title":"Epidemiology Intelligence API","description":"API com dados reais do SINAN/OpenDataSUS para índice de risco epidemiológico por município, doença/vírus e alertas altos. Documentação interativa em **/docs**; esquema OpenAPI em **/openapi.json**.","version":"2.1.0"},"paths":{"/health":{"get":{"tags":["Sistema"],"summary":"Health check","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Health Health Get"}}}}}}},"/v1/risk-index":{"get":{"tags":["Risco"],"summary":"Índice de risco enriquecido","operationId":"get_risk_index_v1_risk_index_get","parameters":[{"name":"ano","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Ano específico para carregar os dados (permite comparação). Se omitido, usa o ano global configurado.","title":"Ano"},"description":"Ano específico para carregar os dados (permite comparação). Se omitido, usa o ano global configurado."},{"name":"municipio","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filtra por nome parcial ou código de município DataSUS/IBGE sem dígito.","title":"Municipio"},"description":"Filtra por nome parcial ou código de município DataSUS/IBGE sem dígito."},{"name":"estado","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filtra por UF, ex.: SP.","title":"Estado"},"description":"Filtra por UF, ex.: SP."},{"name":"somente_altos","in":"query","required":false,"schema":{"type":"boolean","description":"Retorna apenas municípios com doença em nível alto/crítico.","default":false,"title":"Somente Altos"},"description":"Retorna apenas municípios com doença em nível alto/crítico."},{"name":"nivel_minimo","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"baixo, moderado, alto ou critico.","title":"Nivel Minimo"},"description":"baixo, moderado, alto ou critico."},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limite"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Municípios com totais, score, nível de risco e doenças/vírus.","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/high-alerts":{"get":{"tags":["Risco"],"summary":"Doenças e vírus em nível alto ou crítico","operationId":"get_high_alerts_v1_high_alerts_get","parameters":[{"name":"municipio","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Municipio"}},{"name":"estado","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Estado"}},{"name":"doenca","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filtra por nome ou código: DENG, CHIK ou ZIKA.","title":"Doenca"},"description":"Filtra por nome ou código: DENG, CHIK ou ZIKA."},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limite"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Lista consolidada de alertas altos por município e doença/vírus.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get High Alerts V1 High Alerts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/professional-report":{"get":{"tags":["Risco"],"summary":"Relatório profissional detalhado (Premium)","operationId":"get_professional_report_v1_professional_report_get","parameters":[{"name":"municipio","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Municipio"}},{"name":"estado","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Estado"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Dados detalhados para análise profissional.","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/refresh":{"post":{"tags":["Sistema"],"summary":"Reprocessa os dados reais e atualiza o cache agregado","operationId":"refresh_report_v1_refresh_post","parameters":[{"name":"force_refresh","in":"query","required":false,"schema":{"type":"boolean","description":"Quando true, ignora o cache agregado e reprocessa as fontes reais.","default":true,"title":"Force Refresh"},"description":"Quando true, ignora o cache agregado e reprocessa as fontes reais."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Refresh Report V1 Refresh Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/export/pdf":{"get":{"tags":["Risco"],"summary":"Gera relatório PDF (Premium)","operationId":"export_pdf_v1_export_pdf_get","parameters":[{"name":"municipio","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Municipio"}},{"name":"estado","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Estado"}},{"name":"x-api-key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Arquivo PDF com análise epidemiológica.","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/metadata":{"get":{"tags":["Sistema"],"summary":"Metadados da carga de dados","operationId":"get_metadata_v1_metadata_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Metadata V1 Metadata Get"}}}}}}},"/v1/diseases":{"get":{"tags":["Risco"],"summary":"Doenças e agravos suportados","operationId":"get_diseases_v1_diseases_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Diseases V1 Diseases Get"}}}}}}},"/v1/bairros":{"get":{"tags":["Risco"],"summary":"Bairros e distritos suportados para resolução (multi-cidade)","operationId":"get_bairros_v1_bairros_get","parameters":[{"name":"uf","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filtrar por UF (ex: RJ, MG)","title":"Uf"},"description":"Filtrar por UF (ex: RJ, MG)"},{"name":"municipio","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filtrar por nome do município (ex: recife, 'rio de janeiro')","title":"Municipio"},"description":"Filtrar por nome do município (ex: recife, 'rio de janeiro')"}],"responses":{"200":{"description":"Lista agrupada de bairros/distritos de SP, RJ, MG e PE. Use ?uf=RJ ou ?municipio=recife para filtrar.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Bairros V1 Bairros Get"}}}},"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"}}}}