Free during beta — no credit card

Every LLM is bad at dates.
We fix that.

One API call turns next Monday at 9am into a precise, timezone-aware ISO 8601 datetime. Deterministic. Auditable. No hallucinations.

Deterministic Sub-50ms Timezone-aware Audit trail Ambiguity detection
Get your free API key → Read the docs
POST /v1/resolve 200 OK
Request
{
"expression": "next Monday at 9am",
"reference_date": "2026-04-03",
"timezone": "America/New_York"
}
Response — 11ms
{
"status": "resolved",
"resolved": "2026-04-06T09:00:00-04:00",
"confidence": "high",
"interpretation": "Next Monday is April 6. 9 AM in New York."
}

LLMs don't do dates. They guess.

Temporal reasoning is one of the most consistent failure modes in every major model. Here's why you can't trust it.

Non-deterministic

Ask an LLM what's next Monday? ten times. The phrasing, the temperature, even the conversation history changes the answer. You can't build reliable software on that.

Timezone-unaware

9am Monday — but in which timezone? Any LLM assumes UTC, or guesses from context. Biruni requires an IANA timezone and handles DST transitions correctly.

Ambiguity-blind

Next Friday on a Friday — is that today or next week? Any LLM picks one silently. Biruni flags both options and lets the agent decide.

Three steps. Under 50 milliseconds.

No SDK. No parsing library. One HTTP call and you're done.

1

Extract the phrase

Your agent pulls the temporal expression from the user's message.

Can we meet next Monday at 9am?
2

Call the API

POST the phrase with a reference date and timezone. No LLM in the loop.

POST /v1/resolve
{ expression, reference_date, timezone }
3

Get a precise datetime

ISO 8601 with confidence score and audit trail. If ambiguous, Biruni tells you.

"2026-04-06T09:00:00-04:00"
confidence: high

See it handle the edge cases.

POST /v1/resolve

Built for agents that can't afford to be wrong.

Deterministic

Rule-based parser, not probabilistic. Same input, same output, every time. No model drift. No surprises.

Timezone-correct

Full IANA timezone database. DST transitions handled correctly. UTC offsets always accurate in the response.

Ambiguity detection

When an expression has multiple valid interpretations, Biruni returns all of them. Your agent decides, not a coin flip.

Interpretation trail

Every response explains how the phrase was interpreted. Perfect for audit logs, agent reasoning chains, and debugging.

Confidence scoring

High, medium, or low. Your agent knows when to proceed immediately and when to ask the user for clarification.

Sub-50ms latency

No neural network in the loop. Pure computation. Fast enough for real-time agent workflows and interactive chat.

Drop-in tool for any agent framework.

Register the tool schema. Paste the usage rules into your system prompt. Your agent calls Biruni instead of doing date math itself.

Tool definition — works with any tool-calling framework
{
  "name": "biruni_resolve",
  "description": "Resolve a natural-language temporal phrase to a timezone-aware ISO 8601 datetime.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "expression":      { "type": "string" },
      "reference_date":  { "type": "string" },
      "timezone":        { "type": "string" },
      "options":         { "type": "object" }
    },
    "required": ["expression", "reference_date", "timezone"]
  }
}

Free while we're in beta.

No credit card. Paid tiers with higher limits coming soon.

Free Beta
$0
1,000
resolutions / mo
10
requests / min
  • All expression types
  • Timezone-aware resolution
  • Ambiguity detection & alternatives
  • Full interpretation trail
  • US Federal business calendar
  • Dashboard & playground
Get started free

Coming soon

Higher rate limits Custom business calendars Batch endpoint Priority support

Frequently asked questions

What expressions can Biruni resolve?
Relative dates (tomorrow, in 3 days), weekdays (next Monday), business days (in 10 business days with the default us_federal calendar), ordinal patterns (first Monday of April), absolute dates (March 30, 2026), and time combinations (next Friday at 3pm). See the full list in our docs.
How is this different from dateutil or chrono?
Libraries like dateutil parse date strings but don't handle natural language ambiguity, timezone correction, or confidence scoring. Biruni is an API designed for AI agent workflows — it tells you when an expression is ambiguous and provides alternatives instead of silently picking one.
What happens with ambiguous expressions?
Biruni returns status: "ambiguous" with the most likely interpretation plus an array of alternatives. Your agent can present the options to the user instead of silently picking the wrong one.
Is Biruni deterministic?
Yes. Same expression + same reference_date + same timezone = same result, every time. The resolution engine uses rule-based pattern matching with no LLM in the pipeline.
Do you support holiday-aware business calendars?
Yes. Business day calculations use the us_federal calendar by default, which skips weekends plus observed US Federal holidays. The selected calendar is returned in metadata.calendar_used, and any skipped holidays appear in metadata.holidays_applied.
What timezones are supported?
All IANA timezone identifiers — America/New_York, Europe/London, Asia/Tokyo, and hundreds more. Abbreviations like EST or PST are not accepted to avoid ambiguity.

Stop shipping hallucinated dates.

Get your API key in 30 seconds. Start resolving in under a minute.

Get your free API key →