חברה שנרשמה זה עתה, שינתה שם, עברה כתובת או שינתה צורה משפטית היא לעיתים קרובות חברה שמתחילה לקנות. ה-API עוקב אחרי החשבונות שב-CRM, שולח לכם את השינוי מרשות התאגידים ומציג את החברות שנוספו לרשם. תמיד ברמת החברה בלבד, בלי נתונים אישיים לשיווק.
לישראל ה-API מתעד הופעה של חברה חדשה ברשם ושינויים בשם, בכתובת הרשומה, בצורה המשפטית ובסטטוס. לכל שינוי יש event_type:
| שינוי | event_type | למה זה חשוב למכירות |
|---|---|---|
| חברה חדשה ברשם | new_incorporation | חברה חדשה צריכה בנק, רואה חשבון, ביטוח, תוכנה ומשרד |
| שינוי שם | name_change | מיתוג מחדש פותח מחדש חוזים, חשבוניות ומערכות |
| שינוי כתובת רשומה | address_change | משרד חדש: שיפוצים, שירותים וספקים מקומיים |
| שינוי צורה משפטית | legal_form_change | הסבת החברה משנה חוזים וצרכים |
| חברה שחזרה לפעילות | reactivation | חברה שחזרה להיות פעילה, למשל אחרי הליך מחיקה, עשויה לחדש רכישות |
| פירוק מרצון או בצו בית משפט, כינוס נכסים, הסדר, חדלות פירעון | liquidation, insolvency | עוצרים את המכירה, מגינים על החשבונית ומנקים את ה-CRM |
| מחיקת החברה או הסרתה מנתוני הרשם | dissolution, other | מנקים את ה-CRM ומפסיקים לפנות לחברה שאינה קיימת |
אין הון מניות בנתוני ישראל, ולכן אין אירועי capital_change. לכל אירוע יש previous_value ו-new_value, כך שרואים מה השתנה בלי קריאה נוספת.
נתוני ישראל מתעדכנים בכל יום עבודה. האירוע מתוארך לפי המועד שבו השינוי הופיע לראשונה בנתוני הרשם (event_date), ולא לפי תאריך הרישום ברשם, וההיסטוריה מתחילה בטעינה הראשונה, באוקטובר 2026. לפני שפותחים משימה, השוו את שני הערכים: שינוי שם יכול להיות רק הוספה או הסרה של הסיומת בע"מ (כך היה באחד האירועים שבדקנו), וזה לא מיתוג מחדש.
מאתרים את הרשומה של כל חשבון פעם אחת, מפעילים מעקב עם POST /monitor ושומרים את המזהה מה-CRM כ-label: הוא חוזר בכל התראה. המעקב לא עולה קרדיטים ומתייחס רק למה שקורה אחרי שהופעל; את העבר של חברה קוראים עם GET /company-events/search?country=IL&company_number=520013954 (2 קרדיטים).
import requests
BASE = "https://api.prometiam.com/functions/v1/risk-api"
H = {"Authorization": "Bearer rk_live_..."}
# החשבונות שלכם כפי שה-CRM מחזיק אותם: ח.פ. ומזהה ב-CRM
accounts = [("520013954", "crm-1001"), ("520042821", "crm-1002")]
for hp, crm_id in accounts:
r = requests.get(f"{BASE}/companies/search", headers=H,
params={"country": "IL", "company_number": hp})
r.raise_for_status()
hits = r.json()["data"]
if not hits:
continue
m = requests.post(f"{BASE}/monitor", headers=H, json={
"company_id": hits[0]["id"],
"country": "IL",
"label": crm_id, # חוזר בכל התראה
"events": ["corporate_event", "status_change", "dissolution"],
"webhook_url": "https://example.com/hooks/prometiam",
})
m.raise_for_status()
secret = m.json()["data"]["webhook_secret"] # מוצג פעם אחת: שמרו אותו
כל התראה נחתמת. הכותרת X-Prometiam-Signature מכילה sha256= ואת ה-HMAC-SHA256 של גוף הבקשה, מחושב עם webhook_secret ש-POST /monitor מחזיר פעם אחת בלבד. בדקו את החתימה לפני שיוצרים משימה לנציג המכירות; תשובת 2xx מאשרת קבלה, ואחרת המסירה נשלחת שוב.
import hashlib, hmac, json, os
SECRET = os.environ["PROMETIAM_WEBHOOK_SECRET"].encode() # webhook_secret מ-POST /monitor
def norm(name):
return (name or "").replace('בע"מ', "").strip()
def handle_alert(body: bytes, signature: str) -> int:
"""body: גוף הבקשה כפי שהתקבל; signature: הכותרת X-Prometiam-Signature."""
mine = "sha256=" + hmac.new(SECRET, body, hashlib.sha256).hexdigest()
if not hmac.compare_digest(signature, mine):
return 401
alert = json.loads(body)
d = alert["detail"]
# alert["label"] = המזהה ב-CRM, alert["alert_type"], alert["company"]["name"], alert["event_date"]
if d.get("event_type") == "name_change" and norm(d["previous_value"]) == norm(d["new_value"]):
return 204 # רק הסיומת בע"מ השתנתה: לא פותחים משימה
... # יוצרים משימה לבעל החשבון alert["label"]
return 204
Webhook זמין בכל החבילות. אפשר לקרוא את ההתראות גם עם GET /monitor (המעקבים שלכם ו-50 ההתראות האחרונות), כך שמשימה לילית יכולה להחליף את ה-webhook. בניסיון אפשר לעקוב אחרי 3 חברות, ב-Starter אחרי 25, ב-Professional אחרי 250 וב-Scale אחרי 2,500.
בלי שם חברה ובלי ח.פ., אותה קריאה היא פיד האירועים של המדינה: כל מה שנראה ברשם, מהחדש לישן, עם סינון לפי event_type. ברירת המחדל של date_from היא לפני 7 ימים, ואפשר להגיע לכל היותר 31 ימים אחורה (תאריך ישן יותר נדחה בשגיאה 400). קריאה אחת עולה 2 קרדיטים ומחזירה עד 100 אירועים, והעמוד הבא מתקבל עם next_cursor.
# כל מעברי הכתובת שנראו ברשם בשבוע האחרון, מהחדש לישן (100 אירועים בקריאה) # ב-macOS: date -v-7d +%F במקום date -d '7 days ago' +%F curl "https://api.prometiam.com/functions/v1/risk-api/company-events/search?country=IL&event_type=address_change&date_from=$(date -d '7 days ago' +%F)&limit=100" \ -H 'Authorization: Bearer rk_live_...'
הפיד מכסה לכל היותר 31 ימים אחורה, ולכן קוראים אותו לפחות פעם בחודש. משימה שרצה לעיתים קרובות שומרת את ה-event_date האחרון שראתה, ממשיכה ממנו ומסננת כפילויות לפי ה-id של האירוע.
founded_after מונה חברות שהתאגדו מתאריך מסוים והלאה, בלי שם, מהחדשה לישנה: עד 100 חברות בקריאה, קרדיט אחד, ועם next_cursor לעמוד הבא. לכל רשומה יש founding_date, עיר בעברית ב-city, מחוז ב-region (באנגלית, למשל TEL AVIV DISTRICT) ואת השם באנגלית ב-registry_details.name_en.
# חברות שהתאגדו מ-1 באוקטובר, מהחדשה לישנה (100 בקריאה) curl 'https://api.prometiam.com/functions/v1/risk-api/companies/search?country=IL&founded_after=2026-10-01&limit=100' \ -H 'Authorization: Bearer rk_live_...'
אין קוד פעילות ואין הון בנתוני ישראל, ולכן אי אפשר לסנן חברות חדשות לפי ענף או הון (פרמטר cnae= נדחה בשגיאה 400). את הסינון לפי עיר או מחוז עושים בקוד שלכם:
def new_companies(since, city="תל אביב - יפו"):
"""חברות שהתאגדו מתאריך נתון בעיר נתונה (משתמש ב-requests, BASE ו-H מלמעלה)."""
cursor = None
while True:
params = {"country": "IL", "founded_after": since, "limit": 100}
if cursor:
params["cursor"] = cursor
r = requests.get(f"{BASE}/companies/search", headers=H, params=params)
r.raise_for_status()
body = r.json()
for c in body["data"]:
if c["city"] == city:
yield c["company_number"], c["company_name"], c["founding_date"]
cursor = body["pagination"]["next_cursor"]
if not cursor:
break
meta.data_as_of מראה את התאריך שאליו מתייחסים הנתונים. כל חברה שמופיעה ברשם מקבלת גם אירוע new_incorporation. כל עמוד של 100 חברות עולה קרדיט אחד, ולכן כדאי להגביל את since לתקופה שצריך.
vat נדחה), ולכן אין אירועי הון וסינון לפי ענף.registry_details.name_en כשהרשם מחזיק אחד.המעקב לא עולה קרדיטים: החבילה קובעת אחרי כמה חברות עוקבים (3 בניסיון, 25 ב-Starter, 250 ב-Professional ו-2,500 ב-Scale; webhooks זמינים בכל החבילות). חיפוש חברה עולה קרדיט אחד, וחיפוש אירועים או קריאה לפיד המדינה 2 קרדיטים; שגיאות אינן עולות כלום. בניסיון, חיפושי אירועים (כולל פיד המדינה) מוגבלים ל-25 קריאות בחודש; מחבילת Starter אין מגבלה זו. Starter עולה 9.99 אירו לחודש ומקנה 1,000 קרדיטים, Professional 29.99 אירו ו-10,000 קרדיטים, Scale 99.99 אירו ו-50,000 קרדיטים. הניסיון החינמי נמשך 14 יום וכולל 500 קרדיטים: נדרש כרטיס אשראי, ובמהלכו לא מתבצע חיוב; לאחר מכן תחול חבילת Starter (9.99 אירו לחודש), אלא אם תבטלו. ראו את עמוד התמחור.
Contains information from the Israeli Corporations Authority, Ministry of Justice, via data.gov.il (used under the data.gov.il terms of use). Adapted by Prometiam; not an official register extract.
התחילו ניסיון חינם ל-14 יום · תיעוד ה-API
הניסיון נמשך 14 יום וכולל 500 קרדיטים. נדרש כרטיס אשראי, ובמהלך הניסיון לא מתבצע חיוב; לאחר מכן תחול חבילת Starter (9.99 אירו לחודש), אלא אם תבטלו.