חוקי API: הבדלים בין גרסאות בדף
(הוספת כותרת עבור רשימת קודי שגיאה) |
|||
(7 גרסאות ביניים של 2 משתמשים אינן מוצגות) | |||
שורה 2: | שורה 2: | ||
יצירה או עריכת חוקי API מתבצעת כברירת מחדל בתפריט הראשי: "פרויקטים" ← "ניהול" ← "חוקי API". | יצירה או עריכת חוקי API מתבצעת כברירת מחדל בתפריט הראשי: "פרויקטים" ← "ניהול" ← "חוקי API". | ||
__TOC__ | |||
=== יצירת חוק API === | === יצירת חוק API === | ||
כדי ליצור API חדש תחילה יש לבחור את הפרויקט ואת המאגר שמשויך לפרויקט שאליו נרצה לשייך את הלקוחות שיגיעו דרך ה API. | כדי ליצור API חדש תחילה יש לבחור את הפרויקט ואת המאגר שמשויך לפרויקט שאליו נרצה לשייך את הלקוחות שיגיעו דרך ה API. | ||
שורה 39: | שורה 39: | ||
=== קישור ה API === | === קישור ה API === | ||
לנוחיותכם, מובאים כאן הגדרות התממשקות ל-API של Make ושל Zapier. | |||
* [[Make (Integromat)|להגדרות של Make (לשעבר Integromat)]] | |||
*[[חיבור MAKE APP|להגדרות שימוש ב-Make App]] | |||
* [[Zapier|להגדרות של Zapier]] | |||
=== סוגי תשובות ה-API === | |||
מצ"ב קודי תשובות מה-API וההסברים. התשובה המחוזרת היא בפורמט JSON הבא:<syntaxhighlight lang="json"> | |||
{ | |||
"result": <true/false>, | |||
"data": [ | |||
{ | |||
"code": <int>, //0 for success, other for failure | |||
"message": <string>, // describes the error for failure, or record id for success | |||
"status": <success/duplicate>, // for success and duplicate results. for failure, will not exists. | |||
"repository assign id": <int> // relations id of the customers, or for the given customer | |||
} | |||
], | |||
"id": <int> // id of the request | |||
} | |||
</syntaxhighlight>דוגמא לכישלון:<syntaxhighlight lang="json"> | |||
{ | |||
"result": false, | |||
"data": [ | |||
{ | |||
"code": 12, | |||
"message": "IP [1.1.1.1] is not allowed for API 1" | |||
}, | |||
{ | |||
"code": 13, | |||
"message": "Authentication key mismatch for API 1" | |||
}, | |||
{ | |||
"code": 14, | |||
"message": "Incorrect request type for API 1" | |||
}, | |||
{ | |||
"code": 15, | |||
"message": "No customer fields found in request" | |||
} | |||
], | |||
"id": "11337" | |||
} | |||
= | </syntaxhighlight>דוגמא להצלחה:<syntaxhighlight lang="json"> | ||
{ | |||
"result": true, | |||
"data": [ | |||
{ | |||
"code": 0, | |||
"message": "4992062", | |||
"status": "success", | |||
"repository assign id": "4992062", | |||
} | |||
], | |||
"id": "11308" | |||
} | |||
</syntaxhighlight>דוגמא לתשובה כאשר הלקוח קיים (ונפסל על כפילות):<syntaxhighlight lang="json"> | |||
{ | |||
"result": true, | |||
"data": [ | |||
{ | |||
"code": 40, | |||
"message": "Customer already exists", | |||
"status": "duplicate", | |||
"repository assign id": 4992063 | |||
} | |||
], | |||
"id": "11336" | |||
} | |||
</syntaxhighlight> | |||
=== רשימת קודי שגיאה עבור חוקי API === | |||
להלן רשימה מלאה של קודי השגיאה המוחזרים | |||
{| class="wikitable" | |||
|error id | |||
|error message | |||
|explanation | |||
|- | |||
|0 | |||
|<id of customer> | |||
|הצלחה, מחזיר את מזהה שיוך הלקוח למאגר במערכת | |||
|- | |||
|1 | |||
|Empty request | |||
|התקבלה בקשה ללא שדות כלל | |||
|- | |||
|2 | |||
|Authentication key not provided | |||
|התקבלה בקשה ללא מפתח זיהוי | |||
|- | |||
|3 | |||
|Project needed but not exists | |||
|התקבלה בקשה ל-API כללי ללא מזהה פרויקט | |||
|- | |||
|10 | |||
|API status is not active | |||
|ה-API המבוקש אינו פעיל | |||
|- | |||
|11 | |||
|The Ip field is invalid | |||
|התרחשה שגיאה בפיענוח IP של מבקש הבקשה | |||
|- | |||
|12 | |||
|IP [<ip>] is not allowed | |||
|התקבלה בקשה מכתובת IP לא מאושרת | |||
|- | |||
|13 | |||
|Authentication key mismatch | |||
|מפתח האימות שהתקבל אינו תואם למפתח האימות שהוגדר לבקשה | |||
|- | |||
|14 | |||
|Incorrect request type | |||
|סוג הבקשה שהתקבלה אינו תואם לסוג הבקשה שהוגדר | |||
|- | |||
|15 | |||
|No customer fields found in request | |||
|לא נמצאו שדות לקוח בבקשה שהתקבלה | |||
|- | |||
|17 | |||
|No API rule found for given auth_key | |||
|לא נמצאה הגדרת API עבור מפתח האימות שהתקבל | |||
|- | |||
|18 | |||
|No API rule found for rule fields | |||
|לא נמצאה הגדרת API עבור שדה החיפוש שהוגדר (sid) | |||
|- | |||
|19 | |||
|Api rule is inactive for the given field | |||
|שיוך חוק ה-API לפי שדה החיפוש שהוגדר אינו פעיל | |||
|- | |||
|20 | |||
|Requests limit exceeded | |||
|מספר הבקשות שהתקבלו חורגות מהמותר | |||
|- | |||
|21 | |||
|Failed requests limit exceeded | |||
|מספר הבקשות שנכשלו חורגות מהמותר | |||
|- | |||
|30 | |||
|Invalid phone fields found | |||
|שדה טלפון שהתקבל לא תקין | |||
|- | |||
|31 | |||
|Phone <field id> (phone type) invalid | |||
|הערך <field id> אינו מספר טלפון תקין | |||
|- | |||
|32 | |||
|Fholder <fieldnumber> is invalid | |||
|הערך בשדה <fieldnumber> אינו תקין | |||
|- | |||
|40 | |||
|Record already exists | |||
|הלקוח קיים במערכת וסומן ככפול לפי הגדרות בקשת ה-API | |||
|- | |||
|41 | |||
|Insert customer status error | |||
|קביעת סטטוס ללקוח נכשלה | |||
|- | |||
|42 | |||
|Insert customer details error | |||
|הכנסת פרטי הלקוח לבסיס הנתונים נכשלה | |||
|- | |||
|43 | |||
|Black list customer | |||
|לקוח ברשימה שחורה | |||
|- | |||
|99 | |||
|Could not insert request | |||
|התרחשה שגיאה בהכנסת הבקשה לבסיס הנתונים | |||
|} |
גרסה אחרונה מ־10:59, 24 ביולי 2025
מערכת ה CRM מאפשרת לקבל לקוחות למאגרים קיימים על-ידי API וכך לקבל את הלידים שמגיעים מפרסומים ישירות למאגר הלקוחות במערכת.
יצירה או עריכת חוקי API מתבצעת כברירת מחדל בתפריט הראשי: "פרויקטים" ← "ניהול" ← "חוקי API".
יצירת חוק API
כדי ליצור API חדש תחילה יש לבחור את הפרויקט ואת המאגר שמשויך לפרויקט שאליו נרצה לשייך את הלקוחות שיגיעו דרך ה API.
לאחר שנבחר מאגר ההערה שבכחול "עליך לבחור מאגר בכדי להתחיל לערוך חוקי API" תתחלף ל '+'.
כאשר נלחץ על ה'+' נעבור לתהליך יצירת חוק API חדש עם ארבעה שלבים:
- בחירת שדות: בשלב זה נבחר את השדות אותם נרצה שה API ימלא במאגר כאשר הוא מקבל נתוני הלקוחות.
- הגדרות API:
- שיטת גישה לחוק API: נדרש לבחור את שיטת משלוח ה-API (יש להתאים את השיטה לצורת השליחה של מקור ה-API).
- הגבל את סך הבקשות בפרק זמן מסוים: מגביל את סך בקשות ה API שיכולות להתקבל בפרק זמן מוגדר (עוזר למניעת ספאם).
- הגבל את מספר הבקשות שנכשלו בפרק זמן מסוים: מגביל את מספר בקשות ה API שנכשלו בעת קבלתם (עוזר למניעת ספאם).
- סוג חוק API:
- סטטוס לקוח: לקוחות שייכנסו דרך ה API הסטטוס יוגדר להם כפי הסטטוס שנבחר ב "סטטוס לקוח". (שדה זה אינו שדה חובה).
- הגדרות API:
- לקוח ממקור אורגני: לקוחות ממקור אורגני מקבלים עדיפות על לקוחות ממקור שאינו אורגני ולכן אם קיים לקוח ממקור לא אורגני ואותו לקוח התווסף ממקור אורגני הפרטים של הלקוח התעדכנו לפי המקור האורגני.
- אם הלקוח כבר קיים במערכת: לקוח ייחשב כפול אם לא עבר פרק הזמן שהוגדר בשדה זה.
- בחירת מגבלות IP: ההתחברות ה API מתבצעות לפי כתובות IP, יש לבדוק את הגבלות ה IP של הממשק אליו אתם מתחברים. לדוגמא, integromat (make) מצריך אישור כתובת IP לפי המסמך באתר שלהם.
בסיום התהליך יש ללחוץ על "אישור" וייווצר חוק API חדש. המשויך למאגר שהגדרנו.
עריכת חוק API קיים
קיימת אפשרות לערוך חוק API קיים על-ידי לחיצה ימנית בעכבר על חוק ה API אותו נרצה לשנות.
לאחר הלחיצה יפתחו מספר אפשרויות:
- הצגת קישור: מציג את הקישור של ה API. בעזרת הקישור מתחברים ל integromat, zapier וכו'.
- עריכת חוק: מאפשר לערוך את כל השלבים שעברנו עליהם בעת יצירת חוק ה API.
- שכפול חוק: מאפשר לשכפל חוק API במידה ונרצה ליצור חוק API עם הגדרות זהות לחוק API חדש.
- יצירת מפתח חדש: בחירה באפשרות זו תשנה את המפתח של חוק ה API.
- היסטוריית בקשות: מאפשר לצפות בכל בקשות ה API שהתקבלו.
- מחיקת חוק: מוחק את חוק ה API.
קישור ה API
לנוחיותכם, מובאים כאן הגדרות התממשקות ל-API של Make ושל Zapier.
סוגי תשובות ה-API
מצ"ב קודי תשובות מה-API וההסברים. התשובה המחוזרת היא בפורמט JSON הבא:
{
"result": <true/false>,
"data": [
{
"code": <int>, //0 for success, other for failure
"message": <string>, // describes the error for failure, or record id for success
"status": <success/duplicate>, // for success and duplicate results. for failure, will not exists.
"repository assign id": <int> // relations id of the customers, or for the given customer
}
],
"id": <int> // id of the request
}
דוגמא לכישלון:
{
"result": false,
"data": [
{
"code": 12,
"message": "IP [1.1.1.1] is not allowed for API 1"
},
{
"code": 13,
"message": "Authentication key mismatch for API 1"
},
{
"code": 14,
"message": "Incorrect request type for API 1"
},
{
"code": 15,
"message": "No customer fields found in request"
}
],
"id": "11337"
}
דוגמא להצלחה:
{
"result": true,
"data": [
{
"code": 0,
"message": "4992062",
"status": "success",
"repository assign id": "4992062",
}
],
"id": "11308"
}
דוגמא לתשובה כאשר הלקוח קיים (ונפסל על כפילות):
{
"result": true,
"data": [
{
"code": 40,
"message": "Customer already exists",
"status": "duplicate",
"repository assign id": 4992063
}
],
"id": "11336"
}
רשימת קודי שגיאה עבור חוקי API
להלן רשימה מלאה של קודי השגיאה המוחזרים
error id | error message | explanation |
0 | <id of customer> | הצלחה, מחזיר את מזהה שיוך הלקוח למאגר במערכת |
1 | Empty request | התקבלה בקשה ללא שדות כלל |
2 | Authentication key not provided | התקבלה בקשה ללא מפתח זיהוי |
3 | Project needed but not exists | התקבלה בקשה ל-API כללי ללא מזהה פרויקט |
10 | API status is not active | ה-API המבוקש אינו פעיל |
11 | The Ip field is invalid | התרחשה שגיאה בפיענוח IP של מבקש הבקשה |
12 | IP [<ip>] is not allowed | התקבלה בקשה מכתובת IP לא מאושרת |
13 | Authentication key mismatch | מפתח האימות שהתקבל אינו תואם למפתח האימות שהוגדר לבקשה |
14 | Incorrect request type | סוג הבקשה שהתקבלה אינו תואם לסוג הבקשה שהוגדר |
15 | No customer fields found in request | לא נמצאו שדות לקוח בבקשה שהתקבלה |
17 | No API rule found for given auth_key | לא נמצאה הגדרת API עבור מפתח האימות שהתקבל |
18 | No API rule found for rule fields | לא נמצאה הגדרת API עבור שדה החיפוש שהוגדר (sid) |
19 | Api rule is inactive for the given field | שיוך חוק ה-API לפי שדה החיפוש שהוגדר אינו פעיל |
20 | Requests limit exceeded | מספר הבקשות שהתקבלו חורגות מהמותר |
21 | Failed requests limit exceeded | מספר הבקשות שנכשלו חורגות מהמותר |
30 | Invalid phone fields found | שדה טלפון שהתקבל לא תקין |
31 | Phone <field id> (phone type) invalid | הערך <field id> אינו מספר טלפון תקין |
32 | Fholder <fieldnumber> is invalid | הערך בשדה <fieldnumber> אינו תקין |
40 | Record already exists | הלקוח קיים במערכת וסומן ככפול לפי הגדרות בקשת ה-API |
41 | Insert customer status error | קביעת סטטוס ללקוח נכשלה |
42 | Insert customer details error | הכנסת פרטי הלקוח לבסיס הנתונים נכשלה |
43 | Black list customer | לקוח ברשימה שחורה |
99 | Could not insert request | התרחשה שגיאה בהכנסת הבקשה לבסיס הנתונים |