API reference/Copy and audio

Get a printable document

read

Printable station documents.

GEThttps://affiliates.radioworkflow.com/api/v1/affiliations/{id}/weeks/{week}/documents/{doc}
Read: this changes nothing.

One of the week's printed documents as a complete HTML page, ready to print or save as PDF: the certificate of performance, the commercial schedule or the copy playlist for one vehicle.

The page is served with a strict content policy: it loads no scripts, and images only from the network's own asset host.

Authentication

Send a station key as Authorization: Bearer rwaff_k_.... A key with the read scope. Keys and scopes

Path parameters

idstring1 to 64 charactersrequired
The affiliation id from GET /v1/affiliations: one station's relationship with one network.
weekdaterequired
Monday of the broadcast week, YYYY-MM-DD. Any other day answers 400.
docenumrequired
Which document.
certificatecommercial_schedulecopy_playlist

Query parameters

vehicle_idstring1 to 20 charactersrequired
The vehicle the document is for, from the affiliation's vehicles.

Response

200text/html; charset=utf-8The document as an HTML page.

Errors

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.
404not_foundNothing was found for the values in the path: no audio is ready for the week yet, the upload id is unknown, or the record does not exist.
502upstream_failedThe service behind the API answered in a way the portal could not use.
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.
500server_errorSomething went wrong on our side. The answer never carries internal detail.
503unavailableThe service is not available right now: it could not be reached, or it is not set up yet.

Every code, its fix and when to retry

Rate limits

Failed sign-ins per address10 per minuteportal:auth
Burst per key60 per minuteportal:key
Calls per key600 per 10 minuteskey:{prefix}

The limits and the RateLimit headers

MCP

Not an MCP tool. Returns printable HTML, not data.
Request
curl -X GET 'https://affiliates.radioworkflow.com/api/v1/affiliations/srn-ksmt/weeks/2026-09-21/documents/certificate?vehicle_id=show-wd' \
  -H "Authorization: Bearer $AFFILIATE_API_KEY" \
  --output document.html
Response200
<!doctype html><html><head><title>Certificate of Performance</title></head><body><h1>Certificate of Performance</h1>...</body></html>

Try it

Demo data, no key, nothing saved