Bonds GET
Retorna títulos de renda fixa ativos com retorno líquido e ganho real calculados usando projeções anuais de SELIC e IPCA do Boletim Focus. Com uma chave de API válida, você recebe todos os títulos; sem chave, recebe 5 títulos de baixo risco como prévia.
Autenticação
A API usa chaves de acesso no cabeçalho Authorization. Sem uma chave válida, a resposta retorna apenas 5 títulos de prévia com status: "preview".
1. Gere uma chave
Acesse Conta → Chaves de API e clique em Gerar nova chave. Copie o valor imediatamente — ele não será exibido novamente.
2. Passe a chave na requisição
Há dois métodos aceitos:
Opção A — cabeçalho HTTP recomendado
Use o cabeçalho Authorization: Bearer. A chave não fica exposta em logs de servidor, histórico do navegador ou URLs compartilhadas.
curl -H "Authorization: Bearer rf_SUA_CHAVE_AQUI" \
"https://rendafixa.api.br/api/"
Opção B — parâmetro de URL
Passe a chave como ?key=. Útil para testes rápidos no navegador ou ferramentas que não permitem cabeçalhos customizados. Evite em produção — a chave fica visível em logs e histórico.
curl "https://rendafixa.api.br/api/?key=rf_SUA_CHAVE_AQUI"
Quando ambos estão presentes, o cabeçalho tem prioridade. As chaves expiram em 1 ano. Caso a chave enviada seja inválida, revogada ou expirada, a resposta retornará response.status: "unauthorized" com um array bonds vazio.
Endpoint
Parâmetros
| Parâmetro | Onde | Obrigatório | Descrição |
|---|---|---|---|
Authorization |
Header | Não | Chave de API no formato Bearer rf_SUA_CHAVE. Tem prioridade sobre key. |
key |
Query string | Não | Chave de API passada como ?key=rf_SUA_CHAVE. Útil para testes no navegador. |
cURL
curl -H "Authorization: Bearer rf_SUA_CHAVE_AQUI" "https://rendafixa.api.br/api/"
Valores de status
| response.status | response.description |
|---|---|
ok | Chave válida. Todos os títulos ativos são retornados. |
preview | Nenhuma chave foi enviada. Retorna até 5 títulos de baixo risco como prévia. |
unauthorized | Chave enviada, mas inválida, revogada ou expirada. Nenhum título é retornado. |
payment_issue | Chave válida, mas pagamento falhou ou assinatura expirou. Atualize o método de pagamento para restaurar o acesso. Nenhum título é retornado. |
rate_limited | Requisições muito frequentes. Aguarde pelo menos 5 segundos entre chamadas. |
Resposta
Content-Type: application/json
{
"response": {
"status": "ok",
"description": "Authenticated. All active bonds returned."
},
"bonds": [
{
"name": "CDB 360 DIAS",
"bank": 77,
"bank_name": "Banco Inter",
"product": "cdb",
"index": "cdi*",
"rate": 1.05,
"fgc_protection": true,
"tax_free": false,
"exclusive": false,
"min_investment": 100,
"maturity_date": "2027-05-08",
"early_withdrawal": true,
"risk": 1,
"net_annualized_return": 0.1165,
"real_annualized_return": 0.0676
},
// … demais títulos
]
}
Campos
| Campo | Tipo | Descrição |
|---|---|---|
name | string | Nome do título. |
bank | integer | Código numérico interno do banco emissor. |
bank_name | string | Nome do banco emissor. |
product | string | Tipo de produto. Ver tabela de produtos. |
index | string | Indexador do rendimento. Ver tabela de indexadores. |
rate | number | Fator ou spread do indexador. Valor decimal, não percentual — ex: 1.05 significa 105% do CDI, 0.1054 significa spread de 10,54% a.a. Ver tabela de indexadores. |
fgc_protection | boolean | Coberto pelo FGC até R$ 250.000 por CPF por instituição. |
tax_free | boolean | Isento de Imposto de Renda para pessoa física (LCI, LCA, CRI, CRA e debêntures incentivadas). |
exclusive | boolean | Restrito a investidores qualificados (patrimônio > R$ 1 milhão). |
min_investment | number | Valor mínimo de aplicação em reais. |
maturity_date | string | Data de vencimento no formato YYYY-MM-DD. |
early_withdrawal | boolean | Permite resgate antes do vencimento. |
risk | integer | Nível de risco de 1 (mais baixo) a 5 (mais alto). |
net_annualized_return | number | Retorno líquido anualizado após IR, calculado até o vencimento. Decimal — ex: 0.1479 = 14,79% a.a. Ver como é calculado. |
real_annualized_return | number | Ganho real anualizado acima do IPCA pela equação de Fisher. Decimal — ex: 0.0676 = 6,76% a.a. Ver como é calculado. |
Valores de product
| Valor | Produto |
|---|---|
cdb | CDB — Certificado de Depósito Bancário |
lci | LCI — Letra de Crédito Imobiliário |
lca | LCA — Letra de Crédito do Agronegócio |
cri | CRI — Certificado de Recebíveis Imobiliários |
cra | CRA — Certificado de Recebíveis do Agronegócio |
deb | Debênture |
tpf | Título Público Federal |
misc | Outros |
Valores de index
O campo rate é um decimal. Exemplos com rate = 1.05 ou rate = 0.02:
| Valor | Fórmula | Exemplo |
|---|---|---|
cdi* | rate × CDI | rate=1.05 → 105% do CDI |
cdi+ | CDI + rate | rate=0.02 → CDI + 2% a.a. |
ipca* | rate × IPCA | rate=1.05 → 105% do IPCA |
ipca+ | IPCA + rate | rate=0.1054 → IPCA + 10,54% a.a. |
selic* | rate × SELIC | rate=1.0 → 100% da SELIC |
selic+ | SELIC + rate | rate=0.02 → SELIC + 2% a.a. |
pre | rate (bruto fixo) | rate=0.179 → 17,9% a.a. prefixado |
Como os retornos são calculados
Os retornos não usam uma taxa única de mercado. O período de holding é segmentado ano a ano, e cada segmento aplica as taxas de SELIC e IPCA previstas para aquele ano, obtidas do Boletim Focus (BCB). Se o título vencer além do horizonte das projeções, a última taxa disponível é replicada.
net_annualized_return — o retorno bruto é calculado por composição ano a ano. Sobre o total do período, aplica-se a alíquota de IR conforme a tabela regressiva (22,5% até 180 dias, 20% até 360, 17,5% até 720, 15% acima). O resultado líquido do período é então anualizado. Títulos isentos (tax_free: true) pulam a dedução de IR.
real_annualized_return — o IPCA também é composto ano a ano sobre o mesmo período. O ganho real é calculado pela equação de Fisher aplicada ao período completo e depois anualizado: (1 + net_period) / (1 + ipca_period) ^ (365/dias) − 1. Retorna null se o vencimento já passou ou o indexador não é reconhecido.