REST over HTTP/HTTPS

REST over HTTP service calls use the standard web services message format. The integration pattern is as follows:

REST over HTTP/HTTPS Integration Pattern

In the REST over HTTP/HTTPS pattern, a service client makes a service call to the Offer and Price Engine services component. The service calls the appropriate operation and performs the required operation before sending a reply back to the calling application.

REST Services

TIBCO Offer and Price Engine consumes online and offline model loading. In the offline model loading, different models (for example: price, product, category, discount, rule, and offer) generated from modeling products, such as TIBCO Product and Service Catalog are loaded through catalog service in pluggable cache and TIBCO Offer and Price Engine reads those models from the pluggable cache object library.

Swagger UI Usage

The Swagger URL for various services are as follows:

Service Swagger URL
authorization http://OPES_SERVER_IP:9091/swagger-ui/index.html
configurator http://OPES_SERVER_IP:9090/swagger-ui/index.html
configurator-ui http://OPES_SERVER_IP:9104
catalog-service http://OPES_SERVER_IP:9092/swagger-ui/index.html
opes Endpoints http://OPES_SERVER_IP:8090/swagger-ui/index.html
shoppingcart http://OPES_SERVER_IP:8091/swagger-ui/index.html
offersearchindex-service http://OPES_SERVER_IP:8093/swagger-ui/index.html
recommendation-engine-api http://OPES_SERVER_IP:8095/swagger-ui/index.html
recommendation-engine-data-mapper http://OPES_SERVER_IP:8096/swagger-ui/index.html
recommendation-engine-data-store http://OPES_SERVER_IP:8094/swagger-ui/index.html
recommendation-engine-core http://OPES_SERVER_IP:8092

Endpoint details with various operations:

Service

EndPoint

Method

Description

Offer and Price Engine service <protocol>://<host>:<port>//opes/api/v1/offers/categories POST Operation getCategories
<protocol>://<host>:<port>/opes/api/v1/offers/eligible POST Operation getEligibleOffers
<protocol>://<host>:<port>/opes/api/v1/offers/validate POST Operation validateOffers
<protocol>://<host>:<port>/opes/api/v1/offers/price/info POST Operation getPriceInformation
<protocol>://<host>:<port>/opes/api/v1/offers/prices POST Operation getPrices
<protocol>://<host>:<port>/opes/api/v1/offers/products POST Operation getProductInformation
Configuration service <protocol>://<host>:<port>/v1/configuration/{applicationid} GET Operation Get Configuration
<protocol>://<host>:<port>/v1/configuration/{applicationid} POST Operation Add Configuration
<protocol>://<host>:<port>/v1/configuration/{applicationid} PUT Operation Update Configuration
<protocol>://<host>:<port>/v1/configuration/{applicationid} DELETE Operation Delete Configuration
<protocol>://<host>:<port>/v1/configuration/replicateTenantProperties POST Operation Replicate Tenant Properties
<protocol>://<host>:<port>/v1/configuration/uploadConfigFile/{applicationid} POST Operation Upload Configuration File
Catalog service <protocol>://<host>:<port>/v1/productmodel POST Operation SubmitProductModel
<protocol>://<host>:<port>/v1/productmodel/bulk DELETE Operation PurgeProductModels
<protocol>://<host>:<port>/v1/productmodel/all GET operation get all productmodels
<protocol>://<host>:<port>/v1/productmodel/bulk GET operation get bulk productmodels
<protocol>://<host>:<port>/v1/productmodel/bulk POST Operation SubmitProductModels

<protocol>://<host>:<port>/v1/categoryModel

POST

Operation Submit category Model

<protocol>://<host>:<port>/v1/categoryModel/bulk

GET

Operation Get Bulk Category Model

<protocol>://<host>:<port>/v1/categoryModel/bulk

POST

Operation Submit Bulk Categroy Model

<protocol>://<host>:<port>/v1/categoryModel/bulk

DELETE

Operation Delete Bulk Category Model

<protocol>://<host>:<port>/v1/categoryModel/All GET Get All Category Model

<protocol>://<host>:<port>/v1/discountModel

POST

Operation Submit Single Discount Model

<protocol>://<host>:<port>/v1/discountModel/bulk

GET

Operation Get Bulk Discount Model

