# Subscription Schedules

## Endpoints

### Create a schedule

- [POST /v1/subscription_schedules](https://docs.stripe.com/api/subscription_schedules/create.md)

### Update a schedule

- [POST /v1/subscription_schedules/:id](https://docs.stripe.com/api/subscription_schedules/update.md)

### Retrieve a schedule

- [GET /v1/subscription_schedules/:id](https://docs.stripe.com/api/subscription_schedules/retrieve.md)

### List all schedules

- [GET /v1/subscription_schedules](https://docs.stripe.com/api/subscription_schedules/list.md)

### Cancel a schedule

- [POST /v1/subscription_schedules/:id/cancel](https://docs.stripe.com/api/subscription_schedules/cancel.md)

### Release a schedule

- [POST /v1/subscription_schedules/:id/release](https://docs.stripe.com/api/subscription_schedules/release.md)

## Events

- `subscription_schedule.aborted`
Occurs whenever a subscription schedule is canceled due to the underlying subscription being canceled because of delinquency.

- `subscription_schedule.canceled`
Occurs whenever a subscription schedule is canceled.

- `subscription_schedule.completed`
Occurs whenever a new subscription schedule is completed.

- `subscription_schedule.created`
Occurs whenever a new subscription schedule is created.

- `subscription_schedule.expiring`
Occurs 7 days before a subscription schedule will expire.

- `subscription_schedule.released`
Occurs whenever a new subscription schedule is released.

- `subscription_schedule.updated`
Occurs whenever a subscription schedule is updated.

A subscription schedule allows you to create and manage the lifecycle of a subscription by predefining expected changes.

Related guide: [Subscription schedules](https://docs.stripe.com/docs/billing/subscriptions/subscription-schedules.md)
