7 פרומפטים בפנים📅 4 בפברואר 2025 · סשן שלישי בערב👤 גיא מיז׳ינסקי

מדבר עם מערכת שאין לך אליה כפתור: איך ללמוד API בשפה של מלצר

מתוך "מבוא לAPI" עם גיא מיז׳ינסקי · אוטוטיוזדיי · 04.02.2025
🔒 המלאה למנויים

💜 רוצים לשתף? שתפו

ההודעה נשלחת מוכנה, עם תמונה וקישור לסשן.

לאינסטגרם / סטורי - העתיקו ושתפו

API זו לא הרצאה אקדמית ולא שפת מתכנתים - זו פשוט השפה שבה מערכות מדברות אחת עם השנייה, ואפשר ללמוד אותה בשעה וחצי בלי לדעת שורת קוד אחת. גיא מיז'ינסקי, שמצהיר בגלוי שהוא לא מתכנת ולמד הכל מהשטח, פירק את כל העולם הזה לשיחה עם מלצר במסעדה. הרגע שבו זה התהפך: מישהו אמר בקול 'לא הבנתי בקיצור', וגיא לא ברח מזה - הוא בנה מחדש את כל התמונה עד שזה נהיה ברור. זה הפוסט על איך לשבור את מחסום הפחד מ-API.

מירי
🕰️ הערת הכתבת

הערת הכתבת: הסשן הזה נגע גם בפרטים ספציפיים - סירילייז URL ב-Make שהיה פעם כבוי כברירת מחדל, לימיטים של גוגל שיט, ומצב הכלים דאז. הפלטפורמות זזו מאז, וכלים כמו Make עדיין כאן ועובדים, ולצידם N8N ואחרים. אבל המיומנות הנצחית שגיא לימד - להבין מאילו חלקים בנויה קריאה, לקרוא דוקומנטציה, ולדעת מה אתה רוצה לפני שאתה בוחר איך - היא אותה מיומנות בדיוק גם היום.

🎁פרומפט פתוח, בחינם - המורה הפרטי שלך ל-API בשפה פשוטה:
prompt-00 · בונוס נצחי🔓 פתוח לך

מי מאיתנו לא ראה את הכפתור הזה למטה - make an API call - ופשוט התעלם ממנו כי זה נראה עולם של מתכנתים? גיא מיז'ינסקי, השותף של אוטוטיוזדיי, בעלים ב-OCT Group ושותף לשעבר של אינטגרומט, לקח את הסשן הזה בדיוק כדי לנפץ את הפחד הזה. הוא אמר את זה בפירוש: 'אני לא מתכנת, לא למדתי מדעי המחשב, המושגים שלי חלקם מאולתרים.' ודווקא בגלל זה הוא יודע ללמד את זה כמה שיותר שכונה, כמה שיותר נגיש. סשן שמלמד לא רק מה זה API - אלא איך לא לפחד ממנו.

מירי
הרגע שבו גיא הפך פיצה שמזמינים במסעדה ל-GET, POST, PUT ו-DELETE - זה מה שהופך את כל האותיות המבהילות האלה לפתאום מוכרות. בואו תשמעו איך המלצר מלמד אתכם API.

המסע: 7 תחנות

כל תחנה = מה קרה בסשן + הפרומפט שאורז את זה בשבילכם

1🎓 למידה

מורה פרטי ל-API בשפה פשוטה

גיא פתח בהצהרה שהיא בעצם מתנה: 'אני לא מתכנת, לא למדתי מדעי המחשב.' והמטרה שהוא הציב הייתה ברורה - לא לדבר ב-I-Level, אלא כמה שיותר שכונה, כמה שיותר קרוב ונגיש, כדי שכולם יעברו את זה. הוא הזכיר את עצמו שש-שבע שנים אחורה, כשחברים הייטקיסטים צחקו עליו על שאלה מה זה URL, ואיך פקודות GET עם שרשור פרמטרים בתוך הלינק בלבלו ולחצו אותו. הוא שומר עד היום תמונה מהתקופה ההיא כדי להזכיר לעצמו שפעם זה היה קשה. והמסר: היום זה קל, במיוחד עם GPT שנכנס לתמונה בשנתיים האחרונות - כשנתקעים תמיד אפשר להיעזר בו ולהתקדם. הרעיון של המורה הפרטי ל-API הוא בדיוק זה - להבין מאפס בשפה שלך.

השתמשו בפרומפט הבא בשביל להבין מאפס מה זה API ואיך הוא עובד, בלי רקע תכנותי:
prompt-01 · למידה🔒 למנויים

ההמשך המלא של הפרומפט שמור לחברי אוטוטיוזדיי פלוס יחד עם ההקלטה והתמלול המלאים של הסשן
שורות ההמשך כוללות את כל ההנחיות המדויקות והדוגמאות שהוצגו בשידור החי מול הקהילה
2🎓 למידה

