---
title: "Weekly summary"
method: GET
path: "/v1/projects/{projectId}/weekly-summary"
tags: ["Analysis"]
---

# Weekly summary

`GET /v1/projects/{projectId}/weekly-summary`

## Request

- Base URL: `https://hootlens-api-368877148687.us-east1.run.app`
- URL: `https://hootlens-api-368877148687.us-east1.run.app/v1/projects/{projectId}/weekly-summary`
- Auth: HTTP bearer

The weekly digest as structured data: visits, snags by element, goal conversions, logged changes with their verdicts, funnels and one thing to watch. Example recordings need the replay scope.

Required token scopes are listed in x-hootlens-scopes. A signed-in person needs the matching permission on the site instead (the viewer and editor roles are presets of the permissions).

## Path parameters

- `projectId` string, required: An identifier: 1 to 80 letters, digits, underscores or hyphens.

## Query parameters

- `weekEnding` string
- `includeToday` 'true' | 'false'

## Response `200`

The digest, and starter funnel suggestions when the site has goals and no funnels.

- object
  - `digest` WeeklyDigest, required
    - `projectId` string, required: An identifier: 1 to 80 letters, digits, underscores or hyphens.
    - `projectName` string, required
    - `generatedAt` integer, required: Epoch milliseconds.
    - `period` object, required
      - `from` integer: Epoch milliseconds.
      - `to` integer: Epoch milliseconds.
      - `weekEnding` string
      - `label` string
      - `previousFrom` integer: Epoch milliseconds.
      - `previousTo` integer: Epoch milliseconds.
      - `includesToday` boolean
    - `privacy` 'full' | 'balanced' | 'strict', required
    - `noData` boolean, required
    - `visits` object, required
      - `thisWeek` integer
      - `lastWeek` integer, nullable
      - `changePercent` number, nullable
      - `fewVisits` boolean
      - `text` string
    - `snags` object, required
      - `elements` object[]
      - `totalThisWeek` integer
      - `totalLastWeek` integer, nullable
      - `text` string
      - `countedFrom` string
    - `sources` object: Where the week's visits came from. Visits on days before channels and countries were counted are reported as notRecorded.
      - `channels` object[], required
      - `countries` object[], required
      - `channelTotals` object, required: Shown plus other plus notRecorded equals visits.
        - `visits` integer, required
        - `shown` integer, required
        - `other` integer, required
        - `notRecorded` integer, required
      - `countryTotals` object, required: Shown plus other plus unresolved plus notRecorded equals visits.
        - `visits` integer, required
        - `shown` integer, required
        - `other` integer, required
        - `unresolved` integer
        - `notRecorded` integer, required
      - `countedFrom` string: The first day channels and countries are counted, set when the week holds earlier visits.
      - `text` string, required
    - `goals` object[], required
    - `changes` object, required
      - `logged` object[]
      - `verdicts` object[]
    - `funnels` object[], required
    - `watch` object, required
      - `kind` string
      - `text` string
    - `notes` string[], required
  - `suggestions` object
    - `funnels` FunnelSuggestion[], required
      - `name` string, required
      - `basis` 'homepage' | 'visit-order', required
      - `steps` string[], required
      - `reason` string, required
      - `change` object, required: A settings change to pass to the preview route.

## Other responses

- `400`: The request fields are invalid.
- `401`: The credential is missing, expired or revoked.
- `403`: The credential or the person's permissions on the site do not permit this action.
- `404`: The site, or the record inside it, does not exist or the caller is not a member (a non-member cannot tell the two apart).
- `429`: A rate limit or a per-site limit was reached.

---

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