shopee-v2-api
Version:
129 lines (116 loc) • 3.6 kB
JavaScript
/* -------------------------------------------------------------------------- */
/* Imports */
/* -------------------------------------------------------------------------- */
const _ = require('lodash');
/* -------------------------------------------------------------------------- */
/* Constants */
/* -------------------------------------------------------------------------- */
const {
constants
} = require('./constants');
/* -------------------------------------------------------------------------- */
/* Common / Auth */
/* -------------------------------------------------------------------------- */
const {
buildSignKey,
buildUrl,
get,
post,
RefreshToken
} = require('./auth');
/* -------------------------------------------------------------------------- */
/* API */
/* -------------------------------------------------------------------------- */
/* ------------------------------- Add on deal ------------------------------ */
/**
*
* @param {*} userShop
* @param {*} offset
* @param {*} pageSize
* @returns
*/
async function GetAddOnDealList(userShop, offset, pageSize) {
try {
// access token 유효 확인
let {
shop_id,
accessToken
} = await RefreshToken(userShop);
// uri
const uri = '/api/v2/add_on_deal/get_add_on_deal_list';
// sign key
const {
signKey,
currentTimeStamp
} = buildSignKey(uri, accessToken, shop_id);
// url
const url = buildUrl(uri, {
partner_id: constants.partnerId,
timestamp: currentTimeStamp,
sign: signKey,
access_token: accessToken,
shop_id: shop_id,
promotion_status: 'all',
page_no: offset,
page_size: pageSize
});
// request && response data
const responseData = await get(url);
return responseData;
} catch (err) {
throw err;
}
}
/**
* add on deal에서 삭제
* @param {*} userShop
* @param {*} addOneDealId
* @returns {*}
* ```json
* {
"message": "",
"request_id": "1d3223101a7841faadc7f29f903420f9",
"response": {
"add_on_deal_id": 11223123
},
"error": ""
*}
* ```
*/
async function DeleteAddOnDeal(userShop, addOneDealId) {
try {
// access token 유효 확인
let {
shop_id,
accessToken
} = await RefreshToken(userShop);
// uri
const uri = '/api/v2/add_on_deal/delete_add_on_deal';
// sign key
const {
signKey,
currentTimeStamp
} = buildSignKey(uri, accessToken, shop_id);
// url
const url = buildUrl(uri, {
partner_id: constants.partnerId,
timestamp: currentTimeStamp,
sign: signKey,
access_token: accessToken,
shop_id: shop_id
});
// request && response data
const responseData = await post(url, JSON.stringify({
add_on_deal_id: addOneDealId
}));
return responseData;
} catch (err) {
throw err;
}
}
/* --------------------------------- exports -------------------------------- */
module.exports = {
// add on deal
GetAddOnDealList,
DeleteAddOnDeal
};