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

# Get cancellation impact

> <Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Shows what cancelling your workspace's subscription would affect, without changing anything. Only the workspace owner can call this.

`apps.items` lists the workspace's apps, with the ones that have the most at stake first: apps that take payments, then apps on a custom domain, then apps with the most active users. The counts are filled in for the first 50 apps only.

When `apps.over_limit` is `true`, the workspace has more apps than the Free plan allows. Choose which apps stay published with `cancellation_selection` in [Cancel subscription](/api-reference/cancel-subscription).

<Note>Missing or invalid credentials, and a read-only token, return 401 here.</Note>



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json get /api/billing/cancel-subscription/impact
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - PersonalAccessTokenAuth: []
paths:
  /api/billing/cancel-subscription/impact:
    get:
      summary: Get cancellation impact
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Shows what cancelling your workspace's subscription would affect,
        without changing anything. Only the workspace owner can call this.


        `apps.items` lists the workspace's apps, with the ones that have the
        most at stake first: apps that take payments, then apps on a custom
        domain, then apps with the most active users. The counts are filled in
        for the first 50 apps only.


        When `apps.over_limit` is `true`, the workspace has more apps than the
        Free plan allows. Choose which apps stay published with
        `cancellation_selection` in [Cancel
        subscription](/api-reference/cancel-subscription).


        <Note>Missing or invalid credentials, and a read-only token, return 401
        here.</Note>
      operationId: get_cancellation_impact_api_billing_cancel_subscription_impact_get
      responses:
        '200':
          description: The workspace's apps and what cancelling affects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancellationImpact'
              example:
                apps:
                  limit: 5
                  total_count: 7
                  over_limit: true
                  items:
                    - id: 6820f3a4e7b91d003c45a1f2
                      name: Nordwind Furniture
                      logo_url: >-
                        https://media.base44.com/images/public/6820f3a4e7b91d003c45a1f2/logo.png
                      is_published: true
                      user_count: 128
                      agent_count: 1
                      automation_count: 2
                      workflow_count: 0
                      has_payments: true
                      custom_domain: nordwind-furniture.com
                      active_users_30d: 42
                      is_user_managed: false
                backend_functions_stop: true
                agent_phone_number: '+14155550123'
        '401':
          description: >-
            Missing or invalid credentials. A read-only token gets this response
            too.
        '403':
          description: You aren't the workspace owner.
        '429':
          description: >-
            Rate limit exceeded. The base rate limit is 20 requests per minute
            per user. See [Rate
            limits](/developers/references/apps-api/get-started/rate-limits) for
            the multiplier your plan gets.
      security:
        - PersonalAccessTokenAuth:
            - full_access
components:
  schemas:
    CancellationImpact:
      properties:
        apps:
          $ref: '#/components/schemas/CancellationImpactAppList'
          description: The workspace's apps, and how many the Free plan allows.
        backend_functions_stop:
          type: boolean
          title: Backend Functions Stop
          description: >-
            `true` when the workspace's backend functions stop once the plan
            ends.
          example: true
        agent_phone_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Agent Phone Number
          description: >-
            The workspace's active agent phone number, released when the plan
            ends. `null` when it has none.
          example: '+14155550123'
      type: object
      required:
        - apps
        - backend_functions_stop
        - agent_phone_number
      title: CancellationImpact
      description: What cancelling the subscription affects.
    CancellationImpactAppList:
      properties:
        limit:
          anyOf:
            - type: integer
            - type: 'null'
          title: Limit
          description: How many apps the Free plan allows, or `null` when it has no limit.
          example: 5
        total_count:
          type: integer
          title: Total Count
          description: How many apps the workspace has that count toward that limit.
          example: 7
        over_limit:
          type: boolean
          title: Over Limit
          description: >-
            `true` when the workspace has more apps than the Free plan allows.
            Then choose which apps stay published with `cancellation_selection`
            in [Cancel subscription](/api-reference/cancel-subscription).
          example: true
        items:
          items:
            $ref: '#/components/schemas/AppAtStake'
          type: array
          title: Items
          description: >-
            The workspace's apps, the ones with the most at stake first. Up to
            1,000.
          example:
            - active_users_30d: 42
              agent_count: 1
              automation_count: 2
              custom_domain: nordwind-furniture.com
              has_payments: true
              id: 6820f3a4e7b91d003c45a1f2
              is_published: true
              is_user_managed: false
              name: Nordwind Furniture
              user_count: 128
              workflow_count: 0
      type: object
      required:
        - limit
        - total_count
        - over_limit
        - items
      title: CancellationImpactAppList
      description: The workspace's apps and the Free plan's app limit.
    AppAtStake:
      properties:
        id:
          type: string
          title: Id
          description: ID of the app.
          example: 6820f3a4e7b91d003c45a1f2
        name:
          type: string
          title: Name
          description: Name of the app, or `Untitled`.
          example: Nordwind Furniture
        logo_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Logo Url
          description: URL of the app's logo, or `null` when it has none.
          example: >-
            https://media.base44.com/images/public/6820f3a4e7b91d003c45a1f2/logo.png
        is_published:
          type: boolean
          title: Is Published
          description: '`true` when the app is deployed and not unpublished.'
          example: true
        user_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: User Count
          description: >-
            Users signed up to the app, not counting the workspace owner. `null`
            for apps past the first 50, or when the counts couldn't be read.
          example: 128
        agent_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Agent Count
          description: >-
            Agents in the app. `null` for apps past the first 50, or when the
            counts couldn't be read.
          example: 1
        automation_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Automation Count
          description: >-
            Active automations in the app. `null` for apps past the first 50, or
            when the counts couldn't be read.
          example: 2
        workflow_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Workflow Count
          description: >-
            Workflows in the app that aren't archived. `null` for apps past the
            first 50, or when the counts couldn't be read.
          example: 0
        has_payments:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Has Payments
          description: >-
            `true` when the app takes payments. `null` for apps past the first
            50, or when the counts couldn't be read.
          example: true
        custom_domain:
          anyOf:
            - type: string
            - type: 'null'
          title: Custom Domain
          description: >-
            The app's live custom domain. `null` when it has none, or when it
            wasn't read.
          example: nordwind-furniture.com
        active_users_30d:
          anyOf:
            - type: integer
            - type: 'null'
          title: Active Users 30D
          description: >-
            Users active in the app in the last 30 days. `null` for apps past
            the first 50, or when the counts couldn't be read.
          example: 42
        is_user_managed:
          type: boolean
          title: Is User Managed
          description: >-
            `true` when you manage the app's code yourself. Such apps keep their
            workflows and backend functions on the Free plan.
          example: false
      type: object
      required:
        - id
        - name
        - logo_url
        - is_published
        - user_count
        - agent_count
        - automation_count
        - workflow_count
        - has_payments
        - custom_domain
        - active_users_30d
        - is_user_managed
      title: AppAtStake
      description: One app in the workspace and what it has at stake.
  securitySchemes:
    PersonalAccessTokenAuth:
      type: http
      scheme: bearer
      description: >-
        Personal access token, sent as `Authorization: Bearer <token>`. Each
        operation lists the permission it needs: `read_only` or `full_access`. A
        full-access token can call every operation. A read-only token can call
        only the operations that list `read_only`; anything else returns 403
        `read_only_credential_route_not_allowed`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.