---
title: "List all Events"
method: GET
path: "/events"
tags: ["Events"]
---

# List all Events

`GET /events`

Get all Events for a Project. This endpoint lists all types of Events including Pageview Events which are stored as Pages. You can also get Goal objects from Optimizely Classic by setting the include_classic parameter to true.

## Query parameters

- `per_page` integer
- `page` integer
- `project_id` integer, required
- `include_classic` boolean
- `skip_views` boolean

## Response `200`

List of Events for the supplied Project ID

- Event[]
  - `archived` boolean — Whether or not this Event is archived
  - `category` 'add_to_cart' | 'save' | 'search' | 'share' | 'purchase' | 'convert' | 'sign_up' | 'subscribe' | 'other'
  - `config` InPageEventConfig
    - `selector` string, required — CSS selector for the page element(s) that trigger an Event
  - `created` string, date-time — Creation date for this Event
  - `description` string — A description for this Event
  - `event_properties` EventProperty[] — A set of user-defined data elements for the event. Metrics can filter on particular values of these properties.
    - `data_type` 'boolean' | 'number' | 'string' — The type of data that can be accepted for this property.
    - `name` string — The name of the property.
  - `event_type` 'custom' | 'click' | 'pageview' | 'classic_custom' | 'classic_click' | 'classic_pageview' | 'classic_engagement' | 'classic_revenue' | 'classic_mobile_tap' | 'classic_mobile_view' | 'classic_mobile_session_length' | 'classic_mobile_num_session' — The type of this Event
  - `experiment_count` integer — Number of experiments that reference this Event across all statuses (running, paused, draft, archived). Computed by the upstream service.
  - `id` integer — The unique identifier of the Event
  - `is_classic` boolean — Whether or not this Event is a classic Event. If true, this Event is read-only
  - `is_editable` boolean — Whether this Event may be edited
  - `key` string — Unique string identifier for this Event within the Project
  - `last_modified` string, date-time — The last time the Event was modified
  - `name` string — A human readable name for this Event
  - `page_id` integer — The Page ID associated with this Event
  - `project_id` integer — The ID of this Event's parent Project
  - `variation_specific` boolean — Whether or not this Event is variation specific.

## Other responses

- `401` — Invalid credentials
- `403` — You do not have access to Events in the specified Project
- `404` — Project not found
- `default` — Unexpected error

## Changes

> 7 revisions in range; 3 could not be searched.

- **2026-08-04** `35d56dc0d1b9` — 2 info
  - added the new optional `query` request parameter `skip_views`
  - added the optional property `items/variation_specific` to the response with the `200` status

[Change history](https://skmtc.dev/optimizely/apis/optimizely-api/changes/events/get.md)

---

[API](https://skmtc.dev/optimizely/apis/optimizely-api.md) · [All operations](https://skmtc.dev/optimizely/apis/optimizely-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/optimizely/optimizely-api/revisions/5151fe6a2297/schema)
