---
title: "Downgrade the subscription"
method: POST
path: "/api/v1/subscription/downgrade"
tags: ["Subscription"]
---

# Downgrade the subscription

`POST /api/v1/subscription/downgrade`

## Request

- Base URL: `https://www.poster.ly`
- URL: `https://www.poster.ly/api/v1/subscription/downgrade`
- Auth: HTTP bearer

Move the authenticated user posterly subscription down one tier (or to an explicit lower `tier`) now: the lower limits and credits apply right away, the lower price starts at the next renewal, and the rest of the current period is not refunded. Strictly downward only. Requires the `billing:write` scope. Bypasses the API add-on paywall.

## Request body

- DowngradeSubscriptionRequest
  - `tier` 'starter' | 'pro' | 'power_user' | 'agency': Optional explicit target tier. Omit to drop one tier automatically.

## Response `200`

Downgrade applied. Lower limits and credits apply now; the lower price starts at the next renewal.

- DowngradeSubscriptionResponse
  - `success` true, required
  - `tier` 'starter' | 'pro' | 'power_user' | 'agency', required

## Other responses

- `400`: Validation error
- `401`: Invalid or missing API key
- `403`: Request is authenticated but not allowed
- `404`: Resource not found
- `429`: Too many requests

---

[API](https://skmtc.dev/poster/apis/posterly-api.md) · [All operations](https://skmtc.dev/poster/apis/posterly-api/llms.txt) · [OpenAPI document](https://skmtc.dev/poster/apis/posterly-api/revisions/60be02a61f95?raw)
