recipients is a string array of emails, normalized on send; language defaults to en on every schedule
Two optional fields decide who receives a generated report and what language its labels are in: recipients and language, both stored on the schedule at create or update time.
Recipients#
Pass recipients as an array of strings; it is stored verbatim as recipientsJson. Normalization happens when a delivery is queued: each entry is trimmed, lower-cased, and kept only if it matches a basic email shape, and duplicates collapse — so an address written with stray spaces or odd casing delivers once, and malformed entries are dropped. When a report is sent without an explicit recipient list, the scheduler falls back to the schedule's recipients; with neither, sending fails with No recipients were given and this report has no schedule recipients to fall back to.
Language#
language defaults to en and rides along to generation, where it picks the message pack (see Choose a locale). Change it with PUT whenever the audience changes.
Expected result#
A schedule that knows exactly who to mail and in which language — recipients auditable on the row, language resolved per report at generation time.

