זמןzman

ה־API

חותמת זמן יהודית עצמאית, ב־JSON או בטקסט. חינם, ללא מפתח, ללא לוח גרגוריאני.

עקרונות

יחידות וקבועים

שםערךהערה
רגעים בחלק76רמב"ם, הלכות קידוש החודש י, א
חלקים בשעה1,080שם, ו, ב
שעות ביום24מ־18:00 זמן ירושלים הממוצע
רגעים בשעה82,080
חלקים ביום25,920
רגעים ביום1,969,920תמיד, יהא אורך היום אשר יהא
ראשית המנייןרגע 0מוצאי שבת 18:00 הפותח את שבוע מולד תוהו; יום 0 = יום ראשון
מולד תוהו2,395,824יום 1, 5 שעות, 204 חלקים
א' בתשרי שנת איום 1יום שני
חודשים1 – 13ניסן = 1 … אדר = 12 (אדר א׳ בשנה מעוברת), אדר ב׳ = 13
יום בשבוע0 – 6יום ראשון = 0, שבת = 6

נקודות קצה

GET /api/now

הרגע הנוכחי: רגע, יום, שעה, חלק, רגע בתוך החלק, תאריך, יום בשבוע, ואיכות השעון (source: ‏iers או fallback; ‏dut1_age_days: גיל המדידה האחרונה; predicted: ערך DUT1 הוא תחזית).

curl -s https://zman.technology/api/now
{
  "rega": 4163021922875,
  "day": 2113294,
  "hour": 22,
  "chelek": 8,
  "rega_in_chelek": 27,
  "date": {
    "year": 5786,
    "month": 6,
    "month_name": "Elul",
    "month_name_he": "אלול",
    "day": 25
  },
  "weekday": 1,
  "weekday_name_he": "יום שני",
  "clock": {
    "source": "iers",
    "dut1_age_days": 4.6,
    "predicted": true
  }
}

כטקסט:

curl -s -H 'Accept: text/plain' https://zman.technology/api/now
rega     4163021922875
day      2113294  hour 22  chelek 8  rega 27
date     25 Elul 5786 (אלול)
weekday  1 יום שני
clock    source=iers dut1_age_days=4.6 predicted=true

GET /api/rega/{n}

מפענח מספר שלם ליום, שעה, חלק, רגע, תאריך ויום בשבוע. ליום שלפני א' בתשרי שנת א, date הוא null. דוגמה: מולד תוהו.

curl -s https://zman.technology/api/rega/2395824
{
  "rega": 2395824,
  "day": 1,
  "hour": 5,
  "chelek": 204,
  "rega_in_chelek": 0,
  "date": {
    "year": 1,
    "month": 7,
    "month_name": "Tishrei",
    "month_name_he": "תשרי",
    "day": 1
  },
  "weekday": 1,
  "weekday_name_he": "יום שני"
}

GET /api/date/{year}/{month}/{day}

