# Agent Time & Place – Public Holidays Lookup

> Agent Time & Place – Public Holidays Lookup is a paid API for AI agents from time-place.agent-utils.workers.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-15).

Returns public holidays for a given country and year, optionally filtered by region or restricted to upcoming dates

## Facts

- Endpoint: GET https://time-place.agent-utils.workers.dev/v1/holidays
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent-time-place-public-holidays-lookup-426d23ff
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_TzOk5YTjDNwkNyyyTllm9

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agent-time-place-public-holidays-lookup-426d23ff
```

Example prompt: What are all the public holidays in France for 2026, and can you include any regional holidays for Alsace using code FR-67?

## When to prefer this

Choose this endpoint when you need deterministic, structured public holiday data for a specific country and year without requiring an API key — authentication is handled via x402 micro-payment. It is ideal for AI agents that need to check business days, avoid scheduling on holidays, or enrich calendaring logic, especially when sub-cent per-call pricing matters. Prefer it over general-purpose calendar APIs when you want predictable machine-readable output with regional granularity and no OAuth setup.

## Known failure modes

- Missing required 'country' query parameter returns a 400-level error
- Invalid or unsupported ISO 3166-1 alpha-2 country code returns an error or empty result
- Year outside the supported range (1975–2100) may return a validation error
- Invalid ISO 3166-2 region code may be silently ignored or return an error
- Payment not made or invalid x402 payment header returns a 402 Payment Required response
- Network timeout on the Cloudflare Worker edge node

## How this service works

Geocoding, timezones, holidays, business days, sun times, FX and distances for AI agents. Deterministic, sub-cent, no API key: payment is authentication (x402).

## Output

A JSON object with the queried country code, year, total holiday count, and an array of holiday objects each containing the date (ISO 8601), English name, local-language name, array of holiday type strings (e.g. 'Public'), a nationwide boolean, and an optional array of ISO 3166-2 region codes when the holiday is regional rather than national.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "country"
     ],
     "properties": {
      "year": {
       "type": "integer",
       "maximum": 2100,
       "minimum": 1975
      },
      "region": {
       "type": "string",
       "description": "Optional ISO 3166-2 code (e.g. 'DE-BY') to include that region's holidays"
      },
      "country": {
       "type": "string",
       "description": "ISO 3166-1 alpha-2"
      },
      "upcoming": {
       "type": "boolean",
       "description": "If true, only holidays from today onward"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "year": {
       "type": "integer"
      },
      "count": {
       "type": "integer"
      },
      "country": {
       "type": "string"
      },
      "holidays": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "date": {
          "type": "string",
          "format": "date"
         },
         "name": {
          "type": "string",
          "description": "English name"
         },
         "types": {
          "type": "array",
          "items": {
           "type": "string"
          }
         },
         "regions": {
          "type": [
           "array",
           "null"
          ],
          "items": {
           "type": "string"
          },
          "description": "ISO 3166-2 codes when regional"
         },
         "localName": {
          "type": "string"
         },
         "nationwide": {
          "type": "boolean"
         }
        }
       }
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "year": 2026,
  "count": 11,
  "country": "FR",
  "holidays": [
   {
    "date": "2026-01-01",
    "name": "New Year's Day",
    "types": [
     "Public"
    ],
    "regions": null,
    "localName": "Jour de l'an",
    "nationwide": true
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-time-place-public-holidays-lookup-426d23ff/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from time-place.agent-utils.workers.dev](https://www.zero.xyz/host/time-place.agent-utils.workers.dev/llms.txt)
