---
title: "Read all the Sections in a Multivariate Test"
method: GET
path: "/experiments/{experiment_id}/sections"
tags: ["Sections"]
---

# Read all the Sections in a Multivariate Test

`GET /experiments/{experiment_id}/sections`

Get a list of all Sections in a Multivariate Test

## Path parameters

- `experiment_id` integer, required

## Query parameters

- `per_page` integer
- `page` integer

## Response `200`

Return Sections

- Section[]
  - `archived` boolean — Whether or not the Section has been archived
  - `description` string — A short description of this Section
  - `experiment_id` integer — The ID of the Multivariate Test this Section belongs to
  - `id` integer — The ID of this Section
  - `name` string — The name of this Section
  - `project_id` integer — The ID of the project that this Section belongs to
  - `variations` Variation[], required
    - `actions` Action[] — A collection of changes to run for each page in an experiment. Only applicable to Optimizely X Web.
      - `changes` Change[] — The list of changes to apply to the Page. If 'dependencies' is supplied in a Change within 'changes', each ID in 'dependencies' must also be in 'changes'.
        - `allow_additional_redirect` boolean — Whether or not to allow additional redirects after redirecting to destination. Required for changes of type 'redirect'
        - `async` boolean — Indicates whether or not to execute the change asyncronously. If true, src will be returned in the response. Otherwise, it will be not included.
        - `attributes` ChangeAttribute
          - `class` string — Name of the class to set the element(s) matched by a selector to
          - `hide` boolean — Whether or not to hide the element(s) matched by a selector
          - `href` string — Value of href attribute to add to element(s) matched by a selector
          - `html` string — Value of HTML attribute to add to element(s) matched by a selector
          - `remove` boolean — Whether or not to remove the element(s) matched by a selector
          - `src` string — Value of src attribute to add to element(s) matched by a selector
          - `style` string — Value of style attribute to add to element(s) matched by a selector
          - `text` string — Value of text attribute to add to the element(s) matched by a selector
        - `config` object — Configuration properties for the extension
        - `css` CSSAttribute
          - `background-color` string
          - `background-image` string
          - `border-color` string
          - `border-style` string
          - `border-width` string
          - `color` string
          - `font-family` string
          - `font-size` string
          - `font-weight` string
          - `height` string
          - `position` string
          - `width` string
        - `dependencies` string[] — A list of dependent change IDs that must happen before this change
        - `destination` string — URL to redirect to. Required for changes of type 'redirect'. `destination` and `destination_function` cannot be used at the same time
        - `destination_function` string — A function string to redirect to. Required for changes of type 'redirect'. `destination` and `destination_function` cannot be used at the same time
        - `extension_id` string — ID of the extension to insert. Required for changes of type 'extension'
        - `id` string, uuid — The ID of the change
        - `isOpalManaged` boolean — Whether this change is managed by Opal. Provenance metadata; preserved on round-trip so automated writers (e.g. the MAB publish job) are not misread as editing custom JavaScript. See PMOD-3772 / PMOD-3781.
        - `name` string — Name of the change
        - `operator` string — Where to instert HTML or image for types 'insert_html' and 'insert_image' with respect to the element(s) matched by 'selector'
        - `preserve_parameters` boolean — Whether or not to preserve parameters from original request when redirecting to new destination URL. Required for changes of type 'redirect'. For redirects using `destination_function`, `preserve_parameters` must be false.
        - `rearrange` object — A directive to place the DOM element(s) matched by 'selector' to the position of the element matched by 'insertSelector', with the relation specified by 'operator'. The supplied example moves element matched by 'selector' above the element of class .greyBox
        - `selector` string — CSS selector to determine where changes are applied. Required for changes of type 'attribute', 'insert_html', and 'insert_image'
        - `src` string — The path to the change payload on the CDN. Only present if 'async' is True.
        - `type` 'attribute' | 'custom_code' | 'custom_css' | 'extension' | 'insert_html' | 'insert_image' | 'redirect', required — The type of this change. - Changes of type 'attribute' have required fields 'selector' and 'attributes' - Changes of type 'custom_code' have required field 'value' - Changes of type 'custom_css' have required field 'value' - Changes of type 'extension' have required field 'extension_id' - Changes of type 'insert_html' have required field 'selector' - Changes of type 'insert_image' have required field 'selector' - Changes of type 'redirect' have required fields 'destination', 'preserve_parameters', and 'allow_additional_redirect'
        - `value` string — The value for the change can be custom Javascript or CSS as a string. Required for changes of type 'custom_css' and 'custom_code'
      - `page_id` integer, required — The ID of the Page to apply changes to
      - `share_link` string, url — The share link for the provided Variation and Page combination
    - `archived` boolean — Whether the variation is archived
    - `description` string — A description of the variation.
    - `feature_enabled` boolean — For Feature Tests, indicates if the feature should be enabled for the variation
    - `key` string — Unique string identifier for this variation within the Experiment. Only applicable for Full Stack and Mobile projects.
    - `name` string — The name of the variation. Required for Web Experiments and Personalization experiences. Not required for Full Stack Experiments.
    - `status` 'active' | 'paused' | 'archived' — Current status of the variation
    - `variable_values` object — For Feature Tests, the variable values for the variation represented as a map of Variable keys to their values.
    - `variation_id` integer — The unique identifier for the variation
    - `weight` integer, required — 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.

## Other responses

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

---

[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)
