תצוגה

Rules API: הבירוקרטיה הישראלית כקוד

הנתונים שמאחורי המחשבונים של ניירת, פתוחים למכונה: מדרגות מס, נקודות זיכויסכום קבוע שמוריד לכם את מס ההכנסה.עוד במילון המונחים, שיעורי ביטוח לאומיהמוסד שמשלם קצבאות וגמלאות וגובה דמי ביטוח.עוד במילון המונחים, שכר מינימום, מע"מ ועוד, כל ערך עם תאריך תחילה ומקור רשמי. בלי הרשמה ובלי מידע אישי.

מה זה

מערך נתונים מאומת של כללים ישראליים, עם גרסה לכל תאריך: כל פרמטר (למשל tax.income.brackets.monthly או btl.employee.rates) שמור עם הערך שבתוקף מכל תאריך, היסטוריה, יחידה וקישור למקור הרשמי. מעליו: מחשבונים שמחזירים תוצאה, פירוט וכל פרמטר שהשתמשו בו, לוח ציות לעסק, מרשם טפסים ופיד שינויים.

אותם נוסחים בדיוק כמו המחשבונים באתר: בדיקת השוואה מריצה כל דוגמה מתועדת גם בדפדפן וגם ב-API ומוודאת שהתוצאה זהה.

זה לא ייעוץ משפטי או ייעוץ מס, ואנחנו לא גוף ממשלתי. התוצאה היא הערכה לפי הכללים הכלליים. הנוסח הרשמי והחישוב של הגוף המוסמך קובעים.

כתובות

כתובתמה מקבלים
GET /api/v1/rulesרשימת הכתובות והמחשבונים
GET /api/v1/rules/parameters?q=&prefix=&date=חיפוש פרמטרים וערכם בתאריך
GET /api/v1/rules/parameters/{id}?date=YYYY-MM-DDערך בתאריך, היסטוריה ומקורות
GET /api/v1/rules/datasetכל מערך הנתונים בקובץ אחד
GET /api/v1/rules/calculateרשימת המחשבונים עם סכמת הקלט
POST /api/v1/rules/calculate/{calc}הרצת מחשבון (JSON). GET לאותה כתובת מחזיר את הסכמה ודוגמה
GET /api/v1/rules/deadlines?profile=mursheמועדי דיווח ותשלום ל-12 חודשים (גם format=ics). vat_freq=monthly או bimonthly, adv=monthly, bimonthly או none. מה שלא נמסר מופיע ב-assumptions
GET /api/v1/rules/forms/{id}טופס: מהדורה נוכחית, קישורים רשמיים ומפת שדות (טופס 101כרטיס עובד: ממלאים כשמתחילים לעבוד ובתחילת כל שנה.עוד במילון המונחים)
GET /api/v1/rules/changesפיד שינויים, וגם changes.atom, changes.rss, changes.json
GET /api/v1/rules/openapi.jsonמפרט OpenAPI 3.1 מלא

המחשבונים

calcמה מחשבים
income-taxמס הכנסה לפי מדרגות לשנים 2020 עד 2026, עם נקודות זיכוי ומס יסף
net-salaryשכר נטו מברוטו, או ברוטו מנטו, לשנת 2026
credit-pointsנקודות זיכוי לפי פרופיל: ילדים, שחרור, תואר, עלייה, מילואים
national-insuranceביטוח לאומי ובריאות: עובד, מעסיק ועצמאי
severanceפיצויי פיטורים, סעיף 14ההפקדות החודשיות לפנסיה באות במקום פיצויי הפיטורים.עוד במילון המונחים ותקרת הפטור ממס
unemploymentדמי אבטלה: סכום יומי, מספר ימים וסך הכול
maternityדמי לידה
reserve-payתגמול מילואים, גם לכמה תקופות שירות
work-injuryדמי פגיעה בעבודה
recuperationדמי הבראה במגזר הפרטי
vacation-daysימי חופשה שנתית
notice-periodהודעה מוקדמת והיום האחרון לעבודה
vatהוספת מע"מ או הורדתו, לפי השיעור בכל תאריך מ-1976
purchase-taxמס רכישה על דירה (יחידה, נוספת, עולה)
car-benefitשווי שימוש ברכב והשפעתו על הנטו
rental-income-taxמס על שכר דירה בשלושת המסלולים
depreciationלוח פחת לפי שיעורי התקנות
employer-costעלות מעביד, או ברוטו לפי תקציב
withholdingניכוי במקור מתשלום לספק
surtaxמס יסף, כולל 2% על הכנסה הונית

