Nueva creación de recetas¶
Introducción¶
Una receta de Citizen Integrator es una modelo de integración reutilizable que proporciona una guía paso a paso a través de Citizen Integrator, disponible a través del Portal de Harmony Jitterbit. Citizen Integrator las recetas pueden ser utilizadas por los miembros de una Organización Harmony para que puedan configurar un Design Studio integración para un caso de uso específico.
Este documento cubre la creación manual de recetas de Citizen Integrator. Las recetas también se pueden crear usando la interfaz de Citizen Integrator. Ver Citizen Integrator - Generar o Editar Receta para detalles.
Una receta de Citizen Integrator consta de dos partes:
- un Design Studio Jitterpak (sufijo de archivo
.jpk
o.JPK
); y - un archivo JSON de metadatos de receta de Citizen Integrator (sufijo de archivo
.json
o.JSON
) que proporciona los pasos a el usuario pasa para configurar la integración.
Aquí hay un resumen de los pasos necesarios para crear una receta que luego puede estar disponible a través de Citizen Interfaz web del integrador:
Paso 1: Crea un Jitterpak
Crea un Jitterpak (JPK) usando Design Studio de Harmony Jitterbit. El Jitterpak será utilizado como base para la receta. Vea Crear Jitterpaks para recetas.
Paso 2: Crea los metadatos de la receta
Cree un archivo de metadatos de receta (un archivo JSON). Los metadatos de receta incluyen los pasos que los usuarios completan a través de la interfaz web y asocia la información proporcionada por el usuario con el Jitterpak. Ver Creando metadatos de recetas para las mejores prácticas, un tutorial de muestra, una descripción de tipos de pasos de receta y documentación de los componentes de un archivo de metadatos de receta.
Paso 3: Validar los metadatos de la receta
Valide el archivo de metadatos de su receta con el jbcli
. Ver Validar una receta del Interfaz de línea de comando Jitterbit.
Paso 4: Cargue el Jitterpak y los metadatos de la receta
Cargue su Jitterpak y el archivo de metadatos de receta en su repositorio de receta. Ver Cargar una nueva receta y Jitterpak del Interfaz de línea de comando Jitterbit. También puede cargar recetas a través de la interfaz web de Citizen Integrator como se describe en la Citizen Integrator - Tablero o Citizen Integrator - Mis recetas páginas.
Paso 5: Configure e desplegar la receta
Su nueva receta ya está disponible para que la usen los miembros de su organización a través de la web de Citizen Integrator interfaz. Ver Citizen Integrator - Configurar receta para obtener instrucciones para el usuario sobre cómo configurar e desplegar recetas.
Creación de Jitterpaks para recetas¶
Al crear una nueva receta de Citizen Integrator, recomendamos comenzar creando primero un Design Studio Jitterpak que contiene la estructura del proyecto para su modelo de receta.
Jitterpaks no son específicos para la funcionalidad de receta; son una función central de la aplicación completa de Design Studio. Se espera que los usuarios que deseen crear nuevas recetas ya estén familiarizados con Design Studio. Para más información, consulte los materiales en Design Studio y Jitterpaks.
Nota
Las recetas de Citizen Integrator se crean a partir de Design Studio proyectos. Para Integration Studio, en su lugar utilice Recetas de Integración del Integration Studio o Modelos de Proceso del Integration Studio, disponible en Jitterbit Marketplace.
Prácticas Recomendadas de Jitterpak¶
Al crear un Jitterpak para usar con recetas de Citizen Integrator, recomendamos estas mejores prácticas para receta creación:
-
Defina su(s) caso(s) de uso típico
Antes de comenzar con cualquier Jitterpak o receta, debe tener una buena idea de lo que quiere que sus usuarios puedan hacer lograr usando la receta. Tenga en cuenta que puede crear varias recetas si es necesario. El caso de uso será ayudarlo a decidir qué incorporar en su Jitterpak y los pasos que desea que complete un usuario a través de Citizen Interfaz de integrador.
-
Ejemplos de referencia para obtener ayuda para comenzar
Consulte nuestros Jitterpaks públicos como referencia, o si encuentra uno similar a su caso de uso, incluso puede quiero empezar con eso. Para descargar cualquiera de los Jitterpaks creados para nuestras recetas públicas, siga Obtenga una receta específica y guarde el Jitterpak localmente en Interfaz de línea de comandos Jitterbit. O, haga referencia a nuestro Biblioteca Jitterpak.
-
Crear variables de proyecto siempre que sea posible
Las variables del proyecto son clave para crear recetas que un usuario pueda completar fácilmente a través de Citizen Interfaz web del integrador. Piense en las variables del proyecto como campos con información específica que desea que los usuarios para proporcionar al usar su receta. Luego cree esos elementos como variables de proyecto en su Jitterpak. Por ejemplo, información de conexión para nuevos extremos.
-
Variables de proyecto de espacio de nombres para referencia posterior
Cuando crea variables de proyecto, es una buena práctica ponerles un espacio de nombres. Por ejemplo, una variable de proyecto para alojar podría llamarse “db. alojar” para indicar que se refiere a un alojar de base de datos. Esto facilitará la lectura del variables de proyecto al crear los metadatos de su receta.
-
Coloque las operaciones en el nivel raíz si desea ejecutarlas a través de un paso de receta
Cualquier operación que desee ejecutar a través de un paso RunOperation en su receta debe colocarse en el nivel raíz de la carpeta de operaciones dentro de Design Studio. Es decir, si tiene operaciones dentro de subcarpetas bajo su árbol de operaciones, estos no se ejecutarán cuando se expongan a través de un paso RunOperation. Esta advertencia es solo para operaciones. ejecutándose en un paso específico de la receta. Si sus operaciones se encuentran dentro de subcarpetas, estas seguirán ejecutándose cuando guardar y desplegar la receta.
-
Incluya WriteToOperationLog en las operaciones que desea ejecutar a través de un paso de receta
Incluya WriteToOperationLog en las operaciones que desea ejecutar a través de un paso RunOperation en su receta (consulte Funciones de registro y error). El Los mensajes WriteToOperationLog se mostrarán en el panel debajo del botón RunOperation en Citizen Interfaz del integrador y proporciona retroalimentación al usuario de la receta sobre la operación ejecutada.
-
Utilice los valores de las variables del proyecto para probar, pero luego elimine los valores al exportar como un Jitterpak
Siempre que utilice variables de proyecto en su Jitterpak, asegúrese de no incluir valores específicos cuando exporte el Jitterpak. Recuerde, los valores suelen estar en blanco para que el usuario pueda completarlos al configurar la receta. Siempre es una buena idea probar su proyecto de Design Studio con valores específicos, pero asegúrese de elimínelos antes de exportar. Aquí hay un par de opciones para eliminar valores:
-
Todos los valores: Para eliminar todos los valores de las variables del proyecto, cuando exporte como un Jitterpak, desmarque la casilla “Incluir valores de variables del proyecto”. Esta es la forma estándar y recomendada de eliminar la variable del proyecto valores.
-
Algunos valores: Para eliminar solo variables específicas del proyecto, simplemente elimine el valor predeterminado en el proyecto variable. Esta opción puede ser más apropiada que usar la casilla de verificación descrita anteriormente si desea mantener intencionalmente algunos valores de las variables del proyecto. Por ejemplo, si su receta es privada dentro de su , podría incluir información como una URL que no cambiará por cada usuario que complete el receta.
-
-
Toma nota de los horarios incorporados
Si incluye un cronograma dentro del Jitterpak, tome nota de cuándo está programada la ejecución de la operación y haga asegúrese de documentar esto en los metadatos de la receta. De lo contrario, los usuarios no estarán al tanto del cronograma que se construye en el Jitterpak. Actualmente, los programas no están disponibles para configurarse dentro de una receta.
Creación de metadatos de recetas¶
Puede comenzar a crear metadatos de receta de Citizen Integrator mientras crea su Jitterpak, o crea los metadatos cuando termines. Los metadatos de la receta proporcionan dos funciones principales:
- Define los pasos que los usuarios deberán seguir para configurar la receta a través de la interfaz de Citizen Integrator.
- Conecta todos los valores proporcionados por el usuario al Jitterpak que acompaña a la receta para que el recién configurado las operación se ejecutan como se esperaba a través de Jitterbit.
Esta sección está organizada para proporcionar una lista de mejores prácticas para crear recetas, un tutorial de muestra para crear una receta, los tipos de pasos disponibles para usar en la receta y, finalmente, una lista completa de todos posibles partes del archivo de metadatos de la receta.
Mejores prácticas de metadatos¶
Al crear su archivo de metadatos de receta de Citizen Integrator, estas son las mejores prácticas que son útiles para aquellos que son nuevos en creando recetas.
-
Ejemplos de referencia para comparar la interfaz de Citizen Integrator con los metadatos de receta
Mira cómo están estructuradas nuestras recetas públicas, comparando lo que ves en el Citizen Integrator interfaz con el archivo de metadatos de receta real para esa receta. Si encuentra uno que es similar a su caso de uso, es posible que incluso desee comenzar con él.
-
Interfaz de Citizen Integrator: Acceda a la interfaz de Citizen Integrator usando el Portal de Harmony Jitterbit. Ver Citizen Integrator - Tablero para más detalles.
-
Metadatos de recetas: Descargue los metadatos de receta para cualquiera de nuestras recetas públicas siguiendo Obtenga una receta específica y guarde el Jitterpak localmente de la Interfaz de línea de comandos Jitterbit.
-
-
Construye tu receta en iteraciones
Espere tener que hacer ajustes en su Jitterpak mientras trabaja en los metadatos de su receta, y viceversa. Puede Cargue siempre una primera versión, verifique cómo se muestra y funciona en la interfaz de Citizen Integrator y luego continúe actualizando sus archivos de receta desde el Citizen Integrator - Mis recetas página, o siguiendo Cargar una nueva receta y Jitterpak y Actualizar una receta existente y Jitterpak de la Interfaz de línea de comandos de Jitterbit.
-
Incluya los pasos de Introducción y Revisión en los metadatos de la receta
Se recomienda comenzar con un paso de Introducción y terminar con un paso de Revisión para mantener la consistencia de las recetas. Ambas secciones usan el
org.jitterbit.integration.data.entity.Description
tipo (descrito en Tipos de pasos).-
La Introducción debe usarse para explicar para qué se usa la receta, describir cualquier limitación, enumerar campos estándar, y/o proporcionar información de prerrequisito que alguien que utilice la receta debería conocer.
-
El paso Revisar debe resumir y confirmar para el usuario el comportamiento esperado cuando la receta configurada es desplegado. Si incluye un cronograma dentro del Jitterpak, el paso Revisar es un buen lugar para documentar el hora programada para ejecutar la operación. Recuerde especificar la zona horaria (UTC es el valor predeterminado dentro de Design Studio, pero también puede convertir la hora a su zona horaria deseada dentro de Design Studio y especificar eso).
-
-
Estandarice los nombres dentro de los metadatos de su receta
Estandarice el nombre de su receta, el nombre del proyecto, los nombres de los archivos y la estructura del directorio. Esto ayuda a prevenir errores al referirse a partes dentro de la receta y facilita el manejo de todas las partes de su receta.
-
Para la migración de extremo a extremo, ordene los extremos direccionalmente
Para migraciones de un extremo a otro (p. ej., migrar cuentas de Salesforce a NetSuite Companies), solicite el extremos direccionalmente:
- En archivo JSON:
"name": "Migrate Salesforce Accounts to NetSuite Companies"
- En archivo JSON:
"projectName": "salesforce_accounts-to-netsuite_companies"
- Directorio:
salesforce-to-netsuite/accounts-to-companies/
- Nombres de archivo:
salesforce_accounts-to-netsuite_companies.jpk
ysalesforce_accounts-to-netsuite_companies.json
- En archivo JSON:
-
Para la sincronización de extremo, ordene los extremos alfabéticamente
Para sincronizaciones de dos extremos (p. ej., sincronización de cuentas de Salesforce y empresas de NetSuite ), solicite el extremos en orden alfabético:
- En archivo JSON:
"name": "Synchronize NetSuite Companies and Salesforce Accounts"
- En archivo JSON:
"projectName": "netsuite_companies-salesforce_accounts"
- Directorio:
netsuite-salesforce/companies-accounts/
- Nombres de archivo:
netsuite_companies-salesforce_accounts.jpk
ynetsuite_companies-salesforce_accounts.json
- En archivo JSON:
-
Definir las variables del proyecto al final de los metadatos de la receta
Cualquier variable de proyecto utilizada en su Jitterpak y a la que se haga referencia en los pasos de metadatos de su receta debe ser definido al final del archivo de metadatos de su receta.
-
Ocultar los pasos que desea incrustar en otros pasos
Puede especificar un atributo oculto en un paso para que no se desgarre en la interfaz de Citizen Integrator , pero luego haga referencia a ese paso usando una ruta que apunta a una acción con “useStepAsRequest”. Esta es una buena idea si, por ejemplo, configura un paso para probar la información de conexión, pero desea incluirlo como una conexión de prueba dentro de otro paso.
-
Omita los campos que se generarán al cargar los metadatos de la receta
Algunos campos en el archivo de metadatos de la receta no se especifican al cargar el archivo y, en cambio, los genera el sistema cuando se carga el archivo. Estos campos se encuentran al principio y al final del archivo de metadatos de la receta.
- id: Este campo se completa cuando los metadatos de la receta se cargan en el depósito de receta. Después de cargar, puede averiguar el ID de receta generado utilizando Lista de todas las recetas del Interfaz de línea de comando Jitterbit.
- guid: Obligatorio Este campo se completa cuando se carga un Jitterpak asociado a la receta repositorio. El GUID (identificador único global) se completa con el del Jitterpak asociado. Sin embargo, este campo es obligatorio, por lo que aún debe incluirlo en el archivo. El identificador real será actualizado al cargar.
- createdAt: La marca de tiempo de la época de Unix en milisegundos de cuando se cargó la receta por primera vez.
- actualizado en: La marca de tiempo de la época de Unix en milisegundos de cuando se actualizó la receta por última vez.
-
actualizado por
- userId: El nombre de usuario de Harmony de la persona que actualizó la receta por última vez.
- nombre: El nombre de la última persona que actualizó la receta.
- orgName: El nombre de la organización a la que pertenece la última persona que actualizó la receta.
-
orgid: El ID de la organización a la que pertenece la persona que subió la receta. la receta es es propiedad de esta organización y solo el autor de la receta o un administrador de la organización pueden actualizar o eliminar la receta (ver Citizen Integrator - Mis recetas o la Interfaz de línea de comandos Jitterbit).
-
autor
- userId: El nombre de usuario de Harmony de la persona que cargó la receta.
- nombre: El nombre de la persona que subió la receta.
- orgName: El nombre de la organización a la que pertenece la persona que subió la receta.
Después de cargar una receta, puede ver los valores generados para estos campos cuando usa Obtener una receta específica regresar los metadatos de la receta (consulte la Interfaz de línea de comandos de Jitterbit).
-
Usar HTML para texto enriquecido
Si desea usar enlaces, listas, negrita, etc. dentro de los pasos de su receta, intente usar HTML. La mayoría de los campos en los que podría desea usar estos permiten el uso de HTML, lo que le otorga más control sobre el aspecto y la funcionalidad de la receta pasos.
-
Validar antes de cargar
Siempre es una buena idea asegurarse de que los metadatos de su receta se validen antes de cargarlos. Hazlo usando Validar una receta (ver el Interfaz de línea de comando Jitterbit). No deberías subir recetas que sí No validar, ya que tendrán errores para los usuarios que intenten configurar la receta.
-
Consulte los registros para solucionar problemas
Después de cargar su receta, también puede probarla configurándola e implementándola a través de Citizen Interfaz de integrador. No olvide que todas las mismas herramientas para la depuración están disponibles al igual que para cualquier otro proyecto Jitterbit. Ver Citizen Integrator - Mis recetas o consulte registros de operación, proyectos, actividades, etc. dentro del Management Console.
Tutorial de muestra¶
Esta sección proporciona un tutorial para crear una receta para usar con la interfaz web de Citizen Integrator. Este ejemplo utiliza algunos de los elementos más comunes de las recetas que normalmente podría encontrar. Para obtener una lista completa de opciones que puede incluir dentro de las recetas, consulte Definiciones de metadatos de recetas.
Para este ejemplo, crearemos una receta que sincronice las cuentas de Salesforce y las inserte en Zendesk. Puede siga esta demostración descargando la receta más reciente para Salesforce en Zendesk siguiendo Obtener una receta específica y Guardar el Jitterpak localmente del Interfaz de línea de comandos Jitterbit.
Paso 1: Crear proyecto en Design Studio
El primer paso es configurar su proyecto en Design Studio. Al crear su proyecto, consulte el Prácticas recomendadas de Jitterpak anteriores que son específicos para crear Jitterpaks para usar con recetas.
Estos componentes del Jitterpak se utilizan para la receta de Salesforce to Zendesk:
-
Operaciones: Este Jitterpak está configurado para que, al ejecutar la operación RunNow, Jitterbit consultar Salesforce para obtener información sobre los casos (Query Cases) y luego usar esos casos de Salesforce para actualizar y insertar tickets en Zendesk (Crear tickets de Zendesk ). Si ha descargado el Jitterpak para seguir, puede hacer clic en cada elemento del gráfico para obtener más información sobre los componentes de las operaciones.
-
Transformaciones: Cada transformación se ha mapeado para que los campos estándar apropiados se incluyan en la receta. Muchas recetas implicarán la asignación de campos estándar de un extremo a otro. En este ejemplo, el La consultar de Salesforce utiliza solo los campos apropiados para esta receta específica (es decir, Número de caso, Origen, Asunto, Correo proporcionado, Nombre proporcionado). Si está creando su propia receta para usarla en una organización que usa Campos personalizados de Salesforce, también puede optar por integrarlos en su receta, siempre que la asignación sea definido aquí.
-
Orígenes y destinos: Defina cualquier origen y destino como lo haría normalmente para cualquier proyecto de Design Studio. Este una receta en particular usa almacenamiento temporal para cuentas de Salesforce y casos de Salesforce, y destinos HTTP como parámetros de conexión para Zendesk.
-
Métodos de servicio web y extremos HTTP alojados: Este Jitterpak no utiliza ninguno de estos componentes, pero usted puede configurarlos como lo haría con cualquier otro proyecto de Design Studio.
-
Horarios: Este Jitterpak no incluye horario, pero puedes incluir uno aquí si por ejemplo quieres la operación para ejecutar diariamente. Dado que el horario no es configurable por el usuario de la receta, debe hacer Asegúrese de anotar dentro de un campo de texto de la receta cuándo está programada la ejecución de su operación. Un lugar típico para agregar este es el paso de revisión.
-
Mensajes de correo: Este Jitterpak no incluye ningún mensaje de correo, pero puede elegir configurarlos usando variables del proyecto si desea que su receta genere notificaciones correo.
-
Secuencias de comandos: En este Jitterpak, los secuencias de comandos se utilizan para escribir mensajes en el registro, incluido el éxito específico y mensajes de error.
-
Variables del proyecto: las variables del proyecto son clave para crear recetas configurables. Por lo general, las variables del proyecto se utilizan siempre que desee que los usuarios proporcionen valores durante la configuración de receta. En este Jitterpak, tenemos variables de proyecto para credenciales de Salesforce y Zendesk. Recuerda probar tu proyecto de Design Studio con valores, luego elimínelos antes de exportar el Jitterpak.
-
Jitterbit Connect: Dado que este Jitterpak usa Salesforce, las credenciales de conexión para la organización son incluidos en esta sección.
-
Conectores: Este Jitterpak no usa ningún conector, pero muchas otras recetas públicas sí. Si quieres cree una nueva receta usando un conector, puede ser una buena idea descargar un ejemplo diferente usando uno de los conectores como Autodesk.
Paso 2: Probar el proyecto de Design Studio
Después de definir sus componentes, guarde, desplegar y ejecute su proyecto de Design Studio para asegurarse de que se ejecuta exitosamente.
Puede consultar el registro de operación para ver si hay mensajes de error.
Paso 3: Exporte el proyecto de Design Studio
Elimine cualquier valor de variable del proyecto u otra información de credenciales que incorporará a su receta, y exporte su proyecto de Design Studio como un Jitterpak.
En este ejemplo, eliminamos las variables del proyecto y las credenciales en la etapa de exportación. Puede guardar en cualquier ubicación que deseo por ahora, ya que subirás el Jitterpak más tarde (ver Citizen Integrator - Mis recetas o el Interfaz de línea de comandos Jitterbit.
Paso 4: Crear metadatos de recetas
Ahora que ha creado un Jitterpak, puede adaptar los metadatos de su receta para que coincidan con los componentes en tu Jitterpak.
Consulte las Prácticas recomendadas de metadatos arriba para crear su archivo de metadatos de receta como así como los Tipos de pasos al comenzar una nueva receta. Para obtener una lista completa de definiciones de receta, consulte Definiciones de metadatos de recetas a continuación como referencia.
El archivo JSON completo utilizado para definir los metadatos de receta de Salesforce to Zendesk se proporciona a continuación, seguido de un desglose de cada sección del archivo de metadatos de receta.
Metadatos JSON: Salesforce a Zendesk
{
"description": "Sync accounts from Salesforce and upsert to Zendesk",
"name": "Salesforce to Zendesk",
"guid": "8yg7df8a-b526-4d14-a49d-39090d63a426",
"projectName": "Salesforce to Zendesk",
"steps": [
{
"name": "Introduction",
"description": "Sync accounts from Salesforce and upsert them to Zendesk",
"label": "Introduction",
"type": "org.jitterbit.integration.data.entity.Description",
"hidden": false,
"properties": [
{
"name": "template",
"defaultValue": "<div><p>This <b>Recipe</b> Syncs accounts from Salesforce and upserts them to Zendesk.</p></div>"
}
]
},
{
"name": "Salesforce Endpoint Project Variables",
"description": "Set-up the source Salesforce endpoint project variables",
"type": "org.jitterbit.integration.data.entity.ProjectVariable",
"hidden": false,
"properties": [],
"projectVariables": {
"names": [
"com.salesforce.username",
"com.salesforce.password",
"com.salesforce.token"
],
"action": {
"name": "test-endpoint-connection",
"displayName": "Test Connection",
"useStepAsRequest": "/Source/SalesforceEndpoint"
}
}
},
{
"name": "Test Salesforce Connection Information",
"description": "Test Salesforce endpoint connection information",
"label": "Source Endpoint (Salesforce)",
"type": "org.jitterbit.integration.data.entity.SalesforceConnector",
"hidden": true,
"path": "/Source/SalesforceEndpoint",
"properties": [
{
"name": "version",
"defaultValue": "37.0"
},
{
"name": "host",
"defaultValue": "https://login.salesforce.com"
},
{
"name": "username",
"defaultValue": "[com.salesforce.username]"
},
{
"name": "password",
"hidden": false,
"defaultValue": "[com.salesforce.password]"
},
{
"name": "token",
"hidden": false,
"defaultValue": "[com.salesforce.token]"
},
{
"name": "sandbox",
"defaultValue": "0"
}
]
},
{
"name": "Zendesk Endpoint Project Variables",
"description": "Set-up the target Zendesk endpoint project variables",
"type": "org.jitterbit.integration.data.entity.ProjectVariable",
"hidden": false,
"properties": [],
"projectVariables": {
"names": [
"com.zendesk.username",
"com.zendesk.password"
]
}
},
{
"name": "RunNow",
"description": "The Run Now operation runs the integration right now.",
"label": "RunNow",
"type": "org.jitterbit.integration.data.entity.RunOperation",
"hidden": false,
"path": "/Operations/RunNow",
"properties": [
{
"name": "operationName",
"defaultValue": "RunNow",
"description": "Run the recipe to get Salesforce accounts and upsert them to NetSuite right now."
}
]
},
{
"name": "Review",
"description": "Push this recipe to the cloud",
"label": "Review",
"type": "org.jitterbit.integration.data.entity.Description",
"hidden": false,
"properties": [
{
"name": "template",
"defaultValue": "<div><p>When you click <b>Save</b> this recipe will be ran daily at 3am indefinitely</p></div>"
}
]
}
],
"projectVariables": [
{
"name": "com.salesforce.username",
"displayName": "Salesforce Login",
"description": "Please provide your Salesforce username or email."
},
{
"name": "com.salesforce.password",
"displayName": "Salesforce Password",
"description": "Please provide your Salesforce password.",
"type": "password"
},
{
"name": "com.salesforce.token",
"displayName": "Salesforce Security Token",
"description": "Please provide your Salesforce security token.",
"type": "password"
},
{
"name": "com.zendesk.username",
"displayName": "Zendesk Login",
"description": "Please provide your Zendesk email."
},
{
"name": "com.zendesk.password",
"displayName": "Zendesk Password",
"description": "Please provide your Zendesk password.",
"type": "password"
}
],
}
-
descripción: Obligatorio
Este campo debe contener una descripción de la receta.
"description": "Sync accounts from Salesforce and upsert to Zendesk"
-
guid: Requerido
Este campo puede contener cualquier valor cuando la receta se carga por primera vez; al cargar con un Jitterpak asociado, el valor se reemplazará con el GUID (identificador único global) del Jitterpak asociado.
"guid": "8yg7df8a-b526-4d14-a49d-39090d63a426"
-
nombre: Requerido
Este campo debe contener el nombre de la receta.
Se muestra como el título de la receta en la Lista de recetas:"name": "Salesforce to Zendesk"
Se muestra como el título de la receta en Pasos de configuración:
-
nombre del proyecto: Obligatorio
Este campo debe coincidir con el nombre del archivo Jitterpak (JPK).
"projectName": "Salesforce to Zendesk"
-
pasos: Obligatorio
Los pasos definen los Pasos de configuración en la interfaz de Citizen Integrator. Los atributos de paso utilizados en la receta de Salesforce to Zendesk se proporcionan a continuación, seguidos de una comparación de Citizen Integrator interfaz y los metadatos JSON para el paso.
- nombre: Obligatorio Este campo es el nombre del paso.
- descripción: Obligatorio Este campo es una descripción del paso.
- etiqueta: Este campo es una etiqueta que se puede usar para representar un nombre de paso que es diferente del definido nombre del paso.
- tipo: Obligatorio Este campo es el tipo asociado a este paso. Consulte Tipos de pasos para una explicación de los distintos tipos de pasos.
- obligatorio: Este valor se puede establecer como verdadero o falso. Si es verdadero, se requerirá que se complete el paso de la receta. cuando la receta se configura antes de que se puedan realizar las acciones Probar conexión o Ejecutar operación. ser utilizado.
- oculto: Este valor se puede establecer como verdadero o falso. Si es verdadero, el paso se ocultará en Citizen Integrator interfaz. Esto puede ser útil si tiene pasos que no desea mostrar, como para probar la conexión información. Si es falso, se mostrará el paso. El valor predeterminado es falso, lo que significa que los pasos se muestran de forma predeterminada.
- ruta: Úselo si está ocultando pasos y desea hacer referencia a ellos en otros pasos. Este valor debe ser definido si planea incrustar un paso oculto en otro paso. Por ejemplo, si desea incluir una Prueba Botón de conexión dentro de un paso, puede ocultar el paso para probar la información de conexión y luego consultarlo en otro paso. La forma en que nos referimos a ella es definiendo un camino.
- propiedades: Solo se puede usar si no se usan projectVariables. Estos incluyen propiedades asociadas a la paso. En un paso, puede tener propiedades o projectVariables asignadas, pero no ambas al mismo tiempo.
- nombre: Obligatorio Este campo es el nombre de la propiedad que se define para este paso.
- defaultValue: Este campo puede contener un valor predeterminado asociado a la propiedad. Típicamente esto es utilizado para insertar texto instructivo o informativo en un paso.
- descripción: Este campo puede contener texto predeterminado que aparecerá dentro del cuadro de texto.
- projectVariables: Solo se puede usar si no se usan propiedades. Estos incluyen una lista de variables del proyecto. agrupados que representan entidades configurables. En un paso, puede tener projectVariables o propiedades asignadas, pero no ambas al mismo tiempo.
- nombres: Obligatorio Este campo contiene una lista de todas las variables del proyecto que se utilizan en este paso.
- acción: Este campo define cualquier acción. Por lo general, estos se utilizan como botones dentro de un paso para realizar acciones que pueden definirse como pasos ocultos.
- nombre: Obligatorio Este campo es el nombre de la acción.
- displayName: Este campo se puede usar si desea que se muestre un nombre diferente en el Ciudadano Interfaz de integrador.
- useStepAsRequest: Required Este campo se usa para proporcionar la ruta a las propiedades definidas en otro paso que no se procesa. Use el mismo valor que definió para “ruta” en el paso oculto.
Paso 1: Introducción
Metadatos JSON para el paso 1
{ "name": "Introduction", "description": "Sync accounts from Salesforce and upsert them to Zendesk", "label": "Introduction", "type": "org.jitterbit.integration.data.entity.Description", "hidden": false, "properties": [ { "name": "template", "defaultValue": "<div><p>This <b>Recipe</b> Syncs accounts from Salesforce and upserts them to Zendesk.</p></div>" } ] },
Paso 2: Variables del proyecto de Extremo de Salesforce
Metadatos JSON para el paso 2
{ "name": "Salesforce Endpoint Project Variables", "description": "Set-up the source Salesforce endpoint project variables", "type": "org.jitterbit.integration.data.entity.ProjectVariable", "hidden": false, "properties": [], "projectVariables": { "names": [ "com.salesforce.username", "com.salesforce.password", "com.salesforce.token" ], "action": { "name": "test-endpoint-connection", "displayName": "Test Connection", "useStepAsRequest": "/Source/SalesforceEndpoint" } } },
Paso oculto: probar la información de conexión de Salesforce
Metadatos JSON para el paso oculto
{ "name": "Test Salesforce Connection Information", "description": "Test Salesforce endpoint connection information", "label": "Source Endpoint (Salesforce)", "type": "org.jitterbit.integration.data.entity.SalesforceConnector", "hidden": true, "path": "/Source/SalesforceEndpoint", "properties": [ { "name": "version", "defaultValue": "37.0" }, { "name": "host", "defaultValue": "https://login.salesforce.com" }, { "name": "username", "defaultValue": "[com.salesforce.username]" }, { "name": "password", "hidden": false, "defaultValue": "[com.salesforce.password]" }, { "name": "token", "hidden": false, "defaultValue": "[com.salesforce.token]" }, { "name": "sandbox", "defaultValue": "0" } ] },
Paso 3: Variables del proyecto de Extremo de Zendesk
Metadatos JSON para el paso 3
{ "name": "Zendesk Endpoint Project Variables", "description": "Set-up the target Zendesk endpoint project variables", "type": "org.jitterbit.integration.data.entity.ProjectVariable", "hidden": false, "properties": [], "projectVariables": { "names": [ "com.zendesk.username", "com.zendesk.password" ] } },
Paso 4: Runnow
Metadatos JSON para el paso 4
{ "name": "RunNow", "description": "The Run Now operation runs the integration right now.", "label": "RunNow", "type": "org.jitterbit.integration.data.entity.RunOperation", "hidden": false, "path": "/Operations/RunNow", "properties": [ { "name": "operationName", "defaultValue": "RunNow", "description": "Run the recipe to get Salesforce accounts and upsert them to NetSuite right now." } ] },
Paso 5: Revisar
Metadatos JSON para el paso 5
{ "name": "Review", "description": "Push this recipe to the cloud", "label": "Review", "type": "org.jitterbit.integration.data.entity.Description", "hidden": false, "properties": [ { "name": "template", "defaultValue": "<div><p>When you click <b>Save</b> this recipe will be ran daily at 3am indefinitely</p></div>" } ] }
-
projectVariables: Esta sección define cualquier variable de proyecto utilizada en los pasos de la receta. Tenga en cuenta que este es un nuevo sección del archivo de metadatos de la receta que se encuentra al final después de los pasos y no debe confundirse con el projectVariables utilizadas dentro de los propios pasos.
- nombre: Obligatorio Este campo contiene el nombre de la variable del proyecto tal como se usa en su Jitterpak.
- displayName: Este campo se puede usar si desea que se muestre un nombre diferente en Citizen Integrator interfaz.
- descripción: Este campo se puede usar para insertar texto debajo del campo, por ejemplo, para proporcionar instrucciones sobre lo que deben ingresar los usuarios.
- tipo: Este campo se puede utilizar para definir el tipo de valor que el usuario puede proporcionar. El valor predeterminado es cadena. También puede usar entero, flotante, doble, fecha, hora, booleano, contraseña, enumeración, menú desplegable, casillas de verificación o área de texto.
- obligatorio: Este valor se puede establecer como verdadero o falso. Si es verdadero, el campo de la variable del proyecto deberá completarse cuando la receta esté configurada antes de la conexión de prueba o la operación de ejecución se pueden usar acciones.
- regex: Este campo se puede usar para proporcionar una expresión regular (cadena) que el el valor de la variable del proyecto debe coincidir cuando la receta se configura antes de la conexión de prueba o la operación de ejecución se pueden usar acciones. Por ejemplo:
.+@.+[.].+
. - valor: Este campo se puede usar si desea asignar un valor predeterminado a su proyecto variable. Esto se puede usar para proporcionar un valor predeterminado con otros valores opcionales para la variable del proyecto. Un En el Ejemplo 2 a continuación se proporciona un ejemplo adicional de metadatos JSON que utilizan valores y opciones.
- opciones: Este campo se puede usar para presentar valores posibles en un menú desplegable, texto o casillas de verificación. En el Ejemplo 2 se proporciona un ejemplo adicional de metadatos JSON que utilizan valores y opciones. a continuación.
Ejemplo 1 de metadatos JSON
"projectVariables": [ { "name": "com.salesforce.username", "displayName": "Salesforce Login", "description": "Please provide your Salesforce username or email." }, { "name": "com.salesforce.password", "displayName": "Salesforce Password", "description": "Please provide your Salesforce password.", "type": "password" }, { "name": "com.salesforce.token", "displayName": "Salesforce Security Token", "description": "Please provide your Salesforce security token.", "type": "password" }, { "name": "com.zendesk.username", "displayName": "Zendesk Login", "description": "Please provide your Zendesk email." }, { "name": "com.zendesk.password", "displayName": "Zendesk Password", "description": "Please provide your Zendesk password.", "type": "password" } ]
Ejemplo 2 de metadatos JSON
"projectVariables": [ { "name": "myDropdown", "displayName": "Dropdown Test", "value": "ProdOperation", "type": "dropdown", "description": "A field to test the dropdown feature", "options": [ { "name": "Development", "value": "DevOperation" }, { "name": "Production", "value": "ProdOperation" } ] }, { "name": "myCheckboxes", "displayName": "Checkbox Test", "value": "ProdOperation", "type": "checkboxes", "description": "A field to test the checkbox feature", "options": [ { "name": "Development", "value": "DevOperation" }, { "name": "Production", "value": "ProdOperation" } ] }, { "name": "myTextarea", "displayName": "Comments", "type": "textarea", "value": "This is a comment for the textarea", "description": "SAP Language" } ]
Tipos de pasos¶
Cada paso dentro de los metadatos de receta de Citizen Integrator tiene un atributo de “tipo” que indica el tipo de paso. Estos pasos corresponden directamente con esos usuarios verán usando la interfaz de Citizen Integrator, y los tipos de esos pasos corresponden directamente con Design Studio.
Estos son los posibles tipos de pasos disponibles. A continuación se proporciona información adicional sobre cada tipo de paso. secciones.
org.jitterbit.integration.data.entity.Description
org.jitterbit.integration.data.entity.ProjectVariable
org.jitterbit.integration.data.entity.RunOperation
org.jitterbit.integration.data.entity.SalesforceConnector
org.jitterbit.integration.data.entity.GenericProperties
org.jitterbit.integration.data.entity.Schedule
org.jitterbit.integration.data.entity.ApiBinding
org.jitterbit.integration.data.entity.HttpForm
org.jitterbit.integration.data.entity.TemporaryStorage
org.jitterbit.integration.data.entity.FileShare
org.jitterbit.integration.data.connector.FTPEndpoint
org.jitterbit.integration.data.connector.DBEndpoint
org.jitterbit.integration.data.connector.AutoDeskEndpoint
org.jitterbit.integration.data.connector.NetSuiteEndpoint
org.jitterbit.integration.data.connector.SapEndpoint
org.jitterbit.integration.data.connector.JMSEndpoint
org.jitterbit.integration.data.connector.MSAXEndpoint
org.jitterbit.integration.data.connector.Four51Endpoint
org.jitterbit.integration.data.connector.ClarizenEndpoint
org.jitterbit.integration.data.connector.QuickBooksEndpoint
Descripción¶
org.jitterbit.integration.data.entity.Description
Este tipo de paso debe usarse cuando es necesario proporcionar información detallada sobre una receta o un paso, o puede ser utilizado como una revisión al final de la receta.
-
Por ejemplo:
{ "name": "Introduction", "description": "Insert accounts into a postgres database", "label": "Introduction", "type": "org.jitterbit.integration.data.entity.Description", "properties": [ { "name": "template", "defaultValue": "<div>...</div>" }
-
Si este paso es el último paso dentro de una receta (definido como un paso de revisión) y contiene “submitOperationsToRun” , luego el botón Guardar y finalizar aplicará esta lógica con respecto a las operaciones que deben enviarse para correr. Tenga en cuenta que si estas opciones no están configuradas, el botón Guardar y finalizar no enviará las operaciones para que se ejecuten.
-
No se enviarán operaciones para ejecución si:
{ "name": "submitOperationsToRun", "value": "" }
-
Solo se enviarán para ejecución las operaciones especificadas si:
{ "name": "submitOperationsToRun", "value": "Operation1;Operation2" }
-
Todas las operaciones se someterán a ejecución si la propiedad no está presente:
{ "name": "submitOperationsToRun", "value": "*" }
-
ProyectoVariable¶
org.jitterbit.integration.data.entity.ProjectVariable
Este tipo de paso se utiliza para agrupar un conjunto de variables de proyecto. También se puede utilizar para redefinir un extremo. definición. Se le puede adjuntar una “acción” opcional.
-
Por ejemplo:
{ "name": "Ftp Endpoint", "description": "Set-up the Source FTP Endpoint project variables", "type": "org.jitterbit.integration.data.entity.ProjectVariable", "projectVariables": { "names": [ "acme.org.ftp.host", "acme.org.ftp.username", "acme.org.ftp.password", "acme.org.ftp.path", "acme.org.ftp.filename" ], "action": { "name": "test-endpoint-connection", "displayName": "Test Connection", "useStepAsRequest": "/Source/FtpSite" } } }
-
Se admiten estas “acciones”:
- “test-endpoint-connection”: Se utiliza para probar una conexión de extremo. Debe usarse junto con un extremo.
- “submit-http-form”: Debe usarse junto con un formulario HTTP (ver más abajo).
EjecutarOperación¶
org.jitterbit.integration.data.entity.RunOperation
Este tipo de paso se utiliza para ejecutar una operación a fin de permitir que el usuario pruebe.
-
Por ejemplo:
{ "name": "Run Now", "description": "Run Now operation - fetch the csv file, parse and insert into database", "label": "Run Now", "type": "org.jitterbit.integration.data.entity.RunOperation", "path": "/Operation/SyncAccounts", "properties": [ { "name": "operationName", "defaultValue": "SyncAccounts", "description": "Synchronize Accounts" } ] }
ApiBinding¶
org.jitterbit.integration.data.entity.ApiBinding
Este tipo de paso se utiliza cuando existe la necesidad de externalizar operaciones como APIs.
-
“assignTo”: Esto le permite almacenar el URI en una variable de proyecto que se puede usar dentro del Jitterpak. Para ejemplo:
{ "name": "Review the WebHooks associated to this recipe", "description": "The following Web API will be registered as webhooks to your system", "type": "org.jitterbit.integration.data.entity.ApiBinding", "bindings": { "apis": [ { "apiName": "FetchAccounts", "publicName": "citizen-fetchaccounts", "version": "v1", "sslOnly": "True", "timeout": "30", "enableCORS": "False", "assignTo": "acme.com.myservice.fetchaccounts.uri", "methods": [ { "method": "GET", "operationName": "RunNow", "responseType": "FINAL_TARGET" // possible - values "NO_RESPONSE", "FINAL_TARGET", "VARIABLE" } ] } ], "action": { "name": "import-api-packs", "displayName": "Bind API(s)", "useStepAsRequest": "" } } }
HttpForm¶
org.jitterbit.integration.data.entity.HttpForm
Este tipo de paso se utiliza cuando es necesario interactuar con un Extremo HTTP. Las variables del proyecto se pueden utilizar como entradas. para solicitud/encabezados.
-
Por ejemplo:
{ "name": "ConstantContact Endpoint Project Variables", "description": "Set up the target Constant Contact endpoint project variable. Enter one of com.constantcontact.listid or com.constantcontact.listname.", "type": "org.jitterbit.integration.data.entity.ProjectVariable", "projectVariables": { "names": [ "com.constantcontact.apikey", "com.constantcontact.accesstoken", "com.constantcontact.listid", "com.constantcontact.listname" ], "action": { "name": "submit-http-form", "displayName": "Test Connection", "useStepAsRequest": "/Target/ConstantContactEndpoint" } } }, ... { "name": "Test ConstantContact Connection Information", "description": "Test ConstantContact endpoint connection information", "label": "Target Endpoint (ConstantContact)", "type": "org.jitterbit.integration.data.entity.HttpForm", "hidden": true, "path": "/Target/ConstantContactEndpoint", "properties": [ { "name": "verb", "defaultValue": "GET" }, { "name": "url", "defaultValue": "https://api.constantcontact.com/v2/lists?api_key=[com.constantcontact.apikey]" }, { "name": "headers", "defaultValue": "Authorization: Bearer [com.constantcontact.accesstoken]" }, { "name": "httpRequest", "defaultValue": "" }, { "name": "httpResponse", "defaultValue": "" } ] }
Conector¶
org.jitterbit.integration.data.connector.*
Estos se utilizan para los extremos respectivos enumerados:
org.jitterbit.integration.data.connector.FTPEndpoint
org.jitterbit.integration.data.connector.DBEndpoint
org.jitterbit.integration.data.connector.AutoDeskEndpoint
org.jitterbit.integration.data.connector.NetSuiteEndpoint
org.jitterbit.integration.data.connector.SapEndpoint
org.jitterbit.integration.data.connector.JMSEndpoint
org.jitterbit.integration.data.connector.MSAXEndpoint
org.jitterbit.integration.data.connector.Four51Endpoint
org.jitterbit.integration.data.connector.ClarizenEndpoint
org.jitterbit.integration.data.connector.QuickBooksEndpoint
Definiciones de Metadatos de Recetas¶
Estas subsecciones cubren las definiciones completas de metadatos para recetas si están definidas dentro de Jitterbit. Estas secciones describir todas las partes posibles del archivo de metadatos JSON. Todos los campos obligatorios se enumeran al final de cada sección.
- Receta
- Paso
- Acción
- API
- Método API
- Propiedad
- Detalles de despliegue de Jitterpak
- Operación
- Desplegar respuesta
- Integración de recetas
- Etiqueta
- Autor
- Ambiente
- Agente
- Grupo de Agentes
- Respuesta de inicio de sesión
- Organización
- Detalle de la organización
- Información de conexión de Extremo
- Parámetros de conexión HTTP
- Valor clave
- Error
- Registro de operaciones
- Registro de registro de operaciones
- Detalles del registro de operaciones
- Mensaje y nombre de campo
- Categoría de archivo de resultados y GUID
- Ejecutar respuesta de operación
- Registro
- Informacion del usuario
- Estado desplegado
- Información del Extremo
- Error de AWS
Receta¶
Recipe:
type: object
properties:
id:
type: string
description: "The numerical ID of the recipe"
guid:
type: string
description: "Unique identifier representing a recipe"
author:
See separate definition for Author
orgId:
type: string
description: "The Organization ID"
description:
type: string
description: "Description of Recipe"
name:
type: string
description: "Name of Recipe"
projectName:
type: string
description: "Name of the Jitterbit Project (or Jitterpak)"
displayName:
type: string
description: "Display name of Recipe"
summary:
type: string
description: "Short description of Recipe"
tags:
type: array
items:
See separate definition for Tag
description: List of tags
steps:
type: array
items:
See separate definition for Step
projectVariables:
type: array
items:
See separate definition for property
createdAt:
type: number
description: "Number of milliseconds since the UNIX epoch (Jan 1 1970 12am UTC)"
updatedAt:
type: number
description: "Number of milliseconds since the UNIX epoch (Jan 1 1970 12am UTC)"
updatedBy:
See separate definition for Author
version:
type: string
description: "Version of the recipe. Incremented when updated."
required:
- guid
- description
- name
- projectName
- steps
Paso¶
Step:
properties:
name:
type: string
description: "Name of step"
description:
type: string
description: "Description of the step"
guid:
type: string
description: "A unique id associated to the step"
label:
type: string
description: "A label that can be used for rendering instead of the name property"
type:
type: string
enum:
- org.jitterbit.integration.data.entity.Description
- org.jitterbit.integration.data.entity.ProjectVariable
- org.jitterbit.integration.data.entity.RunOperation
- org.jitterbit.integration.data.connector.FTPEndpoint
- org.jitterbit.integration.data.connector.DBEndpoint
- org.jitterbit.integration.data.connector.AutoDeskEndpoint
- org.jitterbit.integration.data.connector.NetSuiteEndpoint
- org.jitterbit.integration.data.connector.SapEndpoint
- org.jitterbit.integration.data.connector.JMSEndpoint
- org.jitterbit.integration.data.entity.SalesforceConnector
- org.jitterbit.integration.data.entity.GenericProperties
- org.jitterbit.integration.data.entity.Schedule
- org.jitterbit.integration.data.entity.ApiBinding
- org.jitterbit.integration.data.entity.HttpForm
- org.jitterbit.integration.data.entity.TemporaryStorage
- org.jitterbit.integration.data.entity.FileShare
- org.jitterbit.integration.data.connector.MSAXEndpoint
- org.jitterbit.integration.data.connector.QuickBooksEndpoint
- org.jitterbit.integration.data.connector.ClarizenEndpoint
- org.jitterbit.integration.data.connector.Four51Endpoint
description: |
"Type associated with this step; these are possible values:
org.jitterbit.integration.data.entity.Description
org.jitterbit.integration.data.entity.ProjectVariable,
org.jitterbit.integration.data.entity.RunOperation,
org.jitterbit.integration.data.connector.FTPEndpoint,
org.jitterbit.integration.data.connector.DBEndpoint,
org.jitterbit.integration.data.connector.AutoDeskEndpoint,
org.jitterbit.integration.data.connector.NetSuiteEndpoint,
org.jitterbit.integration.data.connector.SapEndpoint,
org.jitterbit.integration.data.connector.JMSEndpoint,
org.jitterbit.integration.data.entity.SalesforceConnector,
org.jitterbit.integration.data.entity.GenericProperties,
org.jitterbit.integration.data.entity.ApiBinding,
org.jitterbit.integration.data.entity.Schedule,
org.jitterbit.integration.data.entity.HttpForm,
org.jitterbit.integration.data.entity.FileShare,
org.jitterbit.integration.data.entity.TemporaryStorage,
org.jitterbit.integration.data.connector.MSAXEndpoint,
org.jitterbit.integration.data.connector.QuickBooksEndpoint,
org.jitterbit.integration.data.connector.ClarizenEndpoint,
org.jitterbit.integration.data.connector.Four51Endpoint"
hidden:
type: boolean
description: "Indicate if this step should be renderable or not"
required:
type: boolean
description: "Whether the step requires validation or not"
properties:
type: array
description: "Properties associated with this step; in a step you can have either properties or projectVariables but not both at the same time"
items:
See separate definition for property
path:
type: string
description: "If this step maps to an entry in Jitterpak provide the path to; in general, this is valid for endpoints"
projectVariables:
type: object
description: "A list of project variables grouped together to represent a configurable entities; this cannot be used if properties are defined"
properties:
names:
type: array
items:
type: string
action:
See separate definition for Action
description: "Describe an action that can be invoked using properties from specified step; example: test connection endpoint"
required:
- names
bindings:
type: object
properties:
apis:
type: array
items:
See separate definition for API
action:
See separate definition for Action
required:
- name
- description
- type
Acción¶
Action:
properties:
name:
type: string
displayName:
type: string
useStepAsRequest:
type: string
description: "Use properties from a specified steps within the recipe; usually such a step is defined as a hidden step that is not rendered"
required:
- name
- useStepAsRequest
API¶
API:
properties:
apiName:
type: string
description: "Name of the API"
publicName:
type: string
description: "The public name of the API; this name would be part of the URI that will be public"
description:
type: string
description: "A short description of the api"
version:
type: string
description: "Version of the API"
sslOnly:
type: boolean
description: "Indicate if should only listen over HTTPS only - defaults to true"
timeout:
type: number
description: "Indicate after how many seconds to timeout; default is 30s"
enableCORS:
type: boolean
description: "Indicate if the cors should be enabled or not; defaults to false"
assignTo:
type: string
description: "Assign the API URL to a project variable defined within the associated JPK"
methods:
type: array
items:
See separate definition for API Method
required:
- apiName
- publicName
- description
- version
- methods
Método API¶
APIMethod:
properties:
method:
type: string
description: "Indicate the HTTP verb for to use for this APIMethod (PUT|POST|DELETE|GET)"
enum:
- GET
- DELETE
- POST
- PUT
operationName:
type: string
description: "Name of operation that will be invoked when this APIMethod is invoked"
responseType:
type: string
description: "Response type returned by the operation; defaults to NO_RESPONSE"
enum:
- VARIABLE
- FINAL_TARGET
- NO_RESPONSE
required:
- method
- operationName
Propiedad¶
Property:
properties:
name:
type: string
description: "Property name"
defaultValue:
type: string
description: "Default value associated to this property"
value:
type: string
description: "A value assigned by the user; if no value is provided by default the defaultValue will be assigned"
type:
type: string
description: "Indicate the type of the value; integer, float, double, date, time, boolean, string, password, textarea, enum; default string"
description:
type: string
description: "Provide a description of this property"
hidden:
type: boolean
description: "Default value will be false"
displayName:
type: string
description: "Name used for displaying; if not defined then the name property will be used"
required:
type: boolean
description: "Whether the property requires a value or not"
regex:
type: boolean
description: "Regex that the value should match"
required:
- name
Detalles de despliegue de Jitterpak¶
DeployJpkDetails:
type: object
properties:
envId:
type: string
description: "Environment ID of the deployed recipe."
envName:
type: string
description: "Environment name"
projectId:
type: string
description: "Deployed recipe ID"
projectGuid:
type: string
description: "Deployed project GUID"
projectName:
type: string
description: "Deployed project name"
oldProjectVariables:
type: array
items:
See separate definition for property
Operación¶
Operation:
type: object
properties:
operationGuid:
type: string
description: "The GUID of the operation"
operationName:
type: string
description: "The name of the operation"
Desplegar respuesta¶
DeployResponse:
properties:
deployJpkDetails:
type: array
items:
See separate definition for Deploy JPK Details
operations:
type: array
items:
See separate definition for Operation
Integración de recetas¶
RecipeIntegration:
allOf:
- See separate definition for Recipe
- properties:
deployedRecipeId:
description: "ID of the deployed configured recipe (this is the same as the ID of a Jitterbit project that is deployed to an environment)"
type: string
Etiqueta¶
Tag:
type: object
properties:
key:
type: string
description: "A key that can be used for searching the recipe later; possible values: source, target, search"
value:
type: string
description: "A value that can be in a search to match a recipe"
required:
- key
- value
Autor¶
Author:
type: object
properties:
userId:
type: string
description: "ID of the recipe's author"
name:
type: string
description: "Name of the recipe's author"
orgName:
type: string
description: "Name of the organization that this user is part of"
required:
- userId
- name
Ambiente¶
Environment:
type: object
properties:
id:
type: string
description: "A unique ID associated to environment"
orgId:
type: string
description: "The ID of the org that this environment is part of"
name:
type: string
description: "Name of the environment"
agentGroupName:
type: string
description: "The agent group associated with this environment"
agentGroupId:
type: string
description: "The ID of the agent group"
urlPrefix:
type: string
description: "Prefix URL associated to environment"
Agente¶
Agent:
type: object
properties:
id:
type: string
description: "Unique ID of the agent"
name:
type: string
description: "Name of the agent"
os:
type: string
description: "Type of operating system where agent is running"
osVersion:
type: string
description: "Type of operating system where agent is running"
jitterbitVersion:
type: string
description: "Version of the Jitterbit Agent"
hostname:
type: string
description: "Name of the host"
ipv4Address:
type: string
description: "IPV4 Address"
ipv6Address:
type: string
description: "IPV6 Address"
agentGroupName:
type: string
description: "Associate the agent with the named agent group"
status:
type: string
description: "Indicates if the agent is running"
agentGroupId:
type: string
description: "Id of the agent group that this agent is part of"
Grupo de agentes¶
AgentGroup:
type: object
properties:
id:
type: string
description: "ID of the agent group"
name:
type: string
description: "Name of the agent group"
description:
type: string
description: "Description of the agent group"
Respuesta de inicio de sesión¶
LoginResponse:
type: object
properties:
authenticationToken:
type: string
description: "Token that is used for authentication/authorizing client's REST requests"
status:
type: boolean
description: "Indicate if the user is active or not"
defaultOrgId:
type: string
description: "Default organization id that the user has logged into"
orgs:
type: array
description: "Organizations that the user is part of"
items:
See separate definition for Organization
Organización¶
Org:
type: object
properties:
orgId:
type: string
description: "ID of the organization"
orgName:
type: string
description: "Name of the organization"
orgZoneUrl:
type: string
description: "Zone URL associated to this organization"
urlPrefix:
type: string
description: "The URL prefix used for the API gateway for this organization"
apiHost:
type: string
description: "The DNS hostname used by this organization when exposing APIs"
Detalle de la organización¶
OrgDetail:
allOf:
- See separate definition for Recipe
- properties:
orgType:
description: "Type of org"
type: number
active:
description: "Indicate if this org is active or not"
type: boolean
legalName:
description: "The legal name of the org"
type: string
environments:
type: array
items:
See separate definition for Environment
Información de conexión de extremo¶
EndpointConnectionInfo:
type: object
description: "Object that defines the properties associated to a connection endpoint"
properties:
keyValues:
type: array
items:
See separate definition for KeyValue
Parámetros de conexión HTTP¶
HttpConnectionParams:
type: object
properties:
verb:
type: array
items:
See separate definition for property
url:
type: array
items:
See separate definition for property
headers:
type: array
items:
See separate definition for property
httpRequest:
type: array
items:
See separate definition for property
httpResponse:
type: array
items:
See separate definition for property
username:
type: array
items:
See separate definition for property
password:
type: array
items:
See separate definition for property
errorIfRegexMatch:
type: array
items:
See separate definition for property
errorMessageRegexSearch:
type: array
items:
See separate definition for property
Valor clave¶
KeyValue:
type: object
properties:
key:
type: string
value:
type: string
Error¶
Error:
type: object
properties:
code:
type: integer
description: "Code associated with this error; in general, maps to an HTTP Code"
message:
type: string
description: "A description of the error"
fields:
type: string
description: "Fields that report the error (optional)"
Registro de operaciones¶
OperationLog:
type: object
properties:
records:
type: array
items:
See separate definition for Operation Log Record
Registro de registro de operaciones¶
OperationLogRecord:
type: object
properties:
attributes:
See separate definition for Record
childRecords:
See separate definition for Operation Log
Detalles del registro de operaciones¶
OperationLogDetails:
type: object
properties:
operationName:
type: string
mainMessage:
type: string
sourceRecords:
type: integer
description: Number of source records
targetRecords:
type: integer
description: Number of target records
failedRecords:
type: integer
description: Number of failed records
successRecords:
type: integer
description: Number of success records
filesProcessed:
type: integer
description: Number of files processed
messageAndFieldName:
type: array
items:
See separate definition for Message and Field Name
resultFileCategoryAndGuid:
type: array
items:
See separate definition for Result File Category and GUID
Mensaje y nombre de campo¶
MessageAndFieldName:
type: object
properties:
message:
type: string
fieldName:
type: string
Categoría de archivo de resultados y GUID¶
ResultFileCategoryAndGuid:
type: object
properties:
category:
type: number
fileGuid:
type: number
Ejecutar respuesta de operación¶
RunOperationResponse:
type: object
properties:
orgId:
type: string
description: "ID of the organization associated with the environment where the operation has been deployed and executed"
environmentId:
type: string
description: "ID of the environment where the operation has been deployed and executed"
operationInstanceGuid:
type: string
description: "GUID of the operation instance"
operationGuid:
type: string
description: "GUID of the operation"
submittedAt:
type: string
description: "Date when the operation was submitted for execution"
Registro¶
Record:
type: object
properties:
operationInstanceGuid:
type: string
description: "GUID of an instance of an operation; represents an execution of an operation"
parentInstanceGuid:
type: string
description: "GUID associated to the parent operation; an operation that has been triggered/executed this operation instance"
operationGuid:
type: string
description: "GUID associated to this operation"
operationName:
type: string
description: "Name of the operation"
operationStatusId:
type: number
description: "Possible value for the operation statusId: SUBMITTED(0), PENDING(1), CANCELED(2), RUNNING(3), SUCCESS(4), SUCCESS_WITH_INFO(5), SUCCESS_WITH_WARNING(6), ERROR(7), CANCEL_REQUESTED(8), SUCCESS_WITH_CHILD_ERROR(9), RECEIVED(10), UNKNOWN(-1)"
operationStatus:
type: string
description: "Status of the operation - see operationStatusId for possible values"
environmentId:
type: string
description: "ID of the environment where operation has been deployed and running"
environmentName:
type: string
description: "Name of the environment where operation has been deployed and running"
agentId:
type: string
description: "ID of the agent where operation has been running"
agentName:
type: string
description: "Name of the agent where operation has been running"
projectName:
type: string
description: "Name of the Jitterbit pack associated to the recipe"
message:
type: string
description: "The message associated with this operation indicating the status of it"
operationEnteredTimestamp:
type: number
description: "Timestamp when the operation was entered"
operationStartedTimestamp:
type: number
description: "Timestamp when the operation was started"
operationStatusTimestamp:
type: number
description: "Timestamp of the operation status"
debugModeEnabled:
type: boolean
description: "Indicate if the debug mode is enabled or not"
debugFilePresent:
type: boolean
description: "Indicate if there is a debug file present for downloading"
Informacion del usuario¶
UserInfo:
type: object
properties:
title:
type: string
phone:
type: string
company:
type: string
postalCode:
type: string
subscription:
type: string
signUpSource:
type: string
offeringEnumId:
type: string
active:
type: string
timezone:
type: string
Estado implementado¶
DeployedStatus:
type: object
properties:
good:
type: integer
warn:
type: integer
error:
type: integer
Información del extremo¶
EndpointInfo:
type: object
properties:
name:
type: string
description: "Name of the endpoint"
category:
type: string
description: "Indicates the category this endpoint is part of; examples: crm, database"
icon:
type: string
description: "Path to fetch the icon associated with this endpoint"
required:
- name
- icon
Error de AWS¶
AWSError:
type: object
properties:
code:
type: string
message:
type: string
retryable:
type: boolean
statusCode:
type: number
hostname:
type: string
region:
type: string
retryDelay:
type: number
requestId:
type: string
extendedRequestId:
type: string
cfId:
type: string