Séries Negociadas de Opções
Retorna as séries negociadas de um vencimento com metadados do contrato
(symbol, side, strike, expirationDate) e OHLCV do último pregão
disponível até a data pedida. Este é o endpoint principal para montar uma
tela de opções por vencimento.
Apesar do caminho ser /chain, na documentação chamamos isso de séries
negociadas, porque esse nome faz mais sentido para o público brasileiro.
Plano mínimo: Pro. No sandbox sem token, aceita apenas underlying=PETR4.
Authorization
Bearer Token de API obtido no dashboard em brapi.dev/dashboard
In: header
Query Parameters
Código do ativo subjacente (ação, ETF ou índice) das opções que você quer listar.
Data de vencimento das opções, no formato YYYY-MM-DD. Use /expirations para descobrir os vencimentos disponíveis.
Data EOD usada para buscar preço e volume do dia, no formato YYYY-MM-DD. Padrão: último pregão disponível.
Filtra por tipo da opção: call (compra) ou put (venda). Omita para retornar ambos.
"call" | "put"Strike mínimo a considerar. Útil para limitar a resposta a uma faixa de preços de exercício.
Strike máximo a considerar. Útil para limitar a resposta a uma faixa de preços de exercício.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://brapi.dev/api/v2/options/chain?underlying=PETR4&expirationDate=2026-06-19"{
"underlying": "PETR4",
"expirationDate": "2026-06-19",
"date": "2026-06-01",
"tradedOnly": true,
"series": [
{
"symbol": "PETRF783",
"underlyingSymbol": "PETR4",
"side": "call",
"market": "equity",
"optionStyle": "european",
"strike": 7.29,
"allocationRoundLot": 100,
"expirationDate": "2026-06-19",
"firstTradeDate": "2026-04-24",
"lastTradeDate": "2026-06-01",
"date": 1780282800,
"open": 35.15,
"high": 35.15,
"low": 35.15,
"average": 35.15,
"close": 35.15,
"bid": 0,
"ask": 0,
"trades": 1,
"volume": 500,
"financialVolume": 17575
}
],
"requestedAt": "2026-06-02T12:00:00.000Z",
"took": 7
}{
"error": true,
"message": "Parâmetros inválidos",
"code": "BAD_REQUEST"
}{
"error": true,
"message": "Token de autenticação inválido ou ausente",
"code": "UNAUTHORIZED"
}{
"error": true,
"message": "Você não tem permissão para acessar este recurso",
"code": "FORBIDDEN"
}{
"error": true,
"message": "Recurso não encontrado",
"code": "NOT_FOUND"
}{
"error": true,
"message": "Erro interno do servidor",
"code": "INTERNAL_SERVER_ERROR"
}