---
title: list-flag-versions
product: vercel
url: /docs/rest-api/feature-flags/list-flag-versions
type: reference
prerequisites:
  []
related:
  - /docs/rest-api
summary: Learn about list-flag-versions on Vercel.
install_vercel_plugin: npx plugins add vercel/vercel-plugin
---

# List flag versions

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

Lists flag versions for a given flag.

## Authentication

**bearerToken**: HTTP bearer

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `projectIdOrName` | string | Yes |  |
| `flagIdOrSlug` | string | Yes |  |


## Query parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `limit` | number. min: 1; max: 100; default: 20 | No |  |
| `cursor` | string | No | Pagination cursor |
| `environment` | string | No | Environment to filter by |
| `withMetadata` | boolean. default: false | No | Whether to include metadata |
| `teamId` | string | No | The Team identifier to perform the request on behalf of. |
| `slug` | string | No | The Team slug to perform the request on behalf of. |


## Responses

### 200: No description

Content-Type: `application/json`

```json
{
  "type": "object",
  "required": [
    "pagination",
    "versions"
  ],
  "properties": {
    "versions": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "changedEnvironments",
          "createdAt",
          "data",
          "flagId",
          "id",
          "revision"
        ],
        "properties": {
          "createdBy": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "revision": {
            "type": "number"
          },
          "createdAt": {
            "type": "number"
          },
          "data": {
            "type": "object",
            "required": [
              "environments",
              "seed",
              "state",
              "variants"
            ],
            "properties": {
              "description": {
                "type": "string"
              },
              "experiment": {
                "type": "object",
                "required": [
                  "allocationUnit",
                  "primaryMetrics",
                  "status"
                ],
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "id": {
                    "type": "string"
                  },
                  "numVariants": {
                    "type": "number"
                  },
                  "surfaceArea": {
                    "type": "string"
                  },
                  "stickyRequirement": {
                    "type": "boolean",
                    "enum": [
                      false,
                      true
                    ]
                  },
                  "layer": {
                    "type": "string"
                  },
                  "guardrailMetrics": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "directionality",
                        "metricType",
                        "metricUnit",
                        "name"
                      ],
                      "properties": {
                        "description": {
                          "type": "string"
                        },
                        "metricFormula": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "metricType": {
                          "type": "string",
                          "enum": [
                            "percentage",
                            "currency",
                            "count"
                          ]
                        },
                        "metricUnit": {
                          "type": "string",
                          "enum": [
                            "user",
                            "session",
                            "visitor"
                          ]
                        },
                        "directionality": {
                          "type": "string",
                          "enum": [
                            "increaseIsGood",
                            "decreaseIsGood"
                          ]
                        }
                      }
                    }
                  },
                  "hypothesis": {
                    "type": "string"
                  },
                  "device": {
                    "type": "string",
                    "enum": [
                      "android",
                      "ios",
                      "desktop",
                      "mweb"
                    ]
                  },
                  "controlVariantId": {
                    "type": "string"
                  },
                  "startedAt": {
                    "type": "number"
                  },
                  "endedAt": {
                    "type": "number"
                  },
                  "allocationUnit": {
                    "type": "string",
                    "enum": [
                      "cookieId",
                      "visitorId",
                      "userId"
                    ]
                  },
                  "primaryMetrics": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "directionality",
                        "metricType",
                        "metricUnit",
                        "name"
                      ],
                      "properties": {
                        "description": {
                          "type": "string"
                        },
                        "metricFormula": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "metricType": {
                          "type": "string",
                          "enum": [
                            "percentage",
                            "currency",
                            "count"
                          ]
                        },
                        "metricUnit": {
                          "type": "string",
                          "enum": [
                            "user",
                            "session",
                            "visitor"
                          ]
                        },
                        "directionality": {
                          "type": "string",
                          "enum": [
                            "increaseIsGood",
                            "decreaseIsGood"
                          ]
                        }
                      }
                    }
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "draft",
                      "running",
                      "paused",
                      "closed"
                    ]
                  }
                }
              },
              "variants": {
                "type": "array",
                "items": {
                  "type": "object"
                }
              },
              "environments": {
                "type": "object",
                "additionalProperties": {
                  "type": "object",
                  "required": [
                    "active",
                    "fallthrough",
                    "pausedOutcome",
                    "rules"
                  ],
                  "properties": {
                    "reuse": {
                      "type": "object",
                      "required": [
                        "active",
                        "environment"
                      ],
                      "properties": {
                        "active": {
                          "type": "boolean",
                          "enum": [
                            false,
                            true
                          ]
                        },
                        "environment": {
                          "type": "string"
                        }
                      }
                    },
                    "targets": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "required": [
                                "value"
                              ],
                              "properties": {
                                "note": {
                                  "type": "string"
                                },
                                "value": {
                                  "type": "string"
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "revision": {
                      "type": "number"
                    },
                    "pausedOutcome": {
                      "type": "object",
                      "required": [
                        "type",
                        "variantId"
                      ],
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "variant"
                          ]
                        },
                        "variantId": {
                          "type": "string"
                        }
                      }
                    },
                    "fallthrough": {
                      "oneOf": [
                        {
                          "type": "object",
                          "required": [
                            "type",
                            "variantId"
                          ],
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "variant"
                              ]
                            },
                            "variantId": {
                              "type": "string"
                            }
                          }
                        },
                        {
                          "type": "object",
                          "required": [
                            "base",
                            "defaultVariantId",
                            "type",
                            "weights"
                          ],
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "split"
                              ]
                            },
                            "base": {
                              "type": "object",
                              "required": [
                                "attribute",
                                "kind",
                                "type"
                              ],
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "entity"
                                  ]
                                },
                                "kind": {
                                  "type": "string"
                                },
                                "attribute": {
                                  "type": "string"
                                }
                              }
                            },
                            "weights": {
                              "type": "object",
                              "additionalProperties": {
                                "type": "number"
                              }
                            },
                            "defaultVariantId": {
                              "type": "string"
                            }
                          }
                        }
                      ]
                    },
                    "active": {
                      "type": "boolean",
                      "enum": [
                        false,
                        true
                      ]
                    },
                    "rules": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "conditions",
                          "id",
                          "outcome"
                        ],
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "outcome": {
                            "oneOf": [
                              {
                                "type": "object",
                                "required": [
                                  "type",
                                  "variantId"
                                ],
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "variant"
                                    ]
                                  },
                                  "variantId": {
                                    "type": "string"
                                  }
                                }
                              },
                              {
                                "type": "object",
                                "required": [
                                  "base",
                                  "defaultVariantId",
                                  "type",
                                  "weights"
                                ],
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "split"
                                    ]
                                  },
                                  "base": {
                                    "type": "object",
                                    "required": [
                                      "attribute",
                                      "kind",
                                      "type"
                                    ],
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "enum": [
                                          "entity"
                                        ]
                                      },
                                      "kind": {
                                        "type": "string"
                                      },
                                      "attribute": {
                                        "type": "string"
                                      }
                                    }
                                  },
                                  "weights": {
                                    "type": "object",
                                    "additionalProperties": {
                                      "type": "number"
                                    }
                                  },
                                  "defaultVariantId": {
                                    "type": "string"
                                  }
                                }
                              }
                            ]
                          },
                          "conditions": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "required": [
                                "cmp",
                                "lhs"
                              ],
                              "properties": {
                                "rhs": {
                                  "oneOf": [
                                    {
                                      "type": "string"
                                    },
                                    {
                                      "type": "number"
                                    },
                                    {
                                      "type": "object",
                                      "required": [
                                        "items",
                                        "type"
                                      ],
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "list/inline",
                                            "list"
                                          ]
                                        },
                                        "items": {
                                          "type": "array",
                                          "items": {
                                            "oneOf": [
                                              {
                                                "type": "object",
                                                "required": [
                                                  "value"
                                                ],
                                                "properties": {
                                                  "label": {
                                                    "type": "string"
                                                  },
                                                  "note": {
                                                    "type": "string"
                                                  },
                                                  "value": {
                                                    "type": "number"
                                                  }
                                                }
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "value"
                                                ],
                                                "properties": {
                                                  "label": {
                                                    "type": "string"
                                                  },
                                                  "note": {
                                                    "type": "string"
                                                  },
                                                  "value": {
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    },
                                    {
                                      "type": "object",
                                      "required": [
                                        "flags",
                                        "pattern",
                                        "type"
                                      ],
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "regex"
                                          ]
                                        },
                                        "pattern": {
                                          "type": "string"
                                        },
                                        "flags": {
                                          "type": "string"
                                        }
                                      }
                                    },
                                    {
                                      "type": "boolean",
                                      "enum": [
                                        false,
                                        true
                                      ]
                                    }
                                  ]
                                },
                                "cmpOptions": {
                                  "type": "object",
                                  "properties": {
                                    "ignoreCase": {
                                      "type": "boolean",
                                      "enum": [
                                        false,
                                        true
                                      ]
                                    }
                                  }
                                },
                                "lhs": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "required": [
                                        "type"
                                      ],
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "segment"
                                          ]
                                        }
                                      }
                                    },
                                    {
                                      "type": "object",
                                      "required": [
                                        "attribute",
                                        "kind",
                                        "type"
                                      ],
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "entity"
                                          ]
                                        },
                                        "kind": {
                                          "type": "string"
                                        },
                                        "attribute": {
                                          "type": "string"
                                        }
                                      }
                                    }
                                  ]
                                },
                                "cmp": {
                                  "type": "string",
                                  "enum": [
                                    "eq",
                                    "!eq",
                                    "oneOf",
                                    "!oneOf",
                                    "containsAllOf",
                                    "containsAnyOf",
                                    "containsNoneOf",
                                    "startsWith",
                                    "!startsWith",
                                    "endsWith",
                                    "!endsWith",
                                    "contains",
                                    "!contains",
                                    "ex",
                                    "!ex",
                                    "gt",
                                    "gte",
                                    "lt",
                                    "lte",
                                    "regex",
                                    "!regex",
                                    "before",
                                    "after"
                                  ]
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              "seed": {
                "type": "number"
              },
              "state": {
                "type": "string",
                "enum": [
                  "active",
                  "archived"
                ]
              }
            }
          },
          "flagId": {
            "type": "string"
          },
          "changedEnvironments": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "metadata": {
            "type": "object",
            "properties": {
              "creator": {
                "type": "object",
                "required": [
                  "id",
                  "name"
                ],
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  }
                }
              }
            }
          }
        }
      }
    },
    "pagination": {
      "type": "object"
    }
  }
}
```

### 304: No description

### 400: One of the provided values in the request query is invalid.

### 401: The request is not authorized.

### 402: The account was soft-blocked for an unhandled reason.
The account is missing a payment so payment method must be updated

### 403: You do not have permission to access this resource.

### 404: No description

---

## Related

- [feature-flags endpoints](/docs/rest-api#feature-flags)

- [REST API overview](/docs/rest-api)

- [OpenAPI spec](https://openapi.vercel.sh/) (machine-readable, all endpoints)

---

[View full sitemap](/docs/sitemap)
