Terra Libris

Terra Libris

Produção de Eventos

Voltar à agenda
Pioneira no Brasil

Documentação da API aberta de eventos

O que é uma "API aberta"?

Imagine que a nossa agenda é um cardápio de restaurante. Você pode olhar o cardápio na vitrine e copiar à mão os pratos que interessam — mas toda vez que o cardápio muda, você precisa voltar e copiar de novo. Uma API funciona como um garçom: em vez de você copiar à mão, o seu site pede a informação e o nosso sistema entrega a agenda pronta, sempre atualizada, sozinho.

"Aberta" significa que não precisa de cadastro, chave de acesso, contrato ou pagamento. Funciona como um site comum: você abre um endereço na internet e recebe a resposta. A diferença é que, em vez de uma página bonita para humanos lerem, a resposta vem formatada para o computador entender direto — em um padrão chamado JSON, que é só texto organizado com chaves e colchetes.

Em resumo: o seu site pergunta, o nosso responde, sem custo e sem burocracia. Basta usar o endereço abaixo.

Resumo do endpoint principal

GET https://eventos.terralibris.com.br/api/public/agenda
O que devolve
Uma lista de eventos na livraria com título, tipo, data, horários, local, editora, livro, autor e imagens.
Formato
JSON, com CORS liberado e cache de 5 minutos.
Autenticação
Nenhuma. É público e gratuito.
Privacidade
Datas ainda em negociação aparecem apenas como "Em confirmação", sem detalhes internos.

Parâmetros aceitos

ParâmetroExemploO que faz
limite?limite=5Limita a quantidade de eventos (máx. 100)
mes?mes=2026-09Só eventos de um mês (formato AAAA-MM)
tipo?tipo=LançamentoFiltra por tipo: Lançamento, Bate-papo, Contação, Cinema, Feira ou Outro
q?q=MottBusca por palavra-chave (título, autor, editora, livro, local)
passados?passados=trueMostra eventos já realizados (histórico)

Os parâmetros podem ser combinados. Ex.: ?tipo=Lançamento&limite=10

Exemplos de requisição

Cada linha abaixo é um endereço. Você pode colar direto no navegador para ver o resultado.

Os próximos eventos

Traz a agenda que ainda vai acontecer, do mais próximo ao mais distante.

GET https://eventos.terralibris.com.br/api/public/agenda

Só os 5 próximos

Ideal para um bloco pequeno no rodapé ou na barra lateral do seu site.

GET https://eventos.terralibris.com.br/api/public/agenda?limite=5

Eventos de um mês

Use o formato ano-mês. Serve para montar uma pauta mensal.

GET https://eventos.terralibris.com.br/api/public/agenda?mes=2026-09

Só lançamentos

Filtra por tipo: Lançamento, Bate-papo, Contação, Cinema, Feira ou Outro.

GET https://eventos.terralibris.com.br/api/public/agenda?tipo=Lançamento

Buscar por palavra-chave

Procura em título, tipo, autor, editora, livro e local. Não diferencia maiúsculas de minúsculas.

GET https://eventos.terralibris.com.br/api/public/agenda?q=Mott

O que já aconteceu

Histórico dos eventos realizados, do mais recente para o mais antigo.

GET https://eventos.terralibris.com.br/api/public/agenda?passados=true

Resposta real do sistema

Este JSON foi buscado agora, ao vivo, em /api/public/agenda?limite=2.

Carregando resposta real...

Exemplos em cURL

cURL é um programa que já vem instalado em computadores Mac e Linux (e no Windows 10+). Abra o terminal, cole o comando e tecle Enter. Serve para testar a API rapidamente sem escrever código.

Listar eventos

# Listar todos os próximos eventos
curl "https://eventos.terralibris.com.br/api/public/agenda"

Filtrar por tipo

# Filtrar só lançamentos
curl "https://eventos.terralibris.com.br/api/public/agenda?tipo=Lançamento"

Buscar por palavra-chave

# Buscar por palavra-chave
curl "https://eventos.terralibris.com.br/api/public/agenda?q=Mott"

Eventos passados

# Eventos já realizados
curl "https://eventos.terralibris.com.br/api/public/agenda?passados=true"

Combinar filtros

# Combinar filtros: lançamentos de um mês, no máximo 10
curl "https://eventos.terralibris.com.br/api/public/agenda?tipo=Lançamento&mes=2026-09&limite=10"

Exemplos em JavaScript

Para usar no navegador ou em frameworks como React, Vue e Astro. Todos os exemplos usam fetch, que já vem nativo no JavaScript.

1. Listar eventos

// 1. Listar todos os próximos eventos
const resposta = await fetch("https://eventos.terralibris.com.br/api/public/agenda");
const { eventos } = await resposta.json();

for (const ev of eventos) {
  console.log(ev.data, "—", ev.titulo);
}

2. Filtrar por tipo

// 2. Filtrar só lançamentos (server-side)
const resposta = await fetch("https://eventos.terralibris.com.br/api/public/agenda?tipo=Lançamento");
const { eventos } = await resposta.json();

3. Buscar por palavra-chave

// 3. Buscar por palavra-chave (server-side)
const resposta = await fetch("https://eventos.terralibris.com.br/api/public/agenda?q=Mott");
const { eventos } = await resposta.json();

for (const ev of eventos) {
  console.log(ev.titulo, "|", ev.autor_convidado ?? ev.editora);
}

4. Exibir no HTML

// 4. Montar uma lista HTML simples no seu site
const resposta = await fetch("https://eventos.terralibris.com.br/api/public/agenda?limite=5");
const { eventos } = await resposta.json();

const html = eventos
  .map((ev) => `<li>${ev.data} — ${ev.titulo}</li>`)
  .join("");

document.getElementById("agenda").innerHTML = `<ul>${html}</ul>`;

Uso livre e gratuito, com crédito à Terra Libris. Se você publicar algo usando a nossa agenda, adoraríamos saber — fale com a produção.