Mapping of REST services to BOD services
The following sections detail how the REST resource method names relate to specific BOD services.
AssignedCouponHandler
- REST API:
assigned_coupon - BOD noun: Order
| Resource Method Name | BOD Service Mapping |
|---|---|
| getAssignedCouponInfo | BOD: GetOrderAccess Profile: IBM_DetailsAction Expression: {ibmord.isCurrentShoppingCart='true'}/Order/OrderItem |
| applyCoupon | BOD: ProcessOrderAction Code:
ApplyCouponAction Expression:
/Order BOD:ProcessOrderAction Code: CalculateInternallyAction Expression: /Order |
| removeCoupon | BOD: ProcessOrderAction Code:
RemoveCouponAction Expression: /Order BOD: ProcessOrderAction Code: CalculateInternallyAction Expression: /Order |
AssignedPromotionCodeHandler
- REST API:
assigned_promotion_code - BOD noun: Order
| Resource Method Name | BOD Service Mapping |
|---|---|
| getAssignedPromotioncodeInfo | BOD: GetOrderAccess Profile: IBM_DetailsAction Expression: {ibmord.isCurrentShoppingCart='true'}/Order/OrderItem |
| applyPromotioncode | BOD: ProcessOrderAction Code:
ApplyPromotionCodeAction Expression: /Order BOD: ProcessOrderAction Code: CalculateInternallyAction Expression: /Order |
| removePromotionCode | BOD: ProcessOrderAction Code:
RemovePromotionCodeAction Expression: /Order BOD: ProcessOrderAction Code: CalculateInternallyAction Expression: /Order |
AssociatedPromotionHandler
- REST API:
associated_promotion - Data bean: CalculationCodeListDataBean
| Resource Method Name | BOD Service Mapping |
|---|---|
| findPromotionList | Not applicable. Calls the CalculationCodeListDataBean data bean. |
CartHandler
| Resource Method Name | BOD Service Mapping |
|---|---|
| getCart | BOD: GetOrderAccess Profile: IBM_DetailsAction Expression: {ibmord.isCurrentShoppingCart='true'}/Order/OrderItem |
| getUsableShippingInfo | BOD: GetOrderAccess Profile: IBM_DetailsAction
Expression: {ibmord.isCurrentShoppingCart='true'}/Order/OrderItem BOD: GetOrderAccess Profile: IBM_UsableShippingInfo /Order[OrderIdentifier[(UniqueID='$OrderID$')]] |
| getUsablePaymentInfo | BOD: GetOrderAccess Profile: IBM_DetailsAction
Expression: {ibmord.isCurrentShoppingCart='true'}/Order/OrderItem BOD: GetOrderAccess Profile: IBM_UsablePaymentInfoAction Expression: /Order[OrderIdentifier[(UniqueID='$OrderID$')]] |
| applyCheckoutProfile | BOD: GetOrderAccess Profile: IBM_SummaryAction
Expression: /Order[OrderStatus[(Status='Q')]] BOD: GetOrderAccess Profile: IBM_DetailsAction Expression: {ibmord.isCurrentShoppingCart='true'}/Order/OrderItem BOD: ProcessOrderAction Code: CheckoutAction Expression: {_ord.usingProfile='true'}/Order |
| addOrderItem | BOD: ChangeOrder Action Code: CreateAction Expression: /Order/OrderItem |
| udpateOrderItem | BOD: ChangeOrder Action Code: UpdateAction Expression: /Order/OrderItem |
| cancelOrderInCart | BOD: ProcessOrder Action Code: CancelAction Expression: /Order |
| preCheckout | BOD: ProcessOrder Action Code: PrepareAction Expression: /Order |
| checkOut | BOD: ProcessOrder Action Code: SubmitAction Expression: /Order |
| lockCart | BOD: ProcessOrder Action Code: LockAction Expression: /Order |
| unlockCart | BOD: ProcessOrder Action Code: UnlockAction Expression: /Order |
| getAllowableShippingModes | Not applicable. Calls an AccessBean to get the allowable shipping modes. |
CouponHandler
- REST API:
coupon - BOD noun: WalletItem
| Resource Method Name | BOD Service Mapping |
|---|---|
| getCoupon | BOD: GetWalletItemAccess Profile: IBM_Store_DetailsAction Expression: /WalletItem[Data[Status='0'] and Type='Coupon' and WalletItemIdentifier/ExternalIdentifier/WalletIdentifier[UniqueID='$uniqueId$']] |
| deleteCouponById | BOD: ProcessWalletItemAction Code: DeleteAction Expression:/WalletItem |
ESpotDataHandler
- REST API:
espot - BOD noun: MarketingSpotData
| Resource Method Name | BOD Service Mapping |
|---|---|
| findByName | BOD: GetMarketingSpotDataAccess Profile:
IBM_Store_AllAction Expression:
{_wcf.ap=$accessProfile$ |
| findByNameWithCategory | BOD: GetMarketingSpotDataAccess Profile:
IBM_Store_AllAction Expression:
{_wcf.ap=$accessProfile$ |
| findByNameWithProduct | BOD: GetMarketingSpotDataAccess Profile:
IBM_Store_AllAction Expression:
{_wcf.ap=$accessProfile$ |
EventHandler
- REST API:
Event - BOD noun: MarketingTrigger
| Resource Method Name | BOD Service Mapping |
|---|---|
| triggerMarketing | BOD: ProcessMarketingTriggerAction Code: EvaluateAction Expression: {_mkt.triggerParameters='DM_ReqCmd=$commandName$&nvp1=value1&nvp1=value2_mkt.endTriggerParameters'}/MarketingTrigger |
GeoNodeHandler
| Resource Method Name | BOD Service Mapping |
|---|---|
| findTopGeoNodes (site level search) | BOD: GetGeoNodeAccess Profile: IBM_Store_AllAction Expression: /GeoNode[@topGeoNode='true'] |
| findTopGeoNodes (store level search) | BOD: GetGeoNode Access Profile: IBM_Store_AllAction Expression: /GeoNode[@topGeoNode='true' and StoreIdentifier[UniqueID=$storeId$]] |
| findGeoByParentGeoId | BOD: GetGeoNode Access Profile: IBM_Store_AllAction Expression: /GeoNode[ParentGeoNodeIdentifier[UniqueID=$parentUniqueId$]] |
InventoryHandler
- REST API:
inventoryavailability - BOD noun: InventoryAvailability
| Resource Method Name | BOD Service Mapping |
|---|---|
| getInventoryAvailabilityByProductId | BOD: GetInventoryAvailabilityAccess Profile: IBM_Store_DetailsAction expression: 1. /InventoryAvailability[InventoryAvailabilityIdentifier/ExternalIdentifier[CatalogEntryIdentifier[(UniqueID=$uniqueId$)] and OnlineStoreIdentifier[(UniqueID=$uniqueId$)]]] |
OrderHandler
| Resource Method Name | BOD Service Mapping |
|---|---|
| findOrderHistory | BOD: GetOrderAccess Profile: IBM_SummaryAction Expression: /Order[OrderStatus[(status='$OrderStatus$')]] |
| findByOrderId | BOD: GetOrderAccess Profile: IBM_DetailsAction Expression: /Order[OrderIdentifier[(UniqueID='$orderID$')]] |
| findByStatus | BOD: GetOrderAccess Profile: IBM_SummaryAction Expression: /Order[OrderStatus[(status='$OrderStatus$')]] |
PaymentInstructionHandler
- REST API:
payment_instruction - BOD noun: Order
| Resource Method Name | BOD Service Mapping |
|---|---|
| getPaymentInfo | BOD: GetOrderAccess Profile: IBM_DetailsAction Expression: {ibmord.isCurrentShoppingCart='true'}/Order/OrderItem |
| addPaymentInstruction | BOD: ChangeOrderAction Code: CreateActionExpression: /Order/OrderPaymentInfo/PaymentInstruction |
| updatePaymentInstruction | BOD: ChangeOrderAction Code: UpdateActionExpression: /Order/OrderPaymentInfo/PaymentInstruction |
| deletePaymentInstruction | BOD: ChangeOrderAction Code: DeleteActionExpression: /Order/OrderPaymentInfo/PaymentInstruction |
| deleteAllPaymentInstructions | BOD: ChangeOrderAction Code: DeleteActionExpression: /Order/OrderPaymentInfo/PaymentInstruction |
PersonHandler
| Resource Method Name | BOD Service Mapping |
|---|---|
| findPersonBySelf | BOD: GetPersonAccess Profile: IBM_AllActionExpression: {self=true}/Person |
| registerPerson | BOD: ProcessPersonAction Code:
RegisterActionExpression: /Person BOD: ProcessPersonAction Code: AuthenticatePassword |
| updatePerson | BOD: ChangePersonAction Code: UpdateActionExpression: /Person |
| deleteContextAttributeForPerson | BOD: ChangePersonAction Code: DeleteActionExpression: /Person/ContextAttribute |
PromotionHandler
| Resource Method Name | BOD Service Mapping |
|---|---|
| getPromotionsByQuery | BOD: GetPromotionAccess Profile: IBM_Admin_DetailsAction Expression: /Promotion |
| getPromotionsByQuery?q=byName | BOD: GetPromotionAccess Profile: IBM_Admin_DetailsAction Expression: /Promotion[search(contains(AdministrativeName, $qName$))] |
| getPromotionByID | BOD: GetPromotionAccess Profile: IBM_Admin_DetailsAction Expression: /Promotion[PromotionIdentifier[(UniqueID='$promotionId$')]] |
SegmentHandler
- REST API:
segment - BOD noun: MemberGroup
| Resource Method Name | BOD Service Mapping |
|---|---|
| checkIsInSegmentByUserId | BOD: GetMemberGroupAccess Profile: IBM_Admin_DetailsAction Expression: /MemberGroup[MemberGroupIdentifier[UniqueID='$memberGroupID$'] and IncludedPerson[UniqueID='$personID$']] |
| getCustomerSegment | BOD: GetMemberGroupAccess Profile: IBM_Admin_DetailsAction Expression:ByName: /MemberGroup[search(contains(MemberGroupIdentifier[ExternalIdentifier[Name="$name$" and Usage="GeneralPurpose"]]ByUserId: /MemberGroup[IncludedPerson[UniqueID="$UserID$"] and Usage="-1"]ByPersonalizationId: /MemberGroup[IncludedPerson[UniqueID="$personID$"] and Usage="-1"]ByStore: /MemberGroup[Usage='GeneralPurpose'] |
| getCustomerSegmentById | BOD: GetMemberGroupAccess Profile: IBM_Admin_DetailsAction Expression: /MemberGroup[MemberGroupIdentifier[(UniqueID='$memberGroupID$')]] |
ShippingInfoHandler
- REST API:
shipping_info - BOD noun: Order
| Resource Method Name | BOD Service Mapping |
|---|---|
| getShippingInfo | BOD: GetOrderAccess Profile: IBM_DetailsAction Expression:{ibmord.isCurrentShoppingCart='true'}/Order/OrderItem |
| updateOrderShippingInfo | BOD: ChangeOrderAction Code: UpdateAction Expression: /Order/OrderItem/OrderItemShippingInfo |
SpotHandler
- REST API:
spot - BOD noun: MarketingSpot
| Resource Method Name | BOD Service Mapping |
|---|---|
| findSpotsByQuery?q=byType | BOD: GetMarketingSpotAccess Profile: IBM_Admin_DetailsAction Expression: /MarketingSpot[Usage='$qType$'] |
| findSpotsByQuery?q=byTypeAndName | BOD: GetMarketingSpotAccess Profile: IBM_Admin_DetailsAction Expression: /MarketingSpot[Usage='$qType$' and search(contains(MarketingSpotIdentifier/ExternalIdentifier/Name, '$qName$') or contains(Description, '$qName$'))] |
| findSpotByID | BOD: GetMarketingSpotAccess Profile: IBM_Admin_DetailsAction Expression: /MarketingSpot[MarketingSpotIdentifier[(UniqueID='$spotId$')]] |
StoreLocatorHandler
- REST API:
storelocator - BOD nouns: GeoNode, PhysicalStore
| Resource Method Name | BOD Service Mapping |
|---|---|
| findGeoNodeByGeoLocation (site level search) | BOD: GetGeoNodeAccess Profile:
IBM_Store_AllAction Expression: /GeoNode[@type=$type$
and search(contains(Description/Name,$Name$))] BOD: GetPhysicalStoreAccess Profile: IBM_Store_DetailsAction Expression: /PhysicalStore[LocationInfo[GeoNodeIdentifier[UniqueID=$uniqueId$]]] |
| findGeoNodeByGeoLocation (store level search) | BOD: GetGeoNodeAccess Profile:
IBM_Store_AllAction Expression: /GeoNode[@type=$type$
and StoreIdentifier[UniqueID=$storeId$] and search(contains(Description/Name,$Name$))] BOD: GetPhysicalStoreAccess Profile: IBM_Store_DetailsAction Expression: /PhysicalStore[LocationInfo[GeoNodeIdentifier[UniqueID=$uniqueId$]]] |
| findGeoNodeByGeoId | BOD: GetPhysicalStoreAccess Profile: IBM_Store_DetailsAction Expression: /PhysicalStore[LocationInfo[GeoNodeIdentifier[UniqueID=$uniqueId$]]] |
| findByStoreUniqueId | BOD: GetPhysicalStoreAccess Profile: IBM_Store_DetailsAction Expression: /PhysicalStore[PhysicalStoreIdentifier[(UniqueID=$uniqueId$)]] |
| findStores | BOD: GetPhysicalStoreAccess Profile: IBM_Store_DetailsAction Expression: {_sto.radiusValue=$value$;_sto.radiusUom=$uom$;_sto.maxStores=$maxStores$}/PhysicalStore[LocationInfo[GeoCode[Latitude=$latitude$ and Longitude=$longitude$]] and StoreIdentifier[UniqueID=$storeId$]] |
WishlistHandler
| Resource Method Name | BOD Service Mapping |
|---|---|
| findWishlist | BOD: GetPerson Access Profile:
IBM_AllAction Expression: {self=true}/Person BOD: GetGiftListAccess Profile: IBM_Store_GiftListSummaryAndItemsAction Expression: /GiftList[Registrant[PersonIdentifier[UniqueID=]] and Registry=] |
| findWishlistByUserId_default | BOD: GetPersonAccess Profile: IBM_AllAction
Expression: {self=true}/Person BOD: GetGiftListAccess Profile: IBM_Store_GiftListSummaryAndItemsAction Expression: /GiftList[Registrant[PersonIdentifier[UniqueID=]] and Registry= and (State=)] |
| findWishlistByExternalId | BOD: GetGiftListAccess Profile:
IBM_Store_GiftListSummaryAndItemsAction Expression: GiftList[GiftListIdentifier[GiftListExternalIdentifier[(ExternalIdentifier=)]]] BOD: GetGiftListAccess Profile: IBM_Store_GiftListSummaryAndItemsAction Expression: /GiftList[AccessSpecifier[GuestAccessKey= or RegistryAccessKey=] and GiftListIdentifier[GiftListExternalIdentifier[ExternalIdentifier=]]] |
| createWishlist | BOD: ProcessGiftListAction Code: CreateAction Expression: /GiftList[1] |
| updateWishlist (when addItem=true) | BOD: ChangeGiftListAction Code: AddAction Expression: /GiftList[] /GiftList[]/Item[] |
| updateWishlist | BOD: ChangeGiftListAction Code: ChangeAction Expression: /GiftList[] /GiftList[]/Item[] /GiftList[]/Description |
| deleteWishlist | BOD: ProcessGiftListAction Code: DeleteAction Expression: /GiftList[1] |