Voltar para Finance 360 API

Indicador de Apostas (Bets)

INDICADOR_BETS

Indicadores 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

POST

Autenticaçã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

Content-Type: application/json
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

200 OK
{
  "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

200 OK
{
    "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

400

invalid_request

Documento inválido, product_code ausente ou vazio

401

unauthenticated

Token JWT ausente ou inválido

403

product_not_authorized

Um ou mais produtos informados não estão contratados. A requisição inteira é rejeitada.

404

product_not_found

Um dos códigos em product_code não existe ou está inativo