היום הנתון, עם הרגע הראשון שלו (start) והרגע הראשון של היום שאחריו (end, לא כולל). שגיאה 400 אם התאריך אינו קיים (ל' בחשון בשנה חסרה, אדר ב׳ בשנה פשוטה, וכדומה).

curl -s https://zman.technology/api/date/5787/7/1
{
  "date": {
    "year": 5787,
    "month": 7,
    "month_name": "Tishrei",
    "month_name_he": "תשרי",
    "day": 1
  },
  "day": 2113299,
  "weekday": 6,
  "weekday_name_he": "שבת",
  "start": 4163029966080,
  "end": 4163031936000
}

GET /api/molad/{year}/{month}

המולד הממוצע של החודש, ברגעים ובחלקים. המוסכמה היא זו של ההכרזות: שעות נספרות מ־18:00 בערב הקודם. "ליל שבת 20:59 וחלק אחד" מופיע אפוא כיום בשבוע 6 (היום ההלכתי כבר החל), 2 שעות, 1,063 חלקים.

curl -s https://zman.technology/api/molad/5787/7
{
  "rega": 4163030211028,
  "day": 2113299,
  "hour": 2,
  "chelek": 1063,
  "rega_in_chelek": 0,
  "date": {
    "year": 5787,
    "month": 7,
    "month_name": "Tishrei",
    "month_name_he": "תשרי",
    "day": 1
  },
  "weekday": 6,
  "weekday_name_he": "שבת"
}

GET /api/year/{year}

אורך השנה, האם היא מעוברת, ראש השנה, והחודשים בסדר האזרחי עם אורכם ויומם הראשון.

curl -s https://zman.technology/api/year/5787
{
  "year": 5787,
  "length": 385,
  "leap": true,
  "rosh_hashana": {
    "day": 2113299,
    "weekday": 6,
    "weekday_name_he": "שבת"
  },
  "months": [
    {
      "month": 7,
      "name": "Tishrei",
      "name_he": "תשרי",
      "length": 30,
      "start_day": 2113299
    },
    {
      "month": 8,
      "name": "Cheshvan",
      "name_he": "חשון",
      "length": 30,
      "start_day": 2113329
    },
    {
      "month": 9,
      "name": "Kislev",
      "name_he": "כסלו",
      "length": 30,
      "start_day": 2113359
    },
    {
      "month": 10,
      "name": "Tevet",
      "name_he": "טבת",
      "length": 29,
      "start_day": 2113389
    },
    {
      "month": 11,
      "name": "Shevat",
      "name_he": "שבט",
      "length": 30,
      "start_day": 2113418
    },
    {
      "month": 12,
      "name": "Adar I",
      "name_he": "אדר א׳",
      "length": 30,
      "start_day": 2113448
    },
    {
      "month": 13,
      "name": "Adar II",
      "name_he": "אדר ב׳",
      "length": 29,
      "start_day": 2113478
    },
    {
      "month": 1,
      "name": "Nissan",
      "name_he": "ניסן",
      "length": 30,
      "start_day": 2113507
    },
    {
      "month": 2,
      "name": "Iyar",
      "name_he": "אייר",
      "length": 29,
      "start_day": 2113537
    },
    {
      "month": 3,
      "name": "Sivan",
      "name_he": "סיון",
      "length": 30,
      "start_day": 2113566
    },
    {
      "month": 4,
      "name": "Tammuz",
      "name_he": "תמוז",
      "length": 29,
      "start_day": 2113596
    },
    {
      "month": 5,
      "name": "Av",
      "name_he": "אב",
      "length": 30,
      "start_day": 2113625
    },
    {
      "month": 6,
      "name": "Elul",
      "name_he": "אלול",
      "length": 29,
      "start_day": 2113655
    }
  ]
}

GET /api/health

מצב השעון ומטמון ה־IERS. ‏200 כשהכול תקין, 503 במצב מנוון (ללא נתוני IERS).

curl -s https://zman.technology/api/health
{
  "status": "ok",
  "clock": {
    "source": "iers",
    "dut1_age_days": 4.6,
    "predicted": true
  },
  "data": {
    "loaded": true,
    "records": 19976,
    "measured_records": 19603,
    "source": "disk",
    "cache_age_days": 0
  }
}

מה ה־API לעולם לא יחזיר

שום תשובה אינה מכילה תאריך גרגוריאני, חותמת זמן של Unix, שעת UTC או משך בשניות. זו אינה השמטה: זו הנקודה של הפרויקט. המונה הוא מקורי — ראשית המניין יהודית, היחידה היא הרגע, השעון הוא סיבוב כדור הארץ — ותרגומו לזמן האומות יהפוך אותו לנגזרת של בדיוק מה שהוא מבקש להשתחרר ממנו. השנייה של SI והלוח הגרגוריאני קיימים רק בחבילה הקוראת את שעון המחשב; בדיקה אוטומטית עוברת על כל התשובות ואוסרת את השדות והמילים unix, utc, iso, gregorian, seconds. אם אתם זקוקים להמרה, hebcal עושה זאת היטב; כאן לא נעשה זאת.

הנתיבים הישנים ללא קידומת (/now, /rega/…) עונים בהפניה 301 אל /api/….