/api/sd/etf/history
GETParcialPARTIAL

Histórico de ETFs à vista

Série diária de participações, patrimônio líquido ou fluxo líquido de um ativo (soma dos fundos cobertos) ou de um único fundo. Cada ponto informa quantos fundos contém.

GET/api/sd/etf/history
Cobertura parcial. Cobertura parcial: vários grandes emissores não oferecem uma divulgação pública legível por máquina que possa ser coletada a partir de um servidor. Seus fundos são listados como indisponíveis, e os totais cobrem apenas os demais fundos. Compare `funds_covered` / `funds_total` antes de comparar os totais com outras fontes.

Requisição

Parâmetros de consulta

NomeTipoObrigatórioPadrãoValores aceitosDescrição
assetstringObrigatório—BTC, ETH, SOL, HYPEAtivo subjacente, sem distinção entre maiúsculas e minúsculas. `coin` é aceito como alias. Exemplo: BTC
metricstringObrigatório—holdings, aum, flowSérie a retornar: participações (moedas), patrimônio líquido (USD) ou fluxo líquido (USD). Exemplo: flow
rangestringOpcional30d30d, 90d, allJanela retroativa.
tickerstringOpcional——Ticker do fundo registrado para o ativo (por exemplo, `ARKB`). Padrão: soma de todos os fundos cobertos. Um ticker não registrado retorna 404; um fundo registrado que não pode ser coletado retorna 200 com `series: null`.

Exemplo de requisição

curl -s "https://www.coinboss.com/api/sd/etf/history?asset=BTC&metric=flow"

Campos da resposta

A tabela de campos é gerada a partir de respostas reais, portanto lista exatamente o que o endpoint retorna. Os caminhos usam a[] para itens de array e {*} para objetos indexados por um nome dinâmico, como uma moeda ou uma corretora.

CampoTipoUnidadeDescrição
successboolean—true quando a requisição foi bem-sucedida. Em caso de falha, o corpo é `{ success: false, code, error, request_id }`.
schemastring—ID do esquema desta resposta. Só muda quando um campo existente muda de significado ou de tipo.
nownumbermsHorário do servidor em que a resposta foi montada.
assetstring—Ativo subjacente.
metricstring—Série selecionada pelo parâmetro `metric`.
rangestring—Janela retroativa aplicada.
tickerstring|null—Ticker do fundo.
unitstring—Unidade dos valores da série: `coin` ou `USD`.
funds_totalnumber—Fundos registrados para o ativo.
funds_in_seriesarray—Fundos que contribuem para a série.
funds_in_series[]string—Fundos que contribuem para a série.
first_date_by_fundobject—Primeira data disponível por fundo (a chave é o ticker). chaves dinâmicas: ARKB,EZBC
first_date_by_fund.{*}string—Primeira data disponível por fundo (a chave é o ticker).
pointsnumber—Pontos da série, do mais antigo para o mais recente.
seriesarray—Pontos diários, do mais antigo para o mais recente; `null` quando o fundo não pode ser coletado.
series[]object—Pontos diários, do mais antigo para o mais recente; `null` quando o fundo não pode ser coletado.
series[].datestring—Data de referência do emissor para o ponto.
series[].valuenumber—Valor da métrica selecionada, somado entre os fundos presentes nessa data.
series[].fundsnumber—Uma linha por fundo registrado, incluindo os fundos que não podem ser coletados. pode estar ausente
coverageobject—O que está e o que não está incluído nos números. Compare isto antes de comparar totais com outra fonte.
coverage.included_exchangesarray—Fontes cujos dados atualizados estão incluídos.
coverage.included_exchanges[]string—Fontes cujos dados atualizados estão incluídos.
coverage.unavailablearray—Fontes que não puderam ser incluídas, cada uma com um motivo. Nunca são contadas como 0.
coverage.unavailable[]object—Fontes que não puderam ser incluídas, cada uma com um motivo. Nunca são contadas como 0.
coverage.unavailable[].exchangestring—ID da corretora (em minúsculas).
coverage.unavailable[].issuerstring—ID do emissor do fundo.
coverage.unavailable[].reasonstring—Código de motivo legível por máquina.
coverage.unavailable[].detailstring—Explicação do motivo em linguagem natural.
coverage.stale_excludedarray—Linhas deixadas de fora porque sua última atualização está fora da janela de atualidade. vazio nas amostras usadas para gerar esta tabela
methodobject—Descrição em texto simples das fórmulas usadas nesta resposta, uma entrada por campo.
method.valuestring—Nota sobre a fórmula de `value`, em texto simples.
method.fundsstring—Nota sobre a fórmula de `funds`, em texto simples.
method.multi_daystring—Nota sobre a fórmula de `multi_day`, em texto simples.
method.history_startstring—Nota sobre a fórmula de `history_start`, em texto simples.
metaobject—Linhagem e atualidade desta resposta.
meta.schemastring—ID do esquema desta resposta. Só muda quando um campo existente muda de significado ou de tipo.
meta.sourcearray—Endpoints públicos de origem dos quais os dados foram coletados.
meta.source[]object—Endpoints públicos de origem dos quais os dados foram coletados.
meta.source[].exchangestring—ID da corretora (em minúsculas).
meta.source[].endpointstring—Endpoint público da fonte que o coletor lê (exibido para fins de linhagem; os clientes nunca o chamam).
meta.observed_atnumbermsTimestamp informado pela fonte para os dados.
meta.received_atnumbermsHorário em que o coletor da CoinBoss recebeu os dados.
meta.fetched_atnumbermsHorário em que esta resposta foi montada.
meta.windowstring—Janela de tempo coberta pelos números.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN ou UNAVAILABLE, avaliado a partir dos timestamps dos dados e da cobertura.
meta.is_staleboolean—True quando os dados são mais antigos que sua janela de atualidade.
meta.cache_ttl_snumbersTempo de vida do cache desta resposta.
meta.fallbackstring—O que o endpoint retorna quando o coletor ou uma fonte falha.

