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

# Subscription

> Everything you pay for, grouped by product: your Email Outreach subscription and your separate Lead Finder subscription. Each has its own plan, status, and billing cycle.

Requires one of the following scopes: `usage:read`, `all:read`, `all:all`.



## OpenAPI

````yaml /openapi.json get /v1/account/subscription
openapi: 3.0.0
info:
  title: MailBeast Public API
  description: >-
    Task-shaped REST API for campaigns, leads, deliverability, verification and
    lead discovery. Authenticate with an API key (`Authorization: Bearer
    mb_live_…`); the workspace is resolved from the key.
  version: '1'
  contact: {}
servers:
  - url: https://api.mailbeast.ai
security: []
tags:
  - name: API Keys
    description: Create, list and revoke API keys programmatically.
  - name: Campaigns
    description: Create, configure, launch and monitor email campaigns.
  - name: Leads
    description: Add, read, update and bulk-manage a campaign’s leads.
  - name: Workspace
    description: Read usage, subscription and workspace identity.
  - name: Email Accounts
    description: >-
      Connect and manage the sending mailboxes your campaigns send from
      (SMTP/IMAP or native OAuth).
  - name: Analytics
    description: Engagement reporting – per campaign, over time, and across the workspace.
  - name: Lead Finder
    description: >-
      Discover new companies and leads. List past searches and poll a running
      search’s progress.
paths:
  /v1/account/subscription:
    get:
      tags:
        - Workspace
      summary: Subscription
      description: >-
        Everything you pay for, grouped by product: your Email Outreach
        subscription and your separate Lead Finder subscription. Each has its
        own plan, status, and billing cycle.


        Requires one of the following scopes: `usage:read`, `all:read`,
        `all:all`.
      operationId: workspace_subscription
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionResponseDto'
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorDto'
              example:
                error:
                  type: authentication_error
                  code: unauthenticated
                  message: Missing or invalid API key.
                  status: 401
                  requestId: e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f
        '403':
          description: >-
            The key lacks a required scope, or the plan does not include API
            access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorDto'
              example:
                error:
                  type: authorization_error
                  code: permission_denied
                  message: This API key is missing the required scope.
                  status: 403
                  requestId: e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f
        '429':
          description: >-
            Rate limit exceeded - retry after the interval in the Retry-After
            header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorDto'
              example:
                error:
                  type: rate_limit_error
                  code: rate_limited
                  message: >-
                    Too many requests. Retry after the interval in the
                    Retry-After header.
                  status: 429
                  requestId: e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f
                  retryAfter: 30
      security:
        - ApiKey: []
components:
  schemas:
    SubscriptionResponseDto:
      type: object
      properties:
        emailOutreach:
          description: >-
            Your Email Outreach subscription - plan, billing cycle, trial, and
            add-ons.
          allOf:
            - $ref: '#/components/schemas/EmailOutreachSubscriptionDto'
        leadFinder:
          nullable: true
          description: Your separate Lead Finder subscription, or null if you have none.
          type: object
          allOf:
            - $ref: '#/components/schemas/LeadFinderSubscriptionDto'
      required:
        - emailOutreach
        - leadFinder
    ApiErrorDto:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/ApiErrorBodyDto'
      required:
        - error
    EmailOutreachSubscriptionDto:
      type: object
      properties:
        planName:
          type: string
          example: pro
          description: Your Email Outreach plan.
        status:
          type: string
          enum:
            - active
            - on_hold
            - inactive
          example: active
          description: >-
            Subscription state: `active`, `on_hold`, or `inactive` (no active
            subscription - e.g. free plan).
        billingInterval:
          type: string
          nullable: true
          example: monthly
          description: '`monthly` | `annual` | null.'
        currentPeriodEnd:
          type: string
          format: date-time
          nullable: true
          description: >-
            When the current paid period ends - it renews then, or ends if
            `cancelAtPeriodEnd` is true. Null with no active subscription.
        cancelAtPeriodEnd:
          type: boolean
          example: false
        trial:
          nullable: true
          type: object
          allOf:
            - $ref: '#/components/schemas/SubscriptionTrialDto'
        addons:
          nullable: true
          description: >-
            Extra capacity bought as add-ons on this plan (already folded into
            your /v1/usage limits). Null when there are none.
          type: object
          allOf:
            - $ref: '#/components/schemas/SubscriptionAddonsDto'
      required:
        - planName
        - status
        - billingInterval
        - currentPeriodEnd
        - cancelAtPeriodEnd
        - trial
        - addons
    LeadFinderSubscriptionDto:
      type: object
      properties:
        tier:
          type: string
          enum:
            - starter
            - pro
            - max
          nullable: true
          example: pro
          description: Lead Finder tier, or null if you have no Lead Finder subscription.
        status:
          type: string
          nullable: true
          enum:
            - active
            - on_hold
          example: active
          description: '`active`, `on_hold`, or null (no Lead Finder subscription).'
        billingInterval:
          type: string
          nullable: true
          example: monthly
          description: '`monthly` | `annual` | null.'
        currentPeriodEnd:
          type: string
          format: date-time
          nullable: true
          description: >-
            When the current Lead Finder paid period ends - its own cycle,
            independent of the Email Outreach plan.
        cancelAtPeriodEnd:
          type: boolean
          example: false
      required:
        - tier
        - status
        - billingInterval
        - currentPeriodEnd
        - cancelAtPeriodEnd
    ApiErrorBodyDto:
      type: object
      properties:
        type:
          type: string
          example: authorization_error
          description: Broad error class.
        code:
          type: string
          example: permission_denied
          description: Stable machine-readable code to switch on.
        message:
          type: string
          example: This API key is missing the required scope.
        status:
          type: number
          example: 403
        requestId:
          type: string
          example: e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f
          description: Correlation id - quote it in support requests.
        details:
          description: Field-level validation messages (present on validation errors).
          example:
            - name should not be empty
          type: array
          items:
            type: string
        retryAfter:
          type: number
          description: Seconds to wait before retrying (present on 429 responses).
          example: 30
      required:
        - type
        - code
        - message
        - status
        - requestId
    SubscriptionTrialDto:
      type: object
      properties:
        isActive:
          type: boolean
          example: true
        expiresAt:
          type: string
          format: date-time
          nullable: true
        daysRemaining:
          type: number
          example: 5
      required:
        - isActive
        - expiresAt
        - daysRemaining
    SubscriptionAddonsDto:
      type: object
      properties:
        contacts:
          type: number
          example: 20000
          description: Extra active-contact capacity.
        monthlyEmails:
          type: number
          example: 10000
          description: Extra monthly-email capacity.
        aiCredits:
          type: number
          example: 5000
          description: Extra AI credits.
        emailValidation:
          type: number
          example: 0
          description: Extra email-verification credits.
      required:
        - contacts
        - monthlyEmails
        - aiCredits
        - emailValidation
  securitySchemes:
    ApiKey:
      scheme: bearer
      bearerFormat: mb_live_…
      type: http

````

## Related topics

- [Workspace & Usage](/workspace.md)
- [Workspace identity](/api-reference/workspace/workspace-identity.md)
- [Current usage](/api-reference/workspace/current-usage.md)
- [Authentication](/authentication.md)
