API לשליפת רשימת תבניות וואטסאפ
ממשק זה מחזיר את כל תבניות הוואטסאפ שבחשבון, עם כל המידע הדרוש כדי לשלוח אותן דרך ממשק שליחת התבניות: קוד התבנית, השם, הסטטוס, הקטגוריה, השפה, התוכן, הכפתורים, ובעיקר אילו פרמטרים בדיוק יש לשלוח לכל תבנית, כולל דוגמה מוכנה לשליחה. הממשק לקריאה בלבד ואינו משנה דבר בחשבון.
סקירת הממשק
כדי לשלוח הודעה בממשק שליחת תבניות וואטסאפ צריך לדעת את קוד התבנית ואת הפרמטרים שהיא מצפה להם. במקום להעתיק אותם ידנית מהמערכת, הממשק הזה מחזיר אותם ישירות למערכת שלך, כך שאפשר לבנות את קריאת השליחה באופן אוטומטי, להציג למשתמשים שלך רשימת תבניות לבחירה, או לבדוק שתבנית אושרה לפני שמנסים לשלוח אותה.
הפרמטרים הנדרשים מחושבים באותו היגיון בדיוק שבו ממשק השליחה בודק אותם. לכן מה שהרשימה מציגה הוא מה שממשק השליחה ידרוש.
כתובת הממשק ושיטת השליחה
הכתובת לפנייה לממשק היא:
https://www.micropay.co.il/extApi/waTemplates.php
לכתובת זו מוסיפים את הפרמטרים המתאימים. יש לשלוח את כל שמות הפרמטרים באותיות קטנות (Lower Case). ניתן להעביר את הפרמטרים בשיטת GET או POST, או לשלוח אותם בגוף הבקשה בפורמט JSON.
אימות וטוקן
כל קריאה דורשת פרמטר token, טוקן שיצרת במערכת עם הרשאת שירותי וואטסאפ.
תת מנהל: תת מנהל שהורשה לשלוח הודעות וואטסאפ יכול להשתמש בממשק בטוקן שלו, ויקבל את כל תבניות החשבון. התבניות שייכות לחשבון הוואטסאפ העסקי כולו, ולא למספר מסוים.
פרמטרים
| פרמטר | חובה | תיאור |
|---|---|---|
token | חובה | טוקן הזדהות שיצרת במערכת, עם הרשאת שירותי וואטסאפ. |
template | רשות | קוד של תבנית אחת. כשהוא נשלח, מוחזרת רק התבנית הזו. קוד שאינו קיים בחשבון מחזיר שגיאה. |
status | רשות | סינון לפי סטטוס התבנית במטא: APPROVED (מאושרת), PENDING (ממתינה לאישור), REJECTED (נדחתה), PAUSED (הושהתה), DISABLED (הושבתה), FLAGGED (סומנה לבדיקה), PENDING_DELETION (בתהליך מחיקה). ללא הפרמטר מוחזרות תבניות בכל הסטטוסים. אפשר לשלוח את הערך באותיות גדולות או קטנות. |
category | רשות | סינון לפי קטגוריה: MARKETING (שיווק), UTILITY (שירות), AUTHENTICATION (קוד אימות). אפשר לשלוח את הערך באותיות גדולות או קטנות. |
get / post | חובה | מציין למערכת באיזו שיטה נשלחו הפרמטרים. יש לשלוח אחד מהם בלבד: get=1 בשליחת GET, או post=2 בשליחת POST. (בפורמט JSON אין צורך בפרמטר זה.) |
דוגמאות קוד
curl "https://www.micropay.co.il/extApi/waTemplates.php?get=1&token=XXXXX"curl -X POST https://www.micropay.co.il/extApi/waTemplates.php \ -H "Content-Type: application/json" \ -d '{"token":"XXXXX"}'
curl -X POST https://www.micropay.co.il/extApi/waTemplates.php \ -H "Content-Type: application/json" \ -d '{"token":"XXXXX","template":"4821","status":"APPROVED","category":"UTILITY"}'
תשובת השרת
התשובה תמיד ב-JSON, גם בקריאת GET או POST רגילה, מפני שרשימת תבניות אינה ניתנת לייצוג בתשובת טקסט של שורה אחת.
המעטפת זהה לשאר הממשקים (ראו מוסכמות ופורמט תשובה), והרשימה נמצאת ב-data.templates.
חשבון ללא תבניות, או סינון שלא מצא דבר, מחזיר הצלחה עם רשימה ריקה.
{
"status": 1,
"action": "listtemplates",
"message": "OK",
"data": {
"count": 1,
"templates": [
{
"code": 4821,
"displayName": "משלוח יצא",
"status": "APPROVED",
"sendable": true,
"issue": null,
"category": "UTILITY",
"language": "he",
"qualityScore": "GREEN",
"updated": "2026-10-12 14:03:11",
"header": {
"type": "IMAGE",
"text": "",
"fileurlTypes": ["jpg", "jpeg", "png"],
"hasDefaultMedia": true,
"defaultMediaUrl": "https://www.micropay.co.il/files/WaOutMedia/4821-header.jpg"
},
"body": "שלום {{1}}, ההזמנה {{2}} יצאה לדרך.",
"footer": "צוות החנות",
"buttons": [
{"type": "QUICK_REPLY", "text": "תודה", "url": "", "dynamic": false},
{"type": "URL", "text": "מעקב משלוח", "url": "https://example.com/track/{{1}}", "dynamic": true}
],
"params": {
"body": [{"index": 1, "example": "דני"}, {"index": 2, "example": "A123"}],
"header": [],
"button": [{"index": 1, "example": "A123", "buttonText": "מעקב משלוח"}]
},
"simpleParamsAllowed": false,
"paramsExample": {"body": {"1": "דני", "2": "A123"}, "button": {"1": "A123"}},
"otp": null
}
],
"remoteIP": "203.0.113.10"
}
}שדות התבנית
| שדה | משמעות |
|---|---|
code | קוד התבנית. זה הערך שיש לשלוח בפרמטר template בממשק שליחת תבניות וואטסאפ, והוא מופיע גם במערכת בעמודה "קוד תבנית". |
displayName | השם של התבנית במערכת מיקרופיי. ניתן לשנות אותו בעמוד ניהול התבניות. אם לא הוגדר שם במערכת, מוחזר השם שהוגדר לתבנית במטא. |
status | סטטוס התבנית במטא, אחד הערכים שמפורטים בפרמטר status למעלה. |
sendable | true כשאפשר לשלוח את התבנית עכשיו: היא מאושרת ונתוניה במערכת תקינים. |
issue | null כשאין בעיה. הערך needs_resync אומר שנתוני התבנית במערכת חסרים או לא מעודכנים. במצב כזה המשתמש הראשי בחשבון צריך ללחוץ על "סנכרון מול מטא" בעמוד הגדרות חשבון וואטסאפ, וממשק השליחה יסרב לשלוח את התבנית עד אז. |
category | קטגוריית התבנית: MARKETING, UTILITY או AUTHENTICATION. |
language | קוד השפה של התבנית, למשל he לעברית או en לאנגלית. ממשק השליחה משתמש בו אוטומטית ואין צורך לשלוח אותו. |
qualityScore | דירוג האיכות של התבנית במטא לפי משובים שליליים מנמענים: GREEN, YELLOW, RED, או UNKNOWN כשאין עדיין דירוג. |
updated | מועד העדכון האחרון של התבנית, בפורמט YYYY-MM-DD HH:MM:SS לפי שעון ישראל. כשמטא לא דיווחה על מועד עדכון, מוחזר המועד שבו התבנית נוספה למערכת. |
header | כותרת התבנית. ראו כותרת עם קובץ. |
body | טקסט גוף ההודעה, עם מקומות הפרמטרים {{1}}, {{2}} וכן הלאה. |
footer | טקסט התחתית, או מחרוזת ריקה כשאין. |
buttons | הכפתורים בתבנית, לפי הסדר. לכל כפתור: type (למשל QUICK_REPLY, URL, PHONE_NUMBER), text, url לכפתור קישור, ו-dynamic שהוא true כשסוף הקישור משתנה בכל שליחה ודורש פרמטר. |
params | הפרמטרים שחובה לשלוח, בחלוקה לגוף (body), כותרת (header) וכפתורים (button). ראו הפרמטרים לשליחה. |
simpleParamsAllowed | true כשאפשר לשלוח את הפרמטרים כרשימה פשוטה מופרדת בפסיקים. false כשחובה להשתמש בצורת ה-JSON. |
paramsExample | ערך מוכן לפרמטר params בממשק השליחה, בנוי מהדוגמאות שהוגשו למטא באישור התבנית. כשהדוגמה של כפתור אינה ערך שאפשר לשלוח, מוחזר במקומה ABC123. null כשלתבנית אין פרמטרים. |
otp | רק בתבנית קוד אימות (AUTHENTICATION), אחרת null. ראו תבנית קוד אימות. |
הפרמטרים לשליחה
כל פריט ב-params הוא פרמטר שחובה לשלוח, עם index ו-example:
- גוף ההודעה וכותרת:
indexהוא מספר הפרמטר בטקסט, כלומר1עבור{{1}}. - כפתור קישור דינמי:
indexהוא המיקום של הכפתור בתבנית, החל מ-0. בדוגמה למעלה כפתור המעקב הוא הכפתור השני, ולכן האינדקס שלו הוא 1. השדהbuttonTextמציין לאיזה כפתור הפרמטר שייך.
איך משתמשים בתשובה כדי לשלוח
"sendable": true, ושלח את ה-code שלה בפרמטר template.paramsExample, החלף את ערכי הדוגמה בערכים האמיתיים, ושלח אותו בפרמטר params.simpleParamsAllowed הוא true, אפשר במקום זאת לשלוח רשימה פשוטה של ערכי הגוף לפי הסדר. למשל, לתבנית עם שני פרמטרים בגוף ההודעה וללא כפתור דינמי: params=Dana,1234. בתבנית שבדוגמה למעלה זה לא אפשרי, כי יש לה כפתור דינמי.fileurl.simpleParamsAllowed הוא false,
רשימה פשוטה תחזיר שגיאה על פרמטר חסר.
כותרת עם קובץ
header.type הוא אחד מהערכים: NONE (אין כותרת), TEXT (טקסט, שמופיע ב-header.text),
IMAGE (תמונה), VIDEO (סרטון) או DOCUMENT (מסמך).
| שדה | משמעות |
|---|---|
fileurlTypes | סוגי הקבצים שאפשר לשלוח בפרמטר fileurl לתבנית הזו. רשימה ריקה כשהכותרת היא טקסט או שאין כותרת, ואז אסור לשלוח fileurl. |
hasDefaultMedia | true כשלתבנית שמור קובץ ברירת מחדל, שיישלח כשלא מעבירים fileurl. |
defaultMediaUrl | הכתובת של קובץ ברירת המחדל, לתצוגה מקדימה. מחרוזת ריקה כשאין קובץ. |
תבנית קוד אימות
בתבנית בקטגוריית AUTHENTICATION הפרמטר {{1}} בגוף ההודעה הוא תמיד קוד האימות, והוא מופיע ב-params.body גם כשלא הוגדר בטקסט.
את הקוד שולחים פעם אחת, והמערכת מצמידה אותו גם לכפתור העתקת הקוד. השדה otp כולל:
| שדה | משמעות |
|---|---|
codeParam | היכן שולחים את הקוד: body.1, כלומר הפרמטר הראשון בגוף ההודעה. |
expirationMinutes | תוקף הקוד בדקות, כפי שמוצג לנמען בתחתית ההודעה. 0 כשלא הוגדר. |
securityRecommendation | true כשמטא מוסיפה להודעה את המשפט "אין לשתף את הקוד". |
buttonText | טקסט כפתור העתקת הקוד, כשמטא מחזירה אותו בנפרד. לרוב הכפתור מופיע גם ברשימת buttons, עם dynamic שווה false: אין לשלוח לו פרמטר, והמערכת מצרפת אליו אוטומטית את אותו קוד שנשלח בגוף ההודעה. |
לשליחת קוד אימות בקריאה אחת, ללא ניהול התבנית בעצמך, ראו גם OTP וקוד אימות.
שגיאות נפוצות
| תיאור השגיאה | הסיבה |
|---|---|
token parameter is required / token parameter is not valid | הטוקן חסר או אינו קיים. |
user permission denied, please check token permissions (whatsapp) | לטוקן אין הרשאת שירותי וואטסאפ. |
your IP is blocked | לטוקן הוגדרה רשימת כתובות IP מורשות, והקריאה הגיעה מכתובת אחרת. |
the account is not active | החשבון במיקרופיי סגור או מוקפא. יש לפנות לתמיכה. |
subuser whatsapp permission denied | לתת המנהל של הטוקן אין הרשאה לשלוח הודעות וואטסאפ. |
whatsapp is not configured for this account | לא חובר חשבון וואטסאפ עסקי לחשבון במיקרופיי. |
template parameter is invalid (template code) | הפרמטר template אינו מספר תקין. |
template not found (code N) | אין בחשבון תבנית עם הקוד הזה. |
no template matches code N with the given status/category filter | נשלח template יחד עם status או category, והתבנית אינה עומדת בסינון, או שאינה קיימת בחשבון. |
status parameter is invalid (allowed: ...) | ערך status שאינו ברשימה. בסוגריים מופיעים הערכים המותרים. |
category parameter is invalid (allowed: ...) | ערך category שאינו ברשימה. |
you must send one of the following: get=1 or post=2 | בשליחה רגילה לא נשלח get=1 או post=2. |
invalid JSON body | גוף הבקשה בפורמט JSON אינו JSON תקין. בשגיאה הזו התשובה אינה כוללת את השדה action. |
get subuser data error | תת המנהל של הטוקן אינו פעיל או שנמחק. |
no ip | לא ניתן היה לזהות את כתובת ה-IP של הקריאה. יש לפנות לתמיכה. |
system error, please contact support | תקלה זמנית במערכת. אפשר לנסות שוב בעוד כמה דקות, ואם התקלה נמשכת יש לפנות לתמיכה. |
בשגיאה status הוא 0, message הוא ERROR, והתיאור נמצא ב-data.description:
{"status":0,"action":"listtemplates","message":"ERROR","data":{"remoteIP":"203.0.113.10","description":"template not found (code 4821)"}}שאלות נפוצות
איך יודעים אילו פרמטרים לשלוח לכל תבנית וואטסאפ?
קוראים לכתובת /extApi/waTemplates.php עם טוקן בעל הרשאת שירותי וואטסאפ. לכל תבנית בתשובה יש שדה params שמפרט את הפרמטרים הנדרשים בגוף ההודעה, בכותרת ובכפתורים, ושדה paramsExample שהוא ערך מוכן לפרמטר params בממשק שליחת התבניות. מחליפים את ערכי הדוגמה בערכים האמיתיים ושולחים.
האם הממשק מאפשר ליצור או לשנות תבניות?
לא. הממשק מיועד לקריאה בלבד ואינו משנה דבר בחשבון. יצירה, עריכה ומחיקה של תבניות מתבצעות במערכת מיקרופיי, בתפריט וואטסאפ ואז ניהול תבניות, ושם הן נשלחות לאישור מטא.
למה תבנית מופיעה ברשימה עם sendable שווה false?
אפשר לשלוח רק תבנית בסטטוס APPROVED, כלומר תבנית שמטא אישרה. תבנית בהמתנה, שנדחתה או שהושהתה מופיעה ברשימה עם sendable שווה false. גם תבנית מאושרת מקבלת sendable שווה false כשמופיע issue עם הערך needs_resync, כלומר נתוני התבנית במערכת אינם מעודכנים. כדי לעדכן אותם, המשתמש הראשי בחשבון לוחץ על "סנכרון מול מטא" בעמוד הגדרות חשבון וואטסאפ.
באיזה פורמט מוחזרת התשובה?
תמיד ב-JSON, גם בקריאת GET או POST רגילה, מפני שרשימת תבניות אינה ניתנת לייצוג בתשובת טקסט של שורה אחת. מבנה המעטפת זהה לשאר הממשקים: status, action, message ו-data, והרשימה עצמה נמצאת ב-data.templates.