Przejdź do treści

Wysyłka aktualizacji zapasów

Aby przesłać aktualizację zapasów/cen, stosuje się następujący punkt końcowy, a aktualizację zapasów należy przesłać okresowo do tego punktu końcowego:

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

Żądanie HTTP

  • metoda PUT

Parametry adresu URL i nagłówek

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

Wymagania (OBOWIĄZKOWE)

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

Jeżeli Klienci prowadzą działalność w wielu krajach, każdy z krajów będzie posiadał osobny Klucz API oraz Identyfikator Klienta, potrzebne do przesyłania informacji o zapasach osobno dla każdego kraju.

Przykładowe kody

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)

Po pomyślnym przesłaniu pliku status odpowiedzi to 200 (OK). Następnie proces backend pobierze od razu zadanie i wykona aktualizacje, jeżeli format pliku i kodowanie będą poprawne.