API e IntegraciónOdnos

Odnos API: Crear cliente nuevo

Odnos nos permite crear automatizaciones para la alimentación de datos desde cualquier canal gracias a su servicio API Rest, para este post hablaremos sobre la creación de clientes vía API.

URL de Endpoint

Para consumir este servicio haremos un envío por método POST a la siguiente URL:

https://api.odnos.app/v1/customers/do/add

Autorización

El servicio API requiere de una autenticación de tipo API Key el cual se debe especificar en el encabezado de la solicitud.

KeyAPI
Value<ODNOS-API-KEY>
Agregar aEncabezado

Ejemplo cURL de autenticación en encabezado:

--header 'API: <ODNOS-API-KEY>'

Parámetros a enviar (Body request)

A continuación te listaremos los parámetros que permite la API que se agregan al objeto Customer (cliente), estos parámetros se definen en dos tipos:

  • Datos básicos de objeto: son los datos que todos los objetos clientes deben tener.
  • Metadatos de objeto: son los datos personalizados para cada cuenta de Odnos.

Parámetros del objeto

Todos los objetos clientes cuentan con estos datos y los puedes enviar de la siguiente forma:

CampoRequerido / OpcionalDescripción
nameRequeridoNombre completo del cliente.
emailRequeridoCorreo electrónico.
phoneRequeridoTeléfono (a 10 dígitos)
companyOpcionalNombre de la empresa donde trabaja.
idUserOpcionalID del usuario asignado al cual se le asignará el cliente, si no se envía se asignará automáticamente al usuario establecido en la configuración de la cuenta.
branchOpcionalID de la sucursal asignada para el cliente, si no se envía se asignará a la matriz de forma automática.
idProductOpcionalID de producto de interés del usuario.
nicknameOpcionalNombre de usuario del cliente (se usa solo si hay utilidad o funcionalidad en algún servicio enlazado).
jobTitleOpcionalTítulo o puesto de trabajo.
bdayOpcionalFecha de nacimiento, debe ser en formato YYYY-MM-DD (ej. 1992-09-20)
genderOpcionalGénero. Datos aceptados: male, female.
dealOpcionalMonto del cliente (monto de préstamo, monto de contrato, monto de compra, etc.)
sourceOpcionalNombre de la fuente de origen (ej. google, web_principal).
mediumOpcionalNombre del medio de origen (ej. anuncio_busqueda)
campaignOpcionalCampaña o nombre de la campaña de origen (ej. campana_busqueda)
termOpcionalTérmino con el cual se realizó la búsqueda o apareció el anuncio (ej. desarrollo_software)
contentOpcionalContenido por el cual se generó la conversión.
elementOpcionalElemento por el cual se realizó la conversión (ej. form, chatbot, form_registro, etc.)
gclidOpcionalClick ID de campaña de Google.
fbclidOpcionalClick ID de campaña de Facebook.
msclkidOpcionalClick ID de campaña de Bing o red de Microsoft.
sourcelurlOpcionalURL por la cual se realizó la conversión (ej. https://anubbe.com/crms)
referralurlOpcionalURL referencia a la cual se llegó a la página de conversión (ej. si viene de Google la referencia debe ser https://www.google.com).
browserNameOpcionalNombre del navegador del usuario.
browserVersionOpcionalVersión del navegador del usuario.
browserPlatformOpcionalSistema operativo del usuario.
browserDeviceOpcionalTipo de dispositivo del usuario (tablet, teléfono, escritorio, etc.)
countryOpcionalCódigo de país del usuario a dos caracteres (ej. MX). Si se envía se usará como código de país para el teléfono recibido.

Metadatos de objeto

La personalización del objeto de cliente es una realidad en Odnos, tú puedes escoger la información personalizada que necesites saber de cada cliente y también puedes envíar esa información a través de la API, para hacerlo solo debes enviar lo en el cuerpo de la solicitud como variable y su valor, ejemplo:

mi_variable_personalizada=valor_que_tendra_mi_variable

Para consultar el nombre de la variable deberás entrar en tu cuenta de Odnos e ir a la ruta Configuración > Clientes > Metadatos en donde encontrarás los metadatos existentes para los clientes y su nombre de variable.

Ejemplos de consumo de API

cURL

curl --location --request POST 'https://api.odnos.app/v1/customer/do/add' \
--header 'API: <ODNOS-API-KEY>' \
--form 'name="Fernando Vazquez"' \
--form 'phone="5555555555"' \
--form 'email="nombre@anubbe.com"'
--form 'mi_variable="valor_perosnalizado"'

PHP cURL

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.odnos.app/v1/customer/do/add',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => array('name' => 'Fernando Vazquez','phone' => '5555555555','email' => 'hola@anubbe.com', 'mi_variable' => 'valor_personalizado'),
  CURLOPT_HTTPHEADER => array(
    'API: <ODNOS-API-KEY>'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

NodeJS Request

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://api.odnos.app/v1/customer/do/add',
  'headers': {
    'API': '<ODNOS-API-KEY>'
  },
  formData: {
    'name': 'Fernando Vazquez',
    'phone': '5555555555',
    'email': 'hola@anubbe.com',
    'mi_variable': 'valor_personalizado'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

Respuestas posibles

Existen tres tipos de respuestas que el servicio API Rest te dará:

TipoRespuesta JSONDescripción
Aprobada / Creado{
“status”: true,
“msg”: “Cliente creado”,
“idCustomer”: “ID de cliente creado
}
El cliente fue creado correctamente en Odnos.
Aprobada / Actualizado{
“status”: true,
“msg”: “Cliente actualizado”,
“idCustomer”: “ID de cliente actualizado
}
Si el cliente ya existía previamente en la cuenta de Odnos, este se actualizará sin reemplazar los valores existentes, en caso de datos de contacto como correo electrónico y teléfono se agregarán estos datos, para los demás datos se agregará un resumen en el historial del cliente.
Rechazada{
“status”: false,
“msg”: “Mensaje de error
}
En caso de error el estatus a regresar será false y en el mensaje se indicará el problema.
Publicaciones relacionadas
API e Integración

Crear cliente desde Zapier vía API