任何人都可以通过Clio的API成功更新 custom_field_values 吗?
我正在尝试在单一事项下更新custom_field_values的值。我可以使用PATCH发送JSON字符串,并使用以下格式更新位置或描述等内容的默认值
{"data":{"location":"Orange"}}
但是,当涉及更新“自定义字段值”时,我收到 422 Unprocessable Entity 错误。我正在关注Clio's v4 API Documentation,我的理解是要更新custom_field_value,您需要以下JSON:
{"data":{"custom_field_values":[{"id":658213,"custom_field":{"id":139385},"value":"New Value Goes Here!"}]}}
然而,这是带有422错误的消息:
{"error":{"type":"ArgumentError","message":"An invalid argument was supplied: invalid custom field value id provided, acceptable format is <type>-<unique id>"}}
我无法解释建议采用可接受格式的部分!
我还尝试使用以下格式发送JSON,该格式最接近Clio的V2 API文档以更新自定义字段:
{"data":{"custom_field_values":[{"custom_field":{"id":139385},"value":"New value goes here"}]}}
但这就是我回来的原因:
{"error":{"type":"ArgumentError","message":"An invalid argument was supplied: custom field value for custom field 139385 already exists"}}
请注意,无论我的开发环境如何,都会在POSTMAN中对此进行测试。感谢您的回复!
答案 0 :(得分:0)
我已成功创建查询以多次更新自定义字段值,这些问题一直在为我而运行。我已经将你的json与我成功发送的json的一些例子进行了比较。你的语法看起来是正确的,但我只能猜到你的错误可能在哪里。
首先,您正在向https://app.clio.com/api/v4/matters/{matter id}.json
发送PATCH对吗?我花了一段时间才知道您无法通过https://app.clio.com/api/v4/custom_fields/{id}.json
的查询来更新问题自定义字段的价值。
其次,为了澄清,您在上面使用的658213
ID(第一个ID字段)应该是您自定义字段的此实例的唯一ID。在您创建了特定于此事项的自定义字段的实例之前,您不会得到此信息。您放置139385
的第二个ID字段是自定义字段本身的ID,您可以通过查询https://app.clio.com/api/v4/custom_fields.json
获取该字段。
如果您正在查看自定义字段下的V.4文档,您将无法找到它,或者至少我没有。但您可以在文档的“事项”部分的介绍部分找到它:https://app.clio.com/api/v4/documentation#tag/Matters
希望这会有所帮助。我想象一下,当您的自定义字段值唯一ID不正确时,Clio可以通过验证您的错误字符串是否可以提供帮助。
答案 1 :(得分:0)
进一步澄清雅各布对其他人的回答:
custom_field {id} 是在创建custom_field时为其提供的ID,对于所使用的所有事项或联系人都是相同的。
custom_field_value {id} 是为添加到特定事项的custom_field实例提供的ID,仅对该事项唯一
首次使用以下格式添加custom_field:
{"data":{"custom_field_values":[{"custom_field":{"id":123456},"value":"string or integer depending on the type of CF"}]}}
要更新已添加到某个问题的自定义字段,应使用以下格式:
{"data":{"custom_field_values":[{"id":"text_line-1234567", "custom_field":{"id":123456},"value":"string or integer depending on the type of CF"}]}}
要删除已添加到某个问题的自定义字段,以下JSON格式就足够了:
{"data":{"custom_field_values":[{"id":"text_line-1234567", "custom_field":{"id":123456},"_destroy":true}]}}