Install
openclaw skills install camara-deputadosAccess and search Brazilian Chamber of Deputies data including deputies, bills, votes, committees, agendas, expenses, and legislative statuses via public API...
openclaw skills install camara-deputadosBase URL: https://dadosabertos.camara.leg.br/api/v2
Docs/Swagger: https://dadosabertos.camara.leg.br/swagger/api.html
No authentication required. All endpoints return JSON.
itens — page size (default 15, max 100)pagina — page numberordem — ASC or DESCordenarPor — field name for sortingGET /deputados
?nome= # name search
?siglaPartido= # party (e.g. PT, PL, MDB)
?siglaUf= # state (e.g. SP, RJ, AM)
?idLegislatura=57 # current legislature
?ordem=ASC&ordenarPor=nome
GET /deputados/{id} # full profile
GET /deputados/{id}/discursos # speeches
?dataInicio=YYYY-MM-DD&dataFim=YYYY-MM-DD
GET /deputados/{id}/despesas # CEAP expenses
?ano=YYYY&mes=MM
GET /deputados/{id}/frentes # parliamentary fronts
GET /deputados/{id}/ocupacoes # professional history
GET /deputados/{id}/orgaos # committee memberships
GET /proposicoes
?siglaTipo=PL # type: PL, PEC, MPV, PDC, PLP, etc.
?numero=123
?ano=2026
?autor=Nome # author name (partial match)
?tema= # topic id (see /referencias/temas)
?keywords= # keywords
?dataApresentacaoInicio=YYYY-MM-DD
?dataApresentacaoFim=YYYY-MM-DD
?codSituacao= # status code
?tramitacaoSenado=true # bills currently in Senate
?ordem=DESC&ordenarPor=id
GET /proposicoes/{id} # full detail
GET /proposicoes/{id}/autores # authorship
GET /proposicoes/{id}/relacionadas# related bills
GET /proposicoes/{id}/temas # topics
GET /proposicoes/{id}/tramitacoes # full history/status
GET /proposicoes/{id}/votacoes # votes on this bill
GET /votacoes
?dataInicio=YYYY-MM-DD&dataFim=YYYY-MM-DD
?idOrgao=180 # 180 = Plenário
?siglaPartido=
?ordem=DESC&ordenarPor=dataHoraRegistro
GET /votacoes/{id} # vote detail
GET /votacoes/{id}/votos # individual votes per deputy
GET /votacoes/{id}/orientacoes # party orientations
GET /eventos
?dataInicio=YYYY-MM-DD
?dataFim=YYYY-MM-DD
?siglaOrgao= # committee sigla or PLEN for plenary
?codTipoEvento= # see /referencias/tiposEvento
?codSituacao= # see /referencias/situacoesEvento
?ordem=ASC&ordenarPor=dataHoraInicio
GET /eventos/{id} # event detail
GET /eventos/{id}/deputados # attending deputies
GET /eventos/{id}/orgaos # organizing bodies
GET /eventos/{id}/pauta # agenda items
GET /eventos/{id}/votacoes # votes in this session
GET /orgaos
?sigla=CCJC # committee abbreviation
?codTipoOrgao= # type (see /referencias/tiposOrgao)
?nome=
GET /orgaos/{id} # detail
GET /orgaos/{id}/eventos # committee agenda
GET /orgaos/{id}/membros # current membership
GET /orgaos/{id}/votacoes # votes by committee
GET /partidos?ordem=ASC&ordenarPor=sigla
GET /partidos/{id}
GET /partidos/{id}/membros
GET /blocos
GET /blocos/{id}
GET /frentes
GET /frentes/{id}
GET /frentes/{id}/membros
GET /gruposTrabalho
GET /gruposTrabalho/{id}
GET /gruposTrabalho/{id}/membros
GET /legislaturas
GET /legislaturas/{id}
GET /legislaturas/{id}/mesa # presiding board
GET /referencias/deputados/codSituacao
GET /referencias/proposicoes/codSituacaoProposicao
GET /referencias/proposicoes/siglaTipo
GET /referencias/proposicoes/tema
GET /referencias/tiposEvento
GET /referencias/tiposOrgao
GET /referencias/uf
DATE=$(date +%Y-%m-%d)
curl "https://dadosabertos.camara.leg.br/api/v2/eventos?dataInicio=$DATE&dataFim=$DATE&ordem=ASC&ordenarPor=dataHoraInicio"
curl "https://dadosabertos.camara.leg.br/api/v2/proposicoes?keywords=transporte+público&ano=2026&ordem=DESC&ordenarPor=id&itens=20"
curl "https://dadosabertos.camara.leg.br/api/v2/deputados?nome=Marcos+Pontes&idLegislatura=57"
curl "https://dadosabertos.camara.leg.br/api/v2/votacoes?idOrgao=180&dataInicio=2026-03-01&ordem=DESC&ordenarPor=dataHoraRegistro&itens=10"
curl "https://dadosabertos.camara.leg.br/api/v2/proposicoes/{id}/tramitacoes"
https://www.camara.leg.br/cotas/Ano-{ano}.json.zipreferences/api-endpoints.md for parameter detailshttps://dadosabertos.camara.leg.br/swagger/api.html{dados: [...], links: [...]}. The Python client's _get() automatically extracts dados.itens (page size, max 100) and pagina (page number). The Python client's _get_list() auto-paginates — if dados has fewer items than itens, it's the last page.YYYY-MM-DD (unlike Senado which uses YYYYMMDD).?tramitacaoSenado=true on proposições endpoint to find bills currently being reviewed by the Senate.https://www.camara.leg.br/cotas/Ano-{ano}.json.zip.You can use the async Python client for programmatic access:
import asyncio
from camara_client import get_camara_client
async def main():
client = get_camara_client()
# Listar deputados
deps = await client.lista_deputados()
# Buscar por nome
resultado = await client.buscar_deputado_por_nome("Lula")
# Pesquisar proposições
props = await client.pesquisar_proposicoes(keywords="transporte", ano=2026)
# Eventos de hoje
from datetime import date
eventos = await client.get_eventos_dia(date.today())
await client.close()
asyncio.run(main())
Deputados:
lista_deputados(legislatura) — List deputiesbuscar_deputado_por_nome(nome, legislatura) — Search by nameget_deputado_detalhe(id) — Full profileget_despesas_deputado(id, ano) — CEAP expensesget_frentes_deputado(id) — Parliamentary frontsget_discursos_deputado(id, data_inicio, data_fim) — Speechesget_presenca_deputado(id, data_inicio, data_fim) — Attendanceget_deputado_orgaos(id) — Committee membershipsget_deputado_ocupacoes(id) — Professional historyProposições:
pesquisar_proposicoes(keywords, sigla_tipo, numero, ano, autor, tramitando, tema, tramitacao_senado) — Search billsget_proposicao_detalhe(id) — Full detailget_proposicao_tramitacao(id) — Status historyget_proposicao_votacoes(id) — Votes on billget_proposicao_autores(id) — Authorsget_proposicao_temas(id) — Topics/tagsget_proposicao_relacionadas(id) — Related billsEventos:
get_eventos_dia(data) — Day agendaget_eventos_periodo(data_inicio, data_fim) — Events in periodget_evento_detalhe(id) — Event detailget_evento_deputados(id) — Deputies in eventget_evento_orgaos(id) — Organizing bodiesget_evento_votacoes(id) — Votes in eventVotações:
get_votacoes_periodo(data_inicio, data_fim, id_orgao) — Votes in periodget_votacao_detalhe(id) — Vote detailget_votos_votacao(id) — Individual votesget_orientacoes_votacao(id) — Party orientationsÓrgãos/Comissões:
lista_orgaos() — List committeesget_orgao_detalhe(id) — Committee detailget_eventos_orgao_periodo(id, data_inicio, data_fim) — Committee agendaget_membros_orgao(id) — Current membersget_orgao_membros_periodo(id, data_inicio, data_fim) — Members in periodget_votacoes_orgao(id, data_inicio, data_fim) — Committee votesLegislaturas:
lista_legislaturas() — List legislaturesget_legislatura_detalhe(id) — Legislature detailget_legislatura_mesa(id) — Presiding boardPartidos:
lista_partidos() — List partiesget_partido_detalhe(id) — Party detailget_partido_membros(id) — Party membersBlocos:
lista_blocos() — List parliamentary blocsget_bloco_detalhe(id) — Bloc detailFrentes:
lista_frentes(id_legislatura) — List parliamentary frontsget_frente_detalhe(id) — Front detailget_frente_membros(id) — Front membersReferências:
get_referencias_situacao_deputado() — Deputy status codesget_referencias_situacao_proposicao() — Bill status codesget_referencias_tipo_proposicao() — Bill type codes (PL, PEC, etc)get_referencias_temas() — Topic/theme listget_referencias_tipos_evento() — Event typesget_referencias_tipos_orgao() — Committee typesget_referencias_uf() — Brazilian statesUtilitários:
get_proposicoes_recentes(dias) — Recent billsget_votacoes_semana() — This week's votesget_eventos_semana() — This week's eventsget_pauta_evento(id) — Event agenda itemsRequires: pip install httpx