Há diferentes formas de se autenticar para determinadas versões das nossas rotas. Saiba como em cada uma delas
PDV
v1
Importante: Para todas as requisições, sem exceção, estes parâmetros devem ser informados.
| Em | Parâmetro | Tipo | Descrição | Exemplo |
|---|---|---|---|---|
header | Authorization | base64 | Código fornecido pela CRMBonus previamente | eHB0b2NvZGVkYXNpbHZhcnM= |
header | Celular | base64 | Celular do consumidor | MTE5NzExMTExMTE= |
header | CodEmpresa | base64 | Código fornecido pela CRMBonus previamente | bXljb2RlbWVwcmVzYWRvYw== |
/pages/api_inicioPara esta rota, além dos parâmetros acima, deve-se informar o
cod_loja(int) — também informado previamente pela CRMBonus — nobodyda requisição.
cURL exemplo — POST /pages/api_inicio
POST /pages/api_iniciocurl --request POST \
--url https://giftback-sandbox.crmbonus.com/pages/api_inicio \
--header 'Authorization: eHB0b2NvZGVkYXNpbHZhcnM=' \
--header 'Celular: MTE5NzExMTExMTE=' \
--header 'CodEmpresa: bXljb2RlbWVwcmVzYWRvYw==' \
--header 'Content-Type: application/json' \
--header 'System-Name: my-system-name' \
--header 'accept: application/json' \
--data '
{
"cod_loja": 100164,
"customer_name": "João Silva",
"customer_cel": "11985728710",
"customer_email": "[email protected]",
"customer_birth": "30-12-1990",
"customer_cpf": "40541655086",
"category_custom": "categoria_exemplo"
}{
"status": true,
"message": "sucesso",
"data": {
"loja_id": 100164,
"customer_id": 27066748,
"solicita_pin": true,
"sms": "SANDBOX: PIN 7873 - - "
}
}Referência da rota do exemplo:/pages/api_inicio .
v2
Utiliza-se OAuth2. Portanto, primeiro, deve-se requisitar uma rota com usuário e senha e utilizar o access_token retornado para as rotas subsequentes.
Gerar access_token e refresh_token
access_token e refresh_tokenEndereços para diferentes ambientes
| Ambiente | Endereço | Endpoint | Referência da rota |
|---|---|---|---|
| Produção | https://apipdv.crmbonus.com | /auth | /auth |
| Homologação | https://auth-homol.crmbonus.com | /auth | /auth |
Requisição para ambos ambientes
| Em | Parâmetro | Tipo | Descrição | Exemplo |
|---|---|---|---|---|
body | username | string | Usuário fornecido previamente pela CRMBonus | myuser |
body | password | string | Senha fornecida previamente pela CRMBonus | mypassword |
cURL exemplo — POST /auth
POST /authcurl --request POST \
--url https://auth-homol.crmbonus.com/auth \
--header 'Content-Type: application/json' \
--header 'System-Name: my-system' \
--header 'accept: application/json' \
--data '
{
"username": "myuser",
"password": "mypassword"
}
'{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6123XVCJ9.eyJzZXNzaW9uSWQiOiJjMTQ1MjIwMy0yN2FiLTQyMjUtYWMxYS1kMzMyNTU2OGZkM2YiLCJjb21wYW55Q29kZSI6ImNlbmFyaW8zIiwidXNlcklkIjoiODQxODM0ZmUtNDU1OC00NWQ4LTk5NWYtOWYxMjcwNWIxZmRkIiwiaWF0IjoxNzIzNTg0MzA0LCJleHAiOjE3MjM1ODc5MDR9.urv0IUZJcklHX8wQp1lftIP8plu1RNmCfJ8xXsEhc4Y",
"access_token_expires_in": 3600,
"refresh_token": "eyJhbGciOiJIUzI1Ni4323nR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiJjMTQ1MjIwMy0yN2FiLTQyMjUtYWMxYS1kMzMyNTU2OGZkM2YiLCJ1c2VySWQiOiI4NDE4MzRmZS00NTU4LTQ1ZDgtOTk1Zi05ZjEyNzA1YjFmZGQiLCJpYXQiOjE3MjM1ODQzMDQsImV4cCI6MTcyNDE4OTEwNH0.YMu_hQN_2IQ4OT7cq9xCYzMY3Wl3-TN5_OCjPiWFxCk",
"refresh_token_expires_in": 604800
}Utilizar access_token
access_tokenUtilize-o no header com o parâmetro authorization e informe Bearer antes do access_token.
cURL exemplo
curl --request POST \
--url https://apipdv-homol.crmbonus.com/user/verify \
--header 'Content-Type: application/json' \
--header 'System-Name: my-system' \
--header 'accept: application/json' \
--header 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6123XVCJ9.eyJzZXNzaW9uSWQiOiJjMTQ1MjIwMy0yN2FiLTQyMjUtYWMxYS1kMzMyNTU2OGZkM2YiLCJjb21wYW55Q29kZSI6ImNlbmFyaW8zIiwidXNlcklkIjoiODQxODM0ZmUtNDU1OC00NWQ4LTk5NWYtOWYxMjcwNWIxZmRkIiwiaWF0IjoxNzIzNTg0MzA0LCJleHAiOjE3MjM1ODc5MDR9.urv0IUZJcklHX8wQp1lftIP8plu1RNmCfJ8xXsEhc4Y' \
--data '
{
"cpf": "81160034109"
}--header 'Request-Hash: 94c9efbb6daaa86995263caf10cb4e17'
{
"status": true,
"message": "Success",
"data": {
"user_id": "0zXtCRB91brXqq92ud5KqQ==",
"request_pin": true
}
}Referência da rota do exemplo: /user/verify
E-commerce v1 e v2
O método de autenticação, tanto da v1 quanto v2, são semelhantes ao da PDV v1, removendo apenas o parâmetro Celular do header. Sendo assim:
| Em | Parâmetro | Tipo | Descrição | Exemplo |
|---|---|---|---|---|
header | Authorization | string | Usuário fornecido previamente pela CRMBonus | eHB0b2NvZGVkYXNpbHZhcnM= |
header | CodEmpresa | string | Senha fornecida previamente pela CRMBonus | bXljb2RlbWVwcmVzYWRvYw== |
cURL exemplo — POST /verificaSaldo (v1)
POST /verificaSaldo (v1)curl --request POST \
--url https://giftback-sandbox.crmbonus.com/apiEcommerce/verificaSaldo \
--header 'Authorization: eHB0b2NvZGVkYXNpbHZhcnM=' \
--header 'CodEmpresa: bXljb2RlbWVwcmVzYWRvYw==' \
--header 'Content-Type: application/json' \
--header 'accept: application/json' \
--data '
{
"celular": 11999998888
}
'{
"status": true,
"bonus_resgatado": 50,
"bonus_regra_max_resgate": 300,
"ids_bonus": "yOpmJwgzyyrQ0oJ/Msdasd2CsPh6/0W3hdFh6koRdQYwn+ghYmnmk8bukjiF/NY/4jj0HHRVCIKuJyJR6aZbRFw==",
"user_id": "Yhh4o37q2pGfAd213ajzRoFEPw/LkltjRbdbdPiyx1Gn9yajWQNV//nYj4mf8tHfeK/v3wa7kOU8wCOUg7EdXQ==",
"user_name": "Paulo Silva",
"html_table_bonus": "",
"total_saldo_futuro": 0,
"txt_sms": [],
"porcentagem_bonus": "30",
"bonus_resgate_inicial": "",
"texto_validade_cupom": 2,
"steps_slider": ""
}Referência da rota do exemplo: /verificaSaldo
BI
O método de autenticação dos endpoints de BI consiste em:
| Em | Parâmetro | Tipo | Descrição | Exemplo |
|---|---|---|---|---|
header | Authorization | base64 | Usuário fornecido previamente pela CRMBonus | eHB0b2NvZGVkYXNpbHZhcnM= |
header | Token | base64 | Token fornecido previamente pela CRMBonus | zJhMDk3MTc4MmUwZDc4MTI5ZmY0Y2RmZDRmY2VmNDE= |
cURL exemplo — GET /bonusGerados
GET /bonusGeradoscurl --request GET \
--url https://sandbox-api.crmbonus.com/bonusGerados \
--header 'Authorization: zJhMDk3MTc4MmUwZDc4MTI5ZmY0Y2RmZDRmY2VmNDE=' \
--header 'Token: 1JNJkJvbnVzQVBJIzIwMjA=' \
--header 'accept: application/json'
--data '
{
"w_data": "2025-11-01T00:00:00 TO 2025-11-19T00:00:00",
"page": 1
}
'{
"status": true,
"total_rtv": 0,
"porcentagem": 100,
"total_gerado": 500,
"total_dinheiro": "30.730,82",
"total_venda": "30.730,82",
"total_consumidor_ativo": 390,
"total_prime_sms": 0,
"total_prime_assinatura": 0,
"count_sms_venda_prime": 0,
"count_assinaturas_prime": 0,
"list": [
{
"cliente": {
"cliente_id": 2462510,
"cliente": "Paulo Ricardo",
"celular": "55 (11) 99981-3222",
"cpf": "98584522245",
"email": "[email protected]",
"birth": "1996-07-09",
"genero": "M"
},
"bonus_id": 234976873,
"origin": null,
"loja_id": 1289,
"tipo_loja": "Própria",
"loja_nome": "LOJA TESTE",
"loja_cod_linx": "34asdva2181da5ee2850f5c6ef2e9792",
"cod_loja_interno": "11499",
"cnpj": "03.570.154/0001-28",
"is_multi_resgate": 1,
"lojas_multi_resgate": [],
"data": "06/05/2024",
"validade_inicio": "2024-05-08 00:00:00",
"validade_fim": "2024-06-07 23:59:59",
"total": "48.47",
"total_bonus_usado": "35.99",
"data_utilizacao_bonus": "2024-05-16",
"id_loja_utilizacao": 1389,
"nome_loja_utilizacao": "LOJA XPTO",
"cnpj_loja_utilizacao": "01.570.124/0001-32",
"nome_vendedor": "LARISSA BARBOSA",
"nf": "",
"ticket": "00286712",
"terminal": "",
"total_bonus_gerado": "48.47",
"total_bonus_resgatado": "48.47",
"pin": "4899",
"is_pin_master": "Sim",
"is_reativacao": "Nao",
"date_reativacao": "",
"data_compra": "2024-05-06 10:11:46",
"campanha_id": 2542,
"campanha_nome": "Campanha",
"campanha_tipo": "fidelidade",
"porcentagem_acumulo": 12,
"ids_bonus_used": "206310085",
"valor_compra": 439.93,
"valor_pago": 403.91
}
],
"paging": {
"total": 2534,
"pages": 6,
"currentPage": 1,
"per_page": 500
}
}