shopee-client
Version:
Shoppe Open API Client
236 lines (235 loc) • 10.8 kB
TypeScript
import BaseModule from "../BaseModule";
import DeleteItemResponse from "./response/item/DeleteItemResponse";
import { ItemUnlist } from "./request/item/UnlistRequest";
import UnlistResponse from "./response/item/UnlistResponse";
import getCategoryRequest from "./request/get/getCategoryRequest";
import GetCategoryReponse from "../category/response/getCategoryResponse";
import GetAttributeRequest from "./request/get/GetAttributeRequest";
import GetAttributeResponse from "./response/get/GetAttributeResponse";
import AddVariantRequest from "./request/variant/AddVariantRequest";
import AddVariantResponse from "./response/variant/AddVariantResponse";
import AddItemRequest from "./request/item/AddItemRequest";
import AddItemResponse, { Item } from "./response/item/AddItemResponse";
import deleteVariantRequest from "./request/variant/deleteVariantRequest";
import deleteVariantResponse from "./response/variant/deleteVariantResponse";
import GetItemListRequest from "./request/get/GetItemListRequest";
import GetItemListReponse from "./response/get/GetItemListResponse";
import getItemDetailResponse from "./response/get/getItemDetailResponse";
import updateItemResponse from "./response/item/updateItemResponse";
import AddItemImageRequest from "./request/img/AddItemImageRequest";
import AddItemImageResponse from "./response/img/AddItemImageResponse";
import UpdateItemImgRequest from "./request/img/UpdateItemImgRequest";
import UpdateItemImgResponse from "./response/img/UpdateItemImgResponse";
import InsertItemImgRequest from "./request/img/InsertItemImgRequest";
import InsertItemImgResponse from "./response/img/InsertItemImgResponse";
import DeleteItemImgRequest from "./request/img/DeleteItemImgRequest";
import DeleteItemImgResponse from "./response/img/DeleteItemImgResponse";
import UpdatePriceResponse from "./response/item/UpdatePriceResponse";
import UpdateStockResponse from "./response/item/UpdateStockResponse";
import UpdateVariantPriceRequest from "./request/variant/UpdateVariantPriceRequest";
import UpdateVariantPriceResponse from "./response/variant/UpdateVariantPriceResponse";
import UpdateVariantStockRequest from "./request/variant/UpdateVariantStockRequest";
import UpdateVariantStockResponse from "./response/variant/UpdateVariantStockResponse";
import UpdatePriceBatchRequest from "./request/batch/UpdatePriceBatchRequest";
import UpdatePriceBatchResponse from "./response/batch/UpdatePriceBatchResponse";
import UpdateStockBatchRequest from "./request/batch/UpdateStockBatchRequest";
import UpdateStockBatchResponse from "./response/batch/UpdateStockBatchResponse";
import UpdateVariantPriceBatchRequest from "./request/batch/UpdateVariantPriceBatchRequest";
import UpdateVariantPriceBatchResponse from "./response/batch/UpdateVariantPriceBatchResponse";
import UpdateVariantStockBatchRequest from "./request/batch/UpdateVariantStockBatchRequest";
import InitTier2Request from "./request/tier2/InitTier2Request";
import InitTier2Response from "./response/tier2/InitTier2Response";
import AddTierVariationRequest from "./request/tier2/AddTierVariationRequest";
import AddTierVariationResponse from "./response/tier2/AddTierVariationResponse";
import GetVariationTierResponse from "./response/tier2/GetVariationTierResponse";
import UpdateTierVariationRequest from "./request/tier2/UpdateTierVariationRequest";
import UpdateTierVariationResponse from "./response/tier2/UpdateTierVariationResponse";
import UpdateTierIndexResponse from "./response/tier2/UpdateTierIndexResponse";
import UpdateTierIndexRequest from "./request/tier2/UpdateTierIndexRequest";
import BoostResponse from "./response/boost/BoostResponse";
import GetBoostResponse from "./response/boost/GetBoostResponse";
import SetItemInstallmentRequest from "./request/item/SetItemInstallmentRequest";
import SetItemInstallmentResponse from "./response/item/SetItemInstallmentResponse";
import GetPromotionInfoRequest from "./request/get/GetPromotionInfoRequest";
import GetPromotionInfoResponse from "./response/get/GetPromotionInfoResponse";
import GetRecommendCategoryResponse from "./response/get/GetRecommendCategoryResponse";
import ReplyCommentRequest from "./request/comment/ReplyCommentRequest";
import ReplyCommentResponse from "./response/comment/ReplyCommentResponse";
export default class ItemModule extends BaseModule {
/**
* Use this call to add a product item. Should get dependency by calling below API first
* shopee.item.GetCategories
* shopee.item.GetAttributes
* shopee.logistics.GetLogistics
* @param request
*/
addItem(request: AddItemRequest): Promise<AddItemResponse>;
/**
* Use this call to delete a product item.
* @param item_id id of an item.
*/
deleteItem(item_id: number): Promise<DeleteItemResponse>;
/**
* Use this api to unlist or list items in batch.
* @param request
*/
unlistItem(items: ItemUnlist[]): Promise<UnlistResponse>;
/**
* Use this call to get categories of product item
* @param request
*/
getCategory(request?: getCategoryRequest): Promise<GetCategoryReponse>;
/**
* Use this call to get attributes of product item
* @param request
*/
getAttributes(request: GetAttributeRequest): Promise<GetAttributeResponse>;
/**
* Use this call to add item variations, it only supports non-tier-variation items.
* @param request
*/
addVariant(request: AddVariantRequest): Promise<AddVariantResponse>;
/**
* Use this call to delete item variation
* @param request
*/
deleteVariant(request: deleteVariantRequest): Promise<deleteVariantResponse>;
/**
* Use this call to get a list of items
* @param request
*/
getItemsList(request: GetItemListRequest): Promise<GetItemListReponse>;
/**
* Use this call to get detail of item
* @param request
*/
getItemDetail(item_id: number): Promise<getItemDetailResponse>;
/**
* Use this call to update a product item.
* Should get dependency by calling below API first shopee.item.GetItemDetail
* @param request
*/
updateItem(item: Item): Promise<updateItemResponse>;
/**
* Use this call to add product item images.
* @param request
*/
addItemImg(request: AddItemImageRequest): Promise<AddItemImageResponse>;
/**
* Override and update all the existing images of an item.
* @param request
*/
updateItemImg(request: UpdateItemImgRequest): Promise<UpdateItemImgResponse>;
/**
* Use this call to add one item image in assigned position.
* @param request
*/
insertItemImg(request: InsertItemImgRequest): Promise<InsertItemImgResponse>;
/**
* Use this call to delete a product item image.
* @param request
*/
deleteItemImg(request: DeleteItemImgRequest): Promise<DeleteItemImgResponse>;
/**
* Use this call to update item price
* @param request
*/
updatePrice(item_id: number, price: number): Promise<UpdatePriceResponse>;
/**
* Use this call to update item stock
* @param request
*/
updateStock(item_id: number, stock: number): Promise<UpdateStockResponse>;
/**
* Use this call to update item variation price
* @param request
*/
updateVariationPrice(request: UpdateVariantPriceRequest): Promise<UpdateVariantPriceResponse>;
/**
* Use this call to update item variation stock
* @param request
*/
updateVariationStock(request: UpdateVariantStockRequest): Promise<UpdateVariantStockResponse>;
/**
* Update items price in batch.
* @param request
*/
updatePriceBatch(request: UpdatePriceBatchRequest): Promise<UpdatePriceBatchResponse>;
/**
* Update items stock in batch.
* @param request
*/
updateStockBatch(request: UpdateStockBatchRequest): Promise<UpdateStockBatchResponse>;
/**
* Update variations price in batch.
* @param request
*/
updateVariationPriceBatch(request: UpdateVariantPriceBatchRequest): Promise<UpdateVariantPriceBatchResponse>;
/**
* Update variations price in batch.
* @param request
*/
updateVariationStockBatch(request: UpdateVariantStockBatchRequest): Promise<UpdateVariantStockBatchRequest>;
/**
* Initialize a non-tier-variation item to a tier-variation item, upload variation image and initialize stock and price for each variation.
* This API cannot edit existed tier_variation and variation price/stock.
* @param request
*/
initTierVariation(request: InitTier2Request): Promise<InitTier2Response>;
/**
* Use this api to add new tier variations in batch.
* Tier variation index of variations in the same item must be unique.
* @param request
*/
addTierVariation(request: AddTierVariationRequest): Promise<AddTierVariationResponse>;
/**
* Use this call to get tier-variation basic information under an item
* @param item_id unique identifier id.
*/
getTierVariation(item_id: number): Promise<GetVariationTierResponse>;
/**
* Use this api to update tier-variation list or upload variation image of a tier-variation item.
* @param request
*/
updateTierVariation(request: UpdateTierVariationRequest): Promise<UpdateTierVariationResponse>;
/**
* Use this api to update existing tier index under the same variation_id.
* @param request
*/
updateTierVariationIndex(request: UpdateTierIndexRequest): Promise<UpdateTierIndexResponse>;
/**
* Use this api to boost multiple items at once.
* @param request
*/
boostItem(item_id: number[]): Promise<BoostResponse>;
/**
* Use this api to get all boosted items.
* @param request
*/
getBoostItem(): Promise<GetBoostResponse>;
/**
* Only for TW whitelisted shop. Use this API to set the installment tenures of items.
* @param request
*/
setInstallment(request: SetItemInstallmentRequest): Promise<SetItemInstallmentResponse>;
/**
* Use this api to get ongoing and upcoming promotions.
* @param request
*/
getPromotionInfo(request: GetPromotionInfoRequest): Promise<GetPromotionInfoResponse>;
/**
* Use this API to get recommended category ids according to item name.
* @param name title of product
*/
getRecommendCategory(name: string): Promise<GetRecommendCategoryResponse>;
/**
* Use this api to get comment by shopid/itemid/comment_id
* @param name title of product
*/
getComment(name: string): Promise<GetRecommendCategoryResponse>;
/**
* Use this api to reply comments from buyers in batch
* @param request
*/
replyComment(request: ReplyCommentRequest): Promise<ReplyCommentResponse>;
}