Skip to content

Lists products with pagination, sorting, and filtering options.

GET
/api/v1/provision/admin/products
curl --request GET \
--url https://example.com/api/v1/provision/admin/products
pageNumber
integer | string format: int32
/^-?(?:0|[1-9]\d*)$/

The page number to retrieve.

pageSize
integer | string format: int32
/^-?(?:0|[1-9]\d*)$/

The number of items per page.

sortOrder
string

The sort order of the items.

filter
string

The filter criteria for the items.

Returns a paginated list of products.

Media typeapplication/json

Serializable IPaginatedList<T> implementation used to deserialize paged API responses. int PaginatedListDto<T>.TotalPages, bool PaginatedListDto<T>.HasPreviousPage, and bool PaginatedListDto<T>.HasNextPage are computed from the other properties.

object
pageNumber

The 1-based index of this page within the full result set.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
pageSize

The maximum number of items per page that was requested.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
totalCount

The total number of items across all pages.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
items

The items on this page.

Array<object>

Admin read model of a catalog product: identity (code + version), lifecycle status, features, monitored assets, metrics, and presentation metadata.

object
id
string format: uuid
status

Indicates the current product status in its lifecycle.

Allowed values: Draft Preview Published Disabled Archived
providerId

Unique identifier of the provider associated with this product.

string format: uuid
name

Public-facing name of the product used for display purposes.

string
description

Description of the product as displayed in the customer portal.

string
productCode

Unique internal code of the product. Must be unique in combination with string ProductDto.ProductVersion.

string
productVersion

Version of the product visible to the end user. Not SemVer: one to four dot-separated numbers (e.g. “1”, “1.2”, “1.2.3.4”), or empty. Prerelease and build suffixes are rejected.

string
expirationDate

Expiration date, after which the product is no longer available for deployment. Null if no expiration is set.

null | string format: date-time
externalId

Optional external identifier, such as a CMS or ERP ID.

null | string
tags

Tag names applied to this product, from the tenant’s TagScopeDto.Product vocabulary. Vendor-facing catalog organization only — tags never reach an entitlement snapshot, a license token, or the end-user portal.

Array<string>
features

Collection of features that define additional functionalities of the product.

Array<object>

A feature as defined on a product: default value, enablement, trial/grace availability, license-token inclusion, and metering configuration. Entitlements inherit these defaults.

object
id
string format: uuid
featureCatalogId
null | string format: uuid
featureCode
string
featurePath
null | string
moduleName
null | string
name
string
description
null | string
usageMetric
null | string
units
null | string
featureType

Data type of a feature’s value; determines how Value strings are interpreted and enforced.

Allowed values: Boolean Numeric Text Enumeration Metered JsonField
enumOptions
Array<object>

One allowed value of an Enumeration-typed feature.

object
value
string
description
null | string
value
null | string
version
null | string
isEnabled
boolean
includeInLicenseToken
boolean
isAvailableDuringTrialPeriod
boolean
isAvailableDuringGracePeriod
boolean
isPaidFeature

When true, the feature is withheld for the duration of a trial even if enabled.

boolean
canModifyValueOnEntitlement
boolean
meterAggregationType
One of:
null
visibility

Who can see a feature.

Allowed values: Public Internal
sortOrder

Where the feature appears among the product’s features. The vendor sets it; every list of a product’s features is ordered by it, so the screens agree with each other.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
isDeleted
boolean
creationTimeStamp
string format: date-time
lastUpdateTimeStamp
null | string format: date-time
revisionNumber
integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
monitoredAssets

Assets associated with the product for usage monitoring.

Array<object>

A usage-tracked metric on a product or entitlement. Depending on how it is charged, either AssetMeteredUsageDto? MonitoredAssetDto.MeteredUsage (tiered, period-based metering) or AssetBalanceUsageDto? MonitoredAssetDto.BalanceUsage (prepaid credit balance) is attached.

object
id
string format: uuid
entitlementId
null | string format: uuid
productId
null | string format: uuid
metricName
string
name
string
description
string
unit
string
category
string
tags
Array<string>
numberFormat
string
metricType

How reported usage values are interpreted and aggregated by the monitoring pipeline.

Allowed values: CumulativeCounter TotalCounter Gauge UpDownCounter
meteredUsageId
null | string format: uuid
meteredUsage
One of:
null
balanceUsageId
null | string format: uuid
balanceUsage
One of:
null
allowedBackDatingTolerance

How far in the past a reported usage value’s timestamp may lie and still be accepted.

string
/^-?(\d+\.)?\d{2}:\d{2}:\d{2}(\.\d{1,7})?$/
metrics

Lightweight metric definitions for this product.

Array<object>

A lightweight metric definition on a product: the machine name clients report usage under, plus display metadata (name, unit, category, number format).

object
id
string format: uuid
productId
string format: uuid
metricName

Machine identifier clients report usage under (as opposed to the display string ProductMetricDto.Name).

string
name
string
description
null | string
metricType

How reported usage values are interpreted and aggregated by the monitoring pipeline.

Allowed values: CumulativeCounter TotalCounter Gauge UpDownCounter
unit
string
category
string
numberFormat

Display format hint, e.g. "0" or "0.0".

string
productInformation

Additional product information, including URLs and revision details.

object
displayVersion
null | string
additionalInformation
null | string
revisionInformation
null | string
downloadUrl
null | string
informationUrl
null | string
supportUrl
null | string
propertyValues

Custom properties for storing additional information associated with the product.

object
key
additional properties

A custom key/value property (e.g. on a product) with optional metadata entries.

object
key
string
value
string
metadata
Array<object> | null

A key/value metadata entry attached to a PropertyValueDto.

object
key
string
value
string
isDeleted
boolean
createdAt
string format: date-time
updatedAt
null | string format: date-time
revisionNumber
integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
isLocked

Indicates if the product is locked for editing. Locked products cannot be modified.

boolean
productMetaData

Additional metadata about the product stored as a JSON string. May include technical specifications, system requirements, or custom attributes.

null | string
applicationScopes

List of application scopes that are authorized to use this product. Application scopes define which application types or deployment targets can activate this product. If null or empty, any application can use this product (no scope restrictions).

Array<string> | null
parentProductId

Parent product ID if this product belongs to an inherited version lineage.

null | string format: uuid
totalPages

The total number of pages, computed from int PaginatedListDto<T>.TotalCount and int PaginatedListDto<T>.PageSize; 0 when int PaginatedListDto<T>.PageSize is not positive.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
hasPreviousPage

Whether a page precedes this one (int PaginatedListDto<T>.PageNumber is greater than 1).

boolean
hasNextPage

Whether a page follows this one (int PaginatedListDto<T>.PageNumber is less than int PaginatedListDto<T>.TotalPages).

boolean
Example
{
"items": [
{
"status": "Draft",
"features": [
{
"featureType": "Boolean",
"meterAggregationType": "CumulativeCounter",
"visibility": "Public"
}
],
"monitoredAssets": [
{
"metricType": "CumulativeCounter",
"meteredUsage": {
"lastReportedOverageSeverityStatus": "None",
"usageTiers": [
{
"quotaUsageLevel": "None",
"quotaUsagePolicy": "None"
}
],
"accumulationMethod": "Sliced"
},
"balanceUsage": {
"usageQuota": [
{
"quotaUsageLevel": "None"
}
],
"overageSeverityStatus": "None"
}
}
],
"metrics": [
{
"metricType": "CumulativeCounter"
}
]
}
]
}