gpt4 book ai didi

java - Podio API - 更新联系人引用

转载 作者:行者123 更新时间:2023-12-01 09:24:20 25 4
gpt4 key购买 nike

我有一个跑道应用程序,用于处理客户帐户,其中每个客户都有一个经理(跑道联系人)。所有这些数据都驻留在另一个系统中,我们正在编写软件来同步这两个系统。该软件是用java编写的,并使用podio api

我目前可以读取和设置除经理字段(联系人)之外的所有类型的字段。

这是加载客户时从 API 收到的内容:

Received field

但是如何将经理引用更新为其他内容呢?

我尝试过类似的方法:

List<Map<String, Object>> list = new ArrayList<>();
HashMap<String, Object> values = new HashMap<>();
list.add(values);

HashMap<String, Object> value = new HashMap<>();
values.put("value", value);

value.put("mail", "employee@email.com");
//also tried user_id and profile_id

然后使用

ItemAPI.updateItemFieldValues(int itemId, int fieldId,
List<Map<String, Object>> values, boolean silent, boolean hook)

更新字段。我哪里出错了?

最佳答案

设置:
带有“联系人”字段的跑道应用程序,配置为“工作区成员/添加新地址时共享”(如此屏幕截图)
Contact sharing settings

Ruby 中的工作示例

  item_id = <some_item_id>
field_id = <contact_field_numeric_id>
field_external_id = <contact_field_external_id>

# set to empty value by field_id
empty_value = []
Podio::ItemField.update(item_id, field_id, single_value)

# set to single value by field_id
single_value = [{'value' => {'type' => 'user', 'id' => <Podio user id>}}]
Podio::ItemField.update(item_id, field_id, single_value)

# set to multiple values by external field id
multi_values = [{'value' => {'type' => 'user', 'id' => <Podio user id>}},
{'value' => {'type' => 'user', 'id' => <another Podio user id>}}]
Podio::ItemField.update(item_id, field_external_id, multi_values)

将此联系人字段设置为新值 single_value 或新值列表 multiple_value。另外,我强烈建议您重新考虑您的数据架构。使用 Podio Contact 应用类型并使用 Reference 字段而不是使用 Contact 字段可能更具可扩展性。

Java示例:

HashMap<String, Object> pair = new HashMap<>();
HashMap<String, Object> value = new HashMap<>();
List<Map<String, Object>> list = new ArrayList<>();

// set to empty value
list = new ArrayList<>();
ItemAPI.updateItemFieldValues(<itemId>, <fieldId>, list, <silent>, <hook>)

// set to real value
value = new HashMap<>();
list = new ArrayList<>();
pair.put("id", <user_id>);
pair.put("type", "user");
value.put("value", pair);
list.add(value);
ItemAPI.updateItemFieldValues(<itemId>, <fieldId>, list, <silent>, <hook>)

关于java - Podio API - 更新联系人引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39959314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com