A mirror from Github (https://github.com/dragfyre/bahai-date-api). Unchanged.

Brett Zamir 9aadf6da1d - Fix: JavaScript `Date` `getDay` is for day of week; should be `getDate` há 6 anos atrás
api 9aadf6da1d - Fix: JavaScript `Date` `getDay` is for day of week; should be `getDate` há 6 anos atrás
vendor c7dcab448c initial commit há 8 anos atrás
.editorconfig 11c0fc84ba - Docs: Use syntax highlighting for JSON samples; use diacritics há 6 anos atrás
.eslintignore 11c0fc84ba - Docs: Use syntax highlighting for JSON samples; use diacritics há 6 anos atrás
.eslintrc.js 59aed69275 - Breaking change: Check argument to script (`process.argv`) instead of environmental variable for port (recommended to avoid env. vars.: https://eslint.org/docs/rules/no-process-env ) há 6 anos atrás
.gitignore c7dcab448c initial commit há 8 anos atrás
LICENSE-ISC.txt 2b759c8f46 - Add LICENSE-ISC.txt file per `package.json` há 6 anos atrás
README.md 7081b499ff - Use GET over POST since results are idempotent há 6 anos atrás
package-lock.json 59aed69275 - Breaking change: Check argument to script (`process.argv`) instead of environmental variable for port (recommended to avoid env. vars.: https://eslint.org/docs/rules/no-process-env ) há 6 anos atrás
package.json 59aed69275 - Breaking change: Check argument to script (`process.argv`) instead of environmental variable for port (recommended to avoid env. vars.: https://eslint.org/docs/rules/no-process-env ) há 6 anos atrás
server.js 59aed69275 - Breaking change: Check argument to script (`process.argv`) instead of environmental variable for port (recommended to avoid env. vars.: https://eslint.org/docs/rules/no-process-env ) há 6 anos atrás

README.md

Baháʼí Date RESTful API

So far, there are two endpoints for this API:

POST /today

Returns today's date according to the Baháʼí/Badí' calendar via POST request.

GET /date

Given a date from the Gregorian calendar defined via GET data, returns the corresponding date in the Baháʼí calendar.

Running

To launch the API server, simply navigate to the main folder and type npm start.

Examples

From either endpoint, the output is returned in a similar format: a JSON object containing a message, a Baháʼí calendar date, and a Gregorian date/time.

Today

URL: localhost:1844/today

{
    "message": "Today is 13 Masá’il 174",
    "badi_date": {
        "year": 174,
        "month": 14,
        "day": 13,
        "month_name": "Masá’il"
    },
    "greg_date": {
        "year": 2017,
        "month": 12,
        "day": 5,
        "hour": 23,
        "minute": 19,
        "second": 12
    }
}

May 23, 1844

URL: localhost:1844/date?year=1844&month=5&day=23&hour=20&minute=45

Output:

{
    "message": "The date is: 9 ‘Aẓamat 1",
    "badi_date": {
        "year": 1,
        "month": 3,
        "day": 9,
        "month_name": "‘Aẓamat"
    },
    "greg_date": {
        "year": 1844,
        "month": 5,
        "day": 23,
        "hour": 20,
        "minute": 45,
        "second": 0
    }
}

February 15, 2014

URL: localhost:1844/date?year=2014&month=2&day=15&hour=13&minute=45

Output:

{
    "message": "The date is: 10 Mulk 170",
    "badi_date": {
        "year": 170,
        "month": 17,
        "day": 10,
        "month_name": "Mulk"
    },
    "greg_date": {
        "year": 2014,
        "month": 2,
        "day": 15,
        "hour": 13,
        "minute": 45,
        "second": 0
    }
}