Create or update a pricing logic algorithm specification
put
https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/pricingLogicAlgorithmSpecification/{id}
Request
Path Parameters
-
id(required): string
The unique identifier of the resource item.
Supported Media Types
- application/json
Root Schema : PricingLogicAlgorithmSpecification_Schemas
Type:
object
Title:
PricingLogicAlgorithmSpecification_Schemas
Discriminator: @type
Discriminator Values
- PricingLogicAlgorithmSpecificationOracle
- OneTimePLASpecOracle
- UsagePLASpecOracle
- RecurringPLASpecOracle
Match One Schema
Show Source
-
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
OneTimePLASpecOracle
Title:
OneTimePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
UsagePLASpecOracle
Title:
UsagePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
RecurringPLASpecOracle
Title:
RecurringPLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Nested Schema : PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
object
PricingLogicAlgorithmSpecification
Title:
PricingLogicAlgorithmSpecification
Discriminator:{ "propertyName":"@type", "mapping":{ "PricingLogicAlgorithmSpec":"#/components/schemas/PricingLogicAlgorithmSpecification", "PricingLogicAlgorithmSpecOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle" } }
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "OneTimePLASpecOracle":"#/components/schemas/OneTimePLASpecOracle", "UsagePLASpecOracle":"#/components/schemas/UsagePLASpecOracle", "RecurringPLASpecOracle":"#/components/schemas/RecurringPLASpecOracle", "PricingLogicAlgorithmSpecOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle" } }
Nested Schema : OneTimePLASpecOracle
Title:
OneTimePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
allOf
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
OneTimePLASpecOracle-allOf[1]
Nested Schema : UsagePLASpecOracle
Title:
UsagePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
allOf
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
UsagePLASpecOracle-allOf[1]
Nested Schema : RecurringPLASpecOracle
Title:
RecurringPLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
allOf
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
RecurringPLASpecOracle-allOf[1]
Nested Schema : PricingLogicAlgorithmSpecification
Type:
object
Title:
PricingLogicAlgorithmSpecification
Discriminator: @type
Discriminator Values
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
@baseType: string
base class type (immediate parent) of the pricing logic algorithm specification.
-
@schemaLocation: string
hyperlink reference to schema describing this object.
-
@type(required): string
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
Reference of the pricing logic algorithm specification.
-
id: string
Maximum Length:
30
Unique identifier of the pricing logic algorithm specification. -
lastUpdate: string
(date-time)
Date and time of the last update
-
lifecycleStatus: string
Used to indicate the current lifecycle status
-
name(required): string
Name of the pricing logic algorithm specification.
-
plaSpecCharacteristic: array
plaSpecCharacteristic
-
targetProductSchema: object
TargetProductSchema
Title:
TargetProductSchema
The reference object to the schema and type of target product which is described by product specification -
validFor: object
TimePeriod
Title:
TimePeriod
The period for which the productOffering is valid -
version: string
Pricing logic algorithm specification version.
Nested Schema : Discriminator: @type
Type:
object
Discriminator: @type
Discriminator Values
Show Source-
applicationName: string
name of the external application
-
created: string
(date-time)
Date and time of the creation
-
createdBy: string
name of the person who created item
-
externalId: string
id of the external application
-
lastUpdatedBy: string
name of the person who updated item
-
plaSpecificationRelationship: array
plaSpecificationRelationship
-
project: object
ProjectRef
Title:
ProjectRef
Project Reference -
versionState: number
Version state of the Pricing Logic Algorithm Specification
Nested Schema : OneTimePLASpecOracle-allOf[1]
Type:
object
Nested Schema : UsagePLASpecOracle-allOf[1]
Type:
Show Source
object
-
usageSpecification:
UsageSpecificationRefOracle
Title:
UsageSpecificationRefOracle
Nested Schema : UsageSpecificationRefOracle
Title:
UsageSpecificationRefOracle
Match All
Show Source
-
object
UsageSpecificationRef
Title:
UsageSpecificationRef
Discriminator:{ "propertyName":"@type", "mapping":{ "UsageSpecificationRef":"#/components/schemas/UsageSpecificationRef", "UsageSpecificationRefOracle":"#/components/schemas/UsageSpecificationRefOracle" } }
Usage specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. -
object
UsageSpecificationRefOracle-allOf[1]
Nested Schema : UsageSpecificationRef
Type:
object
Title:
UsageSpecificationRef
Discriminator: @type
Discriminator Values
Usage specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role.
Show Source
-
@baseType: string
Indicates the base (class) type of this REST resource
-
@referredType(required): string
(Class) type of the referred Usage Specification.
-
@schemaLocation: string
This field provides a link to the schema describing this REST resource
-
@type(required): string
Indicates the (class) type of ServiceSpecificationRef.
-
href: string
Reference of the usage specification.
-
id(required): string
Unique identifier of the usage specification.
-
name: string
Name of the usage specification.
-
version: string
Version of the usage specification.
-
versionState: number
To hold the version state for the reference
Nested Schema : UsageSpecificationRefOracle-allOf[1]
Type:
Show Source
object
-
usageCode: string
Code to usage specification
Nested Schema : RecurringPLASpecOracle-allOf[1]
Type:
object
Response
Supported Media Types
- application/json
200 Response
OK
Root Schema : PricingLogicAlgorithmSpecification_Schemas
Type:
object
Title:
PricingLogicAlgorithmSpecification_Schemas
Discriminator: @type
Discriminator Values
- PricingLogicAlgorithmSpecificationOracle
- OneTimePLASpecOracle
- UsagePLASpecOracle
- RecurringPLASpecOracle
Match One Schema
Show Source
-
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
OneTimePLASpecOracle
Title:
OneTimePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
UsagePLASpecOracle
Title:
UsagePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
RecurringPLASpecOracle
Title:
RecurringPLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Nested Schema : PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
object
PricingLogicAlgorithmSpecification
Title:
PricingLogicAlgorithmSpecification
Discriminator:{ "propertyName":"@type", "mapping":{ "PricingLogicAlgorithmSpec":"#/components/schemas/PricingLogicAlgorithmSpecification", "PricingLogicAlgorithmSpecOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle" } }
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
Discriminator: @type
Discriminator:
{ "propertyName":"@type", "mapping":{ "OneTimePLASpecOracle":"#/components/schemas/OneTimePLASpecOracle", "UsagePLASpecOracle":"#/components/schemas/UsagePLASpecOracle", "RecurringPLASpecOracle":"#/components/schemas/RecurringPLASpecOracle", "PricingLogicAlgorithmSpecOracle":"#/components/schemas/PricingLogicAlgorithmSpecificationOracle" } }
Nested Schema : OneTimePLASpecOracle
Title:
OneTimePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
allOf
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
OneTimePLASpecOracle-allOf[1]
Nested Schema : UsagePLASpecOracle
Title:
UsagePLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
allOf
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
UsagePLASpecOracle-allOf[1]
Nested Schema : RecurringPLASpecOracle
Title:
RecurringPLASpecOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Match All
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
allOf
PricingLogicAlgorithmSpecificationsOracle
Title:
PricingLogicAlgorithmSpecificationsOracle
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms. -
object
RecurringPLASpecOracle-allOf[1]
Nested Schema : PricingLogicAlgorithmSpecification
Type:
object
Title:
PricingLogicAlgorithmSpecification
Discriminator: @type
Discriminator Values
It is designed to model flexible interface definition in order to provide maximal reuse for existing rating algorithms.
Show Source
-
@baseType: string
base class type (immediate parent) of the pricing logic algorithm specification.
-
@schemaLocation: string
hyperlink reference to schema describing this object.
-
@type(required): string
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
Reference of the pricing logic algorithm specification.
-
id: string
Maximum Length:
30
Unique identifier of the pricing logic algorithm specification. -
lastUpdate: string
(date-time)
Date and time of the last update
-
lifecycleStatus: string
Used to indicate the current lifecycle status
-
name(required): string
Name of the pricing logic algorithm specification.
-
plaSpecCharacteristic: array
plaSpecCharacteristic
-
targetProductSchema: object
TargetProductSchema
Title:
TargetProductSchema
The reference object to the schema and type of target product which is described by product specification -
validFor: object
TimePeriod
Title:
TimePeriod
The period for which the productOffering is valid -
version: string
Pricing logic algorithm specification version.
Nested Schema : Discriminator: @type
Type:
object
Discriminator: @type
Discriminator Values
Show Source-
applicationName: string
name of the external application
-
created: string
(date-time)
Date and time of the creation
-
createdBy: string
name of the person who created item
-
externalId: string
id of the external application
-
lastUpdatedBy: string
name of the person who updated item
-
plaSpecificationRelationship: array
plaSpecificationRelationship
-
project: object
ProjectRef
Title:
ProjectRef
Project Reference -
versionState: number
Version state of the Pricing Logic Algorithm Specification
Nested Schema : OneTimePLASpecOracle-allOf[1]
Type:
object
Nested Schema : UsagePLASpecOracle-allOf[1]
Type:
Show Source
object
-
usageSpecification:
UsageSpecificationRefOracle
Title:
UsageSpecificationRefOracle
Nested Schema : UsageSpecificationRefOracle
Title:
UsageSpecificationRefOracle
Match All
Show Source
-
object
UsageSpecificationRef
Title:
UsageSpecificationRef
Discriminator:{ "propertyName":"@type", "mapping":{ "UsageSpecificationRef":"#/components/schemas/UsageSpecificationRef", "UsageSpecificationRefOracle":"#/components/schemas/UsageSpecificationRefOracle" } }
Usage specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role. -
object
UsageSpecificationRefOracle-allOf[1]
Nested Schema : UsageSpecificationRef
Type:
object
Title:
UsageSpecificationRef
Discriminator: @type
Discriminator Values
Usage specification reference: A ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role.
Show Source
-
@baseType: string
Indicates the base (class) type of this REST resource
-
@referredType(required): string
(Class) type of the referred Usage Specification.
-
@schemaLocation: string
This field provides a link to the schema describing this REST resource
-
@type(required): string
Indicates the (class) type of ServiceSpecificationRef.
-
href: string
Reference of the usage specification.
-
id(required): string
Unique identifier of the usage specification.
-
name: string
Name of the usage specification.
-
version: string
Version of the usage specification.
-
versionState: number
To hold the version state for the reference
Nested Schema : UsageSpecificationRefOracle-allOf[1]
Type:
Show Source
object
-
usageCode: string
Code to usage specification
Nested Schema : RecurringPLASpecOracle-allOf[1]
Type:
object
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 does not 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
501 Response
The server does not support the functionality required to fulfill 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 create or update a 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/pricingLogicAlgorithmSpecification/PLAspec4
-H 'Content-Type: application/json' -D @put_plapsecification.json |
json_pp
Example of Request Body
The following example shows the contents of the request body in JSON format.
{ "id": "PLAspec1", "name": "PLA Spec", "description": "Description of PLAspec", "version": "1.0", "lifecycleStatus": "In design", "@type": "PricingLogicAlgorithmSpecificationOracle", "@baseType": "PricingLogicAlgorithmSpecification", "plaSpecCharacteristic": [ { "name": "Colour", "description": "Phone Colour", "valueType": "STRING", "configurable": true, "minCardinality": 1, "maxCardinality": 1, "isUnique": true, "extensible": false, "@type": "PLASpecCharacteristic" } ] }
Example of Response Body
The following example shows the contents of the response body in JSON
format.
{ "id": "PLAspec1", "name": "PLA Spec", "description": "Description of PLAspec", "href": "https://{FusionAppsHost}/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogManagement/v1/pricingLogicAlgorithmSpecification/PLAspec1", "version": "1.0", "lifecycleStatus": "In design", "created": "2025-02-17T12:53:28.000Z", "createdBy": "booth", "lastUpdate": "2025-02-17T12:53:28.047Z", "lastUpdatedBy": "booth", "@type": "PricingLogicAlgorithmSpecificationOracle", "@baseType": "PricingLogicAlgorithmSpecification", "@schemaLocation": "https://{FusionAppsHost}/CatalogManagement/schema/oracle/PricingLogicAlgorithmSpecificationOracle.yml", "versionState": 0, "plaSpecCharacteristic": [ { "name": "Colour", "description": "Phone Colour", "valueType": "STRING", "@type": "PLASpecCharacteristic", "extensible": false, "configurable": true, "isUnique": true, "minCardinality": 1, "maxCardinality": 1 } ] }