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

# Downgrade an Enterprise org to Premium without resubscribing

> Swaps the active Stripe subscription item to the Premium USD/month price with prorated billing. The webhook handler picks up the new tier from `customer.subscription.updated`; this call also pre-shrinks published agents/plans so the org fits Premium caps immediately. Requires a Nevermined API key. Requires organization admin privileges.



## OpenAPI

````yaml /api-reference/organizations-openapi.json post /organizations/{orgId}/billing/downgrade
openapi: 3.0.0
info:
  title: Nevermined Organizations API
  description: >-
    Manage a Nevermined organization programmatically — members, tiers, groups &
    budgets, treasury wallets, customers, webhooks, analytics, and
    agent-discovery surfaces.
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.sandbox.nevermined.app/api/v1
    description: Sandbox
  - url: https://api.live.nevermined.app/api/v1
    description: Live
security: []
tags:
  - name: Organizations
    x-group: General
    description: Organization settings, members & roles, and workspace context.
  - name: Organizations - Billing
    x-group: Billing
    description: Tiers, subscriptions, invoices, checkout, and the public tier catalog.
  - name: Groups
    x-group: Groups & Budgets
    description: Organization groups, per-group budgets, and shared payment methods.
  - name: Organizations - Wallets
    x-group: Wallets
    description: Custodial stablecoin treasury wallets.
  - name: Organizations - Customers
    x-group: Customers
    description: The white-label customer CRM (Enterprise).
  - name: Organizations - Analytics
    x-group: Analytics
    description: Revenue, MRR, usage, conversion, and per-member metrics.
  - name: Organizations - Webhooks
    x-group: Webhooks
    description: Outbound webhook subscriptions and deliveries.
  - name: Organizations - Activity
    x-group: Activity
    description: The organization activity feed.
  - name: Organizations - Realtime
    x-group: Realtime
    description: Realtime WebSocket secret management (Enterprise).
  - name: Invitations
    x-group: Invitations
    description: Invite people to an organization.
  - name: Organizations - Integration
    x-group: Agent Discovery
    description: >-
      Public agent-discovery surfaces (llms.txt, agentic-instructions.md,
      ai-catalog.json).
paths:
  /organizations/{orgId}/billing/downgrade:
    post:
      tags:
        - Organizations - Billing
      summary: Downgrade an Enterprise org to Premium without resubscribing
      description: >-
        Swaps the active Stripe subscription item to the Premium USD/month price
        with prorated billing. The webhook handler picks up the new tier from
        `customer.subscription.updated`; this call also pre-shrinks published
        agents/plans so the org fits Premium caps immediately. Requires a
        Nevermined API key. Requires organization admin privileges.
      operationId: BillingController_downgrade
      parameters:
        - name: orgId
          required: true
          in: path
          description: Organization identifier.
          schema:
            type: string
            example: org-abc123
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DowngradeOrgSubscriptionDto'
      responses:
        '200':
          description: Downgraded; returns `{ downgraded, tier, stripeSubscriptionId }`.
        '400':
          description: >-
            Invalid target tier, no active subscription, current tier is not
            Enterprise, or the subscription is no longer live
            (BCK.BILLING.0014-0017).
        '403':
          description: Caller is not an active admin of the organization.
        '503':
          description: >-
            Premium catalog row has no Stripe price — bootstrap incomplete
            (BCK.BILLING.0018).
      security:
        - Authorization: []
components:
  schemas:
    DowngradeOrgSubscriptionDto:
      type: object
      properties:
        tier:
          type: string
          description: >-
            Target tier for the downgrade. Premium is the only valid downgrade
            target.
          enum:
            - Premium
          example: Premium
      required:
        - tier
  securitySchemes:
    Authorization:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

## Related topics

- [Upgrade a Premium org to Enterprise without resubscribing](/docs/api-reference/organizations--billing/upgrade-a-premium-org-to-enterprise-without-resubscribing.md)
- [API error codes](/docs/development-guide/api-errors/codes.md)
- [Plans & Billing](/docs/solutions/organizations/plans-and-billing.md)
- [Organizations](/docs/solutions/organizations/overview.md)
- [Create a tier-plan Stripe checkout](/docs/api-reference/organizations--billing/create-a-tier-plan-stripe-checkout.md)
