Pular para conteúdo

ANA/SNIRH — Agencia Nacional de Aguas

Visao Geral

Item Detalhe
Provedor ANA (Agencia Nacional de Aguas e Saneamento Basico)
Dados Hidrografia, pivos de irrigacao, demanda de irrigacao, disponibilidade hidrica
Acesso ArcGIS REST API
Formato JSON (tabular) / GeoJSON (geo)
Autenticacao Nenhuma
Licenca Dados publicos

Layers

Layer Features Geometria bbox obrigatorio
hidrografia ~620K polylines Polyline Sim
pivos_irrigacao ~19.9K polygons Polygon Nao
demanda_irrigacao ~265K polygons Polygon Sim
disponibilidade_hidrica ~42K polylines Polyline Nao

Acesso via ArcGIS REST

Parametro Valor
Base URL https://portal1.snirh.gov.br/server/rest/services/dados_abertos
Paginacao Automatica (1K features/pagina)
Throttle 2s delay apos 5 paginas

Exemplo de Uso

import asyncio
from agrobr import ana

async def main():
    # Hidrografia (bbox obrigatorio — dataset grande)
    df = await ana.hidrografia(bbox=(-50, -20, -48, -18))

    # Com geometria
    gdf = await ana.hidrografia_geo(bbox=(-50, -20, -48, -18))

    # Pivos de irrigacao
    df = await ana.pivos_irrigacao(uf="GO")

    # Pivos com geometria
    gdf = await ana.pivos_irrigacao_geo(uf="SP", bbox=(-50, -22, -48, -20))

    # Demanda de irrigacao (bbox obrigatorio)
    df = await ana.demanda_irrigacao(bbox=(-50, -20, -48, -18))

    # Disponibilidade hidrica
    df = await ana.disponibilidade_hidrica(uf="MG")
    gdf = await ana.disponibilidade_hidrica_geo(bbox=(-46, -20, -44, -18))

    # Com metadados
    df, meta = await ana.pivos_irrigacao(return_meta=True)

    # Polars
    df = await ana.pivos_irrigacao(as_polars=True)

    # Limitar features
    df = await ana.hidrografia(bbox=(-50, -20, -48, -18), max_features=500)

asyncio.run(main())

Colunas por Layer

hidrografia

Coluna Tipo Descricao
OBJECTID int ID do registro
codigo_curso str Codigo do curso d'agua
nome_rio str Nome do rio
comprimento_m float Comprimento em metros
area_m2 float Area em metros quadrados
nivel_otto str Nivel de ottocodificacao
codigo_bacia str Codigo da bacia

pivos_irrigacao

Coluna Tipo Descricao
OBJECTID int ID do registro
UF str UF (sigla)
municipio str Municipio
area_ha float Area em hectares
ano_mapeamento int Ano do mapeamento
lat float Latitude
lon float Longitude

demanda_irrigacao

Coluna Tipo Descricao
OBJECTID int ID do registro
codigo_bacia str Codigo da bacia
nivel_otto str Nivel de ottocodificacao
demanda_m3_s float Demanda em m3/segundo
demanda_m3_ano float Demanda em m3/ano

disponibilidade_hidrica

Coluna Tipo Descricao
OBJECTID int ID do registro
codigo_curso str Codigo do curso d'agua
nome_rio str Nome do rio
q95_l_s float Vazao Q95 em litros/segundo
qmlt_l_s float Vazao media de longo termo em litros/segundo
codigo_bacia str Codigo da bacia

Particularidades

  • bbox obrigatorio: hidrografia e demanda_irrigacao requerem bbox (datasets grandes)
  • Paginacao automatica: 1K features por pagina com connection reuse
  • max_features: parametro opcional para limitar o total de features retornadas

Limitacoes

  • Hidrografia e demanda de irrigacao exigem bbox (sem filtro retornaria centenas de milhares de features)
  • Throttle de 2s apos 5 paginas para nao sobrecarregar o servidor