---
title: "Cancel Subscription At Period End"
method: POST
path: "/conglomerates/{conglomerate_id}/subscription/cancel"
tags: ["subscriptions"]
---

# Cancel Subscription At Period End

`POST /conglomerates/{conglomerate_id}/subscription/cancel`

## Request

- Base URL: `https://api.nanocorp.so` (the document declares no server; this is the origin it was published from)
- URL: `https://api.nanocorp.so/conglomerates/{conglomerate_id}/subscription/cancel`
- Auth: HTTP bearer

Schedule a full cancellation at period end — the in-app cancel funnel's
terminal action (the Stripe portal's native cancellation is disabled).

## Path parameters

- `conglomerate_id` string, uuid, required

## Response `200`

Successful Response

- CancelSubscriptionResponse
  - `status` string, required
  - `effective_at` string, nullable, required
  - `discount_applied` boolean, nullable

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-19** `734278ef1b5b`: 1 info
  - added the optional property `discount_applied` to the response with the `200` status

[Operation history](https://skmtc.dev/nanocorp/apis/nanocorp-api/changes/conglomerates/:conglomerate_id/subscription/cancel/post.md)

---

[API](https://skmtc.dev/nanocorp/apis/nanocorp-api.md) - [All operations](https://skmtc.dev/nanocorp/apis/nanocorp-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nanocorp/apis/nanocorp-api/revisions/291bb76b720b?raw)
