4 Create Catalog Entities

Use REST APIs to Create Catalog Entities

Use this topic to understand the REST endpoints that you can use to create and manage catalog entities using REST APIs.

Note:

For information on the Launch REST APIs, see REST API Reference for Launch Cloud Service.

The default API language provided to you is English. However, you can select another language before you create the catalog entities. For example, if you choose Korean, set the language header as Accept-Language: KO. See Set General Preferences for All Users.

Lifecycle of all the Launch entities are managed through initiatives associated with the entities. Most entities follow the standard lifecycle phase, which is, design, test, and launch. Revise and then back to test and launch.

It's recommended to not launch or revise the following entities in Launch Cloud Service as Launch is not the primary source of the following entities:

  • Balance Element
  • Price Tag
  • Tax Service Provider
  • Zone Model
  • Value Map

Manage Lifecycle Configurations

You can create and configure lifecycle statuses in addition to the ones that are already shipped with the application but you can't change the behavior of the seeded statuses. For more information, see Manage Entity Lifecycle Using Initiatives.

Available REST endpoints are create, create or update, delete, get a lifecycle configuration, get all lifecycle configurations, and update a lifecycle configuration.

Manage Initiatives

You must use initiatives to group catalog entities and then publish the initiative to spoke systems. An initiative enables you to group and test all your product offers, activate them, and then finally launch these entities. Referencing an initiative is mandatory when creating catalog entities.

Available REST endpoints are create, create or update, delete, get one, get all, and update an initiative.

For information on how you work with the initiatives from the Launch UI, see Manage Initiatives.

Manage Balance Element

Balance element is the unit of measure for elements whose usage is measured. It can be of type currency or non-currency and specifies the rounding mode, consumption rules, decimal precision, and so on.

You must add balance elements before you start to create a price list. You must also create a balance element with currency type. A currency balance element is used in creating price lists and setting up prices on offers.

You can additionally create noncurrency balance elements which can be used to configure allowance resources used in setting up prices on offers. For the balance element payload and other Launch REST APIs, see REST API Reference for Launch Cloud Service.

Available REST endpoints are create, create or update, delete, get a balance element, get all balance elements, and update a balance element.

Manage Price Lists

A price list is a set of standard prices for products and services. You can use multiple price lists to offer separate prices for the same product.

You must have the price list set up to create offers with pricing models. You do this using the Launch user interface as follows:

  • You create the price list by going to Administration > Price Lists.
  • During price list creation, you specify the currency balance element created in the Manage Balance Element section in this topic.

You can also set up price lists using REST API end points. For information on the Launch REST APIs, see REST API Reference for Launch Cloud Service.

For information on how you work with pricing in the Launch application, see Pricing Overview.

Manage Price Tags

You can now add the price tag construct on product offering prices of simple offerings. You can use this price tag to put in an appropriate tag on a product offering price that can be used by downstream systems when performing price overrides, or to view them on invoices, or as a filter for adjustments. Price tags support the full entity lifecycle management just like other top-level entities.

Manage Tax Service Provider

A tax service provider represents simple and seller specific tax codes that are used in product offer pricing. Available REST endpoints are create, create or update, delete, get a tax service provider, get all tax service providers, and update a tax service provider.

Manage a Catalog and its Categories

After you create an initiative, you must associate the catalogs entities to the initiative to publish to spoke systems. Available REST endpoints are create, create or update, delete, get a catalog, get all catalogs, and update a catalog.

After you create a catalog, you must associate the categories inside the catalogs. You provide the category details as part of the category reference in the request body. Available REST endpoints are create, create or update, delete, get a category, get all categories, and update a category. For more information on catalogs and categories, see Create Catalogs and Categories.

Manage Product Lines

You can now associate the catalogs and categories to product lines.

Available REST endpoints are create, create or update, delete, get a product line, get all product lines, and update a product line.

For more information on product lines, see Product Lines Overview.

Manage Attributes

You can now configure attributes as top-level entities that can be reused in product specification and service specification characteristics. Attributes support the full entity lifecycle management just like other top-level entities.

