---
title: "List flag versions"
method: GET
path: "/v1/projects/{projectIdOrName}/feature-flags/flags/{flagIdOrSlug}/versions"
tags: ["feature-flags"]
---

# List flag versions

`GET /v1/projects/{projectIdOrName}/feature-flags/flags/{flagIdOrSlug}/versions`

Lists flag versions for a given flag.

## Path parameters

- `projectIdOrName` string, required
- `flagIdOrSlug` string, required

## Query parameters

- `limit` number
- `cursor` string — Pagination cursor
- `environment` string — Environment to filter by
- `withMetadata` boolean — Whether to include metadata
- `teamId` string
- `slug` string

## Response `200`

- object
  - `versions` object[], required
    - `createdBy` string
    - `message` string
    - `data` object, required
      - `description` string
      - `maintainerIds` string[]
      - `permanent` false | true
      - `tags` string[]
      - `experiment` object
        - `id` string
        - `name` string
        - `numVariants` number
        - `surfaceArea` string
        - `stickyRequirement` false | true
        - `layer` string
        - `guardrailMetrics` object[]
          - `description` string
          - `metricFormula` string
          - `name` string, required
          - `metricType` 'count' | 'currency' | 'percentage', required
          - `metricUnit` 'session' | 'user' | 'visitor', required
          - `directionality` 'decreaseIsGood' | 'increaseIsGood', required
        - `hypothesis` string
        - `device` 'android' | 'desktop' | 'ios' | 'mweb'
        - `controlVariantId` string
        - `startedAt` number
        - `endedAt` number
        - `decision` string
        - `decisionReason` string
        - `duration` number
        - `durationUnit` 'days' | 'exposures'
        - `allocationPercent` number
        - `allocationUnit` 'cookieId' | 'userId' | 'visitorId', required
        - `primaryMetrics` object[], required
          - `description` string
          - `metricFormula` string
          - `name` string, required
          - `metricType` 'count' | 'currency' | 'percentage', required
          - `metricUnit` 'session' | 'user' | 'visitor', required
          - `directionality` 'decreaseIsGood' | 'increaseIsGood', required
        - `status` 'closed' | 'draft' | 'paused' | 'running', required
      - `variants` object[], required
      - `environments` object, required
      - `seed` number, required
      - `state` 'active' | 'archived', required
    - `id` string, required
    - `revision` number, required
    - `createdAt` number, required
    - `flagId` string, required
    - `changedEnvironments` string[], required
    - `metadata` object
      - `creator` object
        - `id` string, required
        - `name` string, required
  - `pagination` object, required

## Other responses

- `304`
- `400` — One of the provided values in the request query is invalid.
- `401` — The request is not authorized.
- `402` — The account is missing a payment so payment method must be updated
- `403` — You do not have permission to access this resource.
- `404`
- `410`

---

[API](https://skmtc.net/vercel/apis/api.md) · [All operations](https://skmtc.net/vercel/apis/api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vercel/api/revisions/a72b2ab6516a/schema)
