LoyaltyAPIInterface
The LoyaltyApiInterface class defines the interface for creating, formatting, and sending REST requests to the Salesforce service. This class stores REST API call definitions for all Loyalty API.
LoyaltyAPIInterface
1public interface LoyaltyApiInterfaceMethod Summary
| Modifier and Type | Method | Method Detail | Description |
|---|---|---|---|
| abstract Result<EnrollmentResponse> | postEnrollment(@Url() String url, @Body() EnrollmentRequest json) | postEnrollment | Creates a POST request for an individual enrollment for the loyalty program. |
| abstract Result<MemberProfileResponse> | getMemberProfile(@Url() String url, @Query(value = "memberId") String memberId, @Query(value = "membershipNumber") String membershipNumber, @Query(value = "programCurrencyName") String programCurrencyName) | getMemberProfile | Retrieves profile details related to the member ID. |
| abstract Result<MemberBenefitsResponse> | getMemberBenefits(@Url() String url, @Query(value = "membershipNumber") String membershipNumber) | getMemberBenefits | Retrieves benefits related to the member ID. |
| abstract Result<TransactionsResponse> | getTransactions(@Url() String url, @Query(value = "pageNumber") Integer pageNumber, @Query(value = "journalTypeName") String journalTypeName, @Query(value = "journalSubTypeName") String journalSubTypeName, @Query(value = "periodStartDate") String periodStartDate, @Query(value = "periodEndDate") String periodEndDate) | getTransactions | Retrieves transactions related to the member. |
| abstract Result<PromotionsResponse> | getEligiblePromotions(@Url() String url, @Body() PromotionsRequest requestBody) | getEligiblePromotions | Retrieves promotions that a promotion is eligible to enroll for. |
| abstract Result<EnrollPromotionsResponse> | enrollInPromotion(@Url() String url, @Body() PromotionsRequest requestBody) | enrollInPromotion | Enrolls member in a promotion. |
| abstract Result<UnenrollPromotionResponse> | unenrollPromotion(@Url() String url, @Body() PromotionsRequest requestBody) | unenrollPromotion | Opts out a member from an available promotion. |
| abstract Result<VoucherResult> | getVouchers(@Url() String url, @Query(value = "voucherStatus") String voucherStatus, @Query(value = "pageNumber") Integer pageNumber, @Query(value = "productId") String productId, @Query(value = "productCategoryId") String productCategoryId, @Query(value = "productName") String productName, @Query(value = "productCategoryName") String productCategoryName) | getVouchers | Retrieves vouchers that are available to the program member. |
Example postEnrollment:
1@POST() abstract Result<EnrollmentResponse> postEnrollment(@Url() String url, @Body() EnrollmentRequest json)Example getMemberProfile:
1@GET() abstract Result<MemberProfileResponse> getMemberProfile(@Url() String url, @Query(value = "memberId") String memberId, @Query(value = "membershipNumber") String membershipNumber, @Query(value = "programCurrencyName") String programCurrencyName)Example getMemberBenefits:
1@GET() abstract Result<MemberBenefitsResponse> getMemberBenefits(@Url() String url, @Query(value = "membershipNumber") String membershipNumber)Example getTransactions:
1@GET() abstract Result<TransactionsResponse> getTransactions(@Url() String url, @Query(value = "pageNumber") Integer pageNumber, @Query(value = "journalTypeName") String journalTypeName, @Query(value = "journalSubTypeName") String journalSubTypeName, @Query(value = "periodStartDate") String periodStartDate, @Query(value = "periodEndDate") String periodEndDate)Example getEligiblePromotions:
1@POST() abstract Result<PromotionsResponse> getEligiblePromotions(@Url() String url, @Body() PromotionsRequest requestBody)Example enrollInPromotion:
1@POST() abstract Result<EnrollPromotionsResponse> enrollInPromotion(@Url() String url, @Body() PromotionsRequest requestBody)Example unenrollPromotion:
1@POST() abstract Result<UnenrollPromotionResponse> unenrollPromotion(@Url() String url, @Body() PromotionsRequest requestBody)Example getVouchers:
1@GET() abstract Result<VoucherResult> getVouchers(@Url() String url, @Query(value = "voucherStatus") String voucherStatus, @Query(value = "pageNumber") Integer pageNumber, @Query(value = "productId") String productId, @Query(value = "productCategoryId") String productCategoryId, @Query(value = "productName") String productName, @Query(value = "productCategoryName") String productCategoryName)