SERVICE / DETAILother

2s

GET 2s.io/api/calendar/business-days

SONAR SCORE0.833
LIVE PRICE0.002500
BAZAAR LIVEcompatible
CDP INDEXEDno
DECISION EVIDENCE

Why an agent can trust this route.

39 observations in the last 24h
HANDSHAKE SUCCESS100.0%402 challenge reachable
PAID DELIVERY0.0%settlement observed
P90 LATENCY1259msrecent response window
PRICE DRIFT0.0%advertised vs observed

Sonar evidence is advisory. Paid delivery is shown as verified only when paid probes are available; otherwise route estimates use the unpaid handshake as a clearly labeled proxy.

SONAR PROBE HISTORY / 30D

Observed outcomes

JSON ↗
LIVE ENDPOINT METADATA

Holiday-aware business-day calculator for 200+ countries. Three modes: pass start + addDays (signed integer) to shift a date by N business days; pass start + end to count business days between two dates (exclusive of start, inclusive of end); pass start alone to check one date (is it a business day, which holiday, next/previous business day). Query: country (ISO 3166-1 alpha-2), start (YYYY-MM-DD), optional region (subdivision code), addDays XOR end, optional weekend (comma-separated days, default sat,sun — e.g. fri,sat for the Gulf), optional types (holiday types treated as closures, default public,bank). Skipped holidays are itemized in the response. Use for payment terms, SLA deadlines, and delivery-date math.

Resource: 2s.io/api/calendar/business-days

Network: eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 · Pay to: 0x2b6D4988Db4723E6908Db86Ab2b8dFBc51FC32C5

Payment methods: · Last validation: 2026-09-13 23:22:54.387+00

{
  "input": {
    "type": "object",
    "required": [
      "type",
      "method",
      "queryParams"
    ],
    "properties": {
      "type": {
        "const": "http"
      },
      "method": {
        "const": "GET"
      },
      "queryParams": {
        "required": [
          "country",
          "start"
        ],
        "properties": {
          "end": {
            "type": "string",
            "description": "End date YYYY-MM-DD to count business days to (XOR with addDays)."
          },
          "start": {
            "type": "string",
            "description": "Anchor date, YYYY-MM-DD."
          },
          "types": {
            "type": "string",
            "description": "Optional holiday types treated as closures. Default public,bank."
          },
          "region": {
            "type": "string",
            "description": "Optional subdivision code, e.g. CA, BY."
          },
          "addDays": {
            "type": "string",
            "description": "Signed business days to add (XOR with end)."
          },
          "country": {
            "type": "string",
            "description": "ISO 3166-1 alpha-2 country code."
          },
          "weekend": {
            "type": "string",
            "description": "Optional weekend days, comma-separated. Default sat,sun."
          }
        }
      }
    }
  },
  "output": null,
  "paymentRequirements": [
    {
      "raw": {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x2b6D4988Db4723E6908Db86Ab2b8dFBc51FC32C5",
        "amount": "2500",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 60
      },
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "payTo": "0x2b6D4988Db4723E6908Db86Ab2b8dFBc51FC32C5",
      "scheme": "exact",
      "network": "eip155:8453",
      "amountAtomic": "2500"
    },
    {
      "raw": {
        "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
        "extra": {
          "name": "USDC",
          "version": "1",
          "feePayer": "GVJJ7rdGiXr5xaYbRwRbjfaJL7fmwRygFi1H6aGqDveb"
        },
        "payTo": "TW6ntaGzvj63ZgPjszd4FCGmVTGfzv1MAYZbjYcyWhn",
        "amount": "2500",
        "scheme": "exact",
        "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "maxTimeoutSeconds": 60
      },
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "payTo": "TW6ntaGzvj63ZgPjszd4FCGmVTGfzv1MAYZbjYcyWhn",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "amountAtomic": "2500"
    }
  ]
}
METADATA PROVENANCE

Source catalog records are retained separately from live endpoint observations. Sonar score, uptime, and latency are advisory metrics. CDP indexing is not inferred from validation.