Skip to content

Quickstart

From a key in your hand to a correct business-day count, in about five minutes.

API key creation is closed during prelaunch. If you do not have a key yet, you can still read every page here and inspect the OpenAPI document.

1. Get a key

Sign in, open your account and create a key. The plaintext key is shown exactly once. Keys are environment tagged: cal_test_ for sandbox, cal_live_ for live. Store it in an environment variable, never in source control.

shell
export CALCADIAN_API_KEY="cal_test_..."

2. Make a request

curl
curl -sS -X POST https://calcadian.com/api/v1/business-days-between \
  -H "Authorization: Bearer $CALCADIAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "start_date": "2026-03-02",
    "end_date": "2026-03-31",
    "country_code": "US",
    "subdivision_code": "NY"
  }'

3. Read the response

json
{
  "data": {
    "business_days": 21,
    "calendar_days": 29,
    "start_date": "2026-03-02",
    "end_date": "2026-03-31"
  },
  "meta": { "request_id": "req_9f2c41a7be03d5710c8e2b44", "api_version": "v1" }
}

Keep the request_id in your logs. It is the fastest way for support to find one exact call.

Node.js

javascript
const res = await fetch("https://calcadian.com/api/v1/business-days-between", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.CALCADIAN_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    start_date: "2026-03-02",
    end_date: "2026-03-31",
    country_code: "US",
    subdivision_code: "NY",
  }),
});

const payload = await res.json();
if (!res.ok) throw new Error(payload.error.code + ": " + payload.error.message);
console.log(payload.data.business_days);

Python

python
import os, requests

res = requests.post(
    "https://calcadian.com/api/v1/business-days-between",
    headers={"Authorization": f"Bearer {os.environ['CALCADIAN_API_KEY']}"},
    json={
        "start_date": "2026-03-02",
        "end_date": "2026-03-31",
        "country_code": "US",
        "subdivision_code": "NY",
    },
    timeout=10,
)

payload = res.json()
res.raise_for_status()
print(payload["data"]["business_days"])

Next