מתווכיםתיעוד
חיבור מקורות לידים
כל מקור שיודע לשלוח בקשת HTTP יכול להזרים לידים ישירות למערכת — אתר, מודעות פייסבוק, יד2, קמפיין ממומן או כל כלי אוטומציה. נתיב אחד, ומפתח נפרד לכל ערוץ כדי שתדעו מאיפה הגיע כל ליד.
1. השגת מפתח#
במערכת: ניהול משרד ← אינטגרציות ← מקורות לידים. יוצרים מקור, נותנים לו שם ("פייסבוק", "יד2", "האתר") ומקבלים כתובת ייעודית.
מקור נפרד לכל ערוץ. השם שבחרתם נשמר על כל ליד שנקלט דרכו, וכך רשימת הלידים מראה איזה ערוץ מביא לקוחות. מפתח אחד לכולם עובד — ומאבד בדיוק את המידע הזה.
המפתח שווה ערך לסיסמה: מי שמחזיק בו יכול להזרים לידים למאגר שלכם. לא לפרסם בקוד של דף אינטרנט גלוי.
2. הבקשה#
POST https://app.metavchim.co.il/api/v1/public/leads/<המפתח>
Content-Type: application/json
{
"name": "ישראל ישראלי",
"phone": "050-1234567",
"email": "[email protected]",
"message": "מעוניין בדירת 4 חדרים",
"intent": "buy"
}תשובה 200 עם {"ok":true} פירושה שהפנייה נקלטה.
3. השדות#
| שדה | סוג | חובה | הערות |
|---|---|---|---|
name | string | כן | שם הלקוח. 2–120 תווים. |
phone | string | כן | מספר ישראלי. כל צורה מקובלת — "050-1234567", "+972501234567". |
email | string | — | נשמר על הכרטיס, ומאפשר לזהות פניות עתידיות מאותה כתובת. |
message | string | — | מה הלקוח כתב. עד 2000 תווים, נכנס לציר הזמן של הליד. |
intent | enum | — | buy · sell · rent_in · rent_out · info. חסר ⇒ „לא ידוע”. |
propertyId | string | — | הנכס שהמודעה פרסמה. מזהה שאינו של המשרד — מתעלמים ממנו, הליד נקלט. |
pageUrl | string | — | העמוד שממנו הגיעה הפנייה. נשמר בסיכום. |
שדה שאינו ברשימה יגרום לדחיית הבקשה. זה מכוון: עדיף שתגלו טעות בשם שדה בזמן החיבור, מאשר שהאימייל פשוט לא יישמר ואיש לא ישים לב.
4. מה קורה בצד שלנו#
- הלקוח מזוהה לפי הטלפון. פנייה נוספת מאותו מספר מצטרפת לליד הפתוח במקום לפתוח כפילות.
- לקוח שכבר פנה בעבר ונסגר — הליד החדש נפתח מסומן לטיפול אנושי.
- שליחה כפולה של אותו טופס לא יוצרת שני לידים.
- כל ליד מפעיל את שרשרת האוטומציות: התראה לסוכן, משימת מענה, והתאמות לנכסים.
5. חיבור דרך Make#
אין צורך באפליקציה ייעודית — המודול הגנרי עובד:
- מוסיפים מודול HTTP ← Make a request אחרי הטריגר (Facebook Lead Ads, Google Forms, Webhook…).
- URL: הכתובת שקיבלתם. Method: POST. Body type: Raw, Content type: JSON.
- ב-Request content מדביקים את ה-JSON וגוררים לתוכו את השדות מהטריגר.
{
"name": "{{1.full_name}}",
"phone": "{{1.phone_number}}",
"email": "{{1.email}}",
"message": "{{1.custom_answer}}",
"intent": "buy"
}6. חיבור דרך n8n#
צומת HTTP Request: Method POST, Body Content Type JSON, ו-Specify Body ← Using Fields Below. כל שדה מהטבלה למעלה הופך לשורה, והערך נלקח מהצומת הקודם:
name → {{ $json.full_name }}
phone → {{ $json.phone_number }}
email → {{ $json.email }}
message → {{ $json.message }}7. חיבור בעזרת LLM#
אפשר להעביר את העמוד הזה למודל שפה ולבקש ממנו לבנות את החיבור. נוסח שעובד:
קרא את התיעוד בכתובת:
https://app.metavchim.co.il/docs/api
בנה לי סצנריו ב-Make שלוקח לידים מ-Facebook Lead Ads
ושולח אותם לכתובת הקליטה. המפתח שלי הוא: <המפתח>מפרט OpenAPI לקריאת מכונה: /docs/api.json. את המדריך למערכת אפשר למשוך כ-Markdown מ־ /docs/md.
8. תשובות שגיאה#
| קוד | מה קרה | מה לעשות |
|---|---|---|
| 400 | שדה חסר, שגוי, או שם שדה שאינו מוכר | להשוות לטבלת השדות; גוף התשובה מפרט מה נדחה |
| 404 | המפתח אינו מוכר | להעתיק מחדש את הכתובת ממסך מקורות הלידים |
| 429 | יותר מ-10 פניות בדקה מאותה כתובת | להוסיף השהיה בין שליחות |
9. מרכזיות טלפון#
חיבור מרכזייה אינו עובר דרך הנתיב הזה — הוא מוגדר בניהול משרד ← אינטגרציות ← מרכזייה, ומקבל כתובת משלו. המערכת מזהה את שמות השדות המקובלים (015, Asterisk וכל מרכזייה ששולחת Webhook) ללא הגדרה נוספת.
נתקעתם? יש שדה שהמקור שלכם שולח ואינו ברשימה? כתבו לנו — ההוספה לרוב מהירה.