The new REST API endpoint to create attributes - https:// <HOST_NAME>/crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1/attribute

Manage Service Specifications

Available REST endpoints are create, create or update, delete, get a service specification, get all service specifications, and update a service specification.

For information on how you work with the service specifications in the Launch application, see Manage Service Specifications.

Manage Usage Specifications

Available REST endpoints are create, create or update, delete, get a usage specification, get all usage specifications, and update a usage specification.

Manage Custom Profile Specifications

These are generic profile specifications with difference profile types used for various purposes.

For example, these can be used as a charging terms profile specification, suspension terms profile specification, renewal terms, common business configuration, return checklist, trade in, entity profile, standard zones, zone value maps, and so on.

Available REST endpoints are create, create or update, delete, get a customer profile specification, get all customer profile specifications, and update a customer profile specification.

Table 4-1 Custom Profile Specifications

Custom Profile Specifications Description

Manage Charging Terms and suspension terms

Charging Terms and Suspension Terms can be defined by creating custom profile specifications of type ‘CHARGING_TERM’ and ‘SUSPENSION_TERM’ respectively. You can also define the charging or suspensions terms for an offer by selecting the predefined charging or suspension term template from the Launch application UI. This enables the spoke systems to apply the same terms as configured in the chosen template during the charging or suspension scenarios. You can also create more templates using the format of the predefined template.

You must have the Communications Catalog Administrator job role to define the charging and suspension terms using the REST endpoint customProfileSpecification. You must also ensure to create the predefined term templates as part of the implementation.

To make these templates available in the UI, the life cycle status must be in Active state. To do this, run the PATCH method call on crmRestApi/atcProductCatalog/11.13.18.05/productCatalogRefernceManagement/v1/customProfileSpecification/{id}.

To know more about the charging and suspension term templates and other REST APIs, see REST API Reference for Launch Cloud Service.

You must have Communications Catalog Administrator job role to define the charging and suspension terms using the REST endpoint customProfileSpecifiction. The seeded term templates must be created as part of the implementation.

The lifecycleStatus must be Active to make these templates available in the UI. To do this, run PATCH method call on crmRestApi/atcProductCatalog/11.13.18.05/productCatalogReferenceManagement/v1/customProfileSpecification/{id} to set the lifecycle status to Active.

For the charging and suspension term templates and other REST APIs for Launch, see REST API Reference for Launch Cloud Service.

Manage Device Trade In

While creating a device trade-in program, you would specify the Device Specification using customProfileSpecification REST API with with profileType as TRADE_IN.

Manage Return Checklist

You can create the return checklists used in defining Trade In programs using a custom profile specification of type RETURN_CHECKLIST.

Manage Renewal Term

Renewal Terms can be defined using custom profile specification of profile type RENEWAL_TERM.

Manage Business Configuration

You can manage business configurations using the custom profile specification of profile type BUSINESS_CONFIG. To know more, see "Table A-27" section in Predefined Role Privilege for Entities.

Manage Entity Profile

Entity Profiles can be managed using the custom profile specification of profile type ENTITY_PROFILE. For more details, see "Table A-29" section in Predefined Role Privilege for Entities.

Manage Finance Plan

You can define a finance plan and manage the plan using the custom profile specification of profile type FINANCE_PLAN. You can also extend the finance plan configurations if required. To know more, see "Extend Finance Plan".

Manage Standard Zones

You can define standard zones by using the custom profile specification of profile type STANDARD_ZONE.

Manage Zone Value Maps

Zones value maps used in pricing can be defined using the custom profile specification of profile type ZONE_VALUE_MAP. See "Table A-32" in Predefined Role Privilege for Entities.

Manage Customer Profile Specifications

The REST endpoints available are create, create or update, delete, get a customer profile specification, get all customer profile specifications, and update a customer profile specification.

Manage Product Specifications

You can now create your product specifications to create product offers. You can also associate specifications such as service, usage, and customer profile specifications to product specifications. Also, when you create a product specification, you can also define SKUs through REST endpoints. You can create SKU templates and SKUs for physical goods. SKU templates allow you to generate SKU numbers for the different combinations of product attributes. SKU numbers are used to group similar product definitions, such as, simple physical goods with variant attributes.

