API Device Check

Última atualização: 30 de Agosto de 2024

Introdução

O Device Check é uma API que realiza a consulta dos dispositivos, fornecendo informações e insights. Através desse recurso é possível verificar a confiabilidade do dispositivo.

Fingerprint

Para que seja possível utilizar a API, é necessário que o Fingerprint esteja integrado no momento de captura dos dados. Clique aqui para obter mais informaçoes sobre as configurações do Fingerprint

Autenticação

Todas as requisições submetidas à nossa API devém ser realizadas por meio de um token. Um token é um objeto digital que contém informações sobre a identidade de quem faz a solicitação e para que tipo de acesso ele está autorizado. Ele é gerado através de um usuário e senha que devem ser fornecidos pela ClearSale. Entre em contato com o seu consultor de vendas para mais informações.

Na autenticação, além do token retornamos seu tempo de expiração. É necessário que contemple no seu desenvolvimento o gerenciamento da vida útil do token com base nesse tempo de expiração.

Para o recebimento desse dado é necessário que reserve um espaço de 2048 caracteres. Só gere um novo token após a expiração do seu token atual.

Requisição
POST https://devicecheck.clearsale.com.br/api/v1/authentication HTTP/1.1
Content-Type: application/json
{
    "username": "{Seu Usuário}",
    "password": "{Sua Senha}"
}
POST https://devicecheckhml.clearsale.com.br/api/products/v1/authentication HTTP/1.1
Content-Type: application/json
{
    "username": "{Seu Usuário}",
    "password": "{Sua Senha}"
}
Resposta
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
    "token": "{Valor do Token}"
}
HTTP/1.1 400 Bad Request
Content-Type: application/json; charset=utf-8
{
    {
        "message": "Username or Password is incorrect"
    }
}

Transação

Envio

Esse método é utilizado para gerar uma lista de insights do dispositivo informado

Transação
POST https://devicecheck.clearsale.com.br/api/v2/insights HTTP/1.1
Content-Type: application/json
Accept:application/json
Authorization:Bearer {Token}
{
    "sessionID": "ID1234567891234567891234", //obrigatório
    "externalID": "ID1234", //obrigatório
    "cpf": "12345678900", //obrigatório
    "email": "test1@test",//opcional - obrigatório caso seja incluído o campo
    "phone": { //opcional - obrigatório caso seja incluído o campo
        "countryCode": "1",
        "cityCode": "11",
        "number": "99999999"
    },
    "zipCode": "12345678", //opcional - obrigatório caso seja incluído o campo
}
Resposta

Requisição realizada com sucesso

HTTP/1.1 200 Ok
Content-Type: application/json; charset=utf-8
{
    "deviceID": "25432df56bf24f15hd928374",
    "insights": [
        "DEV0002",
        "DEV0007",
        "DEV0500",
        "GER2450",
        "GER2448",
        "GER2405",
        "GER2471",
        "GER2474"
    ],
    "alertQuantity": 0,
    "deviceAge": 24,
    "deviceRisk": "low",
    "score": 0.21142755651978073,
    "similarityResult" : {
        "deviceID": "25432df56bf24f15hd928374",
        "maximumScore": [
            0.9614484590856165
        ],
        "similarDevices": [
            "25432df56bf24f15hd928374",
            "6384118b7016ba14b42221be",
        ]
    }
}

Requisição realizada com sucesso

HTTP/1.1 200 Ok
Content-Type: application/json; charset=utf-8
{
    "deviceID": "25432df56bf24f15hd928374",
    "insights": [
        "DEV0002",
        "DEV0007",
        "DEV0500",
        "GER2450",
        "GER2448",
        "GER2405",
        "GER2471",
        "GER2474"
    ],
    "alertQuantity": 0,
    "deviceAge": 24,
    "deviceRisk": "low",
    "score": 0.21142755651978073,
    "similarityResult" : {
        "deviceID": "25432df56bf24f15hd928374",
        "maximumScore": [
            0.9614484590856165
        ],
        "similarDevices": [
            "25432df56bf24f15hd928374",
            "6384118b7016ba14b42221be",
        ]
    }
}

Requisição realizada com sucesso

HTTP/1.1 200 Ok
Content-Type: application/json; charset=utf-8
{
    "deviceID": "25432df56bf24f15hd928374",
    "insights": [
        "DEV0002",
        "DEV0007",
        "DEV0500",
        "GER2450",
        "GER2448",
        "GER2405",
        "GER2471",
        "GER2474"
    ],
    "alertQuantity": 0,
    "deviceAge": 24,
    "deviceRisk": "low",
    "score": 0.21142755651978073,
    "smartID": "25432df56bf24f15hd928374",
    "similarityResult" : {
        "deviceID": "25432df56bf24f15hd928374",
        "maximumScore": [
            0.9614484590856165
        ],
        "similarDevices": [
            "25432df56bf24f15hd928374",
            "6384118b7016ba14b42221be",
        ]
    }
}