<protocol>://<host>:<port>/v1/discountModel/bulk

POST

Operation Submit Bulk Discount Model

<protocol>://<host>:<port>/v1/discountModel/all

GET

Operation Get All Discount Model

<protocol>://<host>:<port>/v1/discountModel/bulk

DELETE

Operation Delete Bulk Discount Model

<protocol>://<host>:<port>/v1/offerIdMappings

POST

Operation Submit Bulk Offers
<protocol>://<host>:<port>/v1/offerIdMappings

DELETE

Operation Purge All Offers
<protocol>://<host>:<port>/v1/offerIdMappings/all GET Get All offer Model
<protocol>://<host>:<port>/v1/priceModel

POST

Operation Submit Single Price Model
<protocol>://<host>:<port>/v1/priceModel/bulk

POST

Operation Get Bulk Price Model
<protocol>://<host>:<port>/v1/priceModel/bulk

POST

Operation Submit Bulk Price Models
<protocol>://<host>:<port>/v1/priceModel/bulk

DELETE

Operation Delete Bulk Price Models
<protocol>://<host>:<port>/v1/priceModel/all

GET

Operation Get All Price Model
<protocol>://<host>:<port>/v1/ruleModel

POST

Operation Submit Single Rule Model
<protocol>://<host>:<port>/v1/ruleModel/bulk

GET

Operation Get Bulk Rule Model
<protocol>://<host>:<port>/v1/ruleModel/bulk

POST

Operation Submit Bulk Rule Models
<protocol>://<host>:<port>/v1/ruleModel/bulk

DELETE

Operation Delete Bulk Rule Models
Offer search index service <protocol>://<host>:<port>/v1/offers/search POST Operation searchOffers
Shopping Cart service <protocol>://<host>:<port>/opes/api/v1/shoppingCart GET Operation getShoppingCart
<protocol>://<host>:<port>/opes/api/v1/shoppingCart POST Operation createShoppingCart
<protocol>://<host>:<port>/opes/api/v1/shoppingCart/{id} GET Operation getShoppingCartById
prototype://<host>:<port>/opes/api/v1/shoppingCart/{id} DELETE Operation deleteShoppingCartById
<protocol>://<host>:<port>/opes/api/v1/shoppingCart/{id} PATCH Operation updateShoppingCart

Authorization service

<protocol>://<host>:<port>/v1/user

GET

Get user

<protocol>://<host>:<port>/v1/user

POST

Create user

<protocol>://<host>:<port>/v1/user

POST

Update user

<protocol>://<host>:<port>/v1/user

DELETE

Delete user

Recommendation Engine Data Mapper

<protocol>://<host>:<port>/v1/jsonDataMapper

<protocol>://<host>:<port>/v1/csvDataMapper

POST Submit data mapper

<protocol>://<host>:<port>/v1/publishJsonData

<protocol>://<host>:<port>/v1/publishCsvData

POST Publish data mapper
Recommendation Engine Core <protocol>://<host>:<port>/v1/findAssociationRules/sync GET Find association rules
<protocol>://<host>:<port>/v1/calculateProductsSimilarity/sync GET Get similar products
<protocol>://<host>:<port>/v1/schedule/job/start POST Schedule the job start time for each tenant
<protocol>://<host>:<port>/v1/schedule/job/stop POST Schedule the job stop time for each tenant
Recommendation Engine Data Store <protocol>://<host>:<port>/v1/pmml/{version} PUT Make specific version of PMML Model file active
<protocol>://<host>:<port>/v1/pmml/{version} DELETE Delete specific version of PMML Model file
<protocol>://<host>:<port>/v1/pmml GET Download All PMML Model Files for Tenant ID
<protocol>://<host>:<port>/v1/pmml POST Upload PMML file
<protocol>://<host>:<port>/v1/pmml/metadata GET Get metadata of All PMML Model Files for Tenant ID
<protocol>://<host>:<port>/v1/pmml/active GET Download Active PMML Model Files for Tenant ID
Recommendation Engine API <protocol>://<host>:<port>/v1/queryProductRecommendation GET List or find query product recommendation objects
<protocol>://<host>:<port>/v1/queryProductRecommendation POST Create query product recommendation
<protocol>://<host>:<port>/v1/queryProductRecommendation/{Id} GET List or find query product recommendation objects