Available REST endpoints are create, create or update, delete, get a product specification, get all product specifications, and update a product specification.

For information on how you work with the product specifications in the Launch application, see Product Specification Overview.

Manage Product Offers

A product offer represents entities that are orderable from the provider of the catalog and includes pricing information. A product offer can be of the type simple or bundle and can be in the form of devices and accessories or a service.

Available REST endpoints are create, create or update, delete, get a product offering, get all product offerings, and update a product offering.

Ensure the following when creating the request body for the REST PUT or POST operation to create a product offering:

  • Provide the name of the product offering.

  • Provide the ID. This is optional but recommended. The application generates this ID if you don't provide it.

  • Lifecycle status defaults to In design when a new offer is created with version 1.0.

Also, if you need to associate terms, rules, or catalog images to a product offering, you can do that by adding attachment references in the product offering POST/PUT request body.

For information on how you work with offerings in the Launch application, see Manage Product Offers.

Manage Product Offer Prices

After you create a product offer, you must add a price to it by either associating an existing price from the price list or by creating a new price. Product offering price is an amount, usually of money, that's asked for or allowed when a product offering is bought, rented, or leased. Available REST endpoints are create, create or update, delete, get a product offering price, get all product offering prices, and update a product offering price.

Manage Constraints

Constraint represents a policy or rule that you want to be applied to an entity or entity specification for pricing.

Available REST endpoints are create, create or update, delete, get a constraint, get all constraints, and update a constraint by ID.

Manage Pricing Logic Algorithm (PLA) and PLA Specifications

You can define PLAs use the characteristics defined within them while creating a product offer. The PLA specifications resource lets you view, create, update, and delete PLA specifications. Available REST endpoints are create, create or update, delete, get a PLA specification, get all PLA specifications, and update a PLA specification.

A PLA is an instance of PLA specifications and uses black-box pricing algorithm to calculate the final price of the product. Available REST endpoints are create, create or update, delete, get a PLA, get all PLAs, and update a PLA specification.

Manage Promotions

Promotions are awards, discounts, or reductions provided to customers. Available REST endpoints are create, create or update, delete, get a promotion, get all promotion, and update a promotion. For more information about promotions, see Promotions Overview.

Manage Rules

Rules are conditions that you can set for product offers, product lines, and product specifications. You can add or find the list of operators available for rules in ORA_ATC_OPRTOR lookup type.

Available REST endpoints are create, create or update, delete, get a rule, get all rules, update a rule, and update or create rules in bulk. For more information about rules in the Launch application, see Rules Overview.

Manage Entitlements

Entitlements are part of the sales/service agreement which includes information about the special pricing which can be applied against the sales products. This is referred as entitlement-based pricing.

Available REST endpoints are create, create or update, delete, get an entitlement, get all entitlements and update an entitlement.

Manage Import and Export Jobs

You can import catalogs into Launch application. Available REST endpoints are create and get an import job. Additionally, you can also export catalog entities. For the latter, the available REST endpoints are ExportJob Get By Id, ExportJob Post, and ExportJobGet. See Import Catalog Entities.

Manage Digital Assets

You can manage your digital assets and content files through Oracle Content Management (OCM) cloud, which is the digital assets repository for Launch Cloud Service. Available REST endpoints are create or update a schema file, create or upload an attachment file, download file attachment, download schema file, get folder contents, upload file attachment, upload schema file. See "Set Up Oracle Content Management".

Publish your Catalog Definitions

To be able to publish initiatives to spoke systems, you must register destinations or spoke systems that can receive the publishing events. Available REST endpoints are create, create or update, delete, get a destination, get all destinations, and update a destination.

After the destinations are set, you can now create the initiative publish event. The REST endpoint that the application provides you is: create.

For an example of a notification listener that receives the notification ProjectPublishEvent, see REST API Reference for Launch Cloud Service.

You can create publishing acknowledgments after creating a publishing job. This helps you to receive the acknowledgment from the spoke system and update the publishing status corresponding to the spoke system. The available REST endpoint is create.