Contenido
- Esquema general de registro del módulo de transporte y de los canales
- Registro y configuración del módulo de transporte
- Obtención de información sobre el módulo de transporte
- Trabajo con Transport API
Esquema general de registro del módulo de transporte y de los canales
En el proceso intervienen el módulo, el usuario, el sistema y MessageGateway:
- El usuario crea en el sistema una clave de la interfaz de programación de aplicaciones (API).
- El usuario pulsa «Conectar» en la ficha del módulo en Marketplace.
- El sistema redirige al usuario al formulario de configuración y activación del módulo.
- El usuario completa el formulario.
- El módulo verifica la clave de API, los permisos asignados a esta y la versión de la API.
- El módulo de transporte se registra en el sistema, que solicita un token a MessageGateway.
- El sistema devuelve al módulo el token y la URL de acceso a MessageGateway.
- El usuario completa el formulario con la configuración de los canales de transporte.
- El módulo registra los canales de transporte en MessageGateway.
- El usuario es redirigido a la cuenta del sistema.
Registro y configuración del módulo de transporte
El registro de un módulo de transporte nuevo y la modificación de la configuración de uno existente se realizan mediante el método POST /api/v5/integration-modules/{code}/edit. En la solicitud debe incluirse obligatoriamente el parámetro integrationModule[integrations][mgTransport]. Si ya existe un módulo cuyo código es code, el método modifica su configuración; de lo contrario, crea uno nuevo.
Durante el registro deben especificarse el nombre integrationModule[name], el código integrationModule[code], la URL base integrationModule[baseUrl] y el código único del cliente integrationModule[clientId]. Posteriormente, MessageGateway enviará este último valor en el encabezado ClientId para identificar la cuenta del sistema.
En el campo integrationModule[integrations][mgTransport][webhookUrl] debe indicarse la dirección a la que MessageGateway enviará las solicitudes destinadas al módulo de transporte.
Si el registro se completa correctamente, la respuesta contiene la URL de MessageGateway en info[mgTransport][endpointUrl] y el token de acceso en info[mgTransport][token].
La configuración posterior del módulo de transporte y la gestión de los canales se realizan en MessageGateway mediante Transport API.
Para registrar correctamente el módulo de transporte, la integración con MessageGateway debe estar activa en la cuenta del sistema. Si se desactiva la integración, todos los módulos de transporte se desactivan automáticamente en MessageGateway.
Ejemplo de solicitud:
{
"code": "awesometransport-101",
"integrationCode": "awesometransport",
"active": true,
"name": "Awesome Transport",
"logo": "http://download.awesometransport.server.net/logos/robot.svg",
"clientId": "client-101",
"baseUrl": "https://awesometransport.server.net",
"accountUrl": "https://awesometransport.server.net/profile/client-101",
"actions": {
"activity": "/activity"
},
"integrations": {
"mgTransport": {
"webhookUrl": "https://awesometransport.server.net/wh/client-101"
}
}
}
Ejemplo de respuesta:
{
"success": true,
"info": {
"mgTransport": {
"endpointUrl": "http://127.0.0.1:8080",
"token": "5bbdfd67ed17486e32363c95d462a39a138b215ccd9f87ef4c23e8f89f18e10a5"
}
}
}
Obtención de información sobre el módulo de transporte
La información sobre el módulo de transporte se obtiene mediante el método GET /api/v5/integration-modules/{code}.
Ejemplo de respuesta:
{
"success": true,
"integrationModule": {
"code": "awesometransport-101",
"integrationCode": "awesometransport",
"active": true,
"freeze": false,
"name": "Awesome Transport",
"native": false,
"clientId": "client-101",
"baseUrl": "https://awesometransport.server.net",
"actions": {
"activity": "/activity"
},
"availableCountries": [],
"accountUrl": "https://awesometransport.server.net/profile/client-101",
"integrations": {
"mgTransport": {
"webhookUrl": "https://awesometransport.server.net/wh/client-101"
}
}
}
}
Trabajo con Transport API
Endpoint de la API: https://mg.rcrm-tech.ru/api/transport/v1/
La autenticación se realiza mediante el token obtenido durante el registro del módulo de transporte.
Este token debe enviarse en cada solicitud mediante el encabezado:
X-Transport-Token:X2EDxEta9U3lcsSV0dwdF38UvtSCxIuGh
Importante
Se aplica un límite de 30 solicitudes por segundo para cada token. Si se supera este límite, la API devuelve una respuesta con el estado HTTP
429 Too Many Requests.
Si el token no se guardó durante el registro, puede obtenerse junto con la información del módulo de transporte.
Recursos disponibles: