---
title: "List all features"
method: GET
path: "/v1/entitlements/features"
---

# List all features

`GET /v1/entitlements/features`

## Request

- Base URL: `https://api.stripe.com`
- URL: `https://api.stripe.com/v1/entitlements/features`
- Auth: one of:
  - HTTP basic
  - HTTP bearer

Retrieve a list of features

## Query parameters

- `archived` boolean
- `ending_before` string
- `expand` string[]
- `limit` integer
- `lookup_key` string
- `starting_after` string

## Response `200`

Successful response.

- object
  - `data` EntitlementsFeature[], required
    - `active` boolean, required: Inactive features cannot be attached to new products and will not be returned from the features list endpoint.
    - `id` string, required: Unique identifier for the object.
    - `livemode` boolean, required: If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
    - `lookup_key` string, required: A unique key you provide as your own system identifier. This may be up to 80 characters.
    - `metadata` object, required: Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
    - `name` string, required: The feature's name, for your own purpose, not meant to be displayable to the customer.
    - `object` 'entitlements.feature', required: String representing the object's type. Objects of the same type share the same value.
  - `has_more` boolean, required: True if this list has another page of items after this one that can be fetched.
  - `object` 'list', required: String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
  - `url` string, required: The URL where this list can be accessed.

## Other responses

- `default`: Error response.

## Changes

> 19 revisions in range; 7 not diffed, 2 could not be searched.

- **2026-07-01** `e24a26de4188`: 3 breaking
  - removed the required property `error/payment_intent/latest_charge/anyOf[subschema #2: Charge]/application_fee/anyOf[subschema #2: PlatformFee]/balance_transaction/anyOf[subschema #2: BalanceTransaction]/source/anyOf[subschema #6: Dispute]/payment_method_details/card/network` from the response with the `default` status
  - removed the required property `error/payment_intent/latest_charge/anyOf[subschema #2: Charge]/balance_transaction/anyOf[subschema #2: BalanceTransaction]/source/anyOf[subschema #6: Dispute]/payment_method_details/card/network` from the response with the `default` status
  - removed the required property `error/payment_intent/latest_charge/anyOf[subschema #2: Charge]/failure_balance_transaction/anyOf[subschema #2: BalanceTransaction]/source/anyOf[subschema #6: Dispute]/payment_method_details/card/network` from the response with the `default` status
  - …this revision’s changelog is incomplete

[Operation history](https://skmtc.dev/stainless-api/apis/stripe-api/changes/v1/entitlements/features/get.md)

---

[API](https://skmtc.dev/stainless-api/apis/stripe-api.md) · [All operations](https://skmtc.dev/stainless-api/apis/stripe-api/llms.txt) · [OpenAPI document](https://skmtc.dev/stainless-api/apis/stripe-api/revisions/7cff4cc46d06?raw)
