Tareas de integración

Funciones: tareas de integración

Como ya sabe, la actualización a la versión 2.0 de las API tuvo un rol fundamental en empezar a utilizar las funciones personalizadas, ahora conocidas simplemente como "funciones". Esta guía lo ayudará a utilizar las tareas de integración de funciones que utilizan las nuevas API.

Introducción

Para empezar, la diferencia básica entre la versión 1.0 y 2.0 de las API de Zoho es que en la anterior se utilizan los nombres de campo y en la nueva se utilizan nombres de la API.

Para obtener los nombres de los módulos de la API:

  • Vaya a Configuración > Espacio para desarrolladores > API > API de CRM > nombres de la API.
  • En la pestaña de los nombres de la API se proporciona una lista con los nombres de la API para los módulos.

Para obtener los nombres de la API para los campos de los módulos:

  • Vaya a Configuración > Espacio para desarrolladores > API > API de CRM > nombres de la API.
  • Haga clic en el nombre de un módulo. Por ejemplo: Clientes potenciales
  • La pestaña del nombre de la API contiene los nombres de los campos de la API. Estos campos se deben utilizar en el código y NO los nombres en la pestaña de etiquetas de campo.

Obtener registros

Los registros que contienen información se pueden capturar desde varios módulos admitidos en CRM. Puede obtener los registros utilizando la tarea zoho.crm.getRecords().

Sintaxis: (utilizando las API de la versión 2.0)

<response>=zoho.crm.getRecords(<module_name>, [<page>],[<perPage>], {<optionalDataMap>}, <connections>);

ParamsDescripción
<response>La respuesta con la LISTA de los registros que coinciden con los criterios de captura.
<module_name>El nombre del módulo a partir del cual se debe capturar el registro. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
<página> (opcional)Para obtener la lista de los registros según las páginas. Es del tipo de datos NÚMERO. Predeterminado: 1.
<perPage> (opcional)Utilizado para obtener la lista de los registros disponibles en cada página. Es del tipo de datos NÚMERO. Predeterminado: 200.
<optionalDataMap>Utilizado para obtener la lista de los registros que utilizan parámetros distintos de page y per_page.
<connections>Muestra los conectores asociados con la función. El tipo de datos es CADENA.

Ejemplo de entrada:

resp = zoho.crm.getRecords("Leads",1,20,{"converted":"true"});

Nota:

  • En el ejemplo anterior, "converted" es un optionalDataMap.

Sintaxis: (utilizando las API de la versión 1.0)

<response>=zoho.crm._getRecords(<module_name>, [<from_index>],[<to_index>]);

Obtener registros por ID

Poder obtener una lista de registros es bastante bueno, pero ¿qué sucede si quiere capturar los detalles sobre un registro específico? Puede utilizar la tarea zoho.crm.getRecordById() para obtener información sobre un registro en particular.

Sintaxis: (utilizando las API de la versión 2.0)

<response>=zoho.crm.getRecordById(<module_name>, <record_ID>, <connections>);

ParamsDescripción
<response>La respuesta regresa como un MAPA.
<module_name>El nombre del módulo a partir del cual se debe capturar el registro. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
<record_ID>El ID del registro que se capturó. Es del tipo de datos NÚMERO.
<connections>Muestra los conectores asociados con la función. El tipo de datos es CADENA.

Ejemplo de entrada:

resp = zoho.crm.getRecordById("Leads", 2938383000000392001);

Sintaxis: (utilizando las API de la versión 1.0)

<response>=zoho.crm._getRecordById(<module_name>, <record_ID>);

Crear un registro

Cree funciones de tal forma que los registros se creen automáticamente en función de ciertas acciones. Por ejemplo, puede activar la función para crear un registro en tareas cuando cambie el estado de un cliente potencial. La tarea zoho.crm.create() se utiliza para crear registros.

Sintaxis: (utilizando las API de la versión 2.0)