פירוק מבנה קריאת HTTP מלאה

כאן גיא פירק את הקריאה עצמה. ההקבלה שהוא בנה ל-Make הבהירה הכל: צד לקוח זה תמיד ה-HTTP, וצד שרת זה כמו webhook שקולט בקשה ומחזיר webhook response. הוא הגדיר חמישה אלמנטים עיקריים בקריאה - ה-URL (הכתובת של השרת אליו פונים), ה-method (השיטה - GET, POST, PUT, DELETE), ה-headers (שכבה נוספת, לרוב לאותנטיקציה או להצהרת שפה כמו JSON), ה-query (דרך לשרשר פרמטרים לתוך ה-URL) וה-body (התוכן עצמו, שקיים כמעט בכל קריאה חוץ מ-GET). ובתגובה שמקבלים חזרה - headers, status ו-body. תובנת אבטחה חשובה שעלתה: כל מה שמשורשר בתוך ה-URL פחות מאובטח ממה שיושב ב-headers או ב-body, ולכן יש CRM-ים שמכניסים סיסמה ויוזרניים ישר ל-URL - וזו בעיה.

השתמשו בפרומפט הבא בשביל להבין מאילו חלקים בנויה כל קריאת API ומה התפקיד של כל חלק:
prompt-02 · למידה🔒 למנויים

ההמשך המלא של הפרומפט שמור לחברי אוטוטיוזדיי פלוס יחד עם ההקלטה והתמלול המלאים של הסשן
שורות ההמשך כוללות את כל ההנחיות המדויקות והדוגמאות שהוצגו בשידור החי מול הקהילה
3🎓 למידה

מדריך קודי סטטוס לדיבאג קריאות

