Install
openclaw skills install @olegantonov/camara-deputadosResearch Brazil's Chamber of Deputies using its official open-data API. Use for federal deputies, Chamber bills, votes, events, committees, parliamentary fronts, and CEAP expenses; use senado-federal for Senate-only records.
openclaw skills install @olegantonov/camara-deputadosUse official Chamber data to answer factual legislative questions and build reproducible queries.
https://dadosabertos.camara.leg.br/api/v2https://dadosabertos.camara.leg.br/swagger/api.html{ "dados": ..., "links": [...] }python3 scripts/camara.py <command>.CamaraClient from camara_client.py.rel is next. Stop when it is absent or the requested page limit is reached.America/Sao_Paulo and state the retrieval date when freshness matters.codTema, not tema.codSituacao. There is no single stable code meaning every possible “in progress” state; resolve the intended status from /referencias/proposicoes/codSituacao./grupos, /grupos/{id}, /grupos/{id}/historico, and /grupos/{id}/membros./referencias/proposicoes/codSituacao and /referencias/proposicoes/codTema.dataInicio and dataFim in YYYY-MM-DD./deputados/{id}/presenca resource. Do not infer formal attendance solely from event participant lists.180, but verify it through /orgaos/180 before embedding it in long-lived code.from datetime import date
from camara_client import CamaraClient
client = CamaraClient()
try:
deputados = await client.buscar_deputado_por_nome("nome")
proposicoes = await client.pesquisar_proposicoes(
sigla_tipo="PL",
ano=2026,
cod_tema=40,
)
discursos = await client.get_discursos_deputado(
deputados[0]["id"],
date(2026, 1, 1),
date(2026, 12, 31),
)
finally:
await client.close()
Use an explicit cod_situacao when filtering status. The legacy tramitando=True option raises a validation error because its former mapping was incomplete.