You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求编写脚本:从Guilded API拉取活动数据至Google Sheet

解决方案:Guilded API 拉取活动数据并导入Google Sheet

一、Guilded API 基础配置与数据拉取

  • 获取API令牌:在Guilded账户设置中生成个人访问令牌,确保令牌包含服务器活动读取权限。
  • 调用活动列表接口:
    • 接口端点:GET /servers/{serverId}/events
    • curl请求示例:
      curl -H "Authorization: Bearer YOUR_TOKEN" "https://www.guilded.gg/api/v1/servers/YOUR_SERVER_ID/events"
      
    • 解析返回数据:接口返回的events数组包含每个活动的id(活动ID)、name(活动名称)字段,直接提取即可。

二、数据导入Google Sheet

方法1:Google Apps Script(推荐)

  1. 打开你的测试表格,点击「扩展程序」→「Apps Script」
  2. 替换默认代码为以下脚本:
    function importGuildedEvents() {
      const token = "YOUR_GUILDED_TOKEN";
      const serverId = "YOUR_SERVER_ID";
      const url = `https://www.guilded.gg/api/v1/servers/${serverId}/events`;
      
      // 发送API请求
      const options = {
        headers: { "Authorization": `Bearer ${token}` }
      };
      const response = UrlFetchApp.fetch(url, options);
      const data = JSON.parse(response.getContentText());
      const events = data.events;
      
      // 整理要写入的数据
      const output = events.map(event => [event.id, event.name]);
      output.unshift(["活动ID", "活动名称"]);
      
      // 写入工作表
      const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
      sheet.clearContents();
      sheet.getRange(1, 1, output.length, 2).setValues(output);
    }
    
  3. 替换YOUR_GUILDED_TOKEN和YOUR_SERVER_ID为实际信息,保存后运行脚本并完成授权,即可自动导入数据。

方法2:手动导出导入(临时需求适用)

用Postman或curl调用API后,将返回的JSON数据导出为CSV格式,再直接上传到Google Sheet。

三、API返回数据读取技巧

API返回的是JSON格式,处理时注意:

  • 用JSON解析工具(如浏览器控制台、JSONFormatter)查看数据结构,确认字段路径
  • 在脚本中用JSON.parse()将返回内容转为对象,通过.或[]访问字段,比如event.id、member.user.name
  • 嵌套字段需逐层解析,比如获取活动成员用户名:
    const eventMembersUrl = `https://www.guilded.gg/api/v1/events/${eventId}/members`;
    const membersResponse = UrlFetchApp.fetch(eventMembersUrl, options);
    const membersData = JSON.parse(membersResponse.getContentText());
    const memberNames = membersData.members.map(member => member.user.name);
    

四、获取活动成员数据

调用活动成员接口:GET /events/{eventId}/members,替换eventId为目标活动ID,处理逻辑与拉取活动列表一致,提取成员信息(如用户ID、用户名)后追加到Sheet即可。

内容的提问来源于stack exchange,提问作者Aaron Raven

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 22:12:24