Updates an existing product; only the fields set on the body are changed.
const url = 'https://example.com/api/v1/provision/admin/products/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = { method: 'PATCH', headers: {'Content-Type': 'application/json'}, body: '{"propertyValues":"example","name":"example","productCode":"example","description":"example","productVersion":"example","expirationDate":"2026-04-15T12:00:00Z","clearExpirationDate":true,"productInformation":{"displayVersion":"example","additionalInformation":"example","revisionInformation":"example","downloadUrl":"example","informationUrl":"example","supportUrl":"example"},"externalId":"example","tags":["example"],"productMetaData":"example","applicationScopes":["example"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://example.com/api/v1/provision/admin/products/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Content-Type: application/json' \ --data '{ "propertyValues": "example", "name": "example", "productCode": "example", "description": "example", "productVersion": "example", "expirationDate": "2026-04-15T12:00:00Z", "clearExpirationDate": true, "productInformation": { "displayVersion": "example", "additionalInformation": "example", "revisionInformation": "example", "downloadUrl": "example", "informationUrl": "example", "supportUrl": "example" }, "externalId": "example", "tags": [ "example" ], "productMetaData": "example", "applicationScopes": [ "example" ] }'Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”The unique identifier of the product to update.
Request Bodyrequired
Section titled “Request Bodyrequired”Patch payload — unset/null properties are left unchanged.
Admin update payload for a product; null properties leave the existing value unchanged. Use UpdateProductDto UpdateProductDto.FromProduct(ProductDto product) to prefill from a current ProductDto.
object
Custom properties for storing additional information associated with the product.
Public-facing name of the product used for display purposes.
Unique internal code of the product. Must be unique in combination with string? UpdateProductDto.ProductVersion.
Description of the product as displayed in the customer portal.
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.
Set to true to clear the stored expiration date; a null DateTimeOffset? UpdateProductDto.ExpirationDate alone leaves it unchanged.
Optional external identifier, such as a CMS or ERP ID.
Replacement set of tag names from the TagScopeDto.Product vocabulary. Null leaves the current tags unchanged; an empty list clears them; a list replaces the set wholesale. Names not yet in the registry are created there.
Additional metadata about the product stored as a JSON string. May include technical specifications, system requirements, or custom attributes.
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).
Examplegenerated
{ "propertyValues": "example", "name": "example", "productCode": "example", "description": "example", "productVersion": "example", "expirationDate": "2026-04-15T12:00:00Z", "clearExpirationDate": true, "productInformation": { "displayVersion": "example", "additionalInformation": "example", "revisionInformation": "example", "downloadUrl": "example", "informationUrl": "example", "supportUrl": "example" }, "externalId": "example", "tags": [ "example" ], "productMetaData": "example", "applicationScopes": [ "example" ]}Admin update payload for a product; null properties leave the existing value unchanged. Use UpdateProductDto UpdateProductDto.FromProduct(ProductDto product) to prefill from a current ProductDto.
object
Custom properties for storing additional information associated with the product.
Public-facing name of the product used for display purposes.
Unique internal code of the product. Must be unique in combination with string? UpdateProductDto.ProductVersion.
Description of the product as displayed in the customer portal.
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.
Set to true to clear the stored expiration date; a null DateTimeOffset? UpdateProductDto.ExpirationDate alone leaves it unchanged.
Optional external identifier, such as a CMS or ERP ID.
Replacement set of tag names from the TagScopeDto.Product vocabulary. Null leaves the current tags unchanged; an empty list clears them; a list replaces the set wholesale. Names not yet in the registry are created there.
Additional metadata about the product stored as a JSON string. May include technical specifications, system requirements, or custom attributes.
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).
Examplegenerated
{ "propertyValues": "example", "name": "example", "productCode": "example", "description": "example", "productVersion": "example", "expirationDate": "2026-04-15T12:00:00Z", "clearExpirationDate": true, "productInformation": { "displayVersion": "example", "additionalInformation": "example", "revisionInformation": "example", "downloadUrl": "example", "informationUrl": "example", "supportUrl": "example" }, "externalId": "example", "tags": [ "example" ], "productMetaData": "example", "applicationScopes": [ "example" ]}Admin update payload for a product; null properties leave the existing value unchanged. Use UpdateProductDto UpdateProductDto.FromProduct(ProductDto product) to prefill from a current ProductDto.
object
Custom properties for storing additional information associated with the product.
Public-facing name of the product used for display purposes.
Unique internal code of the product. Must be unique in combination with string? UpdateProductDto.ProductVersion.
Description of the product as displayed in the customer portal.
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.
Set to true to clear the stored expiration date; a null DateTimeOffset? UpdateProductDto.ExpirationDate alone leaves it unchanged.
Optional external identifier, such as a CMS or ERP ID.
Replacement set of tag names from the TagScopeDto.Product vocabulary. Null leaves the current tags unchanged; an empty list clears them; a list replaces the set wholesale. Names not yet in the registry are created there.
Additional metadata about the product stored as a JSON string. May include technical specifications, system requirements, or custom attributes.
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).
Examplegenerated
{ "propertyValues": "example", "name": "example", "productCode": "example", "description": "example", "productVersion": "example", "expirationDate": "2026-04-15T12:00:00Z", "clearExpirationDate": true, "productInformation": { "displayVersion": "example", "additionalInformation": "example", "revisionInformation": "example", "downloadUrl": "example", "informationUrl": "example", "supportUrl": "example" }, "externalId": "example", "tags": [ "example" ], "productMetaData": "example", "applicationScopes": [ "example" ]}Responses
Section titled “Responses”Returns the updated product details.
Admin read model of a catalog product: identity (code + version), lifecycle status, features, monitored assets, metrics, and presentation metadata.
object
Indicates the current product status in its lifecycle.
Unique identifier of the provider associated with this product.
Public-facing name of the product used for display purposes.
Description of the product as displayed in the customer portal.
Unique internal code of the product. Must be unique in combination with string ProductDto.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.
Expiration date, after which the product is no longer available for deployment. Null if no expiration is set.
Optional external identifier, such as a CMS or ERP ID.
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.
Collection of features that define additional functionalities of the product.
A feature as defined on a product: default value, enablement, trial/grace availability, license-token inclusion, and metering configuration. Entitlements inherit these defaults.
object
Data type of a feature’s value; determines how Value strings are interpreted and enforced.
One allowed value of an Enumeration-typed feature.
object
When true, the feature is withheld for the duration of a trial even if enabled.
Who can see a feature.
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.
Assets associated with the product for usage monitoring.
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
How reported usage values are interpreted and aggregated by the monitoring pipeline.
Admin view of tiered, period-based metering on a monitored asset: the usage tiers, the consumption period they reset on, and how usage accumulates across tiers.
object
Consumption is suspended until this time (e.g. after an overage); null when not suspended.
Severity of consumption relative to the configured usage tiers.
Represents a tier of usage with associated credits and severity status.
object
Gets or sets the start usage for the tier.
Tier start as a percentage of the feature value (percentage-based enforcement).
Gets or sets the end usage for the tier. Nullable.
Tier end as a percentage of the feature value (percentage-based enforcement).
Gets or sets the flat fee credits for the tier.
Gets or sets the credits per unit of consumption for the tier.
Gets or sets the name of the usage tier.
Gets or sets the overage severity status for the tier.
Defines the enforcement behavior applied by the resource controller or interceptor when a specific usage tier threshold is reached. Ordered from least to most restrictive.
Metric name of the credit balance, on the same entitlement, that pays for consumption in this tier. Only meaningful on a tier whose policy is AllowWithOverage: name a balance and every unit past the tier’s start is priced and charged to it on commit, refusing the commit when it cannot be paid for; leave it empty and the overage is allowed and merely reported.
Name of the consumption period the tiers reset on (see ConsumptionPeriodType), e.g. "Monthly".
How periodic consumption is attributed across usage tiers for charging.
Admin view of a prepaid credit balance on a monitored asset: credits available, consumed, quota thresholds, and the automatic re-balance (top-up) schedule.
object
Consumed credits since last deposit. Remaining credits are calculated as TotalCredits - CreditsUsed.
Total available credits.
The total of all credits used over time.
Consumption this balance was asked to pay for and could not: usage the vendor is owed and has not been paid for. Cumulative, and not reduced by a later top-up.
When this balance last failed to cover consumption that had already happened.
A named quota threshold on a credit balance and the severity level it maps to.
object
Remaining-balance threshold for this band: the band applies while the credit balance is below this value, and when several bands match the lowest threshold wins. A matching band at Critical severity blocks further deductions.
Severity of consumption relative to the configured quotas.
Consumption is suspended until this time (e.g. after an overage); null when not suspended.
Severity of consumption relative to the configured quotas.
The credits available when the entitlement is created.
Indicates if the resource has unlimited credits.
Cron schedule for automatic credit balance. The cron syntax consists of five fields separated by spaces:
- Minute (0-59)
- Hour (0-23)
- Day of the Month (1-31)
- Month (1-12 or Jan-Dec)
- Day of the Week (0-6 or Sun-Sat) Special characters:
-
- (asterisk): Represents any value for the field.
- , (comma): Separates multiple values.
-
- (hyphen): Specifies a range of values.
- / (slash): Specifies increments. Example: “0 0 * * *” means “at midnight every day.”
Date and time of the last automatic credit balance.
Indicates if the current credits should be transferred.
Maximum amount of credits that can be transferred automatically.
Amount of credits to balance automatically.
How far in the past a reported usage value’s timestamp may lie and still be accepted.
Lightweight metric definitions for this product.
A lightweight metric definition on a product: the machine name clients report usage under, plus display metadata (name, unit, category, number format).
object
Machine identifier clients report usage under (as opposed to the display string ProductMetricDto.Name).
How reported usage values are interpreted and aggregated by the monitoring pipeline.
Display format hint, e.g. "0" or "0.0".
Additional product information, including URLs and revision details.
object
Custom properties for storing additional information associated with the product.
object
A custom key/value property (e.g. on a product) with optional metadata entries.
object
A key/value metadata entry attached to a PropertyValueDto.
object
Indicates if the product is locked for editing. Locked products cannot be modified.
Additional metadata about the product stored as a JSON string. May include technical specifications, system requirements, or custom attributes.
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).
Parent product ID if this product belongs to an inherited version lineage.
Admin read model of a catalog product: identity (code + version), lifecycle status, features, monitored assets, metrics, and presentation metadata.
object
Indicates the current product status in its lifecycle.
Unique identifier of the provider associated with this product.
Public-facing name of the product used for display purposes.
Description of the product as displayed in the customer portal.
Unique internal code of the product. Must be unique in combination with string ProductDto.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.
Expiration date, after which the product is no longer available for deployment. Null if no expiration is set.
Optional external identifier, such as a CMS or ERP ID.
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.
Collection of features that define additional functionalities of the product.
A feature as defined on a product: default value, enablement, trial/grace availability, license-token inclusion, and metering configuration. Entitlements inherit these defaults.
object
Data type of a feature’s value; determines how Value strings are interpreted and enforced.
One allowed value of an Enumeration-typed feature.
object
When true, the feature is withheld for the duration of a trial even if enabled.
Who can see a feature.
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.
Assets associated with the product for usage monitoring.
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
How reported usage values are interpreted and aggregated by the monitoring pipeline.
Admin view of tiered, period-based metering on a monitored asset: the usage tiers, the consumption period they reset on, and how usage accumulates across tiers.
object
Consumption is suspended until this time (e.g. after an overage); null when not suspended.
Severity of consumption relative to the configured usage tiers.
Represents a tier of usage with associated credits and severity status.
object
Gets or sets the start usage for the tier.
Tier start as a percentage of the feature value (percentage-based enforcement).
Gets or sets the end usage for the tier. Nullable.
Tier end as a percentage of the feature value (percentage-based enforcement).
Gets or sets the flat fee credits for the tier.
Gets or sets the credits per unit of consumption for the tier.
Gets or sets the name of the usage tier.
Gets or sets the overage severity status for the tier.
Defines the enforcement behavior applied by the resource controller or interceptor when a specific usage tier threshold is reached. Ordered from least to most restrictive.
Metric name of the credit balance, on the same entitlement, that pays for consumption in this tier. Only meaningful on a tier whose policy is AllowWithOverage: name a balance and every unit past the tier’s start is priced and charged to it on commit, refusing the commit when it cannot be paid for; leave it empty and the overage is allowed and merely reported.
Name of the consumption period the tiers reset on (see ConsumptionPeriodType), e.g. "Monthly".
How periodic consumption is attributed across usage tiers for charging.
Admin view of a prepaid credit balance on a monitored asset: credits available, consumed, quota thresholds, and the automatic re-balance (top-up) schedule.
object
Consumed credits since last deposit. Remaining credits are calculated as TotalCredits - CreditsUsed.
Total available credits.
The total of all credits used over time.
Consumption this balance was asked to pay for and could not: usage the vendor is owed and has not been paid for. Cumulative, and not reduced by a later top-up.
When this balance last failed to cover consumption that had already happened.
A named quota threshold on a credit balance and the severity level it maps to.
object
Remaining-balance threshold for this band: the band applies while the credit balance is below this value, and when several bands match the lowest threshold wins. A matching band at Critical severity blocks further deductions.
Severity of consumption relative to the configured quotas.
Consumption is suspended until this time (e.g. after an overage); null when not suspended.
Severity of consumption relative to the configured quotas.
The credits available when the entitlement is created.
Indicates if the resource has unlimited credits.
Cron schedule for automatic credit balance. The cron syntax consists of five fields separated by spaces:
- Minute (0-59)
- Hour (0-23)
- Day of the Month (1-31)
- Month (1-12 or Jan-Dec)
- Day of the Week (0-6 or Sun-Sat) Special characters:
-
- (asterisk): Represents any value for the field.
- , (comma): Separates multiple values.
-
- (hyphen): Specifies a range of values.
- / (slash): Specifies increments. Example: “0 0 * * *” means “at midnight every day.”
Date and time of the last automatic credit balance.
Indicates if the current credits should be transferred.
Maximum amount of credits that can be transferred automatically.
Amount of credits to balance automatically.
How far in the past a reported usage value’s timestamp may lie and still be accepted.
Lightweight metric definitions for this product.
A lightweight metric definition on a product: the machine name clients report usage under, plus display metadata (name, unit, category, number format).
object
Machine identifier clients report usage under (as opposed to the display string ProductMetricDto.Name).
How reported usage values are interpreted and aggregated by the monitoring pipeline.
Display format hint, e.g. "0" or "0.0".
Additional product information, including URLs and revision details.
object
Custom properties for storing additional information associated with the product.
object
A custom key/value property (e.g. on a product) with optional metadata entries.
object
A key/value metadata entry attached to a PropertyValueDto.
object
Indicates if the product is locked for editing. Locked products cannot be modified.
Additional metadata about the product stored as a JSON string. May include technical specifications, system requirements, or custom attributes.
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).
Parent product ID if this product belongs to an inherited version lineage.
Example
{ "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" } ]}Admin read model of a catalog product: identity (code + version), lifecycle status, features, monitored assets, metrics, and presentation metadata.
object
Indicates the current product status in its lifecycle.
Unique identifier of the provider associated with this product.
Public-facing name of the product used for display purposes.
Description of the product as displayed in the customer portal.
Unique internal code of the product. Must be unique in combination with string ProductDto.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.
Expiration date, after which the product is no longer available for deployment. Null if no expiration is set.
Optional external identifier, such as a CMS or ERP ID.
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.
Collection of features that define additional functionalities of the product.
A feature as defined on a product: default value, enablement, trial/grace availability, license-token inclusion, and metering configuration. Entitlements inherit these defaults.
object
Data type of a feature’s value; determines how Value strings are interpreted and enforced.
One allowed value of an Enumeration-typed feature.
object
When true, the feature is withheld for the duration of a trial even if enabled.
Who can see a feature.
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.
Assets associated with the product for usage monitoring.
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
How reported usage values are interpreted and aggregated by the monitoring pipeline.
Admin view of tiered, period-based metering on a monitored asset: the usage tiers, the consumption period they reset on, and how usage accumulates across tiers.
object
Consumption is suspended until this time (e.g. after an overage); null when not suspended.
Severity of consumption relative to the configured usage tiers.
Represents a tier of usage with associated credits and severity status.
object
Gets or sets the start usage for the tier.
Tier start as a percentage of the feature value (percentage-based enforcement).
Gets or sets the end usage for the tier. Nullable.
Tier end as a percentage of the feature value (percentage-based enforcement).
Gets or sets the flat fee credits for the tier.
Gets or sets the credits per unit of consumption for the tier.
Gets or sets the name of the usage tier.
Gets or sets the overage severity status for the tier.
Defines the enforcement behavior applied by the resource controller or interceptor when a specific usage tier threshold is reached. Ordered from least to most restrictive.
Metric name of the credit balance, on the same entitlement, that pays for consumption in this tier. Only meaningful on a tier whose policy is AllowWithOverage: name a balance and every unit past the tier’s start is priced and charged to it on commit, refusing the commit when it cannot be paid for; leave it empty and the overage is allowed and merely reported.
Name of the consumption period the tiers reset on (see ConsumptionPeriodType), e.g. "Monthly".
How periodic consumption is attributed across usage tiers for charging.
Admin view of a prepaid credit balance on a monitored asset: credits available, consumed, quota thresholds, and the automatic re-balance (top-up) schedule.
object
Consumed credits since last deposit. Remaining credits are calculated as TotalCredits - CreditsUsed.
Total available credits.
The total of all credits used over time.
Consumption this balance was asked to pay for and could not: usage the vendor is owed and has not been paid for. Cumulative, and not reduced by a later top-up.
When this balance last failed to cover consumption that had already happened.
A named quota threshold on a credit balance and the severity level it maps to.
object
Remaining-balance threshold for this band: the band applies while the credit balance is below this value, and when several bands match the lowest threshold wins. A matching band at Critical severity blocks further deductions.
Severity of consumption relative to the configured quotas.
Consumption is suspended until this time (e.g. after an overage); null when not suspended.
Severity of consumption relative to the configured quotas.
The credits available when the entitlement is created.
Indicates if the resource has unlimited credits.
Cron schedule for automatic credit balance. The cron syntax consists of five fields separated by spaces:
- Minute (0-59)
- Hour (0-23)
- Day of the Month (1-31)
- Month (1-12 or Jan-Dec)
- Day of the Week (0-6 or Sun-Sat) Special characters:
-
- (asterisk): Represents any value for the field.
- , (comma): Separates multiple values.
-
- (hyphen): Specifies a range of values.
- / (slash): Specifies increments. Example: “0 0 * * *” means “at midnight every day.”
Date and time of the last automatic credit balance.
Indicates if the current credits should be transferred.
Maximum amount of credits that can be transferred automatically.
Amount of credits to balance automatically.
How far in the past a reported usage value’s timestamp may lie and still be accepted.
Lightweight metric definitions for this product.
A lightweight metric definition on a product: the machine name clients report usage under, plus display metadata (name, unit, category, number format).
object
Machine identifier clients report usage under (as opposed to the display string ProductMetricDto.Name).
How reported usage values are interpreted and aggregated by the monitoring pipeline.
Display format hint, e.g. "0" or "0.0".
Additional product information, including URLs and revision details.
object
Custom properties for storing additional information associated with the product.
object
A custom key/value property (e.g. on a product) with optional metadata entries.
object
A key/value metadata entry attached to a PropertyValueDto.
object
Indicates if the product is locked for editing. Locked products cannot be modified.
Additional metadata about the product stored as a JSON string. May include technical specifications, system requirements, or custom attributes.
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).
Parent product ID if this product belongs to an inherited version lineage.
Example
{ "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" } ]}