קודי הסטטוס הם המפה לדיבאג, וגיא ארגן אותם בסדרות. סדרת ה-200 - הצלחנו. סדרת ה-300 - רידיירקט, העברה הלאה, ופה עלתה דוגמה מבריקה: לינק הצטרפות לקבוצת קהילה שברגע שהיא מתמלאת מחליף אוטומטית ללינק הבא בתור באמצעות קוד 302, בלי לגעת בכל הפרסומים הישנים. סדרת ה-400 - התקלה שלך: 400 בעיה בכתובת, 401 אותנטיקציה לא תקינה, 403 אין הרשאה (הוא קישר את זה לסקופים שכולם מכירים מחיבור ג'ימייל), 429 חריגה מהלימיט - כמו פיירבייס עם 100 קריאות בדקה, או גוגל שיט בסביבות 300 לדקה. וסדרת ה-500 - התקלה שלנו, השרת נפל, וזה בדיוק המקום שבו error handling של Make חוזר וממתין ומנסה שוב.

השתמשו בפרומפט הבא בשביל להבין מה אומר כל קוד סטטוס ואיך לתקן את הבעיה כשקריאה נכשלת:
prompt-03 · למידה🔒 למנויים

ההמשך המלא של הפרומפט שמור לחברי אוטוטיוזדיי פלוס יחד עם ההקלטה והתמלול המלאים של הסשן
שורות ההמשך כוללות את כל ההנחיות המדויקות והדוגמאות שהוצגו בשידור החי מול הקהילה
4🩺 אבחון

קריאת דוקומנטציה של API חדש

השלב שהופך אדם שלא ראה מערכת מימיו למי שיכול לעבוד איתה מהר. גיא הדגים על הדוקומנטציה של green API - נכנס ל-quick start, קרא את ה-authentication, ראה מה יש. ואז הדגים על API של בדיחות אבא - API שבמקרה שלו אין בו אותנטיקציה בכלל, סימן וי ועוברים הלאה. הכלל שהוא חזר עליו: המטרה שלך ב-API היא לדעת מה אתה יכול לעשות. אתה נכנס ורואה בדיוק את הפקודות - לפתוח לקוח, לעדכן, למחוק. ולכל פרמטר כתוב אם הוא mandatory או לא. אזהרה חשובה על עבודה עם GPT: אל תשאל אותו 'האם green API יכולה לעשות X' - תן לו את הלינק לדוקומנטציה ותגיד 'תחפש לי מתוך המסמך הזה', אחרת הוא ימצא גרסה ישנה או פשוט ימציא. וזוהו למשל - שיש להם שישה-שבעה ורז'נים של API - זה מקום שבו GPT מתבלבל, ושם צריך לתת לו את המסמך הספציפי לדבר בתוכו.

השתמשו בפרומפט הבא בשביל ללמוד מהר מערכת חדשה של לקוח ולהבין מה אפשר לעשות איתה:
prompt-04 · אבחון🔒 למנויים

ההמשך המלא של הפרומפט שמור לחברי אוטוטיוזדיי פלוס יחד עם ההקלטה והתמלול המלאים של הסשן
שורות ההמשך כוללות את כל ההנחיות המדויקות והדוגמאות שהוצגו בשידור החי מול הקהילה
5⚙️ יישום

בניית קריאת GET עם שרשור פרמטרים

עכשיו בונים בעצמנו. גיא הראה קודם על טופס גוגל - ה-pre-filled link שכולם מכירים הוא בעצם קריאת GET שכל הפרמטרים משורשרים בתוך ה-URL. ואז פירק את התחביר: מתחילים בסימן שאלה, אחריו key שווה value, ואם רוצים עוד פרמטר מוסיפים & ועוד key שווה value. הוא הדגים דוגמה חיה של name=גיא מ-Make ל-Make, וגם הראה מה קורה כשמכניסים עברית - זה נשבר, כי URL לא יודע להתמודד עם ערכים בעברית. הפתרון: query string, שמשרשר את אותם פרמטרים בצורה יותר נעימה ויודע להכיל עברית. ומתנה קטנה שעלתה - האפשרות serialize URL באדבנס של Make, שברגע שמסמנים אותה מטפלת בכל התקלות מהסוג הזה. תובנה שחוזרת: מה שקובע אם משרשרים עם סימן שאלה או פשוט מוסיפים ID אחרי ה-URL - זה תמיד מה שכתוב בדוקומנטציה.

השתמשו בפרומפט הבא בשביל לבנות בעצמי קריאה לשליפת מידע מסונן ממערכת:
prompt-05 · יישום🔒 למנויים

ההמשך המלא של הפרומפט שמור לחברי אוטוטיוזדיי פלוס יחד עם ההקלטה והתמלול המלאים של הסשן
שורות ההמשך כוללות את כל ההנחיות המדויקות והדוגמאות שהוצגו בשידור החי מול הקהילה
6⚙️ יישום

בניית קריאת POST עם body ב-JSON

מ-GET לשפה השנייה - קריאת POST עם body ב-JSON. גיא פירק מה זה JSON: JavaScript Object Notation, מבנה נתונים בצורה מסוימת. כל אובייקט נפתח ונסגר בסוגריים מסולסלים, כל איבר הוא key ואז value עם נקודתיים ביניהם, מערך נפתח בסוגריים מרובעים, ופסיק מסמן למחשב 'יש לי עוד איבר'. הבחנה מעשית וחשובה: מספר טלפון נשמר כסטרינג עם גרשיים ולא כמספר - כי אין לו ערך מתמטי, והוא מתחיל באפס. ופה עלה סיפור אמיתי מהשטח: פאורלינק פעם דרשו מספרים כסטרינג, ואז יום אחד בפתע החליטו שרוצים אותם בלי גרשיים - וכל הקריאות בעולם נתקעו בבת אחת. הכלל הברזל: הצורה שאתה מגיש את הנתונים ב-body חייבת להיות זהה לחלוטין למה שהשרת ביקש בדוקומנטציה - אותו מבנה, אותו פורמט תאריך, אותו סדר במערך. אי אפשר לאלתר.

השתמשו בפרומפט הבא בשביל ליצור או לעדכן רשומה במערכת דרך קריאת API:
prompt-06 · יישום🔒 למנויים

ההמשך המלא של הפרומפט שמור לחברי אוטוטיוזדיי פלוס יחד עם ההקלטה והתמלול המלאים של הסשן
שורות ההמשך כוללות את כל ההנחיות המדויקות והדוגמאות שהוצגו בשידור החי מול הקהילה
7⚙️ יישום

שימוש ב-Make an API Call ובאותנטיקציה מובנית

התחנה שסוגרת את המעגל - מה בעצם נותן לך ה-make an API call. גיא הסביר בשורה התחתונה: כשאתה משתמש בו במקום HTTP רגיל, קיבלת את האותנטיקציה מוכנה מראש. ששי, שבנה את האפליקציה של green API, כבר עשה את הזיהוי - ולכן אם מחר תצטרך קריאה שלא קיימת באפליקציה, אתה פשוט מדלג על כל שלב האותנטיקציה ומתחיל את הקריאה מהשלב הראשון. עלתה גם דרך נוספת דרך ה-create a connection, שם אפשר לשמור את הטוקן פעם אחת בצורה מוסתרת עם כוכביות, במקום לרשום אותו שוב בכל header. וגיא סגר עם העיקרון שחוזר לאורך כל הסשן ומקדים את הסשן הבא: כששואלים חברה 'האם יש לכם API' התשובה תמיד כן - השאלה הנכונה היא 'תנו לי את הדוקומנטציה, אני רוצה לראות מה אני יכול לעשות'. הוא סיפר איך עבדו עליו כמה פעמים עם API שיש בו פקודה אחת בלבד ליצירת לקוח, בלי עריכה ובלי מחיקה - ומאז הוא קרצייה בעניין.

השתמשו בפרומפט הבא בשביל להפעיל פעולת API שלא קיימת באפליקציה, בלי להתעסק שוב באותנטיקציה:
prompt-07 · יישום🔒 למנויים

ההמשך המלא של הפרומפט שמור לחברי אוטוטיוזדיי פלוס יחד עם ההקלטה והתמלול המלאים של הסשן
שורות ההמשך כוללות את כל ההנחיות המדויקות והדוגמאות שהוצגו בשידור החי מול הקהילה

🎯 מה עושים עם זה עכשיו?

אל תסגרו את הטאב עם "מעניין". ככה זה הופך לתוצאה:
1
בחרו תחנה אחת ותריצו אותה היוםלא את הכל - אחת. עשר דקות של יישום שוות יותר מסימנייה.
2
קחו את הפרומפט המלא והתאימו לעסק שלכםהפרומפטים כתובים מוכנים להדבקה - ה-AI שלכם עושה את השאר.
3
ספרו בדיון מה יצא לכםהתוצאות של הקהילה הן חלק מהסשן. גם השאלות.

קראת איך זה נעשה. עכשיו קחו את הכלים ותעשו את זה בעצמכם - כל הפרומפטים של הסשן, מוכנים להריץ על העסק שלכם. פלוס ההקלטה המלאה והתמלול.

הצטרפו לאוטוטיוזדיי+· 49 ש״ח בחודשעוד לא בשלים? בואו ללייב הבא בחינם ←

רוצים לעבוד על התמלול הנקי?

העתיקו אותו ותעבדו איתו איך שנוח לכם.

🔒 התמלול המלא שמור לחברי אוטוטיוזדיי+. עם המנוי אתם מעתיקים אותו בקליק ועובדים איתו איך שנוח לכם.

לפתוח את התמלול · 49 ש״ח בחודש

שאלות ששאלתם (וה-AI ישאל גם)

מה ההבדל בין GET ל-POST בקריאת API?

GET בעיקר לשליפת מידע - הפרמטרים משורשרים בתוך ה-URL ואין לו body. POST בדרך כלל להעברת מידע או יצירת רשומה חדשה - המידע מגיע בתוך ה-body, לרוב במבנה JSON. אבל גיא הדגיש שוב ושוב: מי שקובע בפועל זה השרת והדוקומנטציה. יש מערכות ישראליות שמייצרות לקוח דווקא ב-GET, ויש כאלה שמכניסות body גם ב-GET. לא כולם מקפידים על הכללים.

מה עושים כשקריאת API נכשלת ומחזירה שגיאה?

קוראים את קוד הסטטוס. סדרת 400 אומרת שהבעיה אצלך - 400 כתובת לא תקינה, 401 אותנטיקציה שגויה, 403 חוסר הרשאה, 429 חריגה מהלימיט. סדרת 500 אומרת שהתקלה בצד השרת - הוא נפל, ואפשר להשתמש ב-error handling כדי לנסות שוב מאוחר יותר. הקוד מכוון אותך ישר לאיפה לחפש את הבעיה.

אני לא מתכנת - אפשר בכלל להבין API?

בדיוק בשביל זה הסשן הזה קיים. גיא עצמו לא מתכנת ולמד הכל מהשטח, והוא לימד את כל העולם הזה בשפה של שיחה עם מלצר במסעדה. יותר מזה - עם GPT כמורה פרטי, כשנתקעים אפשר תמיד להיעזר בו ולהתקדם. המחסום הוא בעיקר פסיכולוגי, לא טכני.

למה מספר טלפון נשמר כסטרינג ולא כמספר ב-JSON?

כי אין לו שום ערך מתמטי ואתה לא הולך לעשות עליו פעולות חשבון, וגם כי הוא מתחיל באפס - שהיה נעלם אם היה מספר. מספר בלי גרשיים מיועד לערכים שרוצים לעשות עליהם מניפולציות מתמטיות, כמו סכום או מספר ילדים. הבחנה קטנה שיכולה לשבור לך קריאה שלמה אם תטעה בה.

איך יודעים מה מערכת מסוימת מאפשרת לעשות דרך ה-API?

קוראים את הדוקומנטציה שלה. זו המפה המלאה של כל הפקודות - מה אפשר ליצור, לעדכן, למחוק, ואילו פרמטרים חובה ואילו רשות. הטיפ של גיא: אל תשאל חברה 'יש לכם API' - התשובה תמיד כן. בקש את הדוקומנטציה ובדוק בעצמך מה באמת אפשר לעשות, כי לפעמים יש שם פקודה אחת ותו לא.

💬 הדיון על הסשן

שאלות, תובנות, מה יישמנו - השרשור של הקהילה.

עוד אין תגובות - תהיו הראשונים לפתוח את הדיון 👇