דוגמאות

curl -s 'https://nayeret.ai/api/v1/rules/parameters/credit_points.value.monthly?date=2026-03-01'
curl -s -X POST https://nayeret.ai/api/v1/rules/calculate/net-salary \
  -H 'content-type: application/json' \
  -d '{"amount": 15000, "sex": "f", "pension_percent": 6}'
const r = await fetch('https://nayeret.ai/api/v1/rules/calculate/unemployment', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({ wage: 8000, age: 35, dependants: 0 }),
}).then((x) => x.json());
console.log(r.outputs.daily, r.outputs.max_days, r.parameters.map((p) => p.id + '@' + p.effective));
curl -s 'https://nayeret.ai/api/v1/rules/deadlines?profile=patur&from=2026-11-01'
curl -s 'https://nayeret.ai/api/v1/rules/changes?type=parameter&since=2026-01-01'

MCP

אותם נתונים בשרת ה-MCP של ניירת (https://nayeret.ai/mcp), בארבעה כלים של הכללים: search_parameters, get_parameter, calculate (בלי inputs הוא מחזיר את סכמת הקלט ודוגמה) ו-list_changes. לשרת יש עוד כלים (טפסים, מדריכים, מכתבים ועוד): הרשימה המלאה ב-tools/list ובדף המפתחים. התשובות קומפקטיות כברירת מחדל, ו-verbose: true מחזיר הכול.

מקורות ואימות

  • כל ערך נבדק מול מקור רשמי (רשות המסים, הביטוח הלאומי, gov.il) או מול כל-זכות כמקור משני, וכתובת המקור שמורה ליד הערך.
  • לכל ערך יש תאריך תחילה. כשתאריך התחילה המקורי לא ידוע, זה כתוב בשדה effective_date_note.
  • לכל פרמטר יש תקופת כיסוי מאומתת (coverage). ביקשתם תאריך לפניה או אחריה? גם בפרמטר וגם במחשבון מקבלים שגיאה 422 (date_out_of_coverage) ולא ניחוש.
  • ערך זמני (למשל תעריף הבראה שעוד לא פורסם) מסומן provisional.
  • סוכנים יומיים בודקים את המקורות. כל שינוי נכנס לפיד השינויים עם תאריך התחילה, תאריך הזיהוי והמקור.
  • חיפוש בלי התאמה, או נושא שלא מכוסה (למשל מיסוי קריפטו), מחזיר not_covered: true עם רשימת הנושאים המכוסים. אל תסיקו ערך מהתאמה קרובה.
  • מחשבון של זכאות (אבטלה, דמי לידה) מחזיר eligible. כשאין זכאות הסכומים הם 0 והסיבה כתובה ב-ineligibility_reasons.
  • השינויים מוצגים גם בעברית פשוטה, עם הדפים שהושפעו ותאריכי התחולה הצפויים, בדף מה השתנה. שם יש גם קובץ יומן (.ics) של השינויים הצפויים.

פרטיות, מגבלות ומפתחות

  • לא שומרים ולא רושמים שום דבר מהבקשה: לא את הקלט, לא את כתובת ה-IP ולא את המפתח. נספרת רק כמות הבקשות לכל כתובת.
  • בלי מפתח: עד 60 בקשות בדקה לכל כתובת IP. התשובה כוללת RateLimit-Limit, RateLimit-Remaining ו-RateLimit-Reset. מעבר למגבלה מקבלים 429 עם Retry-After.
  • מפתח לפיילוט (כותרת x-api-key) נותן מגבלה גבוהה יותר. בקשו מפתח בדף יצירת הקשר. התמחור ייקבע רק אחרי הפיילוט.
  • CORS פתוח: אפשר לקרוא מכל אתר, כולל POST למחשבונים. בלי עוגיות.
  • גוף בקשה עד 16 KB, JSON בלבד. שדה לא מוכר או ערך מחוץ לטווח מחזירים 400 עם הסבר לכל שדה.

רישיון וייחוס

הנתונים הם עובדות עם מקורות. ההצעה היא לפרסם את מערך הנתונים ברישיון CC BY 4.0, וההחלטה עוד לא סופית. כשאתם מציגים מידע מכאן, ציינו "מקור: ניירת (nayeret.ai)" וקשרו למקור הרשמי שבשדה sources.

יש גם ייצוא בפורמט של חבילת מדינה של OpenFisca (קובצי YAML של פרמטרים עם ערכים לפי תאריך ומקורות), כך שגרסת "OpenFisca Israel" היא תרגום ולא כתיבה מחדש.

In English

The Nayeret Rules API is a read-only, stateless API over a verified, date-versioned dataset of Israeli rules: income tax brackets and credit points, National Insurance and health rates and ceilings, minimum wage, VAT, benefits, labour law and small-business rules. Every value has an effective date and an official source URL. On top of it: 20 calculators (the same formulas as the free calculators on the site, parity-tested on every documented worked example), a business compliance calendar, a forms registry and a change feed.

  • Start at GET /api/v1/rules (index) or the OpenAPI 3.1 spec at /api/v1/rules/openapi.json. Every calculator has GET /api/v1/rules/calculate/{calc} (input schema + example) and POST (run).
  • A calculation returns outputs, breakdown, notes and parameters: every parameter used, with its effective date, value and sources. Amounts are in ILS with up to 4 decimals; round to the agora for display.
  • Dates: date (YYYY-MM-DD, a real calendar date) sets the as-of date (default: today in Israel). A date before or after a parameter's verified coverage returns 422 date_out_of_coverage on calculators and on /parameters/{id} alike, never a guess.
  • Searching: GET /parameters?q= understands English and Hebrew (quotes and gershayim are ignored, so מע"מ = מעמ), common synonyms and a year ("minimum wage 2024"). No match or an out-of-scope topic (e.g. crypto) returns not_covered: true with covered_topics.
  • Eligibility: unemployment and maternity return eligible and ineligibility_reasons; when not eligible the amounts are 0 (unemployment also gives amounts_if_eligible). net-salary accepts children (birth years), parent_role, single_parent or a total credit_points.
  • Deadlines: /deadlines?profile=patur|murshe|company&vat_freq=monthly|bimonthly&adv=monthly|bimonthly|none&employees=N. Anything not given is listed in assumptions (bi-monthly VAT is assumed by default). Items have title_en.
  • MCP: search_parameters, get_parameter, calculate, list_changes (with effective_from, offset) alongside the server's other tools (see tools/list). Results are compact; pass verbose: true for everything.
  • Errors are JSON: { "error": { "code", "message", "details" } }. 400 invalid input (per-field list), 404 unknown id (with suggestions), 413, 415, 422, 429.
  • Limits: anonymous 60 requests/minute per IP; pilot API keys (x-api-key) get more. No billing yet. CORS open, no cookies.
  • Privacy: nothing about a request is stored or logged, only counts per endpoint.
  • Change feed: /api/v1/rules/changes (JSON, filters since, effective_from, effective_to, type, target, include_backfill, include_notices, offset), plus Atom, RSS and JSON Feed. Entries marked backfill are history that was in the dataset when the feed started; their detected_on is the effective date. kind: notice marks entries that only say a verified period ends.
  • Not legal or tax advice. Not a government service. Proposed data licence: CC BY 4.0 (pending approval). Please attribute "Source: Nayeret (nayeret.ai)" and link the official source.