---
title: "A site's client report schedules"
method: GET
path: "/v1/sites/{site}/search/report-schedules"
tags: ["gsc"]
---

# A site's client report schedules

`GET /v1/sites/{site}/search/report-schedules`

## Request

- Base URL: `https://frontshelf.io/api`
- URL: `https://frontshelf.io/api/v1/sites/{site}/search/report-schedules`
- Auth: HTTP bearer

A site's report schedules, those that exist: the weekly client email (Google's finished week against the week before and a year earlier, the biggest movers, and with their sections on the week's alerts, notes, index losses and Google Analytics; one button to the client link it names) and the monthly PDF (the finished month's PDF, emailed). Each with `active`, `sections`, `share_link_id`, `recipients` (email, audience team or client, `unsubscribed_at`), `last_period_end`, `next_run_at` and `version` (what gsc_schedules_save must name). A period is sent to an address at most once, ever. Free.

## Path parameters

- `site` string, required: Site ID (site_…), origin (https://example.com), or bare domain, resolved server-side; the response carries the canonical ID.

## Response `200`

A site's client report schedules

- object
  - `summary` string, required: The answer in one or two sentences, with the numbers it rests on.
  - `warnings` string[], required: What limits this answer (a cap, a read that was cut short). Empty when nothing does.
  - `next_actions` object[], required: What to call next, best first. Follow them.
    - `capability` string, required: What to call next: a capability.
    - `arguments` object, required: Its arguments, complete; pass them as they are.
    - `instruction` string, required: What to do, written to you.
  - `site_id` string, required: The site's canonical id.
  - `items` object[], required: The weekly email, then the monthly PDF, those that exist.
    - `id` string, required: The schedule's id (srsc_…).
    - `site_id` string, required: The site's canonical id.
    - `kind` 'weekly_email' | 'monthly_pdf', required
    - `active` boolean, required: On or off; an inactive schedule keeps its recipients and sends nothing.
    - `sections` string[], required
    - `share_link_id` string, nullable, required: Weekly email: the client link its button opens; null for none.
    - `recipients` object[], required
      - `id` string, required
      - `email` string, required
      - `audience` 'team' | 'client', required
      - `unsubscribed_at` string, nullable, required: An instant, ISO 8601.
    - `last_period_end` string, nullable, required: The last period sent (a Pacific day); null before the first.
    - `next_run_at` string, required: When it next runs.
    - `version` integer, required: The version a save must name as `expected_version`.
  - `truncated` false, required: Always false: a site has at most two schedules.
  - `total` integer, required

## Other responses

- `400`: VALIDATION_FAILED
- `401`: UNAUTHENTICATED
- `403`: SCOPE_DENIED
- `404`: SITE_NOT_FOUND
- `409`: AMBIGUOUS_SITE, AGENT_STOPPED
- `503`: DEPENDENCY_UNAVAILABLE

---

[API](https://skmtc.dev/frontshelf/apis/frontshelf-api.md) · [All operations](https://skmtc.dev/frontshelf/apis/frontshelf-api/llms.txt) · [OpenAPI document](https://skmtc.dev/frontshelf/apis/frontshelf-api/revisions/ce3602d26c7c?raw)
