Product.Compute

API: Stable Deprecated: Yes

A compute Product

data class Compute(
    val name: String,
    val pricePerUnit: Long,
    val category: ProductCategoryId,
    val description: String?,
    val priority: Int?,
    val cpu: Int?,
    val memoryInGigs: Int?,
    val gpu: Int?,
    val cpuModel: String?,
    val memoryModel: String?,
    val gpuModel: String?,
    val version: Int?,
    val freeToUse: Boolean?,
    val allowAllocationRequestsFrom: AllocationRequestsGroup?,
    val unitOfPrice: ProductPriceUnit?,
    val chargeType: ChargeType?,
    val hiddenInGrantApplications: Boolean?,
    val productType: ProductType,
    val balance: Long?,
    val id: String,
    val maxUsableBalance: Long?,
    val type: String /* "compute" */,
)

Unit

API

Measured in hyper-threaded cores (vCPU)

Click here

Properties
name: String A unique name associated with this Product
pricePerUnit: Long The price of a single unit in a single period

For more information go here.

category: ProductCategoryId The category groups similar products together, it also defines which provider owns the product
description: String? A short (single-line) description of the Product
priority: Int? A integer used for changing the order in which products are displayed (ascending order)
cpu: Int?
memoryInGigs: Int?
gpu: Int?
cpuModel: String?
memoryModel: String?
gpuModel: String?
version: Int? This property is no longer used.

Deprecated: Yes

freeToUse: Boolean? Indicates that a Wallet is not required to use this Product

Under normal circumstances, a Wallet is always required. This is required even if a Product has a pricePerUnit of 0. If freeToUse = true then the Wallet requirement is dropped.

allowAllocationRequestsFrom: AllocationRequestsGroup? Indicates who should be able to make allocation requests for this product (more specifically the product

category).

Possible options are:

  • ALL (default): Allows allocation requests from both projects and personal workspaces,

  • PROJECTS: Allow allocation requests from projects, but not from personal workspaces,

  • PERSONAL: Allow allocation requests from personal workspaces, but not projects.

unitOfPrice: ProductPriceUnit? The unit of price. Used in combination with chargeType to create a complete payment model.
chargeType: ChargeType? The category of payment model. Used in combination with unitOfPrice to create a complete payment model.
hiddenInGrantApplications: Boolean? Flag to indicate that this Product is not publicly available

⚠️ WARNING: This doesn’t make the Product secret. In only hides the Product from the grant system’s UI.

productType: ProductType

API: Internal/Beta

balance: Long? Included only with certain endpoints which support `includeBalance`

API: Internal/Beta

id: String

API: Internal/Beta Deprecated: Yes

maxUsableBalance: Long? Included only with certain endpoints which support `includeMaxBalance`

API: Internal/Beta

type: String /* "compute" */ The type discriminator