Saltar a contenido

Envío de la actualización del inventario

Para enviar una actualización de las existencias o los precios se utiliza el siguiente parámetro. La actualización del inventario debe enviarse periódicamente a este parámetro:

https://merchants-connector-importer.zalandoapis.com/{Client ID}/{Stock File Name}

Solicitud de HTTP

  • Método PUT

Parámetros de URL y encabezado

Parameter Type Example
Client ID String d329krpq
Stock File Name CSV 20181023_update.csv
API Key (x-api-key) String lXViWTzFic9sM8Qqe9Ew7JME8xTdBAOMJHdIjK7XkjQ00OWr

Requisitos (OBLIGATORIO)

The request

  • Must be an HTTP PUT request.
  • Must contain the Client ID in the URL request ({Client ID} would be replaced). Example: d329krpq.
  • Must contain the stock file name that will be received ({Stock File Name} would be replaced), which can be different from your local file name. Example: 20181023_update.csv
  • Must include the stock CSV file.
  • Must contain the API Key in the headers (header name: x-api-key). Example: lXViWTzFic9sM8Qqe9Ew7JME8xTdBAOMJHdIjK7XkjQ00OWr.

Stores in multiple countries

Si los clientes trabajan en múltiples países, cada país tendrá una API Key y un Client ID independientes y están obligados a tener suministros independientes de existencias en cada país.

Ejemplos de código

Shell

curl -v -X PUT https://merchants-connector-importer.zalandoapis.com/d329krpq/20181023_update.csv 
--upload-file 20181023_update.csv 
--header "x-api-key: lXViWTzFic9sM8Qqe9Ew7JME8xTdBAOMJHdIjK7XkjQ00OWr"

Powershell

Invoke-WebRequest `
-UseBasicParsing `
-Uri https://merchants-connector-importer.zalandoapis.com/d329krpq/20181023_update.csv  `
-Method PUT `
-InFile 20181023_update.csv `
-Headers @{'x-api-key'='lXViWTzFic9sM8Qqe9Ew7JME8xTdBAOMJHdIjK7XkjQ00OWr'}

Python

import requests

client_id = "d329krpq"

headers = {
    'x-api-key': "lXViWTzFic9sM8Qqe9Ew7JME8xTdBAOMJHdIjK7XkjQ00OWr",
    'content-type': "application/csv",
    'cache-control': "no-cache"
}

with open('feed_data.csv', 'rb') as f:
    res = requests.put(f"https://merchants-connector-importer.zalandoapis.com/{client_id}/20181023_update.csv".format(client_id=client_id), headers=headers, data=f.read())

    if res.status_code == 200:
        print("Success")
    else:
        print("Failed")

Nodejs

const axios = require('axios')
const fs = require('fs')

const clientId = "d329krpq"
const apiKey = "lXViWTzFic9sM8Qqe9Ew7JME8xTdBAOMJHdIjK7XkjQ00OWr"
const fileName = "file.csv"
const data = fs.createReadStream(fileName)
const url = `https://merchants-connector-importer.zalandoapis.com/${clientId}/${fileName}`

const config = {
    headers: {
        "content-type": "application/csv",
        "x-api-key": apiKey,
        "cache-control": "no-cache"
    }
}

axios.put(url, data, config)
    .then((response) => {
        // handle success
        console.log(response);
    })
    .catch((error) => {
        // handle error
        console.log(error);
    })

Response

Response status of 200 (OK)

Si la subida del archivo es correcta, el estado de respuesta será 200 (OK). Un proceso de back-end seguirá con la tarea de manera casi inmediata y hará actualizaciones si el formato del archivo y la codificación son correctos.