Referencia de API
Documentación detallada de API y ejemplos en varios idiomas.
Consultar la documentaciónEn este espacio, encuentra todo lo que necesites para realizar fácilmente tu proyecto para integrar las funcionalidades de ZEROSIX en tu aplicación, sitio o software. ¿Qué puedes encontrar aquí?: ejemplos de código, guías de integración y documentación detallada.
Documentación detallada de API y ejemplos en varios idiomas.
Consultar la documentaciónLa API Rest de ZEROSIX te permitirá integrar fácilmente nuestras funcionalidades en tus propios sistemas, ya sean software tpv, software comercial, un sitio de comercio electrónico o una aplicación móvil.
Las funcionalidades expuestas en la API son funcionalidades operativas. La configuración del servicio como tal se realiza a través del tablero de mando o mediante el coach de fidelidad de ZEROSIX.
La autenticación de tus llamadas se realizará de una manera bastante estándar mediante el uso de una clave API. Si ya eres cliente de ZEROSIX, encontrarás tu clave API disponible en tu panel de control; de lo contrario, contáctanos para crear una cuenta de prueba.
Repasemos juntos las pocas llamadas básicas para crear una tarjeta de fidelización y registrar un pasaje.
Curl --request POST \
--url "https://api.zerosix.com/contacts/"
--header 'Authorization: Token YOUR-API-KEY'
\
--header 'Content-Type: application/json'
\
--data '{
"mobile"
: 0700000003
,
"first_name"
: John
,
"last_name"
: Doe
,
"create_card"
: true
}'
Response \
{
"url"
: "https://api.zerosix.com/cards/{{card_id}}/"
,
"mobile"
: "MOBILE"
,
"first_name"
: "John"
,
"last_name"
: "Doe"
,
"birth_date"
: null
,
"gender"
: null
,
"address1"
: null
,
"address2"
: null
,
"zipcode"
: null
,
"city"
: null
,
"country"
: "France"
,
"email"
: null
,
"opt_out"
: false
,
"allow_email"
: false
,
"allow_pdf"
: false
,
"card"
: {
"url": "https://api.zerosix.com/cards/{{card_id}}/"
,
"reference": "{{card_id}}"
,
"points_balance": 0
},
"available_vouchers"
: [],
"dashboard_url"
: "DASHBOARD_URL"
,
"custom_fields"
: []
}
import
requests
payload = "{
"mobile": "0700000003",
"first_name": "John",
"last_name": "Doe",
"create_card": "true"
}"
,
headers = {
'Authorization'
: Token YOUR-API-KEY
,
'Content-Type'
: application/json
}
response = requests.request
("POST"
url, data=payload, headers=headers)
print
(reponse.text)
Response \
{
"url"
: "https://api.zerosix.com/cards/{{card_id}}/"
,
"mobile"
: "MOBILE"
,
"first_name"
: "John"
,
"last_name"
: "Doe"
,
"birth_date"
: null
,
"gender"
: null
,
"address1"
: null
,
"address2"
: null
,
"zipcode"
: null
,
"city"
: null
,
"country"
: "France"
,
"email"
: null
,
"opt_out"
: false
,
"allow_email"
: false
,
"allow_pdf"
: false
,
"card"
: {
"url": "https://api.zerosix.com/cards/{{card_id}}/"
,
"reference": "{{card_id}}"
,
"points_balance": 0
},
"available_vouchers"
: [],
"dashboard_url"
: "DASHBOARD_URL"
,
"custom_fields"
: []
}
<?php
$curl = curl_init
();
curl_setopt_array
($curl, array
(
CURLOPT_URL =>"https://api.zerosix.com/contacts/"
,
CURLOPT_RETURNTRANSFER =>true
,
CURLOPT_ENCODING =>""
,
CURLOPT_MAXREDIRS =>10
,
CURLOPT_TIMEOUT =>30
,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST =>"POST"
,
CURLOPT_POSTFIELDS =>"{
"mobile": "0700000003",
"first_name": "John",
"last_name": "Doe",
"create_card": "true"
}"
,
CURLOPT_HTTPHEADER =>array
(
"Authorization: Token YOUR-API-KEY"
,
"Content-Type: application/json"
),
));
$response = curl_exec
($curl);
$err = curl_error
($curl);
if
($err) {
echo "cURL Error #:"
. $err;
}else
{
echo $response;
}
Response \
{
"url"
: "https://api.zerosix.com/cards/{{card_id}}/"
,
"mobile"
: "MOBILE"
,
"first_name"
: "John"
,
"last_name"
: "Doe"
,
"birth_date"
: null
,
"gender"
: null
,
"address1"
: null
,
"address2"
: null
,
"zipcode"
: null
,
"city"
: null
,
"country"
: "France"
,
"email"
: null
,
"opt_out"
: false
,
"allow_email"
: false
,
"allow_pdf"
: false
,
"card"
: {
"url": "https://api.zerosix.com/cards/{{card_id}}/"
,
"reference": "{{card_id}}"
,
"points_balance": 0
},
"available_vouchers"
: [],
"dashboard_url"
: "DASHBOARD_URL"
,
"custom_fields"
: []
}
Curl --request POST \
--url "https://api.zerosix.com/visits/"
--header 'Authorization: Token YOUR-API-KEY'
\
--header 'Content-Type: application/json'
\
--data '{
"card"
: "http://api.zerosix.com/cards/{{card_id}}/"
,
"price"
: "23.50"
}'
Response \
{
"url"
: "https://api.zerosix.com/visits/{{visit_id}}/"
,
"card"
: {
"url"
: "https://api.zerosix.com/cards/{{card_id}}/"
,
"reference"
: "{{card_id}}"
,
"points_balance"
: 93
,
"points_balance"
: null
},
"date"
: "2017-10-07T08:34:58Z"
,
"price"
: "23.50"
,
"details"
: null
,
"comment"
: null
,
"used_vouchers"
: [],
"cashback_withdraw_value"
: null
,
"message"
: "Merci pour votre fidélité. Nouveau solde : 93"
}
import
requests
"url"
: "https://api.zerosix.com/visits/"
payload = "{
"card"
: "http://api.zerosix.com/cards/{{card_id}}"
,
"price"
: "23.50"
}"
,
headers = {
'Authorization'
: Token YOUR-API-KEY
,
'Content-Type'
: application/json
}
response = requests.request
("POST"
url, data=payload, headers=headers)
print
(reponse.text)
Response \
{
"url"
: "https://api.zerosix.com/visits/{{visit_id}}/"
,
"card"
: {
"url"
: "https://api.zerosix.com/cards/{{card_id}}/"
,
"reference"
: "{{card_id}}"
,
"points_balance"
: 93
,
"points_balance"
: null
},
"date"
: "2017-10-07T08:34:58Z"
,
"price"
: "23.50"
,
"details"
: null
,
"comment"
: null
,
"used_vouchers"
: [],
"cashback_withdraw_value"
: null
,
"message"
: "Merci pour votre fidélité. Nouveau solde : 93"
}
<?php
$curl = curl_init
();
curl_setopt_array
($curl, array
(
CURLOPT_URL =>"https://api.zerosix.com/visits/"
,
CURLOPT_RETURNTRANSFER =>true
,
CURLOPT_ENCODING =>""
,
CURLOPT_MAXREDIRS =>10
,
CURLOPT_TIMEOUT =>30
,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST =>"POST"
,
CURLOPT_POSTFIELDS =>"{
"card": "http://api.zerosix.com/cards/{{card_id}}",
"price": "23.50",
}"
,
CURLOPT_HTTPHEADER =>array
(
"Authorization": "Token YOUR-API-KEY"
"Content-Type: application/json"
),
));
$response = curl_exec
($curl);
$err = curl_error
($curl);
curl_close
($curl);
if
($err) {
echo "cURL Error #:"
. $err;
}else
{
echo $response;
}
Response \
{
"url"
: "https://api.zerosix.com/visits/{{visit_id}}/"
,
"card"
: {
"url"
: "https://api.zerosix.com/cards/{{card_id}}/"
,
"reference"
: "{{card_id}}"
,
"points_balance"
: 93
,
"points_balance"
: null
},
"date"
: "2017-10-07T08:34:58Z"
,
"price"
: "23.50"
,
"details"
: null
,
"comment"
: null
,
"used_vouchers"
: [],
"cashback_withdraw_value"
: null
,
"message"
: "Merci pour votre fidélité. Nouveau solde : 93"
}
Si no conoces a Postman, prepárate para conocerlo. Usamos Postman no solo como una herramienta de desarrollo diaria, sino también como una solución de documentación interactiva. Es una ventaja significativa el poder ofrecerte la descarga de una colección de todos nuestros endpoints descargables en tu máquina con un solo clic..
Solo tendrás que ingresar tu propia clave API en una variable del entorno y podrás comenzar a jugar en vivo con todos nuestros endpoints.
Crea una cuenta de Postman si es necesario e instala la aplicación de escritorio : https://www.getpostman.com/
Haz clic en el botón "abrir en Postman" arriba.
En Postman, a la izquierda, en el menú Collections aparece la Collection API de ZEROSIX..
En la parte superior derecha, busca Administrar entorno. Crear un entorno con las dos claves url y token como en la captura de pantalla. Reemplaza YOUR-API-KEY con tu clave personal.
Contact
El contacto es el titular de la tarjeta. La información personal se adjunta a este objeto.
Card
La tarjeta está vinculada a un contacto. Es en la tarjeta donde se almacenará toda la información relacionada con el programa y la actividad del usuario (visitas, puntos, vouchers utilizados, etc.).
Visit
Una visita representa el hecho de que un titular de la tarjeta vino a la tienda (o realizó una compra en línea). Tiene una marca de tiempo y contiene toda la información relacionada con esta interacción (el valor gastado, cualquier detalle de lo gastado, si se utilizó o no un vale, etc.).
Voucher
Un voucher es un código de promoción, una recompensa, un bono de reducción ... diferentes palabras para definir una ventaja a la que tiene derecho un beneficiario cuando es el titular.
Store
Este objeto contiene información sobre el establecimiento o establecimientos afectados por el programa de fidelización.
OTP
Se utiliza para realizar una solicitud de envío de OTP y verificar una entrada de OTP. Esto es particularmente útil para sitios o aplicaciones de comercio electrónico que requieren que se verifique la identidad del titular de la tarjeta antes de adjuntar una tarjeta a la cuenta de un usuario.