Update a usage specification
patch
https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/usageManagement/v2/usageSpecification/{id}
Request
Path Parameters
-
id(required): string
The unique identifier of the resource item.
Supported Media Types
- application/json
Root Schema : UsageSpecificationOracle
Title:
UsageSpecificationOracle
Match All
Show Source
-
object
UsageSpecification
Title:
UsageSpecification
Discriminator:{ "propertyName":"@type", "mapping":{ "UsageSpecification":"#/components/schemas/UsageSpecification", "UsageSpecificationOracle":"#/components/schemas/UsageSpecificationOracle" } }
The Usage Specification resource represents a set of usage characteristics and relationships. -
object
type
Nested Schema : UsageSpecification
Type:
object
Title:
UsageSpecification
Discriminator: @type
Discriminator Values
The Usage Specification resource represents a set of usage characteristics and relationships.
Show Source
-
@baseType: string
Immediate base (class) type of the Usage Specification
-
@schemaLocation: string
A link to the schema describing this Usage Specification
-
@type(required): string
Class type of the Usage Specification
-
description: string
A string. A narrative that explains in detail what the usage specification is.
-
href: string
A string. Reference of the usage specification.
-
id: string
Maximum Length:
30
A string. Unique identifier of the usage specification. -
lastUpdate: string
(date-time)
A date time (DateTime). Date and time of the last update of the Usage specification.
-
lifecycleStatus: string
A string. Used to indicate the current lifecycle status of the usage specification.
-
name(required): string
A string. Name of the usage specification.
-
usageSpecCharacteristic: array
usageSpecCharacteristic
-
usageSpecRelationship: array
usageSpecRelationship
-
validFor: object
TimePeriod
Title:
TimePeriod
The period for which the productOffering is valid -
version: string
A string. usage specification version.
Nested Schema : type
Type:
Show Source
object
-
applicationName: string
name of the external application
-
created: string
(date-time)
Date and time of creation
-
createdBy: string
name of the person who created
-
externalId: string
id of the external application
-
lastUpdatedBy: string
name of the person who updated
-
meteringRule(required): array
meteringRule
-
project: object
ProjectRef
Title:
ProjectRef
Project Reference -
requestSpecification: array
requestSpecification
-
usageCode: string
Code to Usage specification
-
versionState: number
Version state of the Usage Specification
Nested Schema : meteringRule
Type:
Show Source
array
-
Array of:
object MeteringRule
Title:
MeteringRule
A metering rule
Nested Schema : ProjectRef
Type:
object
Title:
ProjectRef
Project Reference
Show Source
-
href: string
Unique reference of the project
-
id(required): string
Unique identifier of the project
-
name: string
Name of the project
-
version: string
Version of the project
Nested Schema : requestSpecification
Type:
Show Source
array
-
Array of:
object RequestSpecificationRefOracle
Title:
RequestSpecificationRefOracle
A list of request level specification references (RequestSpecificationRef [*]). A list of request level specifications related to this usage specification, and which will need to be satisfiable for corresponding usage instances.
Nested Schema : MeteringRule
Type:
object
Title:
MeteringRule
A metering rule
Show Source
-
@baseType: string
The immediate base class type of the Metering Rule
-
@schemaLocation: string
A link to the schema describing this Metering Rule entity
-
@type(required): string
the class type of the Metering Rule
-
description: string
A string. Description of the metering rule.
-
id(required): string
A string. Unique identifier of the metering rule.
-
meteringExpression: array
meteringExpression
-
name: string
A string. The name given to the metering rule
-
roundingMethod: string
Rounding applicable to the metering rule
-
stringExpression: string
Metering Expression applicable to the metering rule
-
unitOfMeasure: string
Unit of Measure of Usage
-
validFor: object
TimePeriodOracle
Title:
TimePeriodOracle
Validity period of the related party
Nested Schema : meteringExpression
Type:
Show Source
array
-
Array of:
object MeteringExpression
Title:
MeteringExpression
A metering expression
Nested Schema : TimePeriodOracle
Type:
object
Title:
TimePeriodOracle
Validity period of the related party
Show Source
-
endDateTime: string
(date-time)
An instant of time, ending at the TimePeriod.
-
startDateTime: string
(date-time)
An instant of time, starting at the TimePeriod
Nested Schema : MeteringExpression
Type:
object
Title:
MeteringExpression
A metering expression
Show Source
-
@baseType: string
The immediate base class type of the Metering Expression
-
@schemaLocation: string
A link to the schema describing this Metering Expression entity
-
@type(required): string
the class type of the Metering Expression
-
expressionType(required): string
Allowed Values:
[ "UNARY", "BINARY", "NUMERIC", "CHARACTERISTIC" ]
Expression Type of the expression -
id(required): string
A string. Unique identifier of the metering expression.
-
meteringExpressionRelationship: object
meteringExpressionRelationship
-
operator: string
Allowed Values:
[ "NOT EQUALS", "MULTIPLY", "ADD", "DIVIDE", "NOT", "EQUALS", "SUBTRACT" ]
Operator of the expression -
value:
value
A discrete value that the relationship can take on.
Nested Schema : meteringExpressionRelationship
Type:
Show Source
object
-
Array of:
object MeteringExpressionRelationship
Title:
MeteringExpressionRelationship
An expression relationship
Nested Schema : value
A discrete value that the relationship can take on.
Match One Schema
Show Source
Nested Schema : MeteringExpressionRelationship
Type:
object
Title:
MeteringExpressionRelationship
An expression relationship
Show Source
-
@baseType: string
The immediate base class type of the Metering Expression Relationship
-
@schemaLocation: string
A link to the schema describing this Metering Expression Relationship entity
-
@type(required): string
the class type of the Metering Expression Relationship
-
id(required): string
the id reference to the parent metering expression in this relationship
-
name: string
-
relationshipType(required): string
Allowed Values:
[ "LEFT_HAND_SIDE", "RIGHT_HAND_SIDE" ]
Indicate whether this expression represents the left or right side on the binary expression from which is is contained.
Nested Schema : value-oneOf[1]
Type:
object
Nested Schema : RequestSpecificationRefOracle
Type:
object
Title:
RequestSpecificationRefOracle
A list of request level specification references (RequestSpecificationRef [*]). A list of request level specifications related to this usage specification, and which will need to be satisfiable for corresponding usage instances.
Show Source
-
@baseType: string
The immediate base class type of the request specification Ref
-
@referredType(required): string
A string. The actual type of the target instance when needed for disambiguation.
-
@schemaLocation: string
A link to the schema describing this request specification Ref entity
-
@type(required): string
the class type of the request specification Ref
-
href: string
A string. The hyperlink to access a request specification.
-
id(required): string
A string. Unique identifier of the request Specification.
-
name: string
A string. The name given to the target request specification instance.
-
specType(required): string
Allowed Values:
[ "INITIATE", "UPDATE", "TERMINATE", "EVENT", "OFFLINE" ]
Specification Type of the request specification -
version: string
A string. Version of the target request Specification.
Response
Supported Media Types
- application/json
200 Response
OK
Root Schema : UsageSpecificationOracle
Title:
UsageSpecificationOracle
Match All
Show Source
-
object
UsageSpecification
Title:
UsageSpecification
Discriminator:{ "propertyName":"@type", "mapping":{ "UsageSpecification":"#/components/schemas/UsageSpecification", "UsageSpecificationOracle":"#/components/schemas/UsageSpecificationOracle" } }
The Usage Specification resource represents a set of usage characteristics and relationships. -
object
type
Nested Schema : UsageSpecification
Type:
object
Title:
UsageSpecification
Discriminator: @type
Discriminator Values
The Usage Specification resource represents a set of usage characteristics and relationships.
Show Source
-
@baseType: string
Immediate base (class) type of the Usage Specification
-
@schemaLocation: string
A link to the schema describing this Usage Specification
-
@type(required): string
Class type of the Usage Specification
-
description: string
A string. A narrative that explains in detail what the usage specification is.
-
href: string
A string. Reference of the usage specification.
-
id: string
Maximum Length:
30
A string. Unique identifier of the usage specification. -
lastUpdate: string
(date-time)
A date time (DateTime). Date and time of the last update of the Usage specification.
-
lifecycleStatus: string
A string. Used to indicate the current lifecycle status of the usage specification.
-
name(required): string
A string. Name of the usage specification.
-
usageSpecCharacteristic: array
usageSpecCharacteristic
-
usageSpecRelationship: array
usageSpecRelationship
-
validFor: object
TimePeriod
Title:
TimePeriod
The period for which the productOffering is valid -
version: string
A string. usage specification version.
Nested Schema : type
Type:
Show Source
object
-
applicationName: string
name of the external application
-
created: string
(date-time)
Date and time of creation
-
createdBy: string
name of the person who created
-
externalId: string
id of the external application
-
lastUpdatedBy: string
name of the person who updated
-
meteringRule(required): array
meteringRule
-
project: object
ProjectRef
Title:
ProjectRef
Project Reference -
requestSpecification: array
requestSpecification
-
usageCode: string
Code to Usage specification
-
versionState: number
Version state of the Usage Specification
Nested Schema : meteringRule
Type:
Show Source
array
-
Array of:
object MeteringRule
Title:
MeteringRule
A metering rule
Nested Schema : ProjectRef
Type:
object
Title:
ProjectRef
Project Reference
Show Source
-
href: string
Unique reference of the project
-
id(required): string
Unique identifier of the project
-
name: string
Name of the project
-
version: string
Version of the project
Nested Schema : requestSpecification
Type:
Show Source
array
-
Array of:
object RequestSpecificationRefOracle
Title:
RequestSpecificationRefOracle
A list of request level specification references (RequestSpecificationRef [*]). A list of request level specifications related to this usage specification, and which will need to be satisfiable for corresponding usage instances.
Nested Schema : MeteringRule
Type:
object
Title:
MeteringRule
A metering rule
Show Source
-
@baseType: string
The immediate base class type of the Metering Rule
-
@schemaLocation: string
A link to the schema describing this Metering Rule entity
-
@type(required): string
the class type of the Metering Rule
-
description: string
A string. Description of the metering rule.
-
id(required): string
A string. Unique identifier of the metering rule.
-
meteringExpression: array
meteringExpression
-
name: string
A string. The name given to the metering rule
-
roundingMethod: string
Rounding applicable to the metering rule
-
stringExpression: string
Metering Expression applicable to the metering rule
-
unitOfMeasure: string
Unit of Measure of Usage
-
validFor: object
TimePeriodOracle
Title:
TimePeriodOracle
Validity period of the related party
Nested Schema : meteringExpression
Type:
Show Source
array
-
Array of:
object MeteringExpression
Title:
MeteringExpression
A metering expression
Nested Schema : TimePeriodOracle
Type:
object
Title:
TimePeriodOracle
Validity period of the related party
Show Source
-
endDateTime: string
(date-time)
An instant of time, ending at the TimePeriod.
-
startDateTime: string
(date-time)
An instant of time, starting at the TimePeriod
Nested Schema : MeteringExpression
Type:
object
Title:
MeteringExpression
A metering expression
Show Source
-
@baseType: string
The immediate base class type of the Metering Expression
-
@schemaLocation: string
A link to the schema describing this Metering Expression entity
-
@type(required): string
the class type of the Metering Expression
-
expressionType(required): string
Allowed Values:
[ "UNARY", "BINARY", "NUMERIC", "CHARACTERISTIC" ]
Expression Type of the expression -
id(required): string
A string. Unique identifier of the metering expression.
-
meteringExpressionRelationship: object
meteringExpressionRelationship
-
operator: string
Allowed Values:
[ "NOT EQUALS", "MULTIPLY", "ADD", "DIVIDE", "NOT", "EQUALS", "SUBTRACT" ]
Operator of the expression -
value:
value
A discrete value that the relationship can take on.
Nested Schema : meteringExpressionRelationship
Type:
Show Source
object
-
Array of:
object MeteringExpressionRelationship
Title:
MeteringExpressionRelationship
An expression relationship
Nested Schema : value
A discrete value that the relationship can take on.
Match One Schema
Show Source
Nested Schema : MeteringExpressionRelationship
Type:
object
Title:
MeteringExpressionRelationship
An expression relationship
Show Source
-
@baseType: string
The immediate base class type of the Metering Expression Relationship
-
@schemaLocation: string
A link to the schema describing this Metering Expression Relationship entity
-
@type(required): string
the class type of the Metering Expression Relationship
-
id(required): string
the id reference to the parent metering expression in this relationship
-
name: string
-
relationshipType(required): string
Allowed Values:
[ "LEFT_HAND_SIDE", "RIGHT_HAND_SIDE" ]
Indicate whether this expression represents the left or right side on the binary expression from which is is contained.
Nested Schema : value-oneOf[1]
Type:
object
Nested Schema : RequestSpecificationRefOracle
Type:
object
Title:
RequestSpecificationRefOracle
A list of request level specification references (RequestSpecificationRef [*]). A list of request level specifications related to this usage specification, and which will need to be satisfiable for corresponding usage instances.
Show Source
-
@baseType: string
The immediate base class type of the request specification Ref
-
@referredType(required): string
A string. The actual type of the target instance when needed for disambiguation.
-
@schemaLocation: string
A link to the schema describing this request specification Ref entity
-
@type(required): string
the class type of the request specification Ref
-
href: string
A string. The hyperlink to access a request specification.
-
id(required): string
A string. Unique identifier of the request Specification.
-
name: string
A string. The name given to the target request specification instance.
-
specType(required): string
Allowed Values:
[ "INITIATE", "UPDATE", "TERMINATE", "EVENT", "OFFLINE" ]
Specification Type of the request specification -
version: string
A string. Version of the target request Specification.
400 Response
Your request couldn't be processed because it contains missing or invalid information, such as a validation error on an input field, a missing required value, and so forth.
Root Schema : Error
Type:
object
Title:
Show Source
Error
-
@schemaLocation: string
it provides a link to the schema describing a REST resource.
-
@type: string
The class type of a REST resource.
-
code(required): string
Application related code (as defined in the API or from a common list)
-
message: string
Text that provide more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
Text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
url pointing to documentation describing the error
-
status: string
http error code extension like 400-2
401 Response
Your request isn't authorized. The authentication credentials included with this request are missing or invalid.
Root Schema : Error
Type:
object
Title:
Show Source
Error
-
@schemaLocation: string
it provides a link to the schema describing a REST resource.
-
@type: string
The class type of a REST resource.
-
code(required): string
Application related code (as defined in the API or from a common list)
-
message: string
Text that provide more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
Text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
url pointing to documentation describing the error
-
status: string
http error code extension like 400-2
404 Response
Your request includes a resource URI that doesn't exist.
Root Schema : Error
Type:
object
Title:
Show Source
Error
-
@schemaLocation: string
it provides a link to the schema describing a REST resource.
-
@type: string
The class type of a REST resource.
-
code(required): string
Application related code (as defined in the API or from a common list)
-
message: string
Text that provide more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
Text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
url pointing to documentation describing the error
-
status: string
http error code extension like 400-2
405 Response
HTTP action specified in the request (DELETE, GET, POST, PUT) isn't supported for this request URI.
Root Schema : Error
Type:
object
Title:
Show Source
Error
-
@schemaLocation: string
it provides a link to the schema describing a REST resource.
-
@type: string
The class type of a REST resource.
-
code(required): string
Application related code (as defined in the API or from a common list)
-
message: string
Text that provide more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
Text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
url pointing to documentation describing the error
-
status: string
http error code extension like 400-2
500 Response
The server encountered something unexpected that prevented it from completing the request.
Root Schema : Error
Type:
object
Title:
Show Source
Error
-
@schemaLocation: string
it provides a link to the schema describing a REST resource.
-
@type: string
The class type of a REST resource.
-
code(required): string
Application related code (as defined in the API or from a common list)
-
message: string
Text that provide more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
Text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
url pointing to documentation describing the error
-
status: string
http error code extension like 400-2
Examples
The following example shows how to update a usage specification by submitting a PATCH request on the REST resource using cURL. In this example, we will update the status of the usage specification to Ready to Publish.
curl -u username:password -X PATCH https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/usageManagement/v2/usageSpecification/Usage_Spec_4356
Example of Request Body
The following shows an example of the request body.
{ "description" : "Usage Specification for Gprs", "validFor": { "startDateTime": "2024-08-09T00:00:00.000Z", "endDateTime": "2028-08-09T00:00:00.000Z" } }
Example of Response Body
The following example shows the contents of the response body in JSON format:
{ "id": "DBE_UsageSpec_GPRS", "name": "EventDelayedSessionTelcoGprs", "description" : "Usage Specification for Gprs", "validFor": { "startDateTime": "2024-08-09T00:00:00.000Z", "endDateTime": "2028-08-09T00:00:00.000Z" } "href": "https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/usageManagement/v2/usageSpecification/DBE_UsageSpec_GPRS", "lifecycleStatus": "In design", "@type": "UsageSpecificationOracle", "@baseType": "UsageSpecification", "created": "2025-01-20T13:24:14.000Z", "createdBy": "booth", "lastUpdate": "2025-02-17T10:50:26.004Z", "lastUpdatedBy": "booth", "version": "1.0", "project": { "id": "DBE_RI_ProdModel_PreSeed_PSP", "name": "DBE RI Product Model Preseed", "href": "https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/project/DBE_RI_ProdModel_PreSeed_PSP", "version": "1.0", "@referredType": "ProjectOracle" }, "meteringRule": [ { "id": "Occurrence", "name": "Occurrence", "description": "Occurrence", "roundingMethod": "UP", "stringExpression": "(1)", "unitOfMeasure": "None", "@type": "MeteringRuleOracle", "meteringExpression": [ { "id": "contentType", "expressionType": "NUMERIC", "value": "1", "@type": "MeteringExpressionOracle" } ] }, { "id": "Volume", "name": "Volume", "description": "Volume", "roundingMethod": "UP", "stringExpression": "(1)", "unitOfMeasure": "None", "@type": "MeteringRuleOracle", "meteringExpression": [ { "id": "contentType", "expressionType": "NUMERIC", "value": "1", "@type": "MeteringExpressionOracle" } ] }, { "id": "Duration", "name": "Duration", "description": "Duration", "roundingMethod": "UP", "stringExpression": "(1)", "unitOfMeasure": "None", "@type": "MeteringRuleOracle", "meteringExpression": [ { "id": "contentType", "expressionType": "NUMERIC", "value": "1", "@type": "MeteringExpressionOracle" } ] } ] }