> ## Documentation Index
> Fetch the complete documentation index at: https://omniflow-vpn.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get v1accountplans 1



## OpenAPI

````yaml https://raw.githubusercontent.com/kewldan/omniflow/main/api/openapi.yaml get /v1/account/plans/{planVersionID}
openapi: 3.0.3
info:
  title: Omniflow API
  version: 1.0.0
  description: >-
    Customer, commerce, payment, wallet, fulfillment, and operations API for
    Omniflow.
servers: []
security: []
paths:
  /v1/account/plans/{planVersionID}:
    get:
      tags:
        - account
      operationId: getAccountPlan
      parameters:
        - in: path
          name: planVersionID
          required: true
          schema:
            type: string
            format: uuid
        - in: query
          name: locale
          schema:
            type: string
            enum:
              - ru
              - en
      responses:
        '200':
          description: Plan
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountPlanDetail'
        '404':
          $ref: '#/components/responses/Problem'
components:
  schemas:
    AccountPlanDetail:
      allOf:
        - $ref: '#/components/schemas/AccountPlan'
        - type: object
          required:
            - squads
            - addons
            - promotions
          properties:
            squads:
              $ref: '#/components/schemas/AccountSquadOffer'
            addons:
              type: array
              items:
                $ref: '#/components/schemas/AccountAddonOffer'
            promotions:
              type: array
              items:
                type: object
                required:
                  - code
                  - kind
                  - value
                  - eligible
                properties:
                  code:
                    type: string
                  kind:
                    type: string
                  value:
                    type: integer
                    format: int64
                  currency:
                    type: string
                  eligible:
                    type: boolean
                  startsAt:
                    type: string
                    format: date-time
                  endsAt:
                    type: string
                    format: date-time
            termsUrl:
              type: string
    AccountPlan:
      type: object
      required:
        - planId
        - planVersionId
        - code
        - kind
        - name
        - billingPeriod
        - durationSeconds
        - price
        - operations
        - eligible
      properties:
        planId:
          type: string
          format: uuid
        planVersionId:
          type: string
          format: uuid
        code:
          type: string
        kind:
          type: string
          enum:
            - trial
            - one_time
            - recurring
            - manual
        name:
          type: string
        description:
          type: string
        sortOrder:
          type: integer
        billingPeriod:
          type: string
        durationSeconds:
          type: integer
          format: int64
        gracePeriodSeconds:
          type: integer
          format: int64
        price:
          $ref: '#/components/schemas/AccountMoney'
        recurringCapable:
          type: boolean
        configurableSquads:
          type: boolean
        operations:
          type: array
          description: >-
            The lifecycle actions the configured plan policy allows for this
            customer.
          items:
            type: string
            enum:
              - purchase
              - extension
              - upgrade
              - downgrade
        eligible:
          type: boolean
        held:
          type: boolean
          description: >-
            The customer already holds an entitlement for this plan, so the
            catalogue can mark it as the one they are on.
        ineligibleReason:
          type: string
        trafficAllowanceBytes:
          type: integer
          format: int64
          nullable: true
          description: >-
            Null means unlimited. Nullable rather than zero because unlimited
            and none are different offers.
        deviceLimit:
          type: integer
          nullable: true
          description: Null means unlimited.
    AccountSquadOffer:
      type: object
      required:
        - selection
        - minimum
        - configurable
        - offered
      properties:
        selection:
          type: string
          description: Whether squads are assigned automatically or chosen by the customer.
        minimum:
          type: integer
        maximum:
          type: integer
          nullable: true
        configurable:
          type: boolean
        offered:
          type: array
          items:
            type: object
            required:
              - squadId
              - label
            properties:
              squadId:
                type: string
                format: uuid
              label:
                type: string
    AccountAddonOffer:
      type: object
      required:
        - addonId
        - addonVersionId
        - code
        - kind
        - name
        - maxQuantity
        - proration
        - price
      properties:
        addonId:
          type: string
          format: uuid
        addonVersionId:
          type: string
          format: uuid
        code:
          type: string
        kind:
          type: string
          enum:
            - traffic
            - devices
            - squads
        name:
          type: string
        description:
          type: string
        maxQuantity:
          type: integer
        proration:
          type: string
          description: The documented proration rule for this add-on.
        squadCount:
          type: integer
        price:
          $ref: '#/components/schemas/AccountMoney'
        trafficBytes:
          type: integer
          format: int64
          nullable: true
        deviceSlots:
          type: integer
          nullable: true
    Problem:
      type: object
      required:
        - type
        - title
        - status
      properties:
        type:
          type: string
          format: uri
        title:
          type: string
        status:
          type: integer
        detail:
          type: string
        request_id:
          type: string
    AccountMoney:
      type: object
      required:
        - amountMinor
        - currency
      properties:
        amountMinor:
          type: integer
          format: int64
        currency:
          type: string
  responses:
    Problem:
      description: Request failed
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'

````

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