Skip to content

Radio

Resolve radio context from edge location

GET /api/radio/context

Private, no-store context. Precise location is never included in the result. POST accepts at most 512 UTF-8 bytes. Provider failures produce unknown weather/holiday values. No automatic retries.

Markdown · Authoritative OpenAPI

Request policy

Operation
getRadioContext
Access
anonymous
Automatic retries
None
Redirects
Returned to the caller without following
Request body limit
No request body
Pagination
No collection iterator

Parameters

No path or query parameters.

Responses

200

Local clock, season, weather and holiday context

Response headers
{
  "Cache-Control": {
    "schema": {
      "const": "private, no-store"
    }
  },
  "Vary": {
    "schema": {
      "const": "CF-IPCountry"
    }
  }
}

application/json

object

Schema details

locationLabel string required

timezone string required

localDate string required

localTime string required

timeOfDay string required

Allowed: "dawn" | "morning" | "afternoon" | "evening" | "night"

season string

Allowed: "spring" | "summer" | "autumn" | "winter" | "unknown"

daylight string

Allowed: "day" | "night" | "unknown"

weekday string required

isWeekday boolean required

holiday object required

Schema details

isHoliday boolean required

name string required

weather object required

Schema details

kind string required

Allowed: "clear" | "cloudy" | "fog" | "drizzle" | "rain" | "snow" | "storm" | "unknown"

description string required

temperatureC number required

apparentTemperatureC number required

isDay boolean required

Examples

Examples use synthetic fixture values. Replace fixture identifiers with public IDs returned by the service. Request bodies and precise locations are transient; keep them out of logs.

curl

curl --fail-with-body --max-time 30 --max-filesize 16777216 --request GET 'https://irvinebroque.com/api/radio/context' --header 'Accept: application/json'

TypeScript

import { PublicApi } from '@irvinebroque/public-api';
const api = new PublicApi();
const result = await api.radio.context({});
console.log(result.status, result.headers.get('content-type')); // Keep transient capabilities in memory.

CLI

irvinebroque radio context

The SDK preserves status, headers, and the server envelope. A 304 has no fresh body. Errors retain structured problem details; ordinary error messages omit response details. Responses are limited to 16 MiB and requests time out after 30 seconds by default.