API general

La API general está diseñada para poder obtener, listar, actualizar, crear y eliminar entradas de datos en el sistema. Se puede utilizar para automatizar procesos como la gestión de proveedores o la creación de diseños.

Modelos y acciones

Cada tipo de datos (por ejemplo, un cmp, un diseño, un proveedor, etc.) se denomina modelo; cada modelo ofrece varias acciones (get/list/update/…). Puedes utilizar la llamada a info para recibir la especificación OpenAPI de todos los modelos y acciones:

https://[API-Endpoint]/info

Ten en cuenta que las llamadas no autenticadas al modelo de información darán lugar a una especificación OpenAPI para acciones no autenticadas. Para obtener todos los modelos y acciones disponibles para tu cuenta, autentícate primero.

Estructura de la URL

Las llamadas a la acción siguen la estructura:

https://[API-Endpoint]/model/[MODELNAME]/[ACTIONNAME]

Ejemplo:

https://[API-Endpoint]/model/CMP/list

Además de las llamadas a modelos, hay llamadas a la autenticación y a la especificación OpenAPI:

https://[API-Endpoint]/auth/[AUTH-ACTION]
https://[API-Endpoint]/info

Estructura general del mensaje

La comunicación se realiza mediante el intercambio de datos JSON. Para iniciar una acción, envía una solicitud POST con los siguientes datos JSON en el cuerpo HTTP:

{
  "accessType": 1,         // Access type (may be required for authentication calls)
  "lang":       1|2|3|..., // Language (optional)  
  "kmd":        "...",     // Authentication token (optional/required depending on context)  
  "key":        "..."      // Your API-Key (optional/required depending on context)
  // other fields might be required depending on context
}

El contenido de los datos JSON puede variar en función de la acción que se vaya a realizar. Por lo tanto, consulta la sección Acciones aquí.

Dependiendo de la implementación del proyecto, key puede ser necesaria para determinadas acciones (por ejemplo, crear un nuevo usuario). Ponte en contacto con tu gestor de cuentas para recibir tu clave.

Importante: ¡Mantén tu clave privada y no la transmitas a través del navegador, sino siempre mediante una conexión de servidor a servidor!

La API responderá con un cuerpo JSON con el siguiente formato:

{
  "status":     "...",  // Status: Success|Error 
  "statuscode": 0..999, // Status code
  "msg":        "...",  // Human readable status message
  "model":      "...",  // Context dependend. May return model type to be displayed or null
  "action":     "...",  // Action performed
  "data":        ...    // Type and content is depended on context  
}

Códigos de error

La API utilizará los siguientes códigos de error para señalar problemas. El código de error se envía a través de la statuscode propiedad de la respuesta.

Código Descripción
100-199 Códigos de error generales
101 No se han encontrado datos de entrada
102 view/accessType falta o es incorrecto
103 No se han enviado ID o los ID no son válidos. Envía al menos un ID
104 Filtro incorrecto: el campo X no existe en Y
105 Falta la acción o es incorrecta
106 El parámetro X es obligatorio/falta
107 Acción de la barra de herramientas desconocida o vacía
108 Acción no permitida
109 Acción fallida
110 La acción no permite más de un ID o ninguno.
111 No se han encontrado datos para el ID x.
112 Error de creación, ver mensaje de error. Para mensajes específicos de campos, ver response.data
113 Error de actualización, ver mensaje de error. Para mensajes específicos de campos, ver response.data
114 No hay datos para crear/actualizar un elemento
115 Los ID deben ser una matriz
116 No se puede firmar la contraseña
117 Se ha superado la cantidad máxima de artículos
   
200-299 Errores de inicio de sesión/acceso
201 Servidor de anuncios desactivado
202 Usuario no encontrado
203 IP en lista negra
204 Contraseña incorrecta
205 Faltan credenciales
206 Error de inicio de sesión desconocido
207 IP no incluida en la lista blanca
208 Es necesario cambiar la contraseña (contraseña demasiado antigua)
209 Acceso no permitido
210 La renovación de la contraseña no se ha realizado correctamente

211

Token incorrecto
212 Token caducado
213 Cuenta aún no activa
214 Tipo de acceso desconocido
215 Es necesario cambiar la contraseña
216 Desactivado
217 Error desconocido
218 Clave de autenticación ausente o vacía
219 Falta la autenticación de dos factores (enviar parámetro 2fa)
220 Autenticación de dos factores incorrecta
221 Autenticación de dos factores: falta el código OTP
222 Autenticación de dos factores: código OTP incorrecto
223 Autenticación de dos factores: falta el código de correo electrónico
224 Autenticación de dos factores: Código de correo incorrecto
225 Autenticación de dos factores: falta el código SMS
226 Autenticación de dos factores: código SMS incorrecto
227 Autenticación de dos factores: se ha enviado el correo
228 Autenticación de dos factores: se ha enviado el SMS
229 Se ha enviado el correo electrónico de actualización de contraseña
230 Contraseña actualizada
   
300-399 Códigos de error internos
301 No se pudo resolver la dependencia de X en Y
302 La dependencia de X ha dado como resultado una lista vacía
303 No hay ninguna columna que actualizar
304 Error de dependencia en el uso del campo
305 Error de dependencia en campo vacío
306 La consulta de la lista ha dado como resultado una lista de campos vacía
307 No se ha encontrado la llamada de retorno de autenticación
308 No se ha encontrado el archivo de inclusión de la API: …
399 Error interno general
   
900-999 Códigos de error personalizados; consulte el mensaje

Tipos de acceso

Dependiendo de la estructura de la API, existen diferentes tipos de acceso (campo JSON «accessType»). Ponte en contacto con tu gestor de cuentas para recibir el ID del tipo de acceso que puedes utilizar.

Modelos

Dependiendo del proyecto y de tus derechos de acceso, es posible que veas diferentes modelos (estructuras de datos que se deben recibir o insertar desde o hacia la base de datos). Haz clic en el botón de acción rights para recibir una lista de modelos y acciones.

We do our best to keep this purely informative documentation up to date. However, if you notice that any of these guides need a little touch-up, let us know!