For a weekly digest sent to active edtech customers, the scheduler is only one link in the delivery chain. TL;DR: use a daily or weekly cron trigger to call a public HTTPS endpoint, enqueue report work, and let a worker plus mail provider own the longer and more sensitive steps. Choose the API by region, retention, deletion, and processor boundaries before comparing cron syntax.
A trigger being accepted does not mean an email was delivered. It means one system accepted a request to start work. The report service, queue worker, and email provider each need their own state transition and retry policy.
That division gives the scheduling layer a modest job: fire on a fixed interval and hand off an opaque report reference.…