Gerada 2026-11-11 23:00 UTC a partir de 3 respostas reais.

Exemplo de resposta

/api/sd/etf/history?asset=BTC&metric=flow · Resposta real capturada 2026-11-13 04:02:51 UTC. Arrays e mapas longos são encurtados para exibição: series tinha 21 itens; meta.source tinha 5 itens; first_date_by_fund tinha 5 itens; coverage.unavailable tinha 7 itens.

  • {
    • "success": true,
    • "schema": "coinboss.sd.etf/1",
    • "now": 1794542297946,
    • "asset": "BTC",
    • "metric": "flow",
    • "range": "30d",
    • "ticker": null,
    • "unit": "USD",
    • "funds_total": 12,
    • "funds_in_series": [
      • "ARKB",
      • "BITB",
      • "BTCO",
      • "EZBC",
      • "HODL"
      ],
    • "first_date_by_fund": {
      • "ARKB": "2026-10-14",
      • "BITB": "2026-11-11"
      },
    • "points": 21,
    • "series": [
      • { … 3 },
      • { … 3 }
      ],
    • "coverage": {
      • "included_exchanges": [ … 5 ],
      • "unavailable": [ … 2 ],
      • "stale_excluded": []
      },
    • "method": {
      • "value": "own method, per fund between two consecutive issuer as-of rows: shares_x_nav = (shares_out[t] - shares_out[t-1]) x NAV[t], dated t; aum_nav_ratio_t1 (issuer pub…",
      • "funds": "number of funds contributing to that date; the aggregate is only comparable across dates with the same contributing funds (history starts on different dates per…",
      • "multi_day": "true when a contributing flow spans more than one trading day because the issuer history has no row for the day(s) in between",
      • "history_start": "issuer-provided official history is back-filled where it exists (21Shares valuation history, Franklin price history); other issuers start on the first collectio…"
      },
    • "meta": {
      • "schema": "coinboss.sd.etf/1",
      • "source": [ … 2 ],
      • "observed_at": 1794441600000,
      • "received_at": 1794537318126,
      • "fetched_at": 1794542297946,
      • "window": "30d",
      • "quality": "PARTIAL",
      • "is_stale": false,
      • "cache_ttl_s": 300,
      • "fallback": "collector failure keeps the last issuer row with its real as_of_date; a fund whose as_of_date is more than 1 trading day behind the expected as-of is flagged is…"
      }
    }

Amostras verificadas

Além do exemplo acima, a sonda chama este endpoint com estes parâmetros e verifica o esquema a cada vez.

ParâmetrosHTTPLatênciaResultado
asset=ETH&range=90d&metric=aum2005 msAprovado PARTIAL
asset=BTC&metric=holdings&ticker=ARKB2004 msAprovado FRESH
asset=BTC4001 msAprovado retorna o erro esperado

Verificado 2026-11-13 03:58:17 UTC

Detalhes