<variable>=zoho.crm.create(<module_name>,{<dataMap>}, {<optionalDataMap>}, <connections>);

ParamsDescripción
<response>La respuesta regresa como un MAPA.
<module_name>El nombre del módulo a partir del cual se debe capturar el registro. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
<dataMap>El nombre de los campos en el módulo que se deben especificar durante la creación de un registro. Por ejemplo, {"Last_name":"Zoho CRM"}
<optionalDataMap>Representa todos los mapas de datos distintos del JSON de entrada.
<connections>Muestra los conectores asociados con la función. El tipo de datos es CADENA.

Ejemplo de entrada:

data = Map();
data.putAll({"Last_Name":"Bruce Wills", "Company":"Zillum"});
optionalMap = Map();
optionalMap.put("trigger", ["workflow","approval", "blueprint"]); // pass "trigger" as empty [] to not execute workflow
resp = zoho.crm.create("Leads", data, optionalMap);

Ejemplo de respuesta:

{"Modified_Time":"2018-03-26T14:33:01+05:30","Modified_By":{"name":"Ben","id":"2938383000000132011"},"Created_Time":"2018-03-26T14:33:01+05:30","id":"2938383000000389001","Created_By":{"name":"Ben","id":"2938383000000132011"}}

Sintaxis: (utilizando las API de la versión 1.0)

<variable>=zoho.crm._create(<module_name>,{<field_values>});

Crear registros de forma masiva

Cree funciones de tal forma que los registros se creen automáticamente en función de ciertas acciones. Por ejemplo, puede activar la función para crear varios registros, en contactos, cuentas, tareas, acuerdos, etc., cuando un cliente potencial ser transforme en contacto. La tarea zoho.crm.bulkCreate() se utiliza para crear registros.

Sintaxis: (utilizando las API de la versión 2.0)

<variable>=zoho.crm.bulkCreate(<module_name>,[record1, record2]);

ParamsDescripción
<response>La respuesta regresa como un MAPA.
<module_name>El nombre del módulo a partir del cual se debe capturar el registro. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
[record1, record2]La LISTA que contiene la información sobre los registros que se deben crear.

Ejemplo de entrada:

resp = zoho.crm.bulkCreate("Leads", [{"Last_Name":"Deborah"},{"Last_Name":"James"}], {"trigger":["workflow","blueprint","approval"]});

Actualizar un registro

A menudo, hay veces en que deberá actualizar los registros. Puede editar la información existente, agregar información, etc. de forma automática configurando la tarea zoho.crm.updateRecord(), lo que actualizará de inmediato un registro según la situación programada.

Sintaxis: (utilizando las API de la versión 2.0)

<response>=zoho.crm.updateRecord(<module_name>, <record_ID>, <dataMap>, {<optionalDataMap>}, <connections>);

ParamsDescripción
<response>La respuesta regresa como un MAPA.
<module_name>El nombre del módulo a partir del cual se debe capturar el registro. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
<record_ID>El ID del registro que se debe actualizar. Es del tipo de datos NÚMERO.
<dataMap>Clave. Pares de valor con información de registro actualizada.
<optionalDataMap>Representa todos los mapas de datos distintos del JSON de entrada.
<connections>Muestra los conectores asociados con la función. El tipo de datos es CADENA.

Ejemplo de entrada:

resp = zoho.crm.update("Leads", 2938383000000392001, {"Company":"Zillum Corp"});

Ejemplo de respuesta:

{"Modified_Time":"2018-03-26T15:17:39+05:30","Modified_By":{"name":"Ben","id":"2938383000000132011"},"Created_Time":"2018-03-26T14:39:28+05:30","id":"2938383000000392001","Created_By":{"name":"Ben","id":"2938383000000132011"}}

Sintaxis: (utilizando las API de la versión 1.0)

<response>=zoho.crm._updateRecord(<module_name>, <record_ID>, <New values as map object>);

Buscar un registro

