# The Subscription Schedule object

## Attributes

- `id` (string)
  Unique identifier for the object.

- `object` (string)
  String representing the object’s type. Objects of the same type share the same value.

- `application` (string, nullable, expandable (can be expanded into an object with the `expand` request parameter))
  ID of the Connect Application that created the schedule.

- [`billing_mode`](https://docs.stripe.com/api/subscription_schedules/object.md?query=billing_mode) (object)
  The [billing mode](https://docs.stripe.com/api/subscriptions/create.md#create_subscription-billing_mode) that will be used to process all future operations for the subscription schedule.

- `canceled_at` (timestamp, nullable)
  Time at which the subscription schedule was canceled. Measured in seconds since the Unix epoch.

- `completed_at` (timestamp, nullable)
  Time at which the subscription schedule was completed. Measured in seconds since the Unix epoch.

- `created` (timestamp)
  Time at which the object was created. Measured in seconds since the Unix epoch.

- [`current_phase`](https://docs.stripe.com/api/subscription_schedules/object.md?query=current_phase) (object, nullable)
  Object representing the start and end dates for the current phase of the subscription schedule, if it is `active`.

- `customer` (string, expandable (can be expanded into an object with the `expand` request parameter))
  ID of the customer who owns the subscription schedule.

- `customer_account` (string, nullable)
  ID of the account who owns the subscription schedule.

- [`default_settings`](https://docs.stripe.com/api/subscription_schedules/object.md?query=default_settings) (object)
  Object representing the subscription schedule’s default settings.

- `end_behavior` (enum)
  Behavior of the subscription schedule and underlying subscription when it ends. Possible values are `release` or `cancel` with the default being `release`. `release` will end the subscription schedule and keep the underlying subscription running. `cancel` will end the subscription schedule and cancel the underlying subscription.
Possible enum values:
  - `cancel`
    Cancel the underlying subscription when the subscription schedule ends.

  - `release`
    Persist the underlying subscription in its current state when the subscription schedule ends.

- `livemode` (boolean)
  If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.

- `metadata` (map, nullable)
  Set of [key-value pairs](https://docs.stripe.com/api/metadata.md) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

- [`phases`](https://docs.stripe.com/api/subscription_schedules/object.md?query=phases) (array of objects)
  Configuration for the subscription schedule’s phases.

- `released_at` (timestamp, nullable)
  Time at which the subscription schedule was released. Measured in seconds since the Unix epoch.

- `released_subscription` (string, nullable)
  ID of the subscription once managed by the subscription schedule (if it is released).

- `status` (enum)
  The present status of the subscription schedule. Possible values are `not_started`, `active`, `completed`, `released`, and `canceled`. You can read more about the different states in our [behavior guide](https://docs.stripe.com/billing/subscriptions/subscription-schedules.md).
Possible enum values:
  - `active`
  - `canceled`
  - `completed`
  - `not_started`
  - `released`

- `subscription` (string, nullable, expandable (can be expanded into an object with the `expand` request parameter))
  ID of the subscription managed by the subscription schedule.

- `test_clock` (string, nullable, expandable (can be expanded into an object with the `expand` request parameter))
  ID of the test clock this subscription schedule belongs to.
