Dokumentacja

Dokumentacja

Wszystko, czego potrzebujesz, aby połączyć sklep i zacząć sprzedawać.

Krok 1

Jak zacząć

FeedPilot łączy się z Twoim sklepem, normalizuje dane produktowe dla każdego marketplace i synchronizuje stany we wszystkich kanałach. Oto jak się skonfigurować.

  1. 1

    Utwórz konto

    Zarejestruj darmowe konto FeedPilot. Bez karty kredytowej.

  2. 2

    Połącz sklep

    Połącz Shopify, WooCommerce lub własny sklep przez bezpieczne OAuth lub poświadczenia API.

  3. 3

    Przejrzyj katalog

    FeedPilot importuje produkty i sygnalizuje problemy (brakujące atrybuty, niska jakość zdjęć itp.).

  4. 4

    Skonfiguruj reguły cenowe

    Ustaw docelowe marże, uwzględnij prowizje marketplace i zdefiniuj strategie cenowe na kanał.

  5. 5

    Publikuj i monitoruj

    Wyślij listingi na wybrane marketplace i śledź wyniki w dashboardzie.

Lista kontrolna szybkiego startu

  • Utwórz darmowe konto FeedPilot
  • Połącz sklep (Shopify, WooCommerce lub API)
  • Przejrzyj i napraw zgłoszone problemy z katalogiem
  • Skonfiguruj pierwszy kanał marketplace
  • Ustaw reguły cenowe dla tego kanału
  • Opublikuj listingi i monitoruj dashboard

Czego potrzebujemy od Twojego sklepu

Do synchronizacji katalogu potrzebujemy dostępu do odczytu:

  • Produkty: tytuł, opis, zdjęcia, warianty, SKU
  • Stany: poziomy magazynowe na lokalizację (jeśli dotyczy)
  • Ceny: cena bazowa na wariant
  • Kategorie: typ produktu lub kategoria (pomaga w mapowaniu atrybutów)
Krok 2

Przegląd integracji

FeedPilot pobiera dane ze sklepu, przekształca je dla każdego celu i automatycznie wysyła listingi oraz aktualizacje stanów.

Jak to działa

  1. 1 Twój sklep wysyła dane produktowe i stanowe do FeedPilot
  2. 2 Normalizujemy i wzbogacamy katalog dla każdego celu
  3. 3 Listingi są tworzone lub aktualizowane na marketplace automatycznie
  4. 4 Synchronizacja stanów utrzymuje dokładne poziomy we wszystkich kanałach

Synchronizacja katalogu

Pobieramy produkty według harmonogramu (codziennie dla Free, co godzinę dla Growth, webhooki w czasie rzeczywistym dla Enterprise).

  • Automatyczne mapowanie atrybutów do wymagań marketplace
  • Walidacja i kontrola jakości zdjęć
  • Dopasowanie kategorii i taksonomii
  • Sygnalizowanie problemów z działaniami naprawczymi

Stany i ceny

Zmiany stanów w sklepie automatycznie propagują do wszystkich połączonych kanałów.

  • Synchronizacja stanów w czasie rzeczywistym lub według harmonogramu
  • Reguły cenowe na kanał z kalkulacją prowizji
  • Ochrona marży i egzekwowanie ceny minimalnej
  • Widoczność prognozowanego zysku przed publikacją

Integracja z agentami AI

Twój katalog może być udostępniony asystentom zakupowym AI przez bezpieczny feed. Oto jak to działa:

  1. 1 Agent AI pyta FeedPilot o produkty pasujące do intencji użytkownika
  2. 2 FeedPilot zwraca dane produktowe, zdjęcia i deep linki do Twojego sklepu
  3. 3 Użytkownik klika i finalizuje zakup na Twojej stronie
  4. 4 Zachowujesz relację z klientem i unikasz prowizji od transakcji

Wspierane platformy

Integrujemy się z Shopify, WooCommerce i własnymi API. Cele marketplace to Amazon (US, UK, DE i więcej), Allegro, eBay i Etsy. Feedy dla agentów AI działają z OpenAI, Claude, Gemini i AWS Bedrock.

REST API · v1

FeedPilot API

Proste JSON-over-HTTPS API do odczytu i zarządzania produktami, zamówieniami, stanami magazynowymi, feedami, kanałami, zwrotami, płatnościami i webhookami. Uwierzytelnienie tokenem osobistym, przewidywalne RESTowe endpointy, JSON z paginacją.

Base URL i konwencje

Wszystkie endpointy żyją pod jednym base URL i przyjmują/zwracają wyłącznie JSON.

https://app.feedpilot.ai/api/v1/<resource>
  • Każde żądanie musi zawierać Accept: application/json.
  • Operacje zapisu wymagają Content-Type: application/json i body w formacie JSON.
  • Daty w ISO 8601 (UTC). Pieniądze jako stringi dziesiętne (np. "39.90").
  • Konta z wieloma sklepami: użyj ?store=<id> lub headera X-Store-Id: <id>; w przeciwnym razie używany jest pierwszy sklep z konta.

