שליחת סמס ב-API

מתוך MindCRM
קפיצה לניווט קפיצה לחיפוש

ממשק API לשליחת SMS

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

כתובת: https://<your-crm>.mindc.co/api/send_sms.php (במקום <your-crm> יש לכתוב את כתובת המערכת שלכם, למשל yourcompany).

שיטה: GET או POST (שדות טופס או גוף JSON).

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

לפני שמתחילים: מספר השולח חייב להיות מאומת במערכת. ראו אימות מספר טלפון.


איתור הלקוח

ההודעה נשלחת ללקוח במערכת. יש לשלוח אחת מהאפשרויות:

אפשרות א: לפי מזהה שיוך

פרמטר סוג תיאור
repository_assign_id מספר שלם מזהה השיוך של הלקוח. הדרך המהירה והמדויקת ביותר.

אפשרות ב: לפי טלפון וקו

פרמטר סוג תיאור
phone מחרוזת מספר הנייד של הלקוח (ראו פרמטרים).
did מחרוזת אחד מקווי הטלפון של המערכת שלכם (DID). הלקוח מחופש בפרויקט של הקו הזה. אם לא שולחים אותו, source_number משמש כקו, כך שכששולחים ממספר הקו שלכם אפשר לוותר על did. בשליחת תבנית נחשב רק source_number שנשלח בבקשה, לא זה של התבנית.
  • אם הטלפון עדיין לא לקוח בפרויקט הזה, המערכת מוסיפה אותו: לקוח קיים מפרויקט אחר משויך לפרויקט הזה, וטלפון לא מוכר נפתח כלקוח חדש.
  • שולח שאינו אחד מהקווים שלכם (בלי did) לא מתאים לאף פרויקט, והבקשה נכשלת עם קוד 501.
  • את did יש לשלוח בכתובת או כשדה טופס. בגוף JSON הוא לא נקרא.

פרמטרים

פרמטר חובה תיאור
phone ✅ מספר הנייד הישראלי של הנמען: 0501234567 או 050-1234567. קידומות 050-055, 058, 059. גם from_phone מתקבל באותה משמעות.
message ✅ ¹ תוכן ההודעה. עד 500 בתים: כ-500 תווים באנגלית, או כ-250 תווים בעברית (כל אות עברית נספרת פעמיים). תגי HTML מוסרים.
source_number ✅ ¹ השולח שהנמען רואה, בדרך כלל המספר המאומת שלכם. אותיות באנגלית, ספרות ורווחים בלבד, עד 12 תווים.
sms_template_id ❌ שליחת תבנית שמורה (ראו שליחת תבנית). המזהה מופיע בעמודה Uid בעמוד התבניות.
repository_assign_id ❌ ² ראו איתור הלקוח.
did ❌ ² ראו איתור הלקוח.
user_id ❌ מזהה העובד שיירשם כשולח. נדרש בשליחת תבנית (ראו בהמשך).
date ❌ שליחה מאוחרת, ביום הזה: YYYY-MM-DD.
time ❌ שליחה מאוחרת, בשעה הזו: HH:MM:SS.

¹ לא נדרש כששולחים sms_template_id: התבנית מספקת אותם.
² יש לשלוח repository_assign_id, או phone שהמערכת יכולה לאתר דרך did / source_number.

אפשר לשלוח את הפרמטרים גם ככותרות HTTP בשם X- ואחריו שם הפרמטר (למשל X-Phone, X-Source-Number). כשאותו פרמטר מגיע בכמה דרכים, הכתובת או שדה הטופס קובעים, אחריהם גוף ה-JSON, ואחריו הכותרת.


שליחת תבנית

עם sms_template_id המערכת לוקחת מהתבנית את ההודעה ואת השולח, וממלאת את השדות שבה (למשל {customers.first_name}, {workers.first_name}) בפרטי הלקוח והעובד.

  • יש לשלוח user_id. בלעדיו השדות לא מתמלאים וההודעה יוצאת עם שמות השדות כפי שנכתבו.
  • message או source_number שנשלחים בבקשה מחליפים את אלה של התבנית.

