Indicador de Apostas (Bets)
INDICADOR_BETSIndicadores de comportamento de apostas (bets) do CPF — proporção de gastos com apostas sobre entradas e despesas, número de casas, tendências e score do indicador.
Endpoint
POST /api/client/provider/open-finance
Método
POSTAutenticação
Bearer JWT
Descrição
Retorna indicadores de comportamento de apostas (bets) do CPF: proporção de gastos com apostas sobre entradas e sobre despesas totais em 30/90/180 dias, número de casas de aposta distintas, flags de uso de crédito para apostar, tendência e score do indicador.
Request Body
| Campo | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
| document | string | Sim | CPF do consultado (11 dígitos, somente números). |
| product_code | array | Sim | Lista de códigos de produto a consultar. Pode combinar vários relatórios Open Finance numa única requisição. |
Exemplo
{
"document": "12345678901",
"product_code": [
"INDICADOR_BETS"
]
}
Exemplo cURL
curl -X POST \
https://positivaconnect.positivaconsultas.com.br/api/client/provider/open-finance \
-H "Authorization: Bearer {seu_token}" \
-H "Content-Type: application/json" \
-d '{
"document": "12345678901",
"product_code": ["INDICADOR_BETS"]
}'
Formato do Envelope de Resposta
{
"success": true,
"document": "12345678901",
"provider": "open-finance",
"query_date": "2026-03-18T10:00:00",
"results": {
"INDICADOR_BETS": {
"success": true,
"data": { ... }
}
}
}
Quando results.INDICADOR_BETS.success for false, indica falha de comunicação com o provider externo (timeout, erro 5xx). Erros de autorização são rejeitados antes da consulta com HTTP 403.
Campos do data
| Campo | Descrição |
|---|---|
| reportStatus | Código HTTP do status do relatório na Klavi (200 = sucesso). |
| requestId | Identificador único da requisição na Klavi. |
| productName | Código do produto consultado na Klavi (ex.: pf_klavi_income_eco). |
| productVersion | Versão do produto (ex.: V1). |
| productReportTime | Data e hora de geração do relatório (ISO 8601). |
| enquiryCpf | CPF consultado. |
| betsIndicator.labelDetails | Array de indicadores. Cada item tem labelCode, labelName e labelValue. |
| betsIndicator.labelDetails[].labelCode | F001253/F001254/F001255 (gasto-apostas ÷ entradas em 30/90/180 dias), F001256/F001257/F001258 (gasto-apostas ÷ despesa total em 30/90/180 dias), F001259 (meses com apostas em 180 dias), F001260 (média diária de transações de aposta em 30 dias), F001261 (máx. diário em 30 dias), F001262/F001263/F001264 (casas distintas em 30/90/180 dias), F001265/F001266/F001267 (flag de aposta com crédito em 30/90/180 dias — TRUE/FALSE), F001268 (Score do indicador de apostas), F001269 (tendência de alta do gasto com apostas). |
| betsIndicator.personalInfo.civilName | Nome civil do consultado. |
| betsIndicator.personalInfo.accounts | Instituições Open Finance vinculadas (bacenName, brandName, compeCode). |
Exemplo de Resposta
Conteúdo de results.INDICADOR_BETS.data
{
"reportStatus": 200,
"requestId": "904273d970114cec88297235bcf76e9e",
"productName": "pf_bets_indicator_eco",
"productVersion": "V1",
"productReportTime": "2026-08-19T17:49:25.374Z",
"enquiryCpf": "76109277673",
"betsIndicator": {
"labelDetails": [
{
"labelCode": "F001253",
"labelName": "Gambling expense-to-inflow ratio last 30 days",
"labelValue": 0
},
{
"labelCode": "F001256",
"labelName": "Gambling expense-to-total expense ratio last 30 days",
"labelValue": 0
},
{
"labelCode": "F001262",
"labelName": "Total number of distinct gambling brands last 30 days",
"labelValue": 0
},
{
"labelCode": "F001265",
"labelName": "Gambling expense with loan in flag last 30 days",
"labelValue": "FALSE"
},
{
"labelCode": "F001268",
"labelName": "Gambling indicator score",
"labelValue": 0
},
{
"labelCode": "F001269",
"labelName": "Upper trends of gambling expense",
"labelValue": 0
}
],
"personalInfo": {
"accounts": [
{
"bacenName": "Klavi OP Mock Institution",
"brandName": "Banco Brasileiro",
"compeCode": "11110"
}
],
"civilName": "Tatiana Galvão"
}
}
}
Respostas de Erro
invalid_request
Documento inválido, product_code ausente ou vazio
unauthenticated
Token JWT ausente ou inválido
product_not_authorized
Um ou mais produtos informados não estão contratados. A requisição inteira é rejeitada.
product_not_found
Um dos códigos em product_code não existe ou está inativo