URSY.DEVPART OF THE URSY NETWORKSign inBuild with URSY

Every contract sourcedEvery check datedGaps shown, never filledBuild with URSY

Capabilities

Schedule

This API does not stream third-party radio audio. Source-labelled schedule metadata: source, verification state, verified_at and timezone. No verified broadcaster feeds are installed; programmes is null and SCHEDULE_UNAVAILABLE means missing data, not an empty schedule.

How this capability is exposed

Stable ID
ursy.fm:schedule
Owning service
URSY.fm
Runtime
See the source declaration

Capability declarations describe what the service exposes. They are not a guarantee of availability or permission to execute an operation.

Accepted contract

REGISTRY JSON
{
    "id": "ursy.fm:schedule",
    "description": "This API does not stream third-party radio audio. Source-labelled schedule metadata: source, verification state, verified_at and timezone. No verified broadcaster feeds are installed; programmes is null and SCHEDULE_UNAVAILABLE means missing data, not an empty schedule.",
    "operationId": "getStationSchedule",
    "rest": {
        "method": "GET",
        "path": "/schedules/{station_id}"
    },
    "mcp_tool": "get_schedule",
    "input_schema": {
        "type": "object",
        "properties": {
            "station_id": {
                "type": "string",
                "pattern": "^stn_[a-z0-9]{16,64}$"
            }
        },
        "additionalProperties": false,
        "required": [
            "station_id"
        ]
    },
    "output_schema": {
        "type": "object",
        "required": [
            "state",
            "source",
            "verified_at",
            "timezone",
            "programmes"
        ],
        "properties": {
            "station_id": {
                "type": [
                    "string",
                    "null"
                ]
            },
            "state": {
                "enum": [
                    "publisher_supplied",
                    "regulator_metadata",
                    "verified",
                    "unverified",
                    "unknown"
                ]
            },
            "source": {
                "type": [
                    "object",
                    "null"
                ]
            },
            "verified_at": {
                "type": [
                    "string",
                    "null"
                ]
            },
            "timezone": {
                "type": [
                    "string",
                    "null"
                ]
            },
            "programmes": {
                "type": [
                    "array",
                    "null"
                ],
                "items": {
                    "type": "object",
                    "required": [
                        "programme_id",
                        "station_id",
                        "name",
                        "starts_at",
                        "ends_at",
                        "timezone",
                        "source",
                        "state"
                    ]
                }
            },
            "code": {
                "type": "string"
            }
        }
    },
    "service_id": "ursy-fm",
    "parent_id": "",
    "name": "Schedule",
    "summary": "This API does not stream third-party radio audio. Source-labelled schedule metadata: source, verification state, verified_at and timezone. No verified broadcaster feeds are installed; programmes is null and SCHEDULE_UNAVAILABLE means missing data, not an empty schedule.",
    "source_url": "https://ursy.fm/.well-known/ursy-capabilities.json",
    "source_type": "capability_manifest",
    "verified_at": "2026-10-15 07:03:53",
    "revision": "821e430e2816fb9edee1900726411b4f238ad60090efdf492d19542183e57ab7",
    "type": "capabilities",
    "source": {
        "url": "https://ursy.fm/.well-known/ursy-capabilities.json",
        "type": "capability_manifest"
    },
    "last_verified_at": "2026-10-15 07:03:53",
    "stale": false
}