O servidor atendeu à solicitação com êxito e não há conteúdo adicional a ser enviado na resposta

HTTP/1.1 204 No Conent

Requisição com parâmetros inválidos

HTTP/1.1 400 Bad Request
Content-Type: application/json; charset=utf-8
{
    "Title": "BadRequest",
    "Status": 400,
    "Detail": "Invalid Body Request.",
    "Instance": "/api/v2/Insights",
    "Extensions": {
        "traceId": "b4068ddd57f96acb19d7cdb25aa9sg01"
    }
}

Requisição com token expirado ou inválido

HTTP/1.1 401 Unauthorized  

Rota da requisição inválida

HTTP/1.1 404 NotFound

Erro no processamento da requisição

HTTP/1.1 500 Internal Server Error
Content-Type: application/json; charset=utf-8
{
    "Title": "Internal Server Error",
    "Status": 500,
    "Detail": "An error occurred while processing your request",
    "Instance": "/api/v2/Insights",
    "Extensions": {
        "traceId": "b4068ddd57f96acb19d7cdb25aa9fd312"
    }
}

Dicionário de variáveis


Transaction

Nome Descrição Tipo Tamanho Obrigatório
SessionID Identificador único da sessão do cliente String 24 a 64 Sim
ExternalID Identificador transacional único da aplicação do cliente String 6 a 64 Sim
CPF CPF do cliente String 11 Sim (se informado CPF)
Email Email do cliente String 10 a 256 Sim (se informado E-mail)
Phone Telefone do cliente Phone - Sim (se informado celular)
ZipCode CEP do cliente String 8 a 11 Sim (se informado o CEP)

Phone

Nome Descrição Tipo Tamanho Obrigatório
CountryCode Código do país do celular do cliente String 1 a 3 Sim (se informado celular)
CityCode Código do DDD do celular do cliente String 2 a 3 Sim (se informado celular)
Phone Número do celular do cliente String 8 a 9 Sim (se informado celular)

Resposta

Nome Descrição Tipo
DeviceID ID do dispositivo do cliente String
Insights Lista de objetos contendo os códigos de insights List<String>
AlertQuantity Quantidade de alertas detectados Int
SimilarityResult Lista de objetos contendo os dados de similaridade. Em caso de um novo identificador do dispositivo (DeviceID), a similaridade retorna se existe algum device vinculado ao CPF que possua características similar ao dispositivo. Similarity Result
DeviceAge Idade do dispositivo na base Clearsale (em horas). Int
DeviceRisk Risco associado ao dispositivo em questão. Os níveis de risco do dispositivo podem ser: baixo (low), médio (medium), alto (high). Quanto menor o risco, menor propensão a fraude. String
Score Score de risco de propensão a fraude da dupla CPF + Device. O valor do score de risco é um decimal entre 0 e 1. Quanto mais próximo de 0, menor a propensão a fraude. Double
SmartID ID inteligente do dispositivo, usado para acessar serviços online. String

Similarity Result

Nome Descrição Tipo
DeviceID Identificador do dispositivo String
MaximumScore Resultado do cálculo de similaridade com informações do score List<object>
SimilarDevices Lista de devices similares vinculados ao CPF informado List<String>

Variável Resposta

A variável resposta tem a finalidade de abastecer o ecossistema de fraudes, identificando os dispositivos envolvidos em transações fraudulentas.

Para visualizar detalhes de como utilizar, clique aqui

Lista de Insights

Requisitos de Dados

Para garantir a precisão e relevância dos Insights, é fundamental que os dados correspondentes aos módulos contratados sejam devidamente enviados. Por exemplo, ao solicitar um Insight relacionado ao histórico de telefone, é imprescindível que as informações do telefone em questão tenham sido enviadas.


Baixe o arquivo para visualizar todos os insights

XLSX

Módulos

Os módulos da Api Device Check são uma extensão da mesma, sendo possível contrata-los para se obter resultados personalizados.

Módulo Informações
Envio de Eventos Clique aqui para acessar a nossa documentação do Envio de Eventos.
FAQ

FAQ

Acesse nosso FAQ Clicando Aqui

Licença de Uso

Ao utilizar a nossa API você estará concordando com a seguinte licença.

Copyright © 2024 ClearSale

Todos os direitos são reservados, sendo concedida a permissão para usar o software da maneira como está, não sendo permitido qualquer modificação ou cópia para qualquer fim. O Software é licenciado com suas atuais configurações “tal como está” e sem garantia de qualquer espécie, nem expressa e nem implícita, incluindo mas não se limitando, garantias de comercialização, adequação para fins particulares e não violação de direitos patenteados. Em nenhuma hipótese os titulares dos Direitos Autorais podem ser responsabilizados por danos, perdas, causas de ação, quer seja por contrato ou ato ilícito, ou outra ação tortuosa advinda do uso do Software ou outras ações relacionadas com este Software sem prévia autorização escrita do detentor dos direitos autorais.