Shopify Flow ו-GraphQL Admin API
Flow משתמש ב-GraphQL Admin API של Shopify כדי לבנות אוטומציות ושילובים שמרחיבים ומשפרים את מנהל Shopify. מנגנון Flow משתמש בגרסה 2026-01 של ה-API כדי להעריך תנאים ומשתנים בזרימות עבודה וכן לבצע פעולות בחנות Shopify שלך. מכיוון ש-Flow ניגש לנתוני החנות על ידי קריאה ל-API, יש לך גישה למעט כל השדות הזמינים ב-API מתוך Flow.
מכיוון ש-Shopify משחררת גרסאות API חדשות כל 3 חודשים, ייתכן שיהיה צורך לעדכן חלק מזרימות העבודה כאשר שדות משתנים או יוצאים משימוש.
שימוש ב-GraphQL Admin API בזרימות עבודה
רוב הפעולות ב-Flow משתמשות ב-GraphQL Admin API כדי לבצע שינויים בחנות Shopify שלך. לדוגמה, הפעולה הוספת תגיות הזמנה (Add order tags) משתמשת במוטציה tagsAdd. הפעולה שליחת בקשת Admin API יכולה להשתמש ברוב המוטציות, כולל אלה שעדיין אינן זמינות כפעולות ב-Flow.
במהלך יצירת זרימות עבודה, לרוב תיתקל בשמות שדות ותיאורים המבוססים על התחביר של GraphQL Admin API. לדוגמה, כדי לקבוע את הכמות הכוללת הניתנת למכירה של גרסה מסוימת בזרימת עבודה, תשתמש במשתנה variants_item.inventoryQuantity. דוגמה נוספת: כדי לקבוע את המיקום שבו לקוח נרשם לידיעון הדוא"ל שלך, תשתמש במשתנה emailSubscriptionMethod.
אין צורך בבקיאות ב-API כדי ליצור זרימות עבודה עם האפליקציה Flow, אך הבנה בסיסית של שמות המשתנים וההגדרות שלהם יכולה לעזור לך לבנות בדיוק את הלוגיקה הרצויה בזרימת העבודה. לדוגמה, היכרות עם ההבדל בין ה-displayName של לקוח לבין ה-firstName שלו יכולה לעזור לזרימת העבודה לגשת לנתונים הנכונים, בהתאם למטרה שלשמה תרצה להשתמש בהם. הגדרות מצורפות לכל משתנה שאתה מוסיף במהלך הבנייה של זרימת העבודה, ואפשר ללחוץ על כדי לקבל מידע נוסף על כל משתנה או הגדרה.
נתוני חנות ו-GraphQL Admin API
זרימות עבודה משתמשות בנתונים מהחנות שלך בתנאים ובפעולות. Flow ניגש לנתוני החנות באמצעות ה-GraphQL Admin API, מה שאומר שיש לך גישה לכמעט כל השדות ב-API. אם לפעולה אין את הנתונים הדרושים שמסופקים על ידי הטריגר או על ידי פעולת קבלת הנתונים (Get data), זרימת העבודה לא תפעל ותוצג הודעת שגיאה.
לדוגמה, זרימת עבודה מתחילה בטריגר נוצר לקוח (Customer created) ומייבאת נתוני לקוחות לתוך זרימת העבודה. אם אחרי הטריגר הזה תבוא פעולת הוספת תגיות הזמנה (Add order tags) – שדורשת נתוני הזמנה ולא נתוני לקוח – התוצאה של זרימת העבודה תהיה שגיאת נתונים חסרים.
ייתכן שתצטרך להציג נתונים בתצוגה מקדימה או לעיין בתיעוד ה-API כדי להבין מהם הפלטים של ה-API ומה נמצא בשימוש ב-Flow, וכדי לוודא שזרימת העבודה שלך מפיקה את הנתונים המצופים.
ארגומנטים של שדות ו-GraphQL Admin API
חלק מהשדות של GraphQL Admin API דורשים ארגומנטים – פרמטרים נוספים שמצמצמים את הנתונים המוחזרים. לדוגמה, השדה product.inCollection צריך ארגומנט id של אוסף כדי לדעת איזה אוסף לבדוק. בלעדיו, השדה לא יוכל להחזיר תוצאה.
ב-Flow תוכל ליצור משתנים משדות אלה על ידי מתן הערך הדרוש לארגומנט, ואז ניתן יהיה להשתמש בהם בזרימת העבודה. אפשר גם להקצות שם מותאם אישית למשתנה כדי להקל על ההתייחסות אליו בשלבים הבאים. לדוגמה, לשנות את השם של product.inCollection(id: "gid://shopify/Collection/123456") ל-product.inSummerBestsellers.
למידע נוסף על יצירת משתנים משדות עם ארגומנטים.
יצירת משתנים ממטא שדות דורשת מידע נוסף ב-Flow מכיוון שאתה מגדיר בעצמך את מרחב השמות ואת המפתח של כל מטא שדה, ולכן הארגומנטים תמיד ייחודיים לחנות שלך. למידע נוסף על מטא שדות ב-Flow.
ניהול גרסאות API
Shopify משחררת גרסאות API חדשות כל 3 חודשים, ו-Flow מאמצת את הגרסאות החדשות בהקדם האפשרי, אך היא עשויה לפגר אחר הגרסה העדכנית ביותר. כאשר אפשר, שינויים בין גרסאות נפתרים באופן אוטומטי, אך ייתכנו שינויים שאינם פשוטים, ובכללם המצבים הבאים:
- כאשר שדות מוסרים אך לא מסופק להם תחליף, מה שעשוי להשפיע על האופן שבו תנאים או קוד Liquid מוערכים.
- כאשר שדות הופכים לכאלה שיכולים להכיל ערך ריק (nullable), מה שעשוי להשפיע על האופן שבו תנאים או קוד Liquid מוערכים.
- כאשר ערכי Enum משתנים, או שמתווספים סוגי איגודים (union) או ממשקים חדשים, מה שעשוי להשפיע על Liquid או על הקוד.
- כאשר ארגומנטים של מוטציה משתנים, מה שעשוי להשפיע על התצורה של פעולות לשליחת בקשות אל Admin API.
ייתכן שיהיה צורך לעדכן ידנית חלק מזרימות העבודה. במקרים אלה, זרימות העבודה עשויות להציג שגיאה נדרש עדכון (Update required) או API שאינו נתמך (Unsupported API), ויפנו אותך לתיעוד ה-API הרלוונטי כדי לבצע את השינויים הנדרשים בעורך של זרימות העבודה. עם סיום העדכונים ושמירתם, זרימת העבודה מתעדכנת באופן אוטומטי לשימוש בגרסת ה-API העדכנית ביותר שזמינה ב-Flow.
תוכל לבחור להתעלם מהבעיות באופן זמני, כדי לבצע שינויים דחופים בזרימת עבודה שמוצגות בה שגיאות תאימות של גרסאות API. אם בעיות אלו לא יטופלו, זרימת העבודה עשויה להפסיק לפעול או לגרום לשגיאות כאשר גרסת ה-API הישנה יותר לא תיתמך יותר על ידי Shopify.