Mapowanie danych użytkowych i zmienne w Shopify Flow
Mapuj maksymalnie cztery pola z treści webhooka na zmienne Shopify Flow, używając ścieżek kropkowych i indeksów tablic. Obiekty są przekazywane jako JSON.
Pola wyzwalające w Shopify Flow’ są prostymi ciągami znaków. Państwa dane prawdopodobnie takie nie są. Mapowanie polega na wybraniu tych części przychodzącego żądania, które są potrzebne w Państwa przepływie pracy.
Cztery dziedziny
Każdy webhook udostępnia w Shopify Flow cztery pola: fieldOne, fieldTwo, fieldThree, fieldFour. W sekcji Ustawienia zaawansowane należy przypisać każde z nich do odpowiedniego klucza w treści komunikatu.
Biorąc pod uwagę następującą treść żądania:


{
"orderId": "1001",
"customer": { "email": "someone@example.com", "name": "Alex" },
"note": "gift wrap"
}| Dziedzina | Proszę zaznaczyć to na mapie | Wartość przekazywana do Shopify Flow |
|---|---|---|
fieldOne |
orderId |
1001 |
fieldTwo |
customer.email |
someone@example.com |
fieldThree |
customer.name |
Alex |
fieldFour |
note |
gift wrap |
W przypadku wartości zagnieżdżonych stosuje się ścieżki z kropkami (customer.email). Elementy tablicy są określane za pomocą indeksu (items.0.sku).
W Shopify Flow odwołuje się do nich jako {{fieldOne}}, {{fieldTwo}} i tak dalej.
Obiekty i tablice
Jeśli mapowana wartość sama w sobie jest obiektem lub tablicą, automatycznie konwertujemy ją na ciąg znaków w formacie JSON, ponieważ zmienne Shopify Flow nie mogą przechowywać struktur. Mapowanie pola fieldOne na customer z powyższego przykładu daje w Shopify Flow następujący wynik:
{"email":"someone@example.com","name":"Alex"}Proszę przetworzyć te dane w ramach akcji Uruchom kod w Shopify Flow, gdy będą Państwu potrzebne te elementy.
Gdy cztery pola to za mało
Cztery nazwane pola obejmują większość integracji. Jeśli tak nie jest, mają Państwo do dyspozycji trzy przełączniki, które można włączyć - wszystkie znajdują się w sekcji Ustawienia zaawansowane i domyślnie są wyłączone:
| Miejsce akcji | Co otrzymuje Shopify Flow | Pole w Shopify Flow |
|---|---|---|
| Zezwól na niestandardową treść żądania | Dopuszcza dowolną sylwetkę bez konieczności przechodzenia rygorystycznej weryfikacji | - |
| Proszę wykorzystać całe ciało | Cała treść żądania w postaci ciągu znaków JSON | rawBody |
| Proszę dołączyć nagłówki żądania | Nagłówki żądania w postaci listy par klucz-wartość | requestHeaders |
| Proszę uwzględnić parametry zapytania | Ciąg zapytania w adresie URL jako lista par klucz-wartość | queryParams |
requestHeaders i queryParams są przekazywane w postaci list - należy iterować po requestHeaders.items w akcji „Uruchom kod”, gdzie każdy element ma postać { key, value }.
Proszę, aby rozmiar nie przekraczał 50 KB
Shopify Flow ogranicza rozmiar każdego uruchomienia wyzwalacza do 50 KB. Mierzymy dokładną wielkość danych, które mielibyśmy wysłać, i odrzucamy z góry wszelkie dane większe niż ten limit za pomocą payload_too_large, dzięki czemu otrzymują Państwo jasny komunikat o błędzie zamiast przepływu pracy, który zakończy się niepowodzeniem w późniejszym etapie.
Jeśli wystąpi ten błąd, proszę wysłać mniejszy treść lub wyłączyć opcje Użyj całej treści, Uwzględnij nagłówki żądania oraz Uwzględnij parametry zapytania - to właśnie one zazwyczaj powodują ten błąd.
Nagłówki i zapytania są zawsze rejestrowane
Przełączniki opt-in kontrolują wyłącznie to, co jest przekazywane do Shopify Flow. Historia wywołań zawsze rejestruje nagłówki i ciąg zapytania (z zamaskowanymi wrażliwymi wartościami), dzięki czemu można debugować żądanie bez wysyłania wszystkich danych do Państwa przepływu pracy.
