> For the complete documentation index, see [llms.txt](https://developer.paddle.com/llms.txt).

# Filter subscriptions reports by scheduled change

Scope subscriptions reports to the subscriptions scheduled to cancel, pause, or resume, or to those with no scheduled change.

---

## What's new?

You can now filter [subscriptions reports](https://developer.paddle.com/build/reports/subscriptions.md) by `subscription_scheduled_change_action`, whether you [generate the report using the API](https://developer.paddle.com/api-reference/reports/create-report.md) or from the Paddle dashboard.

Every subscriptions report already carries `subscription_scheduled_change_action` as a column. It's now a filter too, so you can export the subscriptions scheduled to cancel without sifting through the whole report to find them.

## How it works

[Reports](https://developer.paddle.com/build/reports.md) in Paddle let you export information from your account to import into accounting software, ERPs, and other business intelligence tools. Each filter you pass has a `name` and a `value`, so `subscription_scheduled_change_action` is a value you pass as a filter `name`.

Pass one or more of these values:

- **`cancel`** returns the subscriptions scheduled to cancel.
- **`pause`** returns the subscriptions scheduled to pause.
- **`resume`** returns the paused subscriptions scheduled to resume.
- **`none`** returns the subscriptions that don't have a scheduled change.

Leave out `operator`, or pass `null`. `subscription_created_at` is the only subscriptions report filter that takes an operator.

A scheduled change isn't a status. A subscription scheduled to cancel or pause is still `active` until the change takes effect, so it appears in the report as `subscription_status: active` with a `subscription_scheduled_change_action` of `cancel` or `pause`. A subscription scheduled to resume is `paused`, because the pause has already taken effect.

Combine the two filters to scope a report to a single case.

## Example

This example creates a report of the active subscriptions that are scheduled to cancel:

{% api-example method="POST" path="/reports" href="/api-reference/reports/create-report" %}

```json {% title="Request" highlightLines="8-11" %}
{
  "type": "subscriptions",
  "filters": [
    {
      "name": "subscription_status",
      "value": ["active"]
    },
    {
      "name": "subscription_scheduled_change_action",
      "value": ["cancel"]
    }
  ]
}
```

{% /api-example %}

## Next steps

This filter works in version `1` of the Paddle API and in the Paddle dashboard. It's a non-breaking change, meaning it doesn't impact existing integrations.

Check out the [subscriptions report guide](https://developer.paddle.com/build/reports/subscriptions.md) for the full list of filters and columns, and [create a report](https://developer.paddle.com/api-reference/reports/create-report.md) for the request format.
## Summary of changes

| Name | Type | Change | Entity | Description |
| --- | --- | --- | --- | --- |
| `report.filters[].name` | Enum value | added | Report | subscription_scheduled_change_action added. |
| `report.filters[].value` | Enum value | added | Report | cancel, pause, resume, and none added for subscription_scheduled_change_action. |
