---
title: "Resume a paused subscription"
method: POST
path: "/subscriptions/{id}/resume"
tags: ["Subscriptions"]
---

# Resume a paused subscription

`POST /subscriptions/{id}/resume`

Use when reactivating a paused subscription (e.g. end of hold). Billing and access resume from the resume date.

## Path parameters

- `id` string, required

## Request body

- DtoResumeSubscriptionRequest — Request object for resuming a paused subscription
  - `dry_run` boolean — Whether to perform a dry run @Description If true, validates the request and shows impact without actually resuming the subscription @Example false
  - `metadata` object — Additional metadata as key-value pairs @Description Optional metadata for storing additional information about the resume operation @Example {"resumed_by": "admin", "reason": "issue_resolved"}
  - `resume_mode` 'immediate' | 'scheduled' | 'auto', required

## Response `200`

OK

- DtoSubscriptionPauseResponse — Response object containing subscription pause information
  - `created_at` string
  - `created_by` string
  - `environment_id` string — EnvironmentID is the environment identifier for the pause
  - `id` string — ID is the unique identifier for the subscription pause
  - `metadata` TypesMetadata
  - `original_period_end` string — OriginalPeriodEnd is the end of the billing period when the pause was created
  - `original_period_start` string — OriginalPeriodStart is the start of the billing period when the pause was created
  - `pause_end` string — PauseEnd is when the pause will end (null for indefinite)
  - `pause_mode` 'immediate' | 'scheduled' | 'period_end'
  - `pause_start` string — PauseStart is when the pause actually started
  - `pause_status` 'none' | 'active' | 'scheduled' | 'completed' | 'cancelled'
  - `reason` string — Reason is the reason for pausing
  - `resume_mode` 'immediate' | 'scheduled' | 'auto'
  - `resumed_at` string — ResumedAt is when the pause was actually ended (if manually resumed)
  - `status` 'published' | 'deleted' | 'archived'
  - `subscription_id` string — SubscriptionID is the identifier for the subscription
  - `tenant_id` string
  - `updated_at` string
  - `updated_by` string

## Other responses

- `400` — Invalid request
- `404` — Resource not found
- `500` — Server error

## Changes

- **2026-03-20** `bc91c95fbb1a` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/flexprice/apis/flexprice-api-2/changes/subscriptions/:id/resume/post.md)

---

[API](https://skmtc.dev/flexprice/apis/flexprice-api-2.md) · [All operations](https://skmtc.dev/flexprice/apis/flexprice-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/flexprice/flexprice-api-2/revisions/bc91c95fbb1a/schema)
