Matriz de qualidade dos dados
Matriz corretora × família de dados com FRESH / PARTIAL / STALE / BROKEN / UNAVAILABLE, timestamps da fonte e da coleta, atraso, cobertura e o motivo de cada lacuna.
/api/meta/qualityRequisição
Parâmetros de consulta
| Nome | Tipo | Obrigatório | Padrão | Valores aceitos | Descrição |
|---|---|---|---|---|---|
| exchange | string | Opcional | — | — | Retorna somente esta corretora (ID em minúsculas, por exemplo, `binance`). |
| family | string | Opcional | — | — | Retorna somente esta família de dados (por exemplo, `oi`, `funding`, `liquidation`). |
Exemplo de requisição
curl -s "https://www.coinboss.com/api/meta/quality"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.
| Campo | Tipo | Unidade | Descrição |
|---|---|---|---|
| success | boolean | — | true quando a requisição foi bem-sucedida. Em caso de falha, o corpo é `{ success: false, code, error, request_id }`. |
| schema | string | — | ID do esquema desta resposta (`coinboss.meta.quality/1`). |
| now | number | ms | Horário do servidor em que a resposta foi montada. |
| families | array | — | Famílias de dados avaliadas por corretora (tickers, contratos em aberto, financiamento, liquidações, livros de ofertas, opções e outras). |
| families[] | object | — | Uma família: `id`, `scope`, `title`, `what`, `table`, `cadence` e `fresh_within_s`. |
| families[].id | string | — | Identificador. |
| families[].scope | string | — | `exchange` para as famílias avaliadas por corretora em `matrix`. |
| families[].title | string | — | Título de exibição da família. |
| families[].what | string | — | Descrição curta dos dados que a família abrange. |
| families[].table | string | — | Nome do conjunto de dados interno a partir do qual a família é avaliada; apenas informativo. |
| families[].cadence | string | — | Cronograma de coleta da família, em texto simples; null quando não informado. |
| families[].fresh_within_s | number | s | Janela de atualidade: dados mais recentes que isso contam como atualizados. |
| exchanges | array | — | Corretoras. |
| exchanges[] | string | — | Corretoras. |
| matrix | object | — | Matriz indexada por linha e coluna. chaves dinâmicas: aster,backpack,binance,bingx,bitfinex,bitget |
| matrix.{*} | object | — | Matriz indexada por linha e coluna. chaves dinâmicas: ticker,oi,funding,funding_settle,liquidation,ls |
| matrix.{*}.{*} | object | — | Matriz indexada por linha e coluna. |
| matrix.{*}.{*}.status | string | — | Status. |
| matrix.{*}.{*}.lag_s | number|null | s | Agora menos o timestamp do dado armazenado mais recente dessa corretora (primeira chave) e família (segunda chave); null quando a família está indisponível nela. |
| matrix.{*}.{*}.source_at | number|null | ms | Timestamp. |
| matrix.{*}.{*}.fetched_at | number|null | ms | Quando a CoinBoss obteve os dados da fonte. |
| matrix.{*}.{*}.fresh_within_s | number|null | s | Janela de atualidade: dados mais recentes que isso contam como atualizados. |
| matrix.{*}.{*}.coverage | object|null | — | O que está incluído e o que está faltando. |
| matrix.{*}.{*}.coverage.rows | number | — | Linhas do resultado. pode estar ausente |
| matrix.{*}.{*}.coverage.rows_fresh | number | — | Linhas atualizadas dentro da janela de atualidade. pode estar ausente |
| matrix.{*}.{*}.coverage.rows_usable | number | — | Linhas dentro da janela de uso. pode estar ausente |
| matrix.{*}.{*}.coverage.rows_orphan | number | — | Linhas cujo contrato não está mais listado. pode estar ausente |
| matrix.{*}.{*}.coverage.rows_invalid | number | — | Linhas rejeitadas pela validação. pode estar ausente |
| matrix.{*}.{*}.reason | string|null | — | Código do motivo. |
| matrix.{*}.{*}.coverage.rows_no_liveness | number | count | Linhas de financiamento em contratos sem evidência de negociação ativa (deslistados ou sem volume); ficam fora da contagem de atualidade. pode estar ausente |
| matrix.{*}.{*}.coverage.rows_unknown_interval | number | count | Linhas de financiamento atualizadas recentemente cujo intervalo de liquidação é desconhecido e que, portanto, não podem ser normalizadas para 8 horas. pode estar ausente |
| matrix.{*}.{*}.coverage.symbols | number | — | Símbolos. pode estar ausente |
| matrix.{*}.{*}.coverage.events_1h | number | count | Ordens de liquidação armazenadas da corretora na última hora; os tamanhos mínimos de ordem diferem entre corretoras. pode estar ausente |
| matrix.{*}.{*}.coverage.events_24h | number | count | Ordens de liquidação armazenadas da corretora nas últimas 24 horas; os tamanhos mínimos de ordem diferem entre corretoras. pode estar ausente |
| matrix.{*}.{*}.via | string | — | Caminho de coleta. pode estar ausente |
| matrix.{*}.{*}.coverage.books | number | count | Número de livros de ofertas acompanhados. pode estar ausente |
| matrix.{*}.{*}.coverage.books_fresh | number | count | Número de livros de ofertas atualizados dentro da janela de atualidade. pode estar ausente |
| matrix.{*}.{*}.coverage.books_reaching_2pct | number | count | Número de livros de ofertas com profundidade suficiente para cobrir ±2 % em torno do preço médio. pode estar ausente |
| matrix.{*}.{*}.coverage.contracts | number | — | Linhas por contrato. pode estar ausente |
| matrix.{*}.{*}.coverage.contracts_fresh | number | count | Número de contratos atualizados dentro da janela de atualidade. pode estar ausente |
| matrix.{*}.{*}.coverage.with_mark_and_index | number | count | Número de contratos que têm tanto preço de marcação quanto preço do índice. pode estar ausente |
| matrix.{*}.{*}.coverage.delivery_contracts | number | count | Número de contratos com vencimento (com data). pode estar ausente |
| matrix.{*}.{*}.note | string | — | Observação. pode estar ausente |
| matrix.{*}.{*}.coverage.coins | number | — | Moedas. pode estar ausente |
| matrix.{*}.{*}.coverage.rows_without_oi | number | count | Linhas de contratos com margem em cripto, com margem em USDC ou com vencimento que não trazem valor de contratos em aberto em USD. pode estar ausente |
| matrix.{*}.{*}.coverage.with_mark_iv | number | count | Número de contratos de opções que têm volatilidade implícita de marcação. pode estar ausente |
| matrix.{*}.{*}.coverage.with_greeks | number | count | Número de contratos de opções que têm gregas. pode estar ausente |
| datasets | array | — | Verificações de qualidade dos conjuntos de dados que não são por corretora (por exemplo, dados diários de ETFs spot e da CME), cada uma com status, defasagem, cobertura e motivo. |
| datasets[] | object | — | Um conjunto de dados de todo o mercado que não está vinculado a uma única corretora (opções, ETFs spot, CME, livros de ofertas, base). |
| datasets[].family | string | — | ID do conjunto de dados, por exemplo, `etf` ou `cme`. |
| datasets[].id | string | — | Identificador. |
| datasets[].title | string | — | Nome de exibição do conjunto de dados. |
| datasets[].source | string | — | De onde vem o valor. |
| datasets[].endpoint | string | — | Endpoint público que serve o conjunto de dados. |
| datasets[].status | string | — | Status. |
| datasets[].lag_s | number | s | Idade do ponto de dados mais recente quando a resposta foi montada. |
| datasets[].source_at | number | ms | Timestamp. |
| datasets[].fetched_at | number | ms | Quando a CoinBoss obteve os dados da fonte. |
| datasets[].fresh_within_s | number | s | Janela de atualidade: dados mais recentes que isso contam como atualizados. |
| datasets[].coverage | object | — | O que está incluído e o que está faltando. |
| datasets[].coverage.funds_total | number | count | Número de fundos acompanhados. pode estar ausente |
| datasets[].coverage.funds_covered | number | count | Número de fundos com uma divulgação utilizável. pode estar ausente |
| datasets[].coverage.funds_unavailable | number | count | Número de fundos cujo emissor não publica divulgação legível por máquina. pode estar ausente |
| datasets[].coverage.funds_failing | number | count | Número de fundos cuja divulgação não pôde ser lida na última rodada de coleta. pode estar ausente |
| datasets[].coverage.as_of | string | — | Data de divulgação mais recente entre os fundos cobertos (YYYY-MM-DD). pode estar ausente |
| datasets[].coverage.as_of_min | string | — | Data de divulgação mais antiga entre os fundos cobertos (YYYY-MM-DD). pode estar ausente |
| datasets[].reason | string|null | — | Código do motivo. |
| datasets[].coverage.contracts | number | — | Linhas por contrato. pode estar ausente |
| datasets[].coverage.report_date | string | — | Data do relatório Commitments of Traders mais recente da CFTC (YYYY-MM-DD). pode estar ausente |
| datasets[].coverage.products | number | count | Número de produtos da CME cobertos. pode estar ausente |
| datasets[].coverage.trade_date | string | — | Data de negociação do relatório diário mais recente da CME (YYYY-MM-DD). pode estar ausente |
| summary | object | — | Bloco de resumo. chaves dinâmicas: FRESH,PARTIAL,STALE,BROKEN,UNAVAILABLE |
| summary.{*} | number | — | Bloco de resumo. |
| by_family | object | — | Número de corretoras em cada status, por família. As chaves externas são IDs de família. chaves dinâmicas: ticker,oi,funding,funding_settle,liquidation,ls |
| by_family.{*} | object | — | Contagens de status de uma família, indexadas por status (`FRESH`, `PARTIAL`, `STALE`, `BROKEN`, `UNAVAILABLE`). chaves dinâmicas: FRESH,PARTIAL,STALE,BROKEN,UNAVAILABLE |
| by_family.{*}.{*} | number | count | Número de corretoras com esse status nessa família. |
| alerts | array | — | Alertas da ronda de qualidade dos dados que estão abertos ou foram resolvidos nos últimos 7 dias, com os abertos primeiro; filtrados pelos parâmetros da requisição. |
| alerts[] | object | — | Um alerta: `level`, `exchange`, `family`, `code`, `detail`, horários de abertura / última ocorrência / resolução, `hits` e `open`. |
| alerts[].level | string | — | Nível. |
| alerts[].exchange | string | — | ID da corretora, em minúsculas (por exemplo, `binance`). |
| alerts[].family | string | — | Família de dados a que o alerta se refere. |
| alerts[].code | string | — | Código. |
| alerts[].detail | string | — | Detalhe. |
| alerts[].opened_at | number | ms | Timestamp. |
| alerts[].last_seen_at | number | ms | Timestamp. |
| alerts[].resolved_at | number|null | ms | Timestamp. |
| alerts[].hits | number | count | Número de execuções da ronda (uma a cada 5 minutos) que observaram a condição desde a abertura do alerta. |
| alerts[].open | boolean | — | Preço de abertura do período. |
| monitor | object | — | Saúde do próprio monitoramento: horário e idade da última execução da ronda, `patrol_ok` e a idade do heartbeat do coletor. |
| monitor.patrol_last_run_at | number | ms | Timestamp. |
| monitor.patrol_age_s | number | s | Segundos desde o evento. |
| monitor.patrol_ok | boolean | — | true quando a ronda foi executada nos últimos 15 minutos; quando false, a lista `alerts` pode estar desatualizada, enquanto a matriz continua ao vivo. |
| monitor.collector_heartbeat_age_s | number | s | Segundos desde o evento. |
| errors | null | — | Mapa de ID de família para um código de erro, para as famílias cuja própria verificação de qualidade falhou; null quando todas as verificações foram executadas. |
| legend | object | — | Definição em texto simples de cada status de célula. chaves dinâmicas: FRESH,PARTIAL,STALE,BROKEN,UNAVAILABLE |
| legend.{*} | string | — | Definição do status nomeado pela chave (`FRESH`, `PARTIAL`, `STALE`, `BROKEN`, `UNAVAILABLE`). |
| method | object | — | Notas sobre a fórmula / o método. |
| method.status | string | — | Status. |
| method.lag_s | string | — | Declaração em texto simples de como `lag_s` é calculado. |
| method.source_at | string | — | String de data e hora. |
| method.fetched_at | string | — | String de data e hora. |
| meta | object | — | Envelope desta resposta: ID do esquema, sistema produtor, timestamps, tempo de vida do cache e atualidade. |
| meta.schema | string | — | ID do esquema desta resposta; mesmo valor do `schema` de nível superior. |
| meta.source | array | — | De onde vem o valor. |
| meta.source[] | object | — | De onde vem o valor. |
| meta.source[].system | string | — | Sistema que produziu os dados; sempre `coinboss` nos endpoints do centro de desenvolvedores. |
| meta.source[].component | string | — | Componente por trás dos dados: a sonda de endpoints e a ronda de qualidade dos dados. |
| meta.observed_at | null | — | Timestamp. |
| meta.received_at | number | ms | Timestamp. |
| meta.fetched_at | number | ms | Quando a CoinBoss obteve os dados da fonte. |
| meta.window | string | — | Janela. |
| meta.cache_ttl_s | number | s | Tempo de vida do cache do servidor para esta resposta. |
| meta.quality | string | — | `FRESH` normalmente; `PARTIAL` quando a ronda de qualidade não foi executada nos últimos 15 minutos (somente a lista de alertas é afetada). |
| meta.is_stale | boolean | — | true quando a linha é mais antiga que a janela de atualidade; linhas desatualizadas não entram nos totais. |
| meta.fallback | string | — | Nota em texto simples sobre o que este endpoint retorna quando suas entradas estão desatualizadas ou ausentes. |
Gerada 2026-11-11 23:01 UTC a partir de 3 respostas reais.
Exemplo de resposta
/api/meta/quality · Resposta real capturada 2026-11-13 03:53:46 UTC. Arrays e mapas longos são encurtados para exibição: alerts tinha 11 itens; legend tinha 5 itens; matrix tinha 30 itens; summary tinha 5 itens; datasets tinha 12 itens; families tinha 12 itens.
- "success"true
- "schema""coinboss.meta.quality/1"
- "now"1794542026126
- "families"
- "exchanges"
- "aster"
- "backpack"
- "binance"
- "bingx"
- "bitfinex"
- "bitget"
- "bitstamp"
- "bitunix"
- "matrix"
- "aster"
- "backpack"
- "datasets"
- "summary"
- "FRESH"161
- "PARTIAL"7
- "by_family"
- "ticker"
- "oi"
- "alerts"
- "monitor"
- "patrol_last_run_at"1794541745827
- "patrol_age_s"281
- "patrol_ok"true
- "collector_heartbeat_age_s"36
- "errors"null
- "legend"
- "FRESH""newest stored data point is inside the fresh window for this family"
- "PARTIAL""some contracts / rows are outside the fresh window or miss a required field"
- "method"
- "status""judged from data timestamps in CoinBoss storage every request (30 s in-process cache); a running collector process is not treated as evidence"
- "lag_s""now − newest stored data timestamp for the exchange / family"
- "source_at""newest stored data timestamp (exchange timestamp when the exchange provides one, otherwise collector receive time)"
- "fetched_at""last successful upstream call recorded by the collector health log; null for WebSocket feeds and collectors that do not log per-call health"
- "meta"
- "schema""coinboss.meta.quality/1"
- "source"
- "observed_at"null
- "received_at"1794542026978
- "fetched_at"1794542026126
- "window""latest"
- "cache_ttl_s"20
- "quality""FRESH"
- "is_stale"false
- "fallback""matrix is always computed from storage; when the 5-minute patrol itself stops (monitor.patrol_ok=false) only the alerts list may be outdated"
Amostras verificadas
Além do exemplo acima, a sonda chama este endpoint com estes parâmetros e verifica o esquema a cada vez.
| Parâmetros | HTTP | Latência | Resultado |
|---|---|---|---|
| exchange=binance | 200 | 1 ms | Aprovado FRESH |
| family=funding | 200 | 1 ms | Aprovado FRESH |
Verificado 2026-11-13 03:29:27 UTC
Detalhes
- Autenticação
- Nenhuma. Endpoint público.
- Limite de requisições
- 1200 requisições por minuto por IP
- Cache do servidor
- 20s
- Microcache de borda
- 10s
- Frequência de atualização
- Avaliado a cada requisição a partir do timestamp de dados mais recente de cada par corretora × família.
- Fontes de dados
- Tabelas brutas da CoinBoss (timestamps da linha mais recente), log de saúde dos coletores. Um processo em execução nunca é contado como dado saudável.
- 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
Disponibilidade, últimos 30 dias
100% de 407 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ódigo | HTTP | Significado | O que fazer |
|---|---|---|---|
| INVALID_PARAM | 400 | Falta 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. |
| UNAUTHORIZED | 401 | O 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. |
| FORBIDDEN | 403 | A rota não faz parte da API pública (é interna ou exclusiva de conta). | Não tente novamente. |
| NOT_FOUND | 404 | Rota desconhecida, ou a moeda / corretora / fundo solicitado não existe. | Não tente novamente; confira o caminho e os identificadores no catálogo. |
| RATE_LIMITED | 429 | Mais 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. |
| INTERNAL | 500 | Erro 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_FAILED | 503 | A 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. |
| UNAVAILABLE | 501 / 503 | O 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_FAILED | 200 | Alguns 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
/api/meta/qualityDisponívelstring — Return only this exchange (lower-case id, for example `binance`).
string — Return only this data family (for example `oi`, `funding`, `liquidation`).
https://www.coinboss.com/api/meta/qualityMais nesta categoria
- Matriz de qualidade dos dados (visão do coletor) /api/sd/quality
- Catálogo da API /api/meta/catalog
- Registro de alterações e política de versionamento /api/meta/changelog
- Documentação do endpoint /api/meta/endpoint
- Documento OpenAPI /api/meta/openapi
- Matriz de qualidade dos dados /api/meta/quality
- Status do serviço /api/meta/status
- Verifica se o símbolo de uma moeda é conhecido pela plataforma /api/coin-exists
- Mapa de símbolo de moeda para o caminho do ícone hospedado localmente /api/coin-icons
- Resumo agregado da página da moeda /api/content/coin
- Resumo das seções de todo o site /api/content/summary
- Tabela de taxas de câmbio fiduciárias /api/currency/fx
- Mapa de ID de corretora para o caminho do ícone hospedado localmente /api/exchange-icons
- Verificação de atividade /api/health
- Estatísticas da página de pesquisa /api/research/stats