> ## Documentation Index
> Fetch the complete documentation index at: https://docs.automate.ax/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# Pause Subscription

> Schedules a `PAUSE` action to pause an active subscription.

`square.pauseSubscription` schedules a `PAUSE` action to pause an active subscription.

## Example

```ts automations/square-pause-subscription.automation.ts theme={null}
import { automation, onDashboardRun } from "automate.ax"
import { square } from "automate.ax/square"

export default automation("Pause Square Subscription", () => {
  onDashboardRun({ title: "Pause Square Subscription" })

  square.pauseSubscription({
    subscriptionId: "subscription_id",
  })
})
```

## Inputs

Every input accepts a compatible signal. It requires `CUSTOMERS_READ` and `INVOICES_WRITE` and `ITEMS_READ` and `ORDERS_WRITE` and `PAYMENTS_WRITE` and `SUBSCRIPTIONS_WRITE`.

| Field                 | Type                  | Required | Default | Description                                                                                                                                                                                                                                                                                                                 |
| --------------------- | --------------------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `subscriptionId`      | `string`              | Yes      | —       | The ID of the subscription to pause.                                                                                                                                                                                                                                                                                        |
| `pauseEffectiveDate`  | `string \| null`      | No       | —       | The `YYYY-MM-DD`-formatted date when the scheduled `PAUSE` action takes place on the subscription. When this date is unspecified or falls within the current billing cycle, the subscription is paused on the starting date of the next billing cycle.                                                                      |
| `pauseCycleDuration`  | `bigint \| null`      | No       | —       | The number of billing cycles the subscription will be paused before it is reactivated. When this is set, a `RESUME` action is also scheduled to take place on the subscription at the end of the specified pause cycle duration. In this case, neither `resume_effective_date` nor `resume_change_timing` may be specified. |
| `resumeEffectiveDate` | `string \| null`      | No       | —       | The date when the subscription is reactivated by a scheduled `RESUME` action. This date must be at least one billing cycle ahead of `pause_effective_date`.                                                                                                                                                                 |
| `resumeChangeTiming`  | `Square.ChangeTiming` | No       | —       | The timing whether the subscription is reactivated immediately or at the end of the billing cycle, relative to `resume_effective_date`. See [ChangeTiming](#type-changetiming) for possible values                                                                                                                          |
| `pauseReason`         | `string \| null`      | No       | —       | The user-provided reason to pause the subscription.                                                                                                                                                                                                                                                                         |

Use the official [PauseSubscription reference](https://developer.squareup.com/reference/square/subscriptions-api/pause-subscription) for provider field semantics and limits.

## Output

Returns the official `Square.PauseSubscriptionResponse` response as a codec-safe object. Square integer money amounts remain `bigint` values.
