Valida dados cadastrais de números de telefones Claro, confirmando se o número está ativo e se realmente é referente ao CPF consultado.
A nossa API é “restful”, ou seja, o nosso protocolo de comunicação foi criado de uma forma que pode interpretar qualquer linguagem de programação. Isso torna o processo de integração do lado dos nossos clientes e parceiros mais flexível e de fácil entendimento. Na página de documentação deixamos alguns exemplos de linguagem, caso seja necessário.
A utilização de validação cadastral associada a outras medidas protetivas, garantem resultados mais seguros e sustentáveis no ambiente de negócios. Dessa forma é possível, minimizar o risco de práticas de fraudes e de entradas de informações incorretas e não qualificadas nas empresas.
- Agilidade: cruzamento rápido de número de telefone e cadastro na base Claro;
- Retorno Simples: consulta em tempo real utilizando como imput o CPF e número de telefone e retorna se o número é da Claro e se está ativo;
- Atualização online: garante que o retorno do número consultado será sempre o mais novo;
- Base qualificada: Pré, Pós e Controle de milhões de brasileiros de todo o país e de todos os tipos de perfis.
Versão: 1;2019-08-15
Criada por: Hub Data Analytics
Data: 15/08/2019
Modificações
- [Claro API Monetization MVP] Initia
Esta operação retorna um número inteiro que expressa a probabilidade de que os endereços do cliente Claro sejam confiáveis para uso, bem como detalha os riscos potenciais associados às partes do endereço fornecido.
200 - A solicitação foi bem sucedida.
400 - A solicitação não pôde ser entendida pelo servidor devido à sintaxe incorreta. O cliente NÃO DEVE repetir o pedido sem modificações.
401 - A solicitação requer autenticação do usuário.
403 - O servidor entendeu a solicitação, mas está se recusando a atendê-la.
404 - O servidor não encontrou nada que corresponda ao Request-URI.
500 - O servidor falhou ao atender uma solicitação aparentemente válida.
Caso ainda restem dúvidas, baixe o PDF que contém o tutorial de consumo da API, que explica passo a passo como utiliza-la.
!/bin/bash
url_validationsphones=https://api.claro.com.br/customers/v1/validationsphones
url_token=https://api.claro.com.br/oauth2/v1/token
networkMsisdn="XXXXXXXXXXXXX"
cpf="XXXXXXXXXXX"
key=XXXXXXXXXXXXXXXXXXXXXXXXXX
secret=XXXXXXXXXXX
senha=$( echo -n $key:$secret | base64)
curl -X POST $url_token -H 'Content-Type: application/x-www-form-urlencoded' -H 'cache-control: no-cache' -d 'grant_type=client_credentials' -H "x-client-auth: Basic $senha" > json
grep 'access_token' json > atributoJson
token=$(cut -d'"' -f4 atributoJson )
curl -X POST $url_validationsphones -H 'Content-Type: application/json' -H 'cache-control: no-cache' -H "x-client-auth: Bearer $token" -H "X-CustomerID: claro_exemplo" -d '{"data": {"customer":{"networkMsisdn": "'$networkMsisdn'", "cpf":"'$cpf'" }}}'
$key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$secret = 'XXXXXXXXXXXX';
$networkMsisdn = 'XXXXXXXXXXXXX';
$cpf = 'XXXXXXXXXXX';
$token = getAccessToken();
$validationsphones = getValidationspPhones($token , $networkMsisdn, $cpf);
echo $validationsphones;
function getAccessToken() {
try{
$senha = base64_encode($GLOBALS['key'] . ':' . $GLOBALS['secret']);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.claro.com.br/oauth2/v1/token");
curl_setopt( $ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/x-www-form-urlencoded',
'x-client-auth: Basic ' . $senha
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'grant_type=client_credentials');
$response = curl_exec($ch);
if (!$response){
$error = curl_error($ch);
$info = curl_getinfo($ch);
die("cURL request failed, error = {$error}; info = " . print_r($info, true));
}
if(curl_errno($ch)){
curl_close($ch);
echo 'error:' . curl_error($ch);
} else {
curl_close($ch);
return json_decode($response)->access_token;
}
} catch (Exception $e) {
return 'Erro '. $e;
}
}
function getValidationspPhones($token , $networkMsisdn, $cpf){
try {
$payload = '{"data":{"customer":{"networkMsisdn":' . $networkMsisdn . ', "cpf":'.$cpf.'}}}';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.claro.com.br/customers/v1/validationsphones");
curl_setopt( $ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-CustomerID: claro_exemplo',
'x-client-auth: Bearer ' . $token
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
$response = curl_exec($ch);
if (!$response){
$error = curl_error($ch);
$info = curl_getinfo($ch);
die("cURL request failed, error = {$error}; info = " . print_r($info, true));
}
if(curl_errno($ch)){
curl_close($ch);
echo 'error:' . curl_error($ch);
} else {
curl_close($ch);
return $response;
}
} catch (Exception $e) {
return 'Erro '. $e;
}
}
import requests, json
import base64
KEY="XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
SECRET="XXXXXXXXXXXX"
SENHA = base64.b64encode( (KEY + ':' + SECRET ).encode('ascii') ).decode('ascii')
GRANT_TYPE = "client_credentials";
URL = "https://api.claro.com.br";
END_POINT_ACCESS_TOKEN = "/oauth2/v1/token";
END_POINT_API_VALIDATIONSPHONES = "/customers/v1/validationsphones";
headers={'Content-Type':'application/x-www-form-urlencoded','cache-control':'no-cache','x-client-auth': 'Basic {}'.format(SENHA)}
data = {'grant_type': 'client_credentials'}
respToken = requests.post(URL + END_POINT_ACCESS_TOKEN , headers=headers , data= data)
if respToken.status_code != 200:
print('Erro:' + str( respToken.status_code))
else:
token = json.loads( respToken.text)['access_token']
headers_app = {'Content-Type': 'application/json',
'X-CustomerID': 'claro_exemplo',
'cache-control':'no-cache',
'user-agent':'curl/7.60.0',
'x-client-auth': 'Bearer {}'.format(token)}
networkMsisdn = "XXXXXXXXXXXXX"
cpf = "XXXXXXXXXX"
data_app = {"data":{"customer":{"networkMsisdn": networkMsisdn ,"cpf":cpf}}}
resp = requests.post( URL + END_POINT_API_VALIDATIONSPHONES, headers=headers_app , data= json.dumps(data_app))
if resp.status_code != 200:
print('Erro: ' + str(resp.status_code))
else:
print('Válida ' + str( resp.text ))
Plano Trial
Para você comecar a desenvolver já!
- 1000 requisições free
- Período de 3 meses
- Relatório de consumo