---
title: 赠送API
slug: world-sdk-guide-ch/8RD4-api
docTags: 
createdAt: 2024-09-02T08:34:13.134Z
---

您可以使用赠送 API 在 ZEPETO 世界中将服装物品赠送给其他用户。

但是，在使用 API 时，发送者的物品将被扣除。



## 安装

窗口 → 包管理器 → ZEPETO.World 包，请先安装版本 1.21.14 或更高版本。

之后，请安装版本为 1.0.7 或更高的 ‘ZEPETO.Module’ 包。

确保 ZEPETO 应用程序运行版本 3.46.000 或更高版本。

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-SCGjvJHEAi76UkoHHXYW_-20240904-102409.png)



## 赠送 API

要使用赠送 API，请添加以下导入语句。

```typescript
import { GiftBackgroundType, ShopService, ItemGiftResponse } from 'ZEPETO.Module.Shop';
```



如果您对赠送 API 感兴趣，请参考文档：

:::hint{type="info"}
**📘&#x20;**&#x8BF7;参考以下指南。 \[[ZEPETO.Module.Shop API](https://developer.zepeto.me/docs/module/namespaces/ZEPETO_Module_Shop)]
:::



:::hint{type="danger"}
- 在 Unity 编辑器中，您可以测试成功和失败的情况。即使赠送成功，也不会扣除任何货币，礼物将不会送达收件人。
- 通过二维码或测试链接进行移动测试时，成功的交易将导致实际货币扣除，礼物将送达收件人。
:::



## 使用示例

- 请在画布上添加一个发送礼物按钮。
- 请按照以下示例代码编写。

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { GiftBackgroundType, ShopService, ItemGiftResponse } from 'ZEPETO.Module.Shop';
import { Button } from 'UnityEngine.UI';
import { ErrorCode } from 'ZEPETO.Module';
 
export default class SendGift extends ZepetoScriptBehaviour {
 
    public itemId : string;
    public targetUserId : string;
    public sendGiftButton : Button;
 
    Start() {
        this.sendGiftButton.onClick.AddListener(()=>{
            ShopService.ShowGiftPopup(
                this.itemId,
                this.targetUserId,
                GiftBackgroundType.Type01,
                "嗨，这是给你的！",
                (response: ItemGiftResponse) => {  // onComplete 回调
                    console.log(`礼物发送成功！ZEPETO Coin 余额 ${response.coin}, ZEM 余额 ${response.zem}`);
                },
                (error: ErrorCode) => {  // onFailure 回调
                    console.error("发送礼物时出错：", error);
                }
            );
        });
    }
}
```



- 编写脚本后，在检查器中连接按钮，并输入将接收礼物的用户ID和物品ID。

:::hint{type="info"}
**📘&#x20;**&#x8BF7;参考以下指南以获取 Zepeto 玩家 的 UserId。\[[ZEPETO 玩家](docId\:VeqpnpSmnKxkrDHcMuqtL)]
:::



- 要测试成功或失败的案例，请创建一个二维码，然后在您的移动设备上进行测试。
- 但是，请注意，发件人的货物将被扣除。



### 发送礼物成功时

- 当您点击按钮时，将出现一个发送礼物的弹出 UI。

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-3MUIdRSuqF0IHLlTLP8s7-20240904-102409.png)



- 如果礼物发送成功，将出现一个 Toast UI 以指示成功，并且示例脚本将生成日志。

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-Vf1otjwZXmf93sv8CRJlA-20240904-102409.png)



![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-b1LZQ5DbQd9JpXX1av_uO-20240904-102409.png)



- 此外，目标用户收到了一个礼物。

::Image[]{src="https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-SujWd6C1VsYM0lNIAcRDq-20240904-102409.jpg" size="60" width="865" height="1068" position="center" showCaption="false"}



### 发送礼物失败时

- 如果情况对应于错误代码，Toast UI 将显示错误消息，示例脚本将输出相应的错误代码。

![](https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-zAFMZdiur9v6Cf7LN_97C-20240904-102410.png)



::Image[]{src="https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-_k8_ckg4so3bvNO6LLZBc-20240904-102409.png" size="50" width="290" height="60" position="center" showCaption="false"}

