We are pleased to offer support for REST API for Torah Reading for full kriyah leyning on Shabbat and holidays, Triennial (optionally) for Shabbat, and weekday readings on Mondays & Thursdays.
Here’s the basic URL format:
https://www.hebcal.com/leyning?cfg=json&start=2022-09-21&end=2022-09-26
As with all Hebcal.com REST APIs:
- Both HTTP and HTTPS (HTTP/2) are supported. Although most of the Web has moved to HTTPS, if you wish to reduce CPU overhead on your client you may continue to use plain (port 80) HTTP for API requests
- We encourage HTTP caching proxies. Proper Cache-Control and Expires are generated in the response
- We support both gzip and br (brotli) compression; set the appropriate Accept-Encoding header in your request to enable
- We support HTTP Keep-Alive for multiple requests
Parameters and their meanings
- cfg=json – output JSON. Required
- start=2021-01-15 – start date using YYYY-MM-DD format
- end=2021-01-22 – end date using YYYY-MM-DD format
- Results will be truncated to 180 days if the end date is more than 180 days after the start date
- Diaspora vs. Israel
- i=off – Diaspora holidays and Torah readings (default if unspecified)
- i=on – Israel holidays and Torah readings
- triennial=off – reduce size of JSON by disabling Triennial aliyot details (default on when in Diaspora)
Example output
{ "date": "2022-10-03T18:41:57.168Z", "location": "Diaspora", "range": { "start": "2022-09-21", "end": "2022-09-26" }, "items": [ { "date": "2022-09-22", "hdate": "26 Elul 5782", "name": { "en": "Nitzavim", "he": "נִצָּבִים" }, "parshaNum": 51, "weekday": { "1": {"k": "Deuteronomy", "b": "29:9", "e": "29:11", "v": 3}, "2": {"k": "Deuteronomy", "b": "29:12", "e": "29:14", "v": 3}, "3": {"k": "Deuteronomy", "b": "29:15", "e": "29:28", "v": 14} } }, { "date": "2022-09-24", "hdate": "28 Elul 5782", "name": { "en": "Nitzavim", "he": "נִצָּבִים" }, "parshaNum": 51, "summary": "Deuteronomy 29:9-30:20", "fullkriyah": { "1": {"k": "Deuteronomy", "b": "29:9", "e": "29:11", "v": 3}, "2": {"k": "Deuteronomy", "b": "29:12", "e": "29:14", "v": 3}, "3": {"k": "Deuteronomy", "b": "29:15", "e": "29:28", "v": 14}, "4": {"k": "Deuteronomy", "b": "30:1", "e": "30:6", "v": 6}, "5": {"k": "Deuteronomy", "b": "30:7", "e": "30:10", "v": 4}, "6": {"k": "Deuteronomy", "b": "30:11", "e": "30:14", "v": 4}, "7": {"k": "Deuteronomy", "b": "30:15", "e": "30:20", "v": 6}, "M": {"k": "Deuteronomy", "b": "30:15", "e": "30:20", "v": 6} }, "haft": {"k": "Isaiah", "b": "61:10", "e": "63:9", "v": 23}, "haftara": "Isaiah 61:10-63:9", "triennial": { "1": {"k": "Deuteronomy", "b": "29:9", "e": "29:11", "v": 3}, "2": {"k": "Deuteronomy", "b": "29:12", "e": "29:14", "v": 3}, "3": {"k": "Deuteronomy", "b": "29:15", "e": "29:28", "v": 14}, "4": {"k": "Deuteronomy", "b": "30:1", "e": "30:6", "v": 6}, "5": {"k": "Deuteronomy", "b": "30:7", "e": "30:10", "v": 4}, "6": {"k": "Deuteronomy", "b": "30:11", "e": "30:14", "v": 4}, "7": {"k": "Deuteronomy", "b": "30:15", "e": "30:20", "v": 6}, "M": {"k": "Deuteronomy", "b": "30:15", "e": "30:20", "v": 6} }, "triYear": 3, "triHaftara": "Isaiah 65:16-25", "triHaft": {"k": "Isaiah", "b": "65:16", "e": "65:25", "note": "terem yikrau ani e'eneh", "v": 10} }, { "date": "2022-09-26", "hdate": "1 Tishrei 5783", "name": { "en": "Rosh Hashana I", "he": "רֹאשׁ הַשָּׁנָה א׳" }, "fullkriyah": { "1": {"p": 4, "k": "Genesis", "b": "21:1", "e": "21:4", "v": 4}, "2": {"p": 4, "k": "Genesis", "b": "21:5", "e": "21:12", "v": 8}, "3": {"p": 4, "k": "Genesis", "b": "21:13", "e": "21:21", "v": 9}, "4": {"p": 4, "k": "Genesis", "b": "21:22", "e": "21:27", "v": 6}, "5": {"p": 4, "k": "Genesis", "b": "21:28", "e": "21:34", "v": 7}, "M": {"p": 41, "k": "Numbers", "b": "29:1", "e": "29:6", "v": 6} }, "summary": "Genesis 21:1-34; Numbers 29:1-6", "summaryParts": [ {"k": "Genesis", "b": "21:1", "e": "21:34"}, {"k": "Numbers", "b": "29:1", "e": "29:6"} ], "haft": {"k": "I Samuel", "b": "1:1", "e": "2:10", "v": 38}, "haftara": "I Samuel 1:1-2:10" } ] }