> ## Documentation Index
> Fetch the complete documentation index at: https://docs.automate.ax/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# Get Analyze top pages report

> Retrieves the most visited pages from Webflow Analyze.

`webflow.getAnalyzeTopPagesReport` ranks a site's most visited pages over a reporting window.

## Example

```ts automations/webflow-get-analyze-top-pages-report.automation.ts theme={null}
import { automation, onDashboardRun } from "automate.ax"
import { webflow } from "automate.ax/webflow"

export default automation("Get Analyze top pages", () => {
  onDashboardRun({ title: "Get Analyze top pages" })
  webflow.getAnalyzeTopPagesReport({
    siteId: "site-id",
    startTime: "2026-08-01T00:00:00Z",
    endTime: "2026-08-08T00:00:00Z",
    sortBy: "session",
    limit: 20,
  })
})
```

## Inputs

Every input accepts a compatible signal. This action requires the `sites:read` OAuth scope.

| Field           | Type                                | Required | Description                                                                               |
| --------------- | ----------------------------------- | -------- | ----------------------------------------------------------------------------------------- |
| `siteId`        | `string`                            | Yes      | Webflow site ID.                                                                          |
| `startTime`     | `string`                            | Yes      | Inclusive UTC timestamp ending in `Z`; no earlier than April 9, 2025.                     |
| `endTime`       | `string`                            | Yes      | Exclusive UTC timestamp ending in `Z`; after `startTime` and no more than 100 days later. |
| `sortBy`        | `"session" \| "user" \| "pageview"` | No       | Ranking metric. Defaults to `"session"`.                                                  |
| `limit`         | `number`                            | No       | Row limit from 1 through 250. Defaults to 25.                                             |
| `timeseries`    | `{ bucketTimeZone: string }`        | No       | Adds daily pageview points in the supplied IANA time zone.                                |
| `deviceType`    | `"desktop" \| "mobile" \| "tablet"` | No       | Restricts the report to one device type.                                                  |
| `country`       | `string`                            | No       | Two-letter country code.                                                                  |
| `pagePath`      | `string`                            | No       | Restricts the report to one page path.                                                    |
| `trafficSource` | `string`                            | No       | Restricts the report to one traffic-source code.                                          |
| `referrer`      | `string`                            | No       | Restricts the report to one referrer domain.                                              |
| `browser`       | `string`                            | No       | Restricts the report to one browser.                                                      |
| `utmCampaign`   | `string`                            | No       | Restricts the report to one UTM campaign.                                                 |
| `utmMedium`     | `string`                            | No       | Restricts the report to one UTM medium.                                                   |
| `utmSource`     | `string`                            | No       | Restricts the report to one UTM source.                                                   |
| `filter`        | `object`                            | No       | Applies multi-value or negated dimension filters.                                         |

Each `filter` entry accepts at least one of `eq: string`, `ne: string`, `in: string[]`, or `nin: string[]`. Supported keys are `audienceIds`, `browser`, `collectionId`, `country`, `dayOfWeek`, `deviceBrand`, `deviceType`, `domain`, `itemSlug`, `language`, `locale`, `nextCollectionId`, `nextItemSlug`, `nextPageId`, `os`, `pageId`, `pagePath`, `previousCollectionId`, `previousItemSlug`, `previousPageId`, `referrer`, `region`, `timeOfDay`, `timezone`, `trafficSource`, `utmCampaign`, `utmContent`, `utmMedium`, `utmSource`, `utmTerm`, and `visitStatus`.

<Warning>
  Your workspace needs the Webflow Analyze add-on. Webflow permits one Analyze
  request at a time per access token.
</Warning>

## Output

| Field       | Type                                                   | Description                            |
| ----------- | ------------------------------------------------------ | -------------------------------------- |
| `report`    | `"top_pages"`                                          | Report discriminator.                  |
| `window`    | `{ startTime: string; endTime: string }`               | Applied reporting window.              |
| `sortBy`    | `"session" \| "user" \| "pageview"`                    | Applied ranking metric.                |
| `limit`     | `number`                                               | Applied row limit.                     |
| `data`      | `object[]`                                             | Ranked page rows.                      |
| `bucketing` | `{ bucketTimeZone: string; granularityPeriod: "day" }` | Daily bucket settings, when requested. |
| `filter`    | `object`                                               | Applied filters, when present.         |

Each `data` row includes `pageId`, `title`, `sessionCount`, `userCount`, and `pageviewCount`; CMS pages can also include `collectionId` and `itemSlug`. When requested, `timeseries` contains `{ timestamp, pageviewCount }` points. The time series always counts pageviews, regardless of `sortBy`.
