La API permite actualizar campos almacenados utilizando parámetros POST.
Para importar o insertar datos mediante llamadas a la API, debes configurar un conector de importación.

Estructura de datos
“input_data” = [
“{nombre de la tabla}” = [
[
“REF” = “{referencia única del registro}”,
“{nombre del campo}” = “{nuevo valor del campo}”,
“{nombre del campo}” = “{nuevo valor del campo}”,
...
],
[ … ]
],
“{nombre de otra tabla}” = [
...
]
]Nota: la importación JSON admite hasta 50 000 ítems por llamada. También puedes ejecutar la importación desde un archivo CSV.
{“input_data”:{
“products”:”http://externaldomain.com/download/product_items.csv”,
…
}Importación por FTP
Desde la versión 1.18 de la API, también puedes especificar el acceso FTP al subir un archivo.
{“input_data”:{
“products”: [
“URL”:”ftps://externaldomain.com/download/product_items.csv”,
“user”: “FTP_user”,
“password”: “FTP_password”,
“port”: “FTP_port”
],
…
}Advertencia: el servidor FTP debe usar un certificado firmado por una autoridad de certificación. No se aceptan certificados autofirmados.
Otros parámetros
| Parámetro | Valor | Explicación |
|---|---|---|
get_output_data | 0 o 1 | Si insertas datos nuevos, la información actualizada no se devuelve a menos que la solicites explícitamente. |
get_affected_ids | 0 o 1 | Devuelve en la respuesta el número total de ítems afectados por tabla, por ejemplo: "items_affected":{"products":5}. |
Para ver el desglose de ítems nuevos, modificados y eliminados, debes llamar a la función correspondiente con el SDK:
- Llamada:
$SLConn->get_input_results() - Respuesta:
Array ( [items_affected] => 7 [new_items] => 2 [updated_items] => 2 [deleted_items] => 3 )
Configuración básica
Los nombres de los campos serán los definidos en el conector en Nombre de importación.
Si defines un alias de tabla, debes respetarlo al enviar los datos en la llamada HTTP POST.
El parámetro Solo actualizar ítems existentes funciona así:
- Sí: solo se actualizarán los ítems que ya existen en el PIM. Las referencias nuevas se descartarán.
- No: se permitirá tanto la creación de nuevos ítems como la actualización de ítems existentes.

Eliminar registros mediante POST
La forma más recomendada de eliminar datos mediante una llamada POST es enviar el estado del ítem con el valor X y mapear ese campo en el conector.
“input_data” = [
“products” = [
[
”product_reference” = “{referencia del registro en Sales Layer}”,
“status” = “X”
],
…
]
]
En la versión 1.18, también puedes eliminar registros creando una estructura delete_data en el cuerpo de la llamada POST.
“delete_data” = [
“{nombre de la tabla}” = [
[
“REF” = “{referencia única del registro}”
],
…
],
...
]Respuesta y errores
La respuesta a la solicitud de actualización de datos llega dentro del parámetro input_response en JSON o XML.
“input_response” = [
“result” = (0 = sin cambios, 1 = actualización completada, 2 = actualización denegada),
“errors” = [
0 = “{descripción del error}”,
{n} = …
],
“items_affected” = [
“{tabla}” = {número de campos modificados}
]
]
¿Le ha sido útil este artículo?
¡Qué bien!
Gracias por sus comentarios
¡Sentimos mucho no haber sido de ayuda!
Gracias por sus comentarios
Sus comentarios se han enviado
Agradecemos su esfuerzo e intentaremos corregir el artículo