Ir al contenido

Action Sales

El modulo Action Sales permite conectarse a la API de Action Sales CRM para obtener y enviar datos. Utiliza autenticación mediante API Key y API Secret que se agregan como parámetros de la URL. Incluye reintentos automáticos con backoff exponencial para errores de red, errores 5xx y rate limiting (429). Soporta variables dinámicas en la URL y detección inteligente de errores de API (respuestas con excepciones). Es ideal para sincronizar datos con el CRM Action Sales, obtener listados de clientes, ventas, o cualquier recurso disponible en su API.

ParámetroTipoRequeridoDescripción
credentials_idcredentialsSiCredenciales de Action Sales
actionsales_endpointtextSiEndpoint de la API (se agrega después de la URL base)
methodselectSiMétodo HTTP: GET o POST
dataKeytextNoClave de datos para filtrado. Puede ser un atributo de un objeto o un array (ej: ‘data’ o ‘data[0].id’)

La credencial debe contener los campos:

  • apiKey: API Key de Action Sales
  • apiSecret: API Secret de Action Sales

Ambos valores se agregan como parámetros de query string en cada petición: ?ApiKey={apiKey}&ApiSecret={apiSecret}

{
"nextModule": "siguiente_modulo",
"data": {
"clientes": [
{ "id": 1, "nombre": "Cliente A" }
]
},
"_meta_": {
"url": "https://api.actionsales.com.ar/endpoint?ApiKey=...&ApiSecret=...",
"data": {}
}
}
{
"credentials_id": "cred_actionsales_01",
"actionsales_endpoint": "api/clientes/list",
"method": "GET"
}
{
"credentials_id": "cred_actionsales_01",
"actionsales_endpoint": "api/ventas/{{fechaInicio}}/{{fechaFin}}",
"method": "GET"
}
  • URL base: https://api.actionsales.com.ar
  • Formato: https://api.actionsales.com.ar/{endpoint}?ApiKey={key}&ApiSecret={secret}
  • Autenticación mediante ApiKey y ApiSecret en query string
  • Soporta variables dinámicas {{variable}} en la URL completa
  • Incluye reintentos automáticos (hasta 3) con backoff exponencial para errores de red, 5xx y 429
  • El timeout por defecto es de 5 segundos (configurable via config.timeout)
  • Se envian headers de User-Agent simulando un navegador Chrome
  • El modulo detecta errores de API que vienen como excepciones (campo ClassName con exception) y los trata como errores
  • continueOnError: true permite que el workflow continue aunque la API devuelva error
  • Si los datos de entrada tienen contenido, se envian como body con Content-Type application/json
  • Las credenciales de la API se envian como parámetros de URL, no como headers
  • http (peticiones HTTP genericas)
  • odooApi (lectura de APIs con paginación)