UNPKG

@simonecoelhosfo/optimizely-mcp-server

Version:

Optimizely MCP Server for AI assistants with integrated CLI tools

876 lines 71.1 kB
/** * AUTO-GENERATED FILE - DO NOT EDIT * Generated from: https://api.optimizely.com/v2/swagger.json and https://docs.developers.optimizely.com/feature-experimentation/openapi/64ef5b583c011a140fba7b40 * Generated at: 2025-08-05T05:37:42.320Z * * This file contains entity schemas extracted from Optimizely's API specification. * It is used by the ConfigurableDefaultsManager to provide type-safe defaults. */ export declare const FIELDS: { readonly project: { readonly required: readonly ["name"]; readonly optional: readonly ["account_id", "confidence_threshold", "created", "dcp_service_id", "description", "id", "is_classic", "is_flags_enabled", "last_modified", "platform", "sdks", "socket_token", "status", "third_party_platform", "web_snippet"]; readonly defaults: { readonly platform: "web"; readonly status: "active"; }; readonly enums: { readonly platform: readonly ["web", "ios", "android", "custom"]; readonly status: readonly ["active", "archived"]; readonly third_party_platform: readonly ["salesforce"]; }; readonly fieldTypes: { readonly account_id: "integer"; readonly confidence_threshold: "number"; readonly created: "string"; readonly dcp_service_id: "integer"; readonly description: "string"; readonly id: "integer"; readonly is_classic: "boolean"; readonly is_flags_enabled: "boolean"; readonly last_modified: "string"; readonly name: "string"; readonly platform: "string"; readonly sdks: "array"; readonly socket_token: "string"; readonly status: "string"; readonly third_party_platform: "string"; readonly web_snippet: "any"; }; readonly fieldDescriptions: { readonly account_id: "The account the Project is associated with"; readonly confidence_threshold: "The significance level at which you would like to declare winning and losing variations. A lower number minimizes the time needed to declare a winning or losing variation, but increases the risk that your results aren't true winners and losers. The precision for this number is up to 4 decimal places\n"; readonly created: "The time that the Project was originally created"; readonly dcp_service_id: "The ID of a Dynamic Customer Profile Service associated with this Project"; readonly description: "A short description of the Project"; readonly id: "The unique identifier for the Project"; readonly is_classic: "If `is_classic` is true it means that the project doesn't have Optimizely X enabled. In other words: this project is Optimizely Classic only. The v2 REST API can only be used for Optimizely X objects (with the exception of Audiences and Projects, which can be shared between Optimizely X and Classic), so when `is_classic` is set to true you will need to use the v1 API\n"; readonly is_flags_enabled: "If is_flags_enabled is true, this project uses the new Flags-First user experience and will use the [Flags API](https://library.optimizely.com/docs/api/flags/v1/index.html) to make changes to entities."; readonly last_modified: "The time the Project was last modified"; readonly name: "The name of the Project"; readonly platform: "The platform of the Project"; readonly sdks: "For Full Stack, Mobile, and OTT projects, the language used for the SDK"; readonly socket_token: "The token used to identify your mobile app to Optimizely (mobile only)"; readonly status: "The current status of the Project"; readonly third_party_platform: "The third party platform with which the project is intended to be used. When this is set, a project might have special restrictions. This can have a value of \"salesforce\" but defaults to null. In order to set this field, an account must have the third party platforms feature and be a fullstack project.\n"; readonly web_snippet: "Web snippet-specific configuration for this Project (for Web Projects only)"; }; readonly fieldExamples: { readonly account_id: 12345; readonly confidence_threshold: 0.9; readonly dcp_service_id: 121234; readonly description: "Project for user sign up flow"; readonly id: 1000; readonly name: "Test Project"; readonly socket_token: "AABBCCDD~123456789"; }; readonly endpoints: { readonly create: "POST /projects"; readonly list: "GET /projects"; readonly get: "GET /projects/{project_id}/webhooks"; readonly update: "PATCH /projects/{project_id}/custom_events/{event_id}"; readonly delete: "DELETE /projects/{project_id}/custom_events/{event_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: { readonly confidence_threshold: 0.5; }; readonly maximum: { readonly confidence_threshold: 1; }; }; }; readonly experiment: { readonly required: readonly ["project_id"]; readonly optional: readonly ["allocation_policy", "audience_conditions", "campaign_id", "changes", "created", "description", "earliest", "environments", "feature_id", "feature_key", "feature_name", "holdback", "id", "is_classic", "key", "last_modified", "latest", "metrics", "multivariate_traffic_policy", "name", "page_ids", "results_token", "schedule", "status", "traffic_allocation", "type", "url_targeting", "variations", "whitelist", "audiences", "audiences_operator"]; readonly defaults: { readonly audience_conditions: "everyone"; readonly is_classic: false; readonly metrics: readonly []; readonly type: "a/b"; }; readonly enums: { readonly multivariate_traffic_policy: readonly ["full_factorial"]; readonly status: readonly ["running", "paused", "archived", "campaign_paused", "concluded", "not_started"]; readonly type: readonly ["a/b", "feature", "multivariate", "personalization", "multiarmed_bandit"]; }; readonly fieldTypes: { readonly allocation_policy: "string"; readonly audience_conditions: "string"; readonly campaign_id: "integer"; readonly changes: "array"; readonly created: "string"; readonly description: "string"; readonly earliest: "string"; readonly environments: "object"; readonly feature_id: "integer"; readonly feature_key: "string"; readonly feature_name: "string"; readonly holdback: "integer"; readonly id: "integer"; readonly is_classic: "boolean"; readonly key: "string"; readonly last_modified: "string"; readonly latest: "string"; readonly metrics: "array"; readonly multivariate_traffic_policy: "string"; readonly name: "string"; readonly page_ids: "array"; readonly project_id: "integer"; readonly results_token: "string"; readonly schedule: "any"; readonly status: "string"; readonly traffic_allocation: "integer"; readonly type: "string"; readonly url_targeting: "any"; readonly variations: "array"; readonly whitelist: "array"; readonly audiences: "array"; readonly audiences_operator: "string"; }; readonly fieldDescriptions: { readonly allocation_policy: "Traffic allocation policy across variations in this experiment"; readonly audience_conditions: "The audiences that should see this experiment. To target everyone, use the string \"everyone\" or omit this field. Multiple audiences can be combined with \"and\" or \"or\" using the same structure as audience conditions"; readonly campaign_id: "For Personalization experiences, this ID corresponds to the parent Campaign. For standalone experiments this campaign_id does not correspond to a campaign object."; readonly changes: "Custom CSS or JavaScript that will run before all variations in the Experiment (for Experiments in Web Projects only)"; readonly created: "The time when the Experiment was initially created"; readonly description: "The description or hypothesis for an Experiment"; readonly earliest: "The first time the Experiment was activated"; readonly environments: "String identifier for the Experiment's status in each Environment based on the environment key."; readonly feature_id: "The ID of a Feature to attach to the Experiment. This turns an Experiment into a Feature Test."; readonly feature_key: "The key for the Feature attached to the Experiment. Applies to Feature Tests only. Valid keys contain alphanumeric characters, hyphens, and underscores, and are limited to 64 characters."; readonly feature_name: "The feature flag name to display in the Optimizely app. Whitespaces and other non-alphanumeric characters allowed. Defaults to feature key if left empty."; readonly holdback: "Percent of traffic to exclude from the experiment, measured in basis points. 100 basis points = 1% traffic. For example, a value of 9900 would mean that 1% of visitors will be eligible for the experiment. This is only applicable for Web."; readonly id: "The unique identifier for the Experiment"; readonly is_classic: "Whether or not the Experiment is a classic Experiment. If true, the Experiment is read-only"; readonly key: "Unique string identifier for this Experiment within the Project. Only applicable for Full Stack and Mobile projects."; readonly last_modified: "The last time the Experiment was modified"; readonly latest: "The last time the Experiment was paused (not present if the Experiment is still running). For campaign experiences, this field represents the last time the Campaign was paused."; readonly metrics: "An ordered list of metrics to track for the Experiment. Required for Web, Full Stack, and Mobile Experimentation. Not applicable for Web Personalization Experiences."; readonly multivariate_traffic_policy: "For Experiments of type `multivariate`, this specifies how the weights and statuses of combinations will be decided. In `full_factorial` mode, | combination weights are read-only, and are generated by multiplying together weights of section variations."; readonly name: "Name of the Experiment. Required for Web Experimentation. Optional for Web Personalization experiences and Full Stack experiments. Not applicable for Mobile Experiments."; readonly page_ids: "A list of Page IDs used in the Experiment. `url_targeting` or `page_ids`, but not both."; readonly project_id: "The Project the Experiment is in"; readonly results_token: "temporary token based on experiment id, used to access data platform services from other parts of the product"; readonly schedule: "Start and stop times for the Experiment, if applicable (for Experiments in Web Projects only)"; readonly status: "Current state of the Experiment.<br> In Full Stack, this is the Experiment's state in the primary (production) environment."; readonly traffic_allocation: "Percent of traffic allocated for the experiment, measured in basis points. 100 basis points = 1% traffic. For example, a value of 5500 would mean that 55% of visitors will be eligible for the experiment. This is only applicable for Full Stack."; readonly type: "Indicates whether this is an `a/b`, `multivariate`, `feature`, or `multiarmed_bandit` test or an experience within a `personalization` campaign. Note that the default for this field is `a/b`. If another test type is desired, populate this field with the appropriate string (from one of the possible values)."; readonly url_targeting: "Rules for which URLs this experiment should target. This is an alternative to `page_ids`, for cases when you don't need to reuse an existing page or target multiple pages. When creating an experiment any variations without a page ID will apply to the URL Targeting page."; readonly variations: "A list of variations that each define an experience to show in the context of the Experiment for the purpose of comparison against each other"; readonly whitelist: "A list containing the user IDs and variations of users who have been whitelisted"; readonly audiences: "Array of audience references for multiple audience targeting (template mode only)"; readonly audiences_operator: "Logical operator for multiple audiences: \"and\" or \"or\" (template mode only)"; }; readonly fieldExamples: { readonly audience_conditions: "[\"and\", {\"audience_id\": 7000}, {\"audience_id\":7001}]"; readonly campaign_id: 2000; readonly feature_id: 1000; readonly feature_name: "This is the user search feature"; readonly holdback: 5000; readonly id: 3000; readonly key: "home_page_experiment"; readonly name: "Blue Button Experiment"; readonly project_id: 1000; readonly traffic_allocation: 5000; }; readonly endpoints: { readonly create: "POST /experiments"; readonly list: "GET /experiments"; readonly get: "GET /export/experiments/{experiment_id}/results/csv"; readonly update: "PATCH /experiments/{experiment_id}/sections/{section_id}"; readonly delete: "DELETE /experiments/{experiment_id}/sections/{section_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: { readonly key: 64; }; readonly pattern: { readonly key: "^[a-zA-Z0-9_\\-]+$"; }; readonly minimum: { readonly holdback: 0; readonly traffic_allocation: 0; }; readonly maximum: { readonly holdback: 10000; readonly traffic_allocation: 10000; }; }; }; readonly feature: { readonly required: readonly ["key", "project_id"]; readonly optional: readonly ["archived", "created", "description", "environments", "id", "last_modified", "name", "variables"]; readonly defaults: { readonly archived: false; }; readonly enums: {}; readonly fieldTypes: { readonly archived: "boolean"; readonly created: "string"; readonly description: "string"; readonly environments: "object"; readonly id: "integer"; readonly key: "string"; readonly last_modified: "string"; readonly name: "string"; readonly project_id: "integer"; readonly variables: "array"; }; readonly fieldDescriptions: { readonly archived: "Whether the Feature has been archived"; readonly created: "Time when the Feature was created"; readonly description: "A short description of this Feature"; readonly environments: "The configuration for this Feature's Rollout within each Environment, keyed by Environment key"; readonly id: "The ID of this Feature"; readonly key: "Unique string identifier for this Feature within the Project"; readonly last_modified: "Date last modified"; readonly name: "Name of the Feature"; readonly project_id: "The ID of the Project this Feature belongs to"; readonly variables: "Variables define the dynamic configuration of a feature, and each variable can take on a different value on a per-variation basis within a feature test."; }; readonly fieldExamples: { readonly key: "new_checkout_page"; readonly name: "the checkout feature"; }; readonly endpoints: { readonly create: "POST /features"; readonly list: "GET /features"; readonly get: "GET /features/{feature_id}"; readonly update: "PATCH /features/{feature_id}"; readonly delete: "DELETE /features/{feature_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: { readonly key: 64; }; readonly pattern: { readonly key: "^[a-zA-Z0-9_\\-]+$"; }; readonly minimum: {}; readonly maximum: {}; }; }; readonly variation: { readonly required: readonly ["weight"]; readonly optional: readonly ["actions", "archived", "description", "feature_enabled", "key", "name", "status", "variable_values", "variation_id"]; readonly defaults: {}; readonly enums: { readonly status: readonly ["active", "paused", "archived"]; }; readonly fieldTypes: { readonly actions: "array"; readonly archived: "boolean"; readonly description: "string"; readonly feature_enabled: "boolean"; readonly key: "string"; readonly name: "string"; readonly status: "string"; readonly variable_values: "object"; readonly variation_id: "integer"; readonly weight: "integer"; }; readonly fieldDescriptions: { readonly actions: "A collection of changes to run for each page in an experiment. Only applicable to Optimizely X Web."; readonly archived: "Whether the variation is archived"; readonly description: "A description of the variation."; readonly feature_enabled: "For Feature Tests, indicates if the feature should be enabled for the variation"; readonly key: "Unique string identifier for this variation within the Experiment. Only applicable for Full Stack and Mobile projects."; readonly name: "The name of the variation. Required for Web Experiments and Personalization experiences. Not required for Full Stack Experiments."; readonly status: "Current status of the variation"; readonly variable_values: "For Feature Tests, the variable values for the variation represented as a map of Variable keys to their values."; readonly variation_id: "The unique identifier for the variation"; readonly weight: "The percentage of your visitors that should see this variation, measured in basis points. 100 basis points = 1% traffic. Variation weights must add up to 10000."; }; readonly fieldExamples: { readonly key: "blue_button_variation"; readonly name: "Blue Button"; }; readonly endpoints: {}; readonly validation: { readonly minLength: {}; readonly maxLength: { readonly key: 64; }; readonly pattern: { readonly key: "^[a-zA-Z0-9_\\-]+$"; }; readonly minimum: { readonly weight: 0; }; readonly maximum: { readonly weight: 10000; }; }; }; readonly event: { readonly required: readonly ["key"]; readonly optional: readonly ["archived", "category", "created", "description", "event_properties", "event_type", "id", "is_classic", "is_editable", "name", "project_id"]; readonly defaults: { readonly category: "other"; readonly is_classic: false; }; readonly enums: { readonly event_type: readonly ["custom"]; readonly category: readonly ["add_to_cart", "save", "search", "share", "purchase", "convert", "sign_up", "subscribe", "other"]; }; readonly fieldTypes: { readonly archived: "boolean"; readonly category: "any"; readonly created: "string"; readonly description: "string"; readonly event_properties: "array"; readonly event_type: "string"; readonly id: "integer"; readonly is_classic: "boolean"; readonly is_editable: "boolean"; readonly key: "string"; readonly name: "string"; readonly project_id: "integer"; }; readonly fieldDescriptions: { readonly archived: "Whether or not to archive this Event"; readonly category: "A category for this Event"; readonly created: "Creation date for this Event"; readonly description: "A description of this Event"; readonly event_properties: "A set of user-defined data elements for the event. Metrics can filter on particular values of these properties."; readonly event_type: "The type of this Event"; readonly id: "The unique identifier of the Event"; readonly is_classic: "Whether or not this Event is a classic Event. If true, this Event is read-only"; readonly is_editable: "Whether or not this Event may be edited"; readonly key: "Unique string identifier for this Event within the Project"; readonly name: "A human readable name for this Event. If unspecified, defaults to the key"; readonly project_id: "The ID of this Event's parent Project"; }; readonly fieldExamples: { readonly key: "loaded_new_app"; readonly name: "Loaded New App"; readonly project_id: 1000; }; readonly endpoints: { readonly create: "POST /projects/{project_id}/custom_events"; readonly update: "PATCH /projects/{project_id}/custom_events/{event_id}"; readonly delete: "DELETE /projects/{project_id}/custom_events/{event_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: { readonly key: 64; }; readonly pattern: { readonly key: "^[a-zA-Z0-9_\\- .]+$"; }; readonly minimum: {}; readonly maximum: {}; }; }; readonly audience: { readonly required: readonly ["project_id"]; readonly optional: readonly ["archived", "conditions", "created", "description", "experiment_count", "for_journey", "id", "is_classic", "last_modified", "name", "segmentation"]; readonly defaults: { readonly archived: false; readonly for_journey: false; readonly segmentation: false; }; readonly enums: {}; readonly fieldTypes: { readonly archived: "boolean"; readonly conditions: "string"; readonly created: "string"; readonly description: "string"; readonly experiment_count: "integer"; readonly for_journey: "boolean"; readonly id: "integer"; readonly is_classic: "boolean"; readonly last_modified: "string"; readonly name: "string"; readonly project_id: "integer"; readonly segmentation: "boolean"; }; readonly fieldDescriptions: { readonly archived: "Whether the Audience has been archived"; readonly conditions: "A string defining the targeting rules for an Audience"; readonly created: "The time the Audience was initially created"; readonly description: "A short description of the Audience"; readonly experiment_count: "Number of experiments by audience_id"; readonly for_journey: "Whether the Audience has been part of journey or not"; readonly id: "The unique identifier for the Audience"; readonly is_classic: "Whether or not Audience is a classic Audience. If true, the Audience is only compatible with classic Experiments. Otherwise, the Audience may be used in Optimizely X Campaigns."; readonly last_modified: "The last time the Audience was modified"; readonly name: "The name of the Audience"; readonly project_id: "The ID of the Project the Audience was created in"; readonly segmentation: "True if the Audience is available for segmentation on the results page (Audiences can only be used for segmentation in Optimizely Classic). Set to False if you intend to use this Audience only in Optimizely X. Note that a maximum of 10 Audiences can have segmentation set to True in any given Optimizely Classic project."; }; readonly fieldExamples: { readonly conditions: "[\"and\", {\"type\": \"language\", \"value\": \"es\"}, {\"type\": \"location\", \"value\": \"US-CA-SANFRANCISCO\"}]"; readonly description: "People that speak spanish and are in San Francisco"; readonly experiment_count: 123; readonly id: 5000; readonly name: "Spanish speaking San Franciscans"; readonly project_id: 1000; }; readonly endpoints: { readonly create: "POST /audiences"; readonly list: "GET /audiences"; readonly get: "GET /audiences/{audience_id}"; readonly update: "PATCH /audiences/{audience_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: {}; readonly maximum: {}; }; }; readonly attribute: { readonly required: readonly ["key", "project_id"]; readonly optional: readonly ["archived", "condition_type", "description", "id", "last_modified", "name"]; readonly defaults: { readonly archived: false; readonly condition_type: "custom_attribute"; }; readonly enums: { readonly condition_type: readonly ["custom_attribute", "custom_dimension"]; }; readonly fieldTypes: { readonly archived: "boolean"; readonly condition_type: "string"; readonly description: "string"; readonly id: "integer"; readonly key: "string"; readonly last_modified: "string"; readonly name: "string"; readonly project_id: "integer"; }; readonly fieldDescriptions: { readonly archived: "Whether or not the Attribute has been archived"; readonly condition_type: "Whether this Attribute is a custom dimension or custom attribute. If this is a custom dimension, it belongs to an Optimizely Classic experiment and is read-only."; readonly description: "A short description of the Attribute"; readonly id: "The unique identifier for the Attribute"; readonly key: "Unique string identifier for this Attribute within the project"; readonly last_modified: "The last time the Attribute was modified"; readonly name: "The name of the Attribute. For Full Stack projects, the name will be set to the value of the key."; readonly project_id: "The ID of the project the Attribute belongs to"; }; readonly fieldExamples: { readonly key: "subscriber_status"; readonly name: "Subscriber Status"; readonly project_id: 17738411154; }; readonly endpoints: { readonly create: "POST /attributes"; readonly list: "GET /attributes"; readonly get: "GET /attributes/{attribute_id}"; readonly update: "PATCH /attributes/{attribute_id}"; readonly delete: "DELETE /attributes/{attribute_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: { readonly key: 64; }; readonly pattern: { readonly key: "^[a-zA-Z0-9_\\- .]+$"; }; readonly minimum: {}; readonly maximum: {}; }; }; readonly campaign: { readonly required: readonly ["project_id"]; readonly optional: readonly ["archived", "changes", "created", "description", "earliest", "experiment_priorities", "for_journey", "holdback", "id", "journey_id", "last_modified", "latest", "metrics", "name", "page_ids", "status", "type", "url_targeting"]; readonly defaults: { readonly archived: false; readonly for_journey: false; readonly type: "personalization"; }; readonly enums: { readonly status: readonly ["not_started", "running", "paused", "archived"]; readonly type: readonly ["personalization", "other"]; }; readonly fieldTypes: { readonly archived: "boolean"; readonly changes: "array"; readonly created: "string"; readonly description: "string"; readonly earliest: "string"; readonly experiment_priorities: "array"; readonly for_journey: "boolean"; readonly holdback: "integer"; readonly id: "integer"; readonly journey_id: "string"; readonly last_modified: "string"; readonly latest: "string"; readonly metrics: "array"; readonly name: "string"; readonly page_ids: "array"; readonly project_id: "integer"; readonly status: "string"; readonly type: "string"; readonly url_targeting: "any"; }; readonly fieldDescriptions: { readonly archived: "Whether the Campaign has been archived"; readonly changes: "A list of changes to apply to the Campaign. This corresponds to the Campaign's Shared Code in the application. Only supports 'custom_css' or 'custom_code' type changes."; readonly created: "The time the Campaign was initially created"; readonly description: "The description or goal for a Campaign"; readonly earliest: "The first time the Campaign was activated"; readonly experiment_priorities: "A list of lists of Experiment IDs that indicate the relative priority of how to show those Experiments in the context of the Campaign. Each list inside of the list represents a group of Experiments of equal priority where groups that appear earlier in the list are of higher priority to be shown."; readonly for_journey: "Whether the Campaign has been part of journey or not"; readonly holdback: "Percentage of visitors to exclude from personalization, measured in basis points. 100 basis points = 1% traffic. For example, a value of 500 would mean that 95% of visitors will see a personalized experience and 5% will see the holdback."; readonly id: "The unique identifier for the Campaign"; readonly journey_id: "The ID of the journey the Campaign is part of"; readonly last_modified: "The last time the Campaign was modified"; readonly latest: "The last time the Campaign was paused (not present if the Campaign still running)"; readonly metrics: "An ordered list of metrics to track for the Campaign"; readonly name: "The name of the Campaign"; readonly page_ids: "A list of Page IDs used in the Campaign"; readonly project_id: "The Project ID the Campaign is in"; readonly status: "Current state of the Campaign. not_started means the Campaign has never been published to the world. running means the Campaign is currently live to the world. paused means the Campaign has been published, but is currently not running. archived means the Campaign is paused and not visible in the web UI."; readonly type: "Indicates the type of this campaign. Campaigns created or fetched via the API should currently all have a type of `personalization`, but if you get a campaign_id for an experiment and look it up, you may get an `other` value."; readonly url_targeting: "Rules for which URLs this campaign should target. This is an alternative to `page_ids`, for cases when you don't need to reuse an existing page or target multiple pages."; }; readonly fieldExamples: { readonly description: "Tailor the landing page hero element for specific audiences"; readonly holdback: 500; readonly id: 2000; readonly name: "Landing Page Optimization"; readonly project_id: 1000; }; readonly endpoints: { readonly create: "POST /campaigns"; readonly list: "GET /campaigns"; readonly get: "GET /export/campaigns/{campaign_id}/results/csv"; readonly update: "PATCH /campaigns/{campaign_id}"; readonly delete: "DELETE /campaigns/{campaign_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: { readonly holdback: 0; }; readonly maximum: { readonly holdback: 10000; }; }; }; readonly page: { readonly required: readonly ["name", "project_id", "edit_url"]; readonly optional: readonly ["activation_code", "activation_type", "archived", "category", "conditions", "created", "id", "key", "last_modified", "page_type"]; readonly defaults: { readonly archived: false; readonly category: "other"; }; readonly enums: { readonly activation_type: readonly ["immediate", "manual", "polling", "callback", "dom_changed", "url_changed"]; readonly category: readonly ["article", "cart", "category", "checkout", "home", "landing_page", "pricing", "product_detail", "search_results", "other"]; readonly page_type: readonly ["single_url", "url_set", "global"]; }; readonly fieldTypes: { readonly activation_code: "string"; readonly activation_type: "string"; readonly archived: "boolean"; readonly category: "string"; readonly conditions: "string"; readonly created: "string"; readonly edit_url: "string"; readonly id: "integer"; readonly key: "string"; readonly last_modified: "string"; readonly name: "string"; readonly page_type: "string"; readonly project_id: "integer"; }; readonly fieldDescriptions: { readonly activation_code: "Stringified Javascript function that determines when the Page is activated. Only required when activation_type is 'polling' or 'callback'."; readonly activation_type: "Page activation type is a trigger that determines when the page is activated. Triggers tell Optimizely when to start checking whether certain conditions are true\n'Immediate' activation mode activates the page as soon as the snippet loads.\n'Polling' activation mode polls every 50ms until 'activation_code' evaluates to True, then activates the page.\n'Callback' activation mode activates the page when the event defined by 'activation_code' is triggered.\n'Manual' activation mode requires code within the subject app to explicitly trigger page activation.\n'DOM Changed' sets the page to trigger when the DOM changes [Learn more](https://help.optimizely.com/Build_Campaigns_and_Experiments/Support_for_dynamic_websites%3A_Use_Optimizely_on_single_page_applications#Triggers).\n'URL Changed' sets the page to trigger when the URL changes [Learn more](https://help.optimizely.com/Build_Campaigns_and_Experiments/Support_for_dynamic_websites%3A_Use_Optimizely_on_single_page_applications#Triggers).\n"; readonly archived: "Whether the Page has been archived"; readonly category: "The category this Page is grouped under"; readonly conditions: "Stringified array of the conditions that activate the Page. The array contains Page Condition JSON dicts joined by \"and\" and \"or\".\nEach individual Page Condition dict has format {\"type\": \"url\", \"match_type\": <match_type>, \"value\": <value>} where match_types are:\n\"simple\" match type will match if \"value\" matches the hostname and path of the Page URL.\n\"exact\" match type will match only an exact string match between \"value\" and the Page URL.\n\"substring\" match type will match if \"value\" is a substring of the Page URL.\n\"regex\" match type will match if \"value\" is a regular expression match for the Page URL.\n"; readonly created: "Date created"; readonly edit_url: "URL of the Page"; readonly id: "The unique identifier of the Page"; readonly key: "Unique string identifier for this Page within the Project"; readonly last_modified: "Date last modified"; readonly name: "Name of the Page"; readonly page_type: "Type of Page"; readonly project_id: "ID of the Page's Project"; }; readonly fieldExamples: { readonly activation_code: "function callbackFn(activate, options) { activate(); }"; readonly activation_type: "callback"; readonly conditions: "[\"and\", {\"type\": \"url\", \"match_type\": \"substring\", \"value\": \"optimize\"}]"; readonly edit_url: "https://www.optimizely.com"; readonly id: 4000; readonly key: "home_page"; readonly name: "Home Page"; readonly project_id: 1000; }; readonly endpoints: { readonly create: "POST /pages"; readonly list: "GET /pages"; readonly get: "GET /pages/{page_id}"; readonly update: "PATCH /pages/{page_id}/events/{event_id}"; readonly delete: "DELETE /pages/{page_id}/events/{event_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: { readonly key: 500; }; readonly pattern: { readonly key: "^[a-zA-Z0-9_]+$"; }; readonly minimum: {}; readonly maximum: {}; }; }; readonly extension: { readonly required: readonly ["project_id", "name", "edit_url", "implementation"]; readonly optional: readonly ["archived", "created", "description", "enabled", "fields", "id", "last_modified"]; readonly defaults: { readonly fields: readonly []; }; readonly enums: {}; readonly fieldTypes: { readonly archived: "boolean"; readonly created: "string"; readonly description: "string"; readonly edit_url: "string"; readonly enabled: "boolean"; readonly fields: "array"; readonly id: "integer"; readonly implementation: "object"; readonly last_modified: "string"; readonly name: "string"; readonly project_id: "integer"; }; readonly fieldDescriptions: { readonly archived: "Whether the extension is archived"; readonly created: "The time when the extension was initially created"; readonly description: "The description for the extension"; readonly edit_url: "The URL to load when editing the extension"; readonly enabled: "Whether the extension is enabled. A disabled extension won't appear in the editor and won't be built into the snippet"; readonly fields: "Array of editable fields in the extension"; readonly id: "The unique identifier for the extension"; readonly implementation: "The implementation of the extension that defines the behavior of the fields through HTML, CSS, and Javascript"; readonly last_modified: "The last time when the extension was modified"; readonly name: "Name of the extension"; readonly project_id: "The project the extension is in"; }; readonly fieldExamples: { readonly fields: readonly [{ readonly api_name: "text"; readonly default_value: "My Butterbar"; readonly field_type: "text"; readonly label: "A text field"; }]; readonly id: 3000; readonly name: "My Extension"; readonly project_id: 1000; }; readonly endpoints: { readonly create: "POST /extensions"; readonly list: "GET /extensions"; readonly get: "GET /extensions/{extension_id}"; readonly update: "PATCH /extensions/{extension_id}"; readonly delete: "DELETE /extensions/{extension_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: {}; readonly maximum: {}; }; }; readonly group: { readonly required: readonly ["project_id", "name"]; readonly optional: readonly ["archived", "created", "description", "entities", "id", "last_modified"]; readonly defaults: {}; readonly enums: {}; readonly fieldTypes: { readonly archived: "boolean"; readonly created: "string"; readonly description: "string"; readonly entities: "array"; readonly id: "integer"; readonly last_modified: "string"; readonly name: "string"; readonly project_id: "integer"; }; readonly fieldDescriptions: { readonly archived: "Whether the group is archived"; readonly created: "The time when the Exclusion Group was initially created"; readonly description: "The description for an Exclusion Group"; readonly entities: "Array of Group Entities in the Exclusion Group"; readonly id: "The unique identifier for the Exclusion Group"; readonly last_modified: "The last time the Exclusion Group was modified"; readonly name: "Name of the Exclusion Group"; readonly project_id: "The Project the Exclusion Group is in"; }; readonly fieldExamples: { readonly entities: readonly [{ readonly id: 1234; readonly kind: "Experiment"; readonly weight: 5000; }]; readonly id: 3000; readonly name: "Homepage Group"; readonly project_id: 1000; }; readonly endpoints: { readonly create: "POST /groups"; readonly list: "GET /groups"; readonly get: "GET /groups/{group_id}"; readonly update: "PATCH /groups/{group_id}"; readonly delete: "DELETE /groups/{group_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: {}; readonly maximum: {}; }; }; readonly webhook: { readonly required: readonly ["name", "project_id", "url"]; readonly optional: readonly ["active", "created", "description", "events", "id", "last_modified"]; readonly defaults: {}; readonly enums: {}; readonly fieldTypes: { readonly active: "boolean"; readonly created: "string"; readonly description: "string"; readonly events: "array"; readonly id: "integer"; readonly last_modified: "string"; readonly name: "string"; readonly project_id: "integer"; readonly url: "string"; }; readonly fieldDescriptions: { readonly active: "Is Webhook active."; readonly created: "Created time."; readonly description: "A short description of the Webhook."; readonly events: "List of events subscribed to the webhook."; readonly id: "ID of this Webhook"; readonly last_modified: "Last modification time."; readonly name: "Name of the Webhook."; readonly project_id: "ID of the project of the Environment."; readonly url: "Webhook URL"; }; readonly fieldExamples: { readonly description: "Webhook description"; }; readonly endpoints: { readonly create: "POST /projects/{project_id}/webhooks"; readonly get: "GET /webhooks/{webhook_id}"; readonly update: "PATCH /webhooks/{webhook_id}"; readonly delete: "DELETE /webhooks/{webhook_id}"; }; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: {}; readonly maximum: {}; }; }; readonly collaborator: { readonly required: readonly []; readonly optional: readonly ["id", "profile", "project_roles"]; readonly defaults: {}; readonly enums: {}; readonly fieldTypes: { readonly id: "string"; readonly profile: "any"; readonly project_roles: "array"; }; readonly fieldDescriptions: { readonly id: "The unique identifier of the user"; }; readonly fieldExamples: { readonly id: "fa74a14b-1f3a-463d-aa98-2f7124ee6fc3"; }; readonly endpoints: {}; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: {}; readonly maximum: {}; }; }; readonly account: { readonly required: readonly []; readonly optional: readonly ["id", "name"]; readonly defaults: {}; readonly enums: {}; readonly fieldTypes: { readonly id: "integer"; readonly name: "string"; }; readonly fieldDescriptions: { readonly id: "The unique identifier of the Account"; readonly name: "The name of the Account"; }; readonly fieldExamples: {}; readonly endpoints: {}; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: {}; readonly maximum: {}; }; }; readonly results: { readonly required: readonly []; readonly optional: readonly ["confidence_threshold", "end_time", "experiment_id", "is_stale", "metrics", "reach", "start_time", "stats_config"]; readonly defaults: {}; readonly enums: {}; readonly fieldTypes: { readonly confidence_threshold: "number"; readonly end_time: "string"; readonly experiment_id: "integer"; readonly is_stale: "boolean"; readonly metrics: "array"; readonly reach: "any"; readonly start_time: "string"; readonly stats_config: "any"; }; readonly fieldDescriptions: { readonly confidence_threshold: "The significance level at which you would like to declare winning and losing variations. A lower number minimizes the time needed to declare a winning or losing variation, but increases the risk that your results aren't true winners and losers."; readonly end_time: "End of the time interval (exclusive) used to calculated the results. The time is formatted in ISO 8601."; readonly experiment_id: "The unique identifier for the Experiment"; readonly is_stale: "When true, indicates the results were delivered from a cache that is out of date."; readonly metrics: "The breakdown of Experiment results by metric. ExperimentMetricResults object ordering in the array is consistent with the order that metrics are attached to the Experiment in the Optimizely UI and REST API (i.e. index 0 is the primary metric, indices 1-4 are secondary metrics, indices 5+ are monitoring metrics). See here for an explantion of the impact of metric ordering on results calculations."; readonly reach: "The total number of users exposed to a different experience"; readonly start_time: "Start of the time interval (inclusive) used to calculate the results. The time is formatted in ISO 8601."; readonly stats_config: "Stats Engine configuration settings"; }; readonly fieldExamples: { readonly confidence_threshold: 0.9; readonly experiment_id: 3000; }; readonly endpoints: {}; readonly validation: { readonly minLength: {}; readonly maxLength: {}; readonly pattern: {}; readonly minimum: {}; readonly maximum: {}; }; }; readonly variable: { readonly required: readon