Busque registros específicos proporcionando los criterios de la búsqueda. Se puede utilizar los registros encontrados para realizar acciones en cualquier lugar. Para buscar un registro se debe especificar el nombre del módulo y el criterio de búsqueda.

Sintaxis: (utilizando las API de la versión 2.0)

<response>=zoho.crm.searchRecords(<module_name>, <criteria>, [<page>],[<perPage>], <connections>);

ParamsDescripción
<response>La respuesta con la LISTA de los registros que coinciden con los criterios de captura.
<module_name>El nombre del módulo a partir del cual se debe capturar el registro. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
<criteria>La declaración condicional de la búsqueda. Tiene el siguiente formato: ( : ). es el nombre de la etiqueta del campo de CRM y es el valor correspondiente. puede contener lo siguiente:

 
  • equals
  • starts_with (STRING)
<página> (opcional)Para obtener la lista de los registros según las páginas. Es del tipo de datos NÚMERO. Predeterminado: 1.
<perPage> (opcional)Utilizado para obtener la lista de los registros disponibles en cada página. Es del tipo de datos NÚMERO. Predeterminado: 200.
<connections> (opcional)Muestra los conectores asociados con la función. El tipo de datos es CADENA.

Ejemplo de entrada:

resp = zoho.crm.searchRecords("Leads", "(Company:equals:Zillum)");

Nota:

  • En la versión 2.0 no se puede buscar los registros por PDC.
  • Si una columna contiene valores nulos, zoho.crm.searchRecords NO los informará en una declaración <>.
  • Se puede capturar un máximo de 200 registros a la vez.

Sintaxis: (utilizando las API de la versión 1.0)

<response>=zoho.crm._searchRecords(<module_name>, <criteria>, [<from_index>],[<to_index>]);

Obtener registros relacionados

Hay diversos componentes de CRM que se pueden utilizar para almacenar información acerca de un determinado cliente potencial o contacto. Por ejemplo, un cliente potencial puede contener una lista de notas, un par de acuerdos, llamadas asociadas, etc. Para buscar una nota relacionada con un registro particular en un módulo, puede utilizar la tarea zoho.crm.getRelatedRecords().

Sintaxis: (utilizando las API de la versión 2.0)

<response>=zoho.crm.getRelatedRecords(<relation_name>, <parent_module_name>, <record_ID>, [<page>],[<perPage>], <connections>);

ParamsDescripción
<response>La respuesta con la LISTA de los registros que coinciden con los criterios de captura.
<relation_name>El nombre del módulo (también denominado submódulo) desde donde se debe capturar el registro. Es del tipo de datos CADENA. Los módulos compatibles son: notas, cotizaciones, productos, tareas, campañas, eventos, llamadas.
<parent_module_name>El nombre del módulo al que pertenece el submódulo. Por ejemplo, "Notas" puede pertenecer a un módulo principal "Clientes potenciales". Es del tipo de datos CADENA. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
<record_ID>El ID del registro de módulo principal desde donde se debe capturar. Es del tipo de datos NÚMERO.
<página> (opcional)Para obtener la lista de los registros según las páginas. Es del tipo de datos NÚMERO. Predeterminado: 1.
<perPage> (opcional)Utilizado para obtener la lista de los registros disponibles en cada página. Es del tipo de datos NÚMERO. Predeterminado: 200.
<connections> (opcional)Muestra los conectores asociados con la función. El tipo de datos es CADENA.

Nota:

  • Se puede capturar un máximo de 200 registros a la vez.

Ejemplo de entrada:

Para capturar campañas relacionadas con un cliente potencial:

resp = zoho.crm.getRelatedRecords("Campaigns", "Leads", 2938383000000392001);

Para capturar las tareas relacionadas con un cliente potencial:

resp = zoho.crm.getRelatedRecords("Task", "Leads", 2938383000000392001);

Sintaxis: (utilizando las API de la versión 1.0)

<response>=zoho.crm._getRelatedRecords(<module_name>, <parent_module_name>, <record_ID>, [<from_index>],[<to_index>]);

