Api Endpoint

Calendar Converter

Calendar converter: convert a Gregorian date to other calendar systems: Islamic (both the tabular civil calendar and the Umm al-Qura variant), Hebrew, Japanese imperial era, Republic of China, Buddhist and Persian. Also computes Easter Sunday for a year in both the Gregorian and Julian reckonings. Uses the calendar support built into the runtime, with the algorithm named in every response.

Open interactive test console

Offering

Provider
api.duoleads.com
Method
GET
Offering type
Api Endpoint
Transport type
http
Category
General Utilities
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://api.duoleads.com/v1/time/calendar
MIME type
application/json
First seen
2026-10-16T01:50:38.788Z
Last seen
Tags
calendar, calendar-converter, hijri, Time

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.05 USDC
Atomic price: 50000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "50000",
    "payTo": "0xCD673f7e1daD254347AEab6be0DEFe8b9C6b3A39"
  }
]

Observed health

Status
Healthy
Latest latency
36 ms
Average latency
293 ms
HTTP status
402
Last checked
Reachability
100% over 13 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "http"
    },
    "method": {
      "type": "string",
      "enum": [
        "GET"
      ]
    },
    "queryParams": {
      "type": "object",
      "properties": {
        "op": {
          "type": "string",
          "description": "convert (default) a Gregorian date, or easter for a year.",
          "enum": [
            "convert",
            "easter"
          ],
          "maxLength": 64,
          "default": "convert"
        },
        "date": {
          "type": "string",
          "description": "Gregorian date YYYY-MM-DD. Required when op=convert.",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
          "maxLength": 32
        },
        "to": {
          "type": "string",
          "description": "Comma-separated calendar ids: islamic, islamic-umalqura, hebrew, japanese, roc, buddhist, persian. Default all.",
          "maxLength": 256
        },
        "year": {
          "type": "string",
          "description": "Year for op=easter, 326-9999.",
          "pattern": "^[+-]?\\d+$",
          "maxLength": 64
        },
        "rite": {
          "type": "string",
          "description": "Easter reckoning: western (default) or eastern.",
          "enum": [
            "western",
            "eastern"
          ],
          "maxLength": 64,
          "default": "western"
        }
      },
      "required": []
    }
  },
  "required": [
    "type",
    "method"
  ],
  "additionalProperties": false
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "GET"
          ],
          "type": "string"
        },
        "queryParams": {
          "properties": {
            "date": {
              "description": "Gregorian date YYYY-MM-DD. Required when op=convert.",
              "maxLength": 32,
              "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
              "type": "string"
            },
            "op": {
              "default": "convert",
              "description": "convert (default) a Gregorian date, or easter for a year.",
              "enum": [
                "convert",
                "easter"
              ],
              "maxLength": 64,
              "type": "string"
            },
            "rite": {
              "default": "western",
              "description": "Easter reckoning: western (default) or eastern.",
              "enum": [
                "western",
                "eastern"
              ],
              "maxLength": 64,
              "type": "string"
            },
            "to": {
              "description": "Comma-separated calendar ids: islamic, islamic-umalqura, hebrew, japanese, roc, buddhist, persian. Default all.",
              "maxLength": 256,
              "type": "string"
            },
            "year": {
              "description": "Year for op=easter, 326-9999.",
              "maxLength": 64,
              "pattern": "^[+-]?\\d+$",
              "type": "string"
            }
          },
          "required": [],
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "data": {
              "properties": {
                "algorithm": {
                  "type": "string"
                },
                "calendars": {
                  "additionalProperties": {
                    "properties": {
                      "algorithm": {
                        "type": "string"
                      },
                      "day": {
                        "type": "integer"
                      },
                      "era": {
                        "type": "string"
                      },
                      "formatted": {
                        "type": "string"
                      },
                      "month": {
                        "type": "integer"
                      },
                      "month_name": {
                        "type": "string"
                      },
                      "year": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "year",
                      "month",
                      "month_name",
                      "day",
                      "era",
                      "formatted",
                      "algorithm"
                    ],
                    "type": "object"
                  },
                  "description": "keyed by caller-chosen names",
                  "type": "object"
                },
                "date": {
                  "type": "string"
                },
                "gregorian": {
                  "type": "string"
                },
                "gregorian_date": {
                  "type": "string"
                },
                "julian_date": {
                  "type": "string"
                },
                "rite": {
                  "type": "string"
                },
                "unavailable": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "description": "keyed by caller-chosen names",
                  "type": "object"
                },
                "year": {
                  "type": "integer"
                }
              },
              "type": "object"
            },
            "meta": {
              "properties": {
                "computed_at": {
                  "description": "RFC 3339 UTC with milliseconds",
                  "type": "string"
                },
                "deterministic": {
                  "type": "boolean"
                },
                "disclaimer": {
                  "type": "string"
                },
                "price_usd": {
                  "type": "string"
                },
                "request_id": {
                  "type": "string"
                },
                "sources": {
                  "items": {
                    "required": [
                      "id",
                      "version",
                      "published"
                    ],
                    "type": "object"
                  },
                  "type": "array"
                }
              },
              "required": [
                "request_id",
                "computed_at",
                "price_usd",
                "deterministic",
                "disclaimer"
              ],
              "type": "object"
            },
            "ok": {
              "const": true
            },
            "route": {
              "const": "/v1/time/calendar"
            },
            "version": {
              "type": "string"
            }
          },
          "required": [
            "ok",
            "route",
            "version",
            "data",
            "meta"
          ],
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}