שליחה מאוחרת

שולחים ההודעה יוצאת
בלי date ובלי time מיד
date וגם time ביום ובשעה האלה
רק date באותו יום בשעה 09:00
רק time היום בשעה הזו
מועד שעבר, או פחות מ-3 דקות מעכשיו מיד

הגבלות

הודעה אחת ללקוח בדקה. בקשה נוספת לאותו לקוח בתוך 60 שניות מקבלת קוד 6.


דוגמאות

מהקו שלכם (בלי did)

GET https://<your-crm>.mindc.co/api/send_sms.php?phone=0501234567&source_number=035551234&message=התור שלך אושר&user_id=42

תבנית, לפי מזהה שיוך

GET https://<your-crm>.mindc.co/api/send_sms.php?sms_template_id=7&repository_assign_id=555&phone=0501234567&user_id=42

תבנית, לפי טלפון וקו

GET https://<your-crm>.mindc.co/api/send_sms.php?sms_template_id=7&phone=0501234567&did=035551234&user_id=42

שליחה מתוזמנת ב-JSON (did בכתובת)

POST https://<your-crm>.mindc.co/api/send_sms.php?did=035551234
Content-Type: application/json

{ "phone": "0501234567", "source_number": "035551234", "message": "תזכורת: הפגישה שלך מחר בשעה 10:00", "user_id": 42, "date": "2026-11-02", "time": "09:00:00" }

התשובה

כל תשובה היא JSON עם stat_code, description ו-data (אותו טקסט כמו description).

הבקשה הגיעה לספק ה-SMS (HTTP 200, stat_code 0)

stat_code 0 אומר שהמערכת העבירה את ההודעה לספק. האם הספק קיבל אותה כתוב ב-description, שמכיל טקסט JSON: res הוא true או false, ו-response מכיל את ה-status של הספק (0 = התקבלה) ואת ה-message.

נשלחה

{ "stat_code": 0, "description": "{\"res\":true,\"response\":{\"status\":\"0\",\"message\":\"SMS sent successfully\"}}", "data": "..." }

תוזמנה

{ "stat_code": 0, "description": "{\"res\":true,\"response\":{\"status\":\"0\",\"message\":\"SMS scheduled for 02/11/2026 09:00\"}}", "data": "..." }

הספק סירב (למשל שולח לא מאומת). גם כאן stat_code הוא 0, לכן תמיד יש לבדוק את res:

{ "stat_code": 0, "description": "{\"res\":false,\"response\":{\"status\":\"<code>\",\"message\":\"<הסיבה מהספק>\"}}", "data": "..." }

התשובה יכולה לכלול שדות נוספים מהספק; קראו רק את מה שאתם צריכים.

שגיאות (HTTP 500)

קוד משמעות
1 חסר פרמטר חובה (phone, message או source_number), או ש-user_id / did לא תקינים.
2 הטלפון אינו מספר נייד ישראלי בפורמט הנכון.
3 ההודעה ארוכה מ-500 בתים.
4 ב-source_number יש תווים שאינם אותיות באנגלית, ספרות ורווחים, או שהוא ארוך מ-12.
5 אין תבנית עם ה-sms_template_id הזה.
6 נשלחה הודעה ללקוח הזה לפני פחות מדקה.
501 הקו (did, או source_number כשאין did) אינו אחד מקווי המערכת שלכם, ולכן הפרויקט של הלקוח לא ידוע.
700 המערכת לא הצליחה להוסיף את הטלפון כלקוח (למשל אין בפרויקט שדה טלפון).
601 הלקוח נמצא אך לא ניתן היה לטעון אותו.

השגיאות 501, 700 ו-601 מגיעות משלב איתור הלקוח ויש בהן רק stat_code ו-description.


ראו גם: ממשקי API (קריאה ועדכון של לקוחות), תבניות SMS, היסטוריית SMS.