Create or update an array of pricing logic algorithm specifications
https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/pricingLogicAlgorithmSpecifications
Request
There are no request parameters for this operation.
- application/json
array150-
Array of:
object PricingLogicAlgorithmSpecification
Title:
PricingLogicAlgorithmSpecificationDiscriminator:{ "propertyName":"@type", "mapping":{ "PricingLogicAlgorithmSpecification":"#/components/schemas/PricingLogicAlgorithmSpecification", "PricingLogicAlgorithmSpecificationOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle" } }The specification models flexible interface definitions to support reuse by existing rating algorithms.
objectPricingLogicAlgorithmSpecificationDiscriminator Values
-
@baseType: string
The base type of the pricing logic algorithm specification.
-
@schemaLocation: string
The URI of the schema that defines the pricing logic algorithm specification.
-
@type(required): string
The class type of the pricing logic algorithm specification.
-
description: string
A narrative that explains in detail what the pricing logic algorithm specification is.
-
href: string
The hyperlink reference to the pricing logic algorithm specification.
-
id: string
Maximum Length:
30The ID of the pricing logic algorithm specification. -
lastUpdate: string
(date-time)
The date and time when the pricing logic algorithm specification was last updated.
-
lifecycleStatus: string
The status of the pricing logic algorithm specification.
-
name(required): string
The name of the pricing logic algorithm specification.
-
plaSpecCharacteristic: array
plaSpecCharacteristic
A list of pla specification characteristics associated with the pricing logic algorithm specification.
-
targetProductSchema: object
TargetProductSchema
Title:
TargetProductSchemaThe reference object to the schema and type of target product which is described by product specification. -
validFor: object
TimePeriod
Title:
TimePeriodThe period for which the productOffering is valid. -
version: string
The pricing logic algorithm specification version.
array-
Array of:
object PLASpecCharacteristic
Title:
PLASpecCharacteristicA characteristic quality or distinctive feature of a PlaSpecification. The characteristic can take on a discrete value, such as color, can take on a range of values, (for example, sensitivity of 100-240 mV), or can be derived from a formula (for example, usage time (hrs) = 30 - talk time *3). Certain characteristics, such as color, may be configured during the ordering or some other process.
objectTargetProductSchema-
@schemaLocation(required): string
The URI of the schema that defines the target product schema.
-
@type(required): string
The class type of the target product schema.
objectTimePeriod-
endDateTime: string
(date-time)
The end date and time of the time period.
-
startDateTime: string
(date-time)
The start date and time of the time period.
objectPLASpecCharacteristic-
@baseType: string
The base type of the pla specification characteristic.
-
@schemaLocation: string
The URI of the schema that defines the pla specification characteristic.
-
@type(required): string
The class type of the pla specification characteristic.
-
@valueSchemaLocation: string
The optional link to the schema that describes the value type.
-
configurable: boolean
Whether the pla specification characteristic is configurable.
-
description: string
A narrative that explains in detail what the PLASpecCharacteristic is.
-
extensible: boolean
An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for a product.
-
isUnique: boolean
An indicator that specifies if a value is unique for the specification. Possible values are; "unique while value is in effect" and "unique whether value is in effect or not".
-
maxCardinality: integer
The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality.
-
minCardinality: integer
The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality.
-
name(required): string
The name of the pla specification characteristic.
-
plaSpecCharacteristicValue: array
plaSpecCharacteristicValue
A list of pla specification characteristic values associated with the pla specification characteristic.
-
plaSpecCharRelationship: array
plaSpecCharRelationship
A list of pla specification characteristic relationships associated with the pla specification characteristic.
-
regex: string
A rule or principle represented as a regular expression for deriving the value of a characteristic value.
-
validFor: object
TimePeriodOracle
Title:
TimePeriodOracleThe validity period of the related party. -
valueType: string
Allowed Values:
[ "STRING", "NUMBER", "OBJECT", "ARRAY", "DECIMAL", "BOOLEAN", "DATE", "DATETIME" ]The type or classification of the pla specification characteristic. Valid values are STRING, NUMBER, OBJECT, ARRAY, DECIMAL, BOOLEAN, DATE, and DATETIME.
array-
Array of:
object PLASpecCharacteristicValue
Title:
PLASpecCharacteristicValueA number or text that can be assigned to a PLASpecCharacteristic.
array-
Array of:
object PLASpecCharRelationship
Title:
PLASpecCharRelationshipAn aggregation, migration, substitution, dependency or exclusivity relationship between/among PLASpecCharacteristic.
objectTimePeriodOracle-
endDateTime: string
(date-time)
The end date and time of the time period.
-
startDateTime: string
(date-time)
The start date and time of the time period.
objectPLASpecCharacteristicValue-
@baseType: string
The base type of the pla specification characteristic value.
-
@schemaLocation: string
The URI of the schema that defines the pla specification characteristic value.
-
@type(required): string
The class type of the pla specification characteristic value.
-
isDefault: boolean
Whether the pla specification characteristic value is default.
-
rangeInterval: string
Allowed Values:
[ "OPEN", "CLOSED", "CLOSED_BOTTOM", "CLOSED_TOP" ]An indicator that specifies the inclusion or exclusion of the valueFrom and valueTo attributes. If applicable, possible values are "open", "closed", "closedBottom" and "closedTop". Valid values are OPEN, CLOSED, CLOSED_BOTTOM, and CLOSED_TOP. -
regex: string
The regular expression to define constraint on the allowed value.
-
unitOfMeasure: string
Allowed Values:
[ "NONE", "SECOND", "MINUTE", "HOUR", "DAY", "MONTH", "BYTE", "KILOBYTE", "MEGABYTE", "GIGABYTE", "PAGES", "MOVIES", "TIME_INTERVAL", "QUANTITY", "MBPS", "GBPS" ]The unit can be minutes or GB. -
validFor: object
TimePeriodOracle
Title:
TimePeriodOracleThe validity period of the related party. -
value(required):
value
A discrete value that the characteristic can take on. The value type is defined by the valueType characteristic.
-
valueFrom: string
The low range value that a characteristic can take on.
-
valueTo: string
The upper range value that a characteristic can take on.
-
valueType: string
Allowed Values:
[ "STRING", "NUMBER", "OBJECT", "ARRAY", "DECIMAL", "BOOLEAN", "DATE", "DATETIME" ]The type or classification of the pla specification characteristic value. Valid values are STRING, NUMBER, OBJECT, ARRAY, DECIMAL, BOOLEAN, DATE, and DATETIME.
objectarrayobjectPLASpecCharRelationship-
@baseType: string
The base type of the pla specification characteristic relationship.
-
@schemaLocation: string
The URI of the schema that defines the pla specification characteristic relationship.
-
@type(required): string
The class type of the pla specification characteristic relationship.
-
charSpecSeq: integer
The order in which a characteristic specification appears within another characteristic specification grouping. For example, a grouping can represent a person name where the given name is first, the middle name is second, and the last name is third.
-
href: string
The hyperlink reference to the pla specification characteristic relationship.
-
id(required): string
The ID of the pla specification characteristic relationship.
-
name(required): string
The name of the pla specification characteristic relationship.
-
relationshipType(required): string
Allowed Values:
[ "AGGREGATION", "MIGRATION", "SUBSTITUTION", "DEPENDENCY", "EXCLUSIVITY" ]The type or classification of the pla specification characteristic relationship. Valid values are AGGREGATION, MIGRATION, SUBSTITUTION, DEPENDENCY, and EXCLUSIVITY. -
validFor: object
TimePeriodOracle
Title:
TimePeriodOracleThe validity period of the related party.
Response
- application/json
200 Response
array-
Array of:
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
PricingLogicAlgorithmSpecificationsOracle-
object
PricingLogicAlgorithmSpecification
Title:
PricingLogicAlgorithmSpecificationDiscriminator:{ "propertyName":"@type", "mapping":{ "PricingLogicAlgorithmSpecification":"#/components/schemas/PricingLogicAlgorithmSpecification", "PricingLogicAlgorithmSpecificationOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle" } }The specification models flexible interface definitions to support reuse by existing rating algorithms. -
object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "OneTimePLASpecOracle":"#/components/schemas/OneTimePLASpecOracle", "UsagePLASpecOracle":"#/components/schemas/UsagePLASpecOracle", "RecurringPLASpecOracle":"#/components/schemas/RecurringPLASpecOracle", "PricingLogicAlgorithmSpecificationOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle" } }
objectPricingLogicAlgorithmSpecificationDiscriminator Values
-
@baseType: string
The base type of the pricing logic algorithm specification.
-
@schemaLocation: string
The URI of the schema that defines the pricing logic algorithm specification.
-
@type(required): string
The class type of the pricing logic algorithm specification.
-
description: string
A narrative that explains in detail what the pricing logic algorithm specification is.
-
href: string
The hyperlink reference to the pricing logic algorithm specification.
-
id: string
Maximum Length:
30The ID of the pricing logic algorithm specification. -
lastUpdate: string
(date-time)
The date and time when the pricing logic algorithm specification was last updated.
-
lifecycleStatus: string
The status of the pricing logic algorithm specification.
-
name(required): string
The name of the pricing logic algorithm specification.
-
plaSpecCharacteristic: array
plaSpecCharacteristic
A list of pla specification characteristics associated with the pricing logic algorithm specification.
-
targetProductSchema: object
TargetProductSchema
Title:
TargetProductSchemaThe reference object to the schema and type of target product which is described by product specification. -
validFor: object
TimePeriod
Title:
TimePeriodThe period for which the productOffering is valid. -
version: string
The pricing logic algorithm specification version.
objectDiscriminator Values
- OneTimePLASpecOracle
- UsagePLASpecOracle
- RecurringPLASpecOracle
- PricingLogicAlgorithmSpecificationOracle
-
applicationName: string
The name of the application associated with the pricing logic algorithm specification.
-
created: string
(date-time)
The date and time of the creation.
-
createdBy: string
The name of the person who created item.
-
externalId: string
The ID of the external associated with the pricing logic algorithm specification.
-
lastUpdatedBy: string
The name of the person who updated item.
-
plaSpecificationRelationship: array
plaSpecificationRelationship
A list of pla specification relationships associated with the pricing logic algorithm specification.
-
project: object
ProjectRef
Title:
ProjectRefThe project reference resource. -
versionState: number
The version state of the Pricing Logic Algorithm Specification.
400 Response
array-
Array of:
object Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "Error":"#/components/schemas/Error", "BulkError":"#/components/schemas/BulkError" } }
401 Response
objectError-
@schemaLocation: string
The URI of the schema that defines the error.
-
@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
The text that provides more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
The text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
The URL pointing to documentation describing the error.
-
status: string
The status of the error.
404 Response
objectError-
@schemaLocation: string
The URI of the schema that defines the error.
-
@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
The text that provides more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
The text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
The URL pointing to documentation describing the error.
-
status: string
The status of the error.
405 Response
objectError-
@schemaLocation: string
The URI of the schema that defines the error.
-
@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
The text that provides more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
The text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
The URL pointing to documentation describing the error.
-
status: string
The status of the error.
500 Response
objectError-
@schemaLocation: string
The URI of the schema that defines the error.
-
@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
The text that provides more details and corrective actions related to the error. This can be shown to a client user.
-
reason(required): string
The text that explains the reason for error. This can be shown to a client user.
-
referenceError: string
The URL pointing to documentation describing the error.
-
status: string
The status of the error.
Examples
The following example shows how to create or update an array of pricing logic algorithm specification by submitting a put request on the REST resource using cURL.
cURL Command
curl -u username:password -X PUT https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/pricingLogicAlgorithmSpecifications -H 'Content-Type: application/json' -D @put_plaspecifications_v4.json | json_pp
Example of Request Body
The following shows an example of the request body in JSON format.
[
{
"id": "PlaSpec_year_2021_001",
"name": "PlaSpec_year_2021_001",
"description": "description of plaspec001",
"version": "1.0",
"@type": "PricingLogicAlgorithmSpecificationOracle",
"@baseType": "PricingLogicAlgorithmSpecification",
"lifecycleStatus": "In design",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z"
},
"project": {
"id": "BulkDocProject",
"name": "Bulk Doc Project"
},
"plaSpecCharacteristic": [
{
"name": "Colours123",
"description": "Phone Colour",
"valueType": "STRING",
"configurable": true,
"minCardinality": 1,
"maxCardinality": 1,
"isUnique": true,
"extensible": false,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"plaSpecCharacteristicValue": [
{
"isDefault": false,
"value": "Gold",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
}
},
{
"isDefault": false,
"value": "Blue",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
}
},
{
"isDefault": true,
"value": "Yellow",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
}
}
]
}
]
},
{
"id": "PlaSpec_year_2021_002",
"name": "PlaSpec_year_2021_002",
"description": "description of plaspec001",
"version": "1.0",
"@type": "PricingLogicAlgorithmSpecificationOracle",
"@baseType": "PricingLogicAlgorithmSpecification",
"lifecycleStatus": "In design",
"project": {
"id": "BulkDocProject",
"name": "Bulk Doc Project"
},
"plaSpecCharacteristic": [
{
"name": "Colours123",
"description": "Phone Colour",
"valueType": "STRING",
"configurable": true,
"minCardinality": 1,
"maxCardinality": 1,
"isUnique": true,
"extensible": false,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"plaSpecCharacteristicValue": [
{
"isDefault": false,
"value": "Gold",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
}
},
{
"isDefault": false,
"value": "Blue",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
}
},
{
"isDefault": true,
"value": "Yellow",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
}
}
]
}
]
}
]
Example of Response Body
The following shows an example of the response body in JSON format.
[
{
"id": "PlaSpec_year_2021_001",
"name": "PlaSpec_year_2021_001",
"description": "description of plaspec001",
"href": "https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/pricingLogicAlgorithmSpecifications/PlaSpec_year_2021_001",
"version": "1.0",
"lifecycleStatus": "In design",
"@type": "PricingLogicAlgorithmSpecificationOracle",
"@baseType": "PricingLogicAlgorithmSpecification",
"@schemaLocation": "https://{FusionAppsHost}/CatalogManagement/schema/oracle/PricingLogicAlgorithmSpecificationOracle.yml",
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z"
},
"project": {
"id": "BulkDocProject",
"name": "Bulk Doc Project",
"href": "https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v4/project/BulkDocProject"
},
"plaSpecCharacteristic": [
{
"name": "Colours123",
"description": "Phone Colour",
"valueType": "STRING",
"extensible": false,
"configurable": true,
"isUnique": true,
"minCardinality": 1,
"maxCardinality": 1,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"plaSpecCharacteristicValue": [
{
"isDefault": false,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"value": "Gold"
},
{
"isDefault": false,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"value": "Blue"
},
{
"isDefault": true,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"value": "Yellow"
}
]
}
]
},
{
"id": "PlaSpec_year_2021_002",
"name": "PlaSpec_year_2021_002",
"description": "description of plaspec001",
"href": "https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/pricingLogicAlgorithmSpecifications/PlaSpec_year_2021_002",
"version": "1.0",
"lifecycleStatus": "In design",
"@type": "PricingLogicAlgorithmSpecificationOracle",
"@baseType": "PricingLogicAlgorithmSpecification",
"@schemaLocation": "https://{FusionAppsHost}/CatalogManagement/schema/oracle/PricingLogicAlgorithmSpecificationOracle.yml",
"project": {
"id": "BulkDocProject",
"name": "Bulk Doc Project",
"href": "https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/tmf-api/productCatalogManagement/v4/project/BulkDocProject"
},
"plaSpecCharacteristic": [
{
"name": "Colours123",
"description": "Phone Colour",
"valueType": "STRING",
"extensible": false,
"configurable": true,
"isUnique": true,
"minCardinality": 1,
"maxCardinality": 1,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"plaSpecCharacteristicValue": [
{
"isDefault": false,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"value": "Gold"
},
{
"isDefault": false,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"value": "Blue"
},
{
"isDefault": true,
"validFor": {
"startDateTime": "2020-05-02T16:42:23.0Z",
"endDateTime": "2021-07-14T00:00:00.0Z"
},
"value": "Yellow"
}
]
}
]
}
]