Optimizely Events API

Send customer events to ODP for tracking actions, behaviors, and interactions across channels.

Operations 16

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /events List marketing calendar events · GET /events #
Ask an LLM
“Which events are on my Optimizely CMP marketing calendar between two dates?”
“Can I list only the calendar events that belong to one campaign?”
Tell an agent
List calendar events from {start_date} to {end_date}.
Show the calendar events under campaign {campaign_id}, {page_size} per page.
POST /events Create a marketing calendar event · POST /events #
Ask an LLM
“How do I add an all-day event to the marketing calendar?”
“Can I create a calendar event inside a specific campaign?”
Tell an agent
Create a calendar event titled {title} from {start_date} to {end_date}, all day set to {is_all_day}.
Add event {title} to campaign {campaign_id} running {start_date} through {end_date}, all-day {is_all_day}.
GET /events/{id} Get a marketing calendar event · GET /events/{id} #
Ask an LLM
“What are the dates and description of one event on my marketing calendar?”
“Can I open a single CMP calendar event by its ID?”
Tell an agent
Show calendar event {id}.
Get the title and dates of marketing calendar event {id}.
PATCH /events/{id} Reschedule or edit a marketing calendar event · PATCH /events/{id} #
Ask an LLM
“How do I move a calendar event to new start and end dates?”
“Can I change a marketing calendar event from all-day to a timed event?”
Tell an agent
Reschedule calendar event {id} to run from {start_date} to {end_date}.
Rename calendar event {id} to {title}.
PUT /events/{id}/fields Replace the fields on a calendar event · PUT /events/{id}/fields #
Ask an LLM
“How do I overwrite all the custom field values on a calendar event at once?”
“Can I reset a marketing calendar event's fields in a single call?”
Tell an agent
Replace the existing fields on calendar event {id}.
Overwrite every custom field value of marketing event {id}.
GET /events/{id}/fields List the fields on a calendar event · GET events/{id}/fields #
Ask an LLM
“Which custom fields are attached to a marketing calendar event?”
“Can I page through the field values of a calendar event?”
Tell an agent
List the fields of calendar event {id}.
Show fields for event {id}, {page_size} per page starting at {offset}.
POST /api/events/fx Send an event to the FX event handler · Post fx event handler #
Ask an LLM
“Where do I post events meant for the FX event handler endpoint?”
“Is there an endpoint that receives FX events over POST?”
Tell an agent
Post this event to the FX event handler.
Forward the payload to the api events FX handler.
GET /events/{event_id} Get an experimentation event · Get an event #
Ask an LLM
“What is the key and type of a tracked experiment event in my project?”
“Can I look up one Optimizely Experimentation event by its event ID?”
Tell an agent
Show experiment event {event_id}.
Get the full details of tracked event {event_id}.
PATCH /events/{event_id} Update an experimentation event · Update an event #
Ask an LLM
“Can I change the name or key of a tracked experiment event?”
“How do I change an experimentation event's type?”
Tell an agent
Rename experiment event {event_id} to {name}.
Set the key of tracked event {event_id} to {key} and its type to {event_type}.
DELETE /events/{event_id} Permanently delete an experimentation event · Delete an event #
Ask an LLM
“How do I permanently remove a tracked event from my experimentation project?”
“Is deleting an experiment event reversible, or is it gone for good?”
Tell an agent destructive · confirm first
Permanently delete experiment event {event_id}.
Remove tracked event {event_id} for good.
POST /pages/{page_id}/events Create an in-page event such as a click · Create an In-Page Event #
Ask an LLM
“How do I start measuring clicks on an element of a specific page?”
“What do I need to create an in-page event tied to a page?”
Tell an agent
Create an in-page event named {name} of type {event_type} on page {page_id}.
Add a click event {name} to page {page_id} with type {event_type} and config {config}.
DELETE /pages/{page_id}/events/{event_id} Archive an in-page event · Archive an In-Page Event #
Ask an LLM
“How do I archive a click event that belongs to a page?”
“Can I stop tracking an in-page event without affecting the page itself?”
Tell an agent destructive · confirm first
Archive in-page event {event_id} on page {page_id}.
Stop tracking page {page_id}'s event {event_id} by archiving it.
PATCH /pages/{page_id}/events/{event_id} Update an in-page event · Update an In-Page Event #
Ask an LLM
“Can I make an in-page event variation specific?”
“How do I rename or recategorize a click event on a page?”
Tell an agent
Rename in-page event {event_id} on page {page_id} to {name}.
Set variation specific to {variation_specific} for page {page_id}'s event {event_id}.
POST /projects/{project_id}/custom_events Create a custom event in a project · Create a Custom Event #
Ask an LLM
“How do I register a custom event key in an experimentation project?”
“Can a custom event carry event properties that metrics can filter on?”
Tell an agent
Create a custom event with key {key} in project {project_id}.
Add custom event {key} named {name} to project {project_id} with event properties {event_properties}.
DELETE /projects/{project_id}/custom_events/{event_id} Archive a custom event · Archive a Custom Event #
Ask an LLM
“How do I archive a custom event I no longer track in a project?”
“Does removing a custom event archive it rather than delete it?”
Tell an agent destructive · confirm first
Archive custom event {event_id} in project {project_id}.
Retire project {project_id}'s custom event {event_id}.
PATCH /projects/{project_id}/custom_events/{event_id} Update a custom event · Update a Custom Event #
Ask an LLM
“Can I change the name or category of an existing custom event?”
“What can I edit on a project's custom event after creating it?”
Tell an agent
Rename custom event {event_id} in project {project_id} to {name}.
Change the category of project {project_id}'s custom event {event_id} to {category}.

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/optimizely:optimizely-events-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

optimizely-events-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Optimizely Events API
  version: '1.0'
  description: 'Operations tagged Events across 5 of this provider''s published API definitions: optimizely-content-marketing-platform-optimizely-cmp-open-api-documentation-openapi.json, optimizely-data-platform-openapi.yml, optimizely-platform-optimizely-swagger-openapi.json, optimizely-web-experimentation-openapi.yml, optimizely-web-experimentation-optimizely-api-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.cmp.optimizely.com/v3
  description: v3 version of Optimizely CMP Open API
- url: https://api.zaius.com/v3
  description: Optimizely Data Platform API v3 Server
- url: https://prod.cg.optimizely.com
- url: https://api.optimizely.com/v2
  description: Optimizely REST API v2 Production Server
tags:


# --- truncated at 32 KB (59 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/optimizely/refs/heads/main/openapi/optimizely-events-api-openapi.yml