Products Functions
Get Products Data minigameApi.getProductsData(params)
Get the product shelf information for display in the game.
Promise Style:
// Get products data
minigameApi.getProductsData({
game_openid: '1018553529511732',
role_id: '1555629938',
server_id: 'server_001'
})
.then(data => {
console.log('getProductsData successful:', data);
// data contains: { products: ProductItem[] }
})
.catch(error => {
console.log('getProductsData failed:', error);
});
// Using async/await
async function handleGetProducts() {
try {
const result = await minigameApi.getProductsData({
game_openid: '1018553529511732',
role_id: '1555629938',
server_id: 'server_001'
});
console.log('Products data:', result.products);
} catch (error) {
console.log('Failed to get products:', error);
}
}
Parameter Description
| Parameter | Type | Required | Description |
|---|---|---|---|
| game_openid | string | Yes | Game user ID |
| role_id | string | Yes | Role ID |
| server_id | string | No | Server ID for game partitioning |
ProductItem Type
interface ProductItem {
product_id: string; // Unique identification of the item within Midasbuy
game_product_id: string; // Unique identification of the item within game
quantity: number; // Game coins or items amount (combined with product_type)
product_type: 'currency' | 'item'; // Product type: currency or item
product_icon: string; // Product image URL
name: string; // Product name
price_info: {
price: string; // Current price, e.g.: '69.99'
original_price: string; // Original price, e.g.: '77.99'
currency: string; // Currency code, e.g.: 'HKD'
display_price: string; // Display price with currency, e.g.: '69.99 HKD'
display_original_price: string; // Display original price with currency, e.g.: '77.99 HKD'
};
bonus: {
virtual_currency_quantity: number; // Bonus virtual currency amount
virtual_item_list: {
product_id: string; // Unique identification of the item within Midasbuy in bonus item
game_product_id: string; // Unique identification of the item within game in bonus item
name: string; // Bonus item name
quantity: number; // Bonus item quantity
icon: string; // Bonus item image URL
}[]; // Bonus virtual items list
};
meta: any; // Original shelf data, generally no attention required
}
product_idandgame_product_idare generally one-to-one.
Example ProductItem:
const exampleProduct: ProductItem = {
product_id: "600_coins_vip",
game_product_id: "600_coins",
quantity: 600,
product_type: "currency",
product_icon: "https://cdn.midasbuy.com/images/apps/pubgm/1599546041426W8hmErMS.png",
name: "600 UnknownCash",
price_info: {
price: "69.99",
original_price: "77.99",
currency: "HKD",
display_price: "69.99 HKD",
display_original_price: "77.99 HKD"
},
bonus: {
virtual_currency_quantity: 60,
virtual_item_list: [
{
product_id: "MP_DEFAULT_MOBILE_COIN",
game_product_id: "MP_DEFAULT_MOBILE_COIN",
name: "Event Voucher (Use in event)",
quantity: 1,
icon: "https://cdn.midasbuy.com/images/4113%20%281%29.2c5fa435.png"
}
]
},
meta: { /* original shelf data */ }
};
metais original shelf data, generally no attention required. Refer to https://midasbuy-develop.pages.woa.com/master/%E5%BE%AE%E6%9C%8D%E5%8A%A1%E4%BB%8B%E7%BB%8D/%E8%B4%A7%E6%9E%B6%E6%9C%8D%E5%8A%A1/3.%20%E5%8D%8F%E8%AE%AE%E8%AE%BE%E8%AE%A1/%E8%B4%A7%E6%9E%B6%E6%9C%8D%E5%8A%A1%E5%8D%8F%E8%AE%AE/#shelfproduct
ProductsResult Type
interface ProductsResult {
products: ProductItem[]; // Array of product items
}