Sign a week
people onlySign the week. A person signed in, never a key.
POST
https://affiliates.radioworkflow.com/api/v1/affiliations/{id}/weeks/{week}/signPeople only: no key can call this. A person signs the week in the portal.
Signing a week is an attestation that the affidavits are true, so a person does it, signed in to the portal. No key can sign: this route always answers 403 key_cannot_sign and changes nothing.
Over MCP, a person with the sign role gets signUrl, a link to the portal's signing panel for that week, and signs there. A week can be signed once its broadcast week has ended and nothing is pending.
Authentication
No key can call it: people only. Keys and scopes
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
403
application/jsonAlways key_cannot_sign: people sign in the portal.Response schema over MCP: sign_week
signUrlstringrequiredThe portal page where a person with the sign role signs the week.
Errors
403key_cannot_signA key asked to sign a week. Signing is an attestation, so only a person signed in to the portal can do it.
Rate limits
No key gets further than the refusal, so no limit counts it.
MCP
An assistant calls this as the tool
sign_week, with the same input as one object. The MCP servercurl -X POST 'https://affiliates.radioworkflow.com/api/v1/affiliations/srn-ksmt/weeks/2026-09-21/sign' \ -H "Authorization: Bearer $AFFILIATE_API_KEY"
{
"error": {
"code": "key_cannot_sign",
"message": "A key cannot sign a week. A person signs it in the portal."
}
}{
"signUrl": "https://affiliates.radioworkflow.com/affidavits?week=2026-09-21&affiliation=srn-ksmt"
}