Autenticação
Nenhuma. Endpoint público.
Limite de requisições
1200 requisições por minuto por IP
Cache do servidor
5m
Microcache de borda
10s
Frequência de atualização
Três rodadas do coletor por dia (02:35, 10:35, 16:35 UTC). Os emissores publicam uma vez por dia de negociação dos EUA, geralmente na noite da data de negociação.
Janela
30d / 90d / all, um ponto por data de referência do emissor.
Fontes de dados
Divulgações diárias publicadas pelos próprios emissores dos fundos (participações, patrimônio líquido, cotas em circulação, NAV), coletadas e armazenadas pela CoinBoss (sd_etf_fund_daily). O fluxo líquido é calculado pela CoinBoss a partir dessas divulgações.
Cobertura de corretoras
Somente os fundos cujo emissor publica dados diários legíveis por máquina são cobertos. `funds_total` e `funds_covered` indicam quantos; todo fundo não coberto é listado em `coverage.unavailable`, com o motivo. Os totais são somas apenas dos fundos cobertos (`totals_scope = "covered_funds_only"`), não do mercado inteiro.
Paginação
Sem paginação; `range` limita o número de pontos.
Ordenação
Data em ordem crescente.
Unidades
Amounts in USD; holdings in units of the underlying coin; NAV and market price in USD per share; `premium_pct` and `fee_pct` in percent.
Método
A point sums the funds that have a row on that date; `funds` is that count. Points with different `funds` are not directly comparable. Flow is bucketed by its booking date.
Timestamps
Milissegundos da época Unix (UTC), salvo se a descrição do campo indicar o contrário
Formato da resposta
json
Estabilidade
Estável
Disponível desde
2026-11-11

Status ao vivo

ParcialVerificado 2026-11-13 04:02:51 UTCHTTP 2001 msEsquema confereDado mais recente: há 88m

O endpoint reporta qualidade dos dados PARTIAL — Cobertura parcial: vários grandes emissores não oferecem uma divulgação pública legível por máquina que possa ser coletada a partir de um servidor. Seus fundos são listados como indisponíveis, e os totais cobrem apenas os demais fundos. Compare `funds_covered` / `funds_total` antes de comparar os totais com outras fontes.

Disponibilidade, últimos 30 dias

100% de 408 verificações aprovadas

Erros

As chamadas com falha têm o mesmo formato em todos os endpoints. A lista completa está na página de erros. Erros e limites de requisições →

CódigoHTTPSignificadoO que fazer
INVALID_PARAM400Falta um parâmetro obrigatório ou um valor não é aceito. `param` indica o nome do parâmetro quando ele é conhecido.Não repita a requisição sem alterações; corrija-a.
UNAUTHORIZED401O cabeçalho `CB-API-KEY` foi enviado, mas a chave é desconhecida ou foi revogada. Dados públicos não exigem chave — remova o cabeçalho ou use uma chave válida.Não repita a requisição sem alterações.
FORBIDDEN403A rota não faz parte da API pública (é interna ou exclusiva de conta).Não tente novamente.
NOT_FOUND404Rota desconhecida, ou a moeda / corretora / fundo solicitado não existe.Não tente novamente; confira o caminho e os identificadores no catálogo.
RATE_LIMITED429Mais requisições do que o limite por minuto. `Retry-After` informa os segundos a aguardar.Aguarde `Retry-After` e então tente novamente com backoff.
INTERNAL500Erro inesperado do servidor. A mensagem é genérica de propósito; cite `request_id` ao reportá-lo.Tente novamente uma vez após alguns segundos; se persistir, reporte-o com o ID da requisição.
UPSTREAM_FAILED503A fonte de dados por trás deste endpoint não respondeu a tempo. Nenhum número desatualizado ou substituto é retornado em seu lugar.Tente novamente com backoff; consulte a página de status.
UNAVAILABLE501 / 503O conjunto de dados ainda não está pronto temporariamente (aquecimento do cache) ou o endpoint ainda não tem uma fonte pública lícita.Tente novamente mais tarde; o catálogo marca os endpoints que são indisponíveis por design.
REQUEST_FAILED200Alguns endpoints mais antigos respondem HTTP 200 com `success: false`. Verifique sempre `success`, não apenas o status HTTP.Depende da mensagem; trate como uma requisição com falha.

Experimente

GET/api/sd/etf/historyParcial
Parâmetros

string — Underlying asset, case-insensitive. `coin` is accepted as an alias.

string — Series to return: holdings (coin), net assets (USD) or net flow (USD).

string · padrão 30d — Look-back range.

string — Fund ticker registered for the asset (for example `ARKB`). Default: all covered funds summed. An unregistered ticker returns 404; a registered fund that cannot be collected returns 200 with `series: null`.

URL da requisiçãohttps://www.coinboss.com/api/sd/etf/history?asset=BTC&metric=flow
Escolha um endpoint e clique em “Enviar requisição”. A resposta, os cabeçalhos e o tempo de resposta aparecerão aqui.