Dokumentacja
Wszystko, czego potrzebujesz, aby połączyć sklep i zacząć sprzedawać.
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
Utwórz konto
Zarejestruj darmowe konto FeedPilot. Bez karty kredytowej.
- 2
Połącz sklep
Połącz Shopify, WooCommerce lub własny sklep przez bezpieczne OAuth lub poświadczenia API.
- 3
Przejrzyj katalog
FeedPilot importuje produkty i sygnalizuje problemy (brakujące atrybuty, niska jakość zdjęć itp.).
- 4
Skonfiguruj reguły cenowe
Ustaw docelowe marże, uwzględnij prowizje marketplace i zdefiniuj strategie cenowe na kanał.
- 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)
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 Twój sklep wysyła dane produktowe i stanowe do FeedPilot
- 2 Normalizujemy i wzbogacamy katalog dla każdego celu
- 3 Listingi są tworzone lub aktualizowane na marketplace automatycznie
- 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 Agent AI pyta FeedPilot o produkty pasujące do intencji użytkownika
- 2 FeedPilot zwraca dane produktowe, zdjęcia i deep linki do Twojego sklepu
- 3 Użytkownik klika i finalizuje zakup na Twojej stronie
- 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.
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/jsoni 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 headeraX-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.