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

Zapier场景下如何将Freshdesk的两个关联逗号分隔列表转为指定数组

解决方案:在Zapier中转换并整合Freshdesk关联公司数据

要实现将两个逗号分隔列表转成指定对象数组,并整合现有联系人的关联公司信息,你可以通过Zapier的Code by Zapier工具完成,具体步骤如下:

步骤1:获取现有联系人的关联公司数据

添加一个「Freshdesk - 查找联系人」动作,配置好你的Freshdesk账户和联系人识别条件(比如邮箱),在返回的字段中找到company_access(这是存储联系人关联公司的数组字段),后续步骤会用到这个数据。

步骤2:用Code工具处理并合并数据

添加一个「Code by Zapier」动作,选择Python作为运行环境,然后配置输入变量:

  • existing_company_access:选择步骤1中获取的company_access字段
  • new_company_ids:输入你的逗号分隔company_id字符串(比如48000098316,48000110432)
  • new_view_all:输入对应的逗号分隔view_all_tickets字符串(比如true,false)

将以下代码粘贴到代码框中:

# 处理新输入的公司ID和权限设置
company_ids = [int(id.strip()) for id in input_data['new_company_ids'].split(',')]
view_all_values = [val.strip().lower() == 'true' for val in input_data['new_view_all'].split(',')]

# 生成新的公司关联对象数组
new_companies = []
for comp_id, view_all in zip(company_ids, view_all_values):
    new_companies.append({"company_id": comp_id, "view_all_tickets": view_all})

# 获取现有公司关联数据(如果为空则设为空数组)
existing_companies = input_data['existing_company_access'] or []

# 合并数据:用新设置覆盖重复的公司ID,保留最新配置
existing_comp_dict = {item['company_id']: item for item in existing_companies}
for new_item in new_companies:
    existing_comp_dict[new_item['company_id']] = new_item

# 转换回数组格式
combined_companies = list(existing_comp_dict.values())

# 输出合并后的结果
return {"combined_company_access": combined_companies}

步骤3:更新Freshdesk联系人

添加一个「Freshdesk - 更新联系人」动作,在company_access字段中选择Code步骤输出的combined_company_access数组。运行Zap后,Freshdesk会接收到PUT请求,用合并后的数组替换原有的关联公司数据,既保留了现有关联,又添加了新公司的设置。

关键细节说明

  • 代码中用strip()处理了字符串中的多余空格,即便输入的逗号分隔列表有空格也能正常处理
  • 将view_all_tickets的字符串值转换为布尔值,符合Freshdesk API的参数要求
  • 通过字典去重,确保同一个公司ID只会保留最新的view_all_tickets设置

内容的提问来源于stack exchange,提问作者Ben Crider

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 10:02:11