# List trial offers

Returns a list of trial offers.

## Request

```curl
curl -G https://api.stripe.com/v1/product_catalog/trial_offers \
  -u "<<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-07-29.preview" \
  -d limit=3
```

### Response

```json
{
  "object": "list",
  "data": [
    {
      "id": "to_1Hh5Xx2eZvKYlo2C8JaUOv4R",
      "object": "product_catalog.trial_offer",
      "livemode": false,
      "duration": {
        "relative": {
          "iterations": 2
        },
        "type": "relative"
      },
      "end_behavior": {
        "transition": {
          "price": "price_1Hh5Xx2eZvKYlo2C8JaUOv3P"
        },
        "type": "transition"
      },
      "price": "price_1Hh5Xx2eZvKYlo2C8JaUOv2Q"
    },
    {
      "id": "to_1Hh5Xx2eZvKYlo2C8JaUOv5S",
      "object": "product_catalog.trial_offer",
      "livemode": false,
      "duration": {
        "relative": {
          "iterations": 3
        },
        "type": "relative"
      },
      "end_behavior": {
        "transition": {
          "price": "price_1Hh5Xx2eZvKYlo2C8JaUOv6T"
        },
        "type": "transition"
      },
      "price": "price_1Hh5Xx2eZvKYlo2C8JaUOv7U"
    },
    {
      "id": "to_1Hh5Xx2eZvKYlo2C8JaUOv8V",
      "object": "product_catalog.trial_offer",
      "livemode": false,
      "duration": {
        "relative": {
          "iterations": 1
        },
        "type": "relative"
      },
      "end_behavior": {
        "transition": {
          "price": "price_1Hh5Xx2eZvKYlo2C8JaUOv9W"
        },
        "type": "transition"
      },
      "price": "price_1Hh5Xx2eZvKYlo2C8JaUOv0X"
    }
  ],
  "has_more": false,
  "url": "/v1/product_catalog/trial_offers"
}
```

## Returns

Returns a list of trial offers.

## Parameters

- [`created`](https://docs.stripe.com/api/product-catalog/trial-offer/list.md?query=created&api-version=2026-07-29.preview) (object, optional)
  Only return trial offers that were created during the given date interval.

- `ending_before` (string, optional)
  A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.

- `limit` (integer, optional)
  A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

- `prices` (array of strings, optional)
  Only return trial offers that reference these prices (during the trial period).

- `starting_after` (string, optional)
  A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
