Get a week's versions
readEvery published version of the week, with its changes for this station.
GET
https://affiliates.radioworkflow.com/api/v1/affiliations/{id}/weeks/{week}/versionsRead: this changes nothing.
Every version the network has published for the week, newest first, each with a one-line summary and the changes that touch this station: units added or removed, copy that changed, spots moved inside a show.
acknowledged says who acknowledged a version and when. Acknowledge the latest one with acknowledge-version once your log reflects it.
Authentication
Path parameters
idstring1 to 64 charactersrequiredThe affiliation id from
GET /v1/affiliations: one station's relationship with one network.weekdaterequiredMonday of the broadcast week,
YYYY-MM-DD. Any other day answers 400.Response
200
application/jsonThe versions, newest first.Response schema
Revision9 fields
versionintegerrequiredpublishedAtstringrequiredpublishedAtTsintegerrequiredsummarystringrequiredacknowledgedobjectoptionalacknowledged.bystringrequiredacknowledged.atstringrequiredacknowledged.atTsintegerrequiredChange9 fields
kind"initial" | "added" | "removed" | "changed" | "copy"requiredvehiclestringoptionaldatedateoptionalwherestringoptionaladvertiserstringoptionaliscistringoptionallengthintegeroptionaldetailstringrequiredunitIdstringoptionalErrors
400bad_requestThe request is not valid: a path value, a query value or a body field is missing, malformed or out of range.
403forbiddenThe key is valid but cannot do this for this affiliation: the affiliation is not one of the key's, or the person who made the key lacks the role.
Possible on every endpoint
401invalid_principalThe key is missing, malformed, unknown, revoked or expired; all of these answer the same way.
429rate_limitedToo many requests: the key's bucket, a daily limit or the failed sign-in brake refused this one.
503unavailableThe service is not available right now: it could not be reached, or it is not set up yet.
Rate limits
Failed sign-ins per address10 per minute
portal:authBurst per key60 per minute
portal:keyCalls per key600 per 10 minutes
key:{prefix}MCP
An assistant calls this as the tool
get_changes, with the same input as one object. The MCP servercurl -X GET 'https://affiliates.radioworkflow.com/api/v1/affiliations/srn-ksmt/weeks/2026-09-21/versions' \ -H "Authorization: Bearer $AFFILIATE_API_KEY"
{
"revisions": [
{
"version": 3,
"publishedAt": "Thu, Sep 24, 9:12 AM",
"publishedAtTs": 1790259120,
"summary": "1 added, 1 removed",
"changes": [
{
"kind": "added",
"vehicle": "The Summit Show",
"date": "2026-09-24",
"where": "Hour 2, Break 6",
"advertiser": "Golden Grain Bakery",
"isci": "SR_GGBK0901030",
"length": 30,
"detail": "Added inside the show. Nothing to schedule: it is in the show audio."
}
]
}
]
}