Actualizar registros relacionados

Hay diversos componentes de CRM que se pueden utilizar para almacenar información acerca de un determinado cliente potencial o contacto. Puede actualizar los registros relacionados con un registro principal utilizando la tarea zoho.crm.updateRelatedRecord().

Sintaxis: (utilizando las API de la versión 2.0)

<response>=zoho.crm.updateRelatedRecords(<relation_name>, <record_ID_1>, <parent_module_name>, <record_ID_2>, {<New values as map object>});

ParamsDescripción
<response>La respuesta con la LISTA de los registros que coinciden con los criterios de captura.
<relation_name>El nombre del módulo (también denominado submódulo) desde donde se debe capturar el registro. Es del tipo de datos CADENA. Los módulos compatibles son: notas, cotizaciones, productos, tareas, campañas, eventos, llamadas, correos electrónicos.
<record_ID_1>El ID del registro que se debe actualizar. Es del tipo de datos NÚMERO.
<parent_module_name>El nombre del módulo al que pertenece el submódulo. Por ejemplo, "Notas" puede pertenecer a un módulo principal "Clientes potenciales". Es del tipo de datos CADENA. Los módulos compatibles son: clientes potenciales, acuerdos, productos, contactos, campañas, proveedores, cuentas, casos, cotizaciones, órdenes de venta, órdenes de compra, facturas y personalizado.
<record_ID_2>El ID del registro de módulo principal desde donde se debe capturar. Es del tipo de datos NÚMERO.
<Nuevos valores como objetos MAPA>Clave. Pares de valor con información de registro actualizada. P. ej., {"Last_Name": "Updated Name", "Fax": "555-858-3466"}

Ejemplo de entrada:

Para actualizar la cantidad del producto:

resp = zoho.crm._updateRelatedRecords("Products",2938383000000392001, "Leads", 2938383000000392001, {"Product_Quantity":"50"});

Sintaxis: (utilizando las API de la versión 1.0)

<response>=zoho.crm._updateRelatedRecords(<module_name>, <parent_module_name>, <record_ID>, [<from_index>],[<to_index>]);

Convertir cliente potencial

El siguiente paso después de obtener el cliente potencial son las negociaciones, durante las cuales los buenos prospectos se pueden convertir de clientes potenciales a contactos. Puede utilizar la tarea zoho.crm.convertLead() para obtener la transferencia de información del cliente potencial en forma de un registro de contacto.

Sintaxis: (utilizando las API de la versión 2.0)

<response>=zoho.crm.convertLead(<record_ID>, <overwrite>, <notify_lead_owner>, <notify_new_entity_owner>, <account_ID>);

ParamsDescripción
<response>La respuesta regresa como un MAPA.
<record_ID>El ID del registro que se capturó. Es del tipo de datos NÚMERO.
<overwrite>Se utiliza para sobrescribir los datos si el cliente potencial ya se había transformado en contacto. Su tipo de datos es BOOLEANO, por lo que debe ser true o false.
<notify_lead_owner>Se utiliza para enviar una notificación al responsable del cliente potencial después de la conversión de este. Su tipo de datos es BOOLEANO, por lo que debe ser true o false.
<notify_new_entity_owner>Se utiliza para enviar una notificación al responsable de la nueva entidad (contacto) después de la conversión. Su tipo de datos es BOOLEANO, por lo que debe ser true o false.
<account_ID> (opcional)El ID del registro que se capturó. Es del tipo de datos NÚMERO.

Ejemplo de entrada:

resp = zoho.crm.convertLead(7000000037308, { "overwrite": true, "notify_lead_owner": false, "notify_new_entity_owner": true, "Accounts": "7000000037323", "Deals": { "Deal_Name": "Robert", "Closing_Date": "2016-03-30", "Stage": "Closed Won", "Amount": 56.6 } });

Share this post : FacebookTwitter

Todavía no puede encontrar lo que está buscando?

Escríbenos: support@zohocrm.com