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

# Get available DVM minute bundles for workspace

> Returns available DVM minute bundle packages for the workspace plan with current balance.



## OpenAPI

````yaml /api-reference/openapi.json get /v1/workspaces/{workspaceId}/dvm-bundles
openapi: 3.0.0
info:
  title: Sendspark API
  version: 1.2.0
  description: >-
    Public Sendspark API. DRAFT scaffold generated from the internal API v2 spec
    — endpoint selection and authentication are pending engineering review
    before publishing.
servers:
  - url: https://api-gw.sendspark.com
    description: Production
security:
  - apiKey: []
    apiSecret: []
tags: []
paths:
  /v1/workspaces/{workspaceId}/dvm-bundles:
    get:
      tags:
        - DVM Bundles
      summary: Get available DVM minute bundles for workspace
      description: >-
        Returns available DVM minute bundle packages for the workspace plan with
        current balance.
      operationId: getDvmBundles
      parameters:
        - name: workspaceId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/BundlesGetResponseSchema'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/BadRequest'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Forbidden'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ResourceNotFoundOrInvalidAccess'
components:
  schemas:
    BundlesGetResponseSchema:
      type: object
      properties:
        bundles:
          $ref: '#/components/schemas/Model45'
        customBundleConfig:
          $ref: '#/components/schemas/CustomBundleConfigSchema'
        activeBundles:
          $ref: '#/components/schemas/activeBundles'
        balance:
          $ref: '#/components/schemas/balance'
      required:
        - bundles
        - balance
    BadRequest:
      type: object
      properties:
        statusCode:
          type: number
          example: 400
        code:
          type: string
          example: S400-AHVE
        error:
          type: string
          example: Bad Request
        message:
          type: string
          example: Invalid request payload input
    Forbidden:
      type: object
      properties:
        statusCode:
          type: number
          example: 403
        code:
          type: string
          example: S403-UPLD
        error:
          type: string
          example: Forbidden
        message:
          type: string
          example: Invalid request payload input / Any error from provider
    ResourceNotFoundOrInvalidAccess:
      type: object
      properties:
        statusCode:
          type: number
          example: 404
        error:
          type: string
          example: Not Found
        message:
          type: string
          example: Resource not found or invalid access
    Model45:
      type: array
      items:
        $ref: '#/components/schemas/Model44'
    CustomBundleConfigSchema:
      type: object
      properties:
        id:
          type: string
        priceId:
          type: string
        tiersMode:
          $ref: '#/components/schemas/tiersMode'
        tiers:
          $ref: '#/components/schemas/tiers'
        minMinutes:
          type: integer
        maxMinutes:
          type: integer
        stepMinutes:
          type: integer
        quickPicks:
          $ref: '#/components/schemas/quickPicks'
        mostPopular:
          type: integer
          x-constraint:
            sign: positive
        label:
          type: string
        recurring:
          type: boolean
        interval:
          $ref: '#/components/schemas/Model46'
      required:
        - id
        - priceId
        - tiersMode
        - tiers
        - minMinutes
        - maxMinutes
        - stepMinutes
        - quickPicks
        - mostPopular
        - label
        - recurring
        - interval
    activeBundles:
      type: array
      items:
        $ref: '#/components/schemas/ActiveBundleSchema'
    balance:
      type: object
    Model44:
      type: object
      properties:
        id:
          type: string
          example: prod_UB6XkMTrkKEdxB
        priceId:
          type: string
          example: price_1RBg7yADxQe4sXwj5E3Bt8qM
        minutes:
          type: integer
          example: 30
        label:
          type: string
          example: 30-Minute Bundle
        unitPriceCents:
          type: integer
          example: 100
        totalPriceCents:
          type: integer
          example: 3000
        badge:
          type: string
          example: Best Value
        sortOrder:
          type: integer
          example: 1
      required:
        - id
        - priceId
        - minutes
        - label
        - unitPriceCents
        - totalPriceCents
        - sortOrder
    tiersMode:
      type: string
      enum:
        - volume
        - graduated
    tiers:
      type: array
      minItems: 1
      items:
        $ref: '#/components/schemas/VolumeTierSchema'
    quickPicks:
      type: array
      items:
        type: integer
        x-constraint:
          sign: positive
    Model46:
      type: string
      enum:
        - month
        - year
    ActiveBundleSchema:
      type: object
      properties:
        bundleId:
          type: string
        module:
          type: string
        minutesPerBundle:
          type: number
        bundleCount:
          type: number
        unit:
          type: string
        priceId:
          type: string
        subscriptionItemId:
          type: string
        label:
          type: string
        productName:
          type: string
          example: Custom DVM Minutes - Growth
        unitAmountCents:
          type: number
          example: 120.75
        totalPriceCents:
          type: integer
          example: 4500
        status:
          $ref: '#/components/schemas/Model47'
        endsAt:
          type: string
          format: date
        purchasedAt:
          type: string
          format: date
        purchasedBy:
          type: string
        interval:
          $ref: '#/components/schemas/Model48'
        cancelingCount:
          type: number
        type:
          $ref: '#/components/schemas/Model49'
        isCustom:
          type: boolean
        isCanceling:
          type: boolean
        quantity:
          type: integer
      required:
        - bundleId
        - module
        - minutesPerBundle
        - bundleCount
        - unit
        - priceId
        - subscriptionItemId
        - status
    VolumeTierSchema:
      type: object
      properties:
        upTo:
          type: integer
        unitAmountCents:
          type: number
      required:
        - upTo
        - unitAmountCents
    Model47:
      type: string
      enum:
        - active
        - canceling
        - canceled
    Model48:
      type: string
      enum:
        - month
        - year
    Model49:
      type: string
      enum:
        - one-time
        - recurring
        - custom
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
    apiSecret:
      type: apiKey
      in: header
      name: x-api-secret

````