Uwierzytelnienie

Uwierzytelniaj się tokenem osobistym w nagłówku Authorization. Wygeneruj token w panelu admin: Settings → API tokens. Token pokazujemy raz przy tworzeniu — skopiuj go wtedy, bo trzymamy tylko hash.

Authorization: Bearer fpt_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Accept: application/json

Sprawdź token: GET /api/v1/me — zwraca zalogowanego usera, jego sklepy i listę uprawnień tokenu.

Uprawnienia (scopes)

Każdy token ma listę uprawnień. Każdy endpoint wymaga konkretnego — żądanie bez wystarczających uprawnień zwraca 403 Forbidden. * daje pełny dostęp — używaj tylko dla zaufanej automatyzacji.

Dostępne scopes: read:products, write:products, read:orders, read:inventory, write:inventory, read:feeds, write:feeds, read:channels, write:channels, read:returns, write:returns, read:payments, manage:webhooks, *.

Limit zapytań

Domyślnie: 60 zapytań/minutę na token. Każda odpowiedź zawiera nagłówki X-RateLimit-Limit i X-RateLimit-Remaining. Po przekroczeniu zwracamy 429 Too Many Requests z headerem Retry-After.

Paginacja i filtry

Wszystkie endpointy listujące są paginowane. Parametry: ?page=N&per_page=N (domyślnie 25, max 100). Odpowiedź zawiera data, meta i links. Każdy resource akceptuje swoje filtry przez query params.

Błędy

Wszystkie błędy zwracają JSON z polem message. Walidacja dodatkowo zawiera obiekt errors kluczowany po polach. Status codes: 400 (bad request), 401 (brak/zły token), 403 (brak uprawnień), 404 (nie znaleziono), 422 (walidacja), 429 (rate limit), 500 (serwer).

Resources

Pełna lista endpointów z parametrami i przykładami: wersja angielska. W skrócie:

  • Products / Variants — pełny CRUD, filtry: status, search
  • Orders — read-only (zamówienia spływają z marketplaces; subskrybuj webhook order.created)
  • Stock items — list/show/update (zmienisz on_hand / reserved)
  • Feeds — CRUD + akcja POST /feeds/{id}/sync
  • Channel accounts & listings — CRUD + bulk POST /listings/generate
  • Returns — list/show/update (akceptacja/odrzucenie/zwrot środków)
  • Payments — read-only ledger (sprzedaż, zwroty, opłaty, payouts)
  • Webhooks — pełny CRUD do subskrybowania eventów

Webhooki

Subskrybuj endpoint HTTPS, żeby otrzymywać powiadomienia o eventach. Każdy event to POST z body JSON podpisanym HMAC-SHA256. Nieudane dostarczenia powtarzamy 3× (1 min, 5 min, 30 min); po 10 kolejnych porażkach endpoint jest auto-wyłączany.

Eventy: order.created, order.updated, order.shipped, order.refunded, inventory.updated, return.requested, return.decided, payment.received, message.received, feed.synced, listing.created, listing.updated.

Header podpisu: X-FeedPilot-Signature: sha256=<hex>. Weryfikuj zawsze na surowym body żądania (nie na sparsowanym JSON), używając hash_hmac('sha256', $rawBody, $secret).

Przykłady kodu

Lista produktów — curl

curl -s https://app.feedpilot.ai/api/v1/products?per_page=10 \
  -H "Authorization: Bearer $FEEDPILOT_TOKEN" \
  -H "Accept: application/json"

Tworzenie produktu — JavaScript (fetch)

const res = await fetch(
  "https://app.feedpilot.ai/api/v1/products",
  {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.FEEDPILOT_TOKEN}`,
      "Content-Type": "application/json",
      "Accept": "application/json",
    },
    body: JSON.stringify({
      name: "Sage rinse cup · Mint",
      sku: "HP-045",
      price: "39.90",
      status: "active",
    }),
  },
);
const { data } = await res.json();
console.log(data.id);

Aktualizacja stanu — PHP (Guzzle)

use GuzzleHttp\Client;

$client = new Client([
    'base_uri' => 'https://app.feedpilot.ai/api/v1/',
    'headers' => [
        'Authorization' => 'Bearer ' . getenv('FEEDPILOT_TOKEN'),
        'Accept' => 'application/json',
    ],
]);

$response = $client->put("stock-items/$stockItemId", [
    'json' => ['on_hand' => 47],
]);

$data = json_decode($response->getBody(), true)['data'];
echo $data['available'];

Wersjonowanie

Aktualna wersja: v1. Breaking changes wprowadzamy pod nowym prefixem (np. /api/v2/). Zobowiązujemy się utrzymać v1 przez minimum 12 miesięcy po wydaniu v2, z poprawkami bezpieczeństwa później. Pełna referencja endpointów po angielsku: feedpilot.ai/docs/#api.

Potrzebujesz pomocy?

Napisz na [email protected] lub sprawdź FAQ. Klienci Growth i Enterprise mają priorytetowe czasy odpowiedzi.