我对Connectwise Rest API的补丁请求有什么问题?

Bla*_*k00 4 python api rest

我有一个关于Connectwise的Rest API的问题.我一直在做请求和发布请求没有问题,但是当我做一个补丁请求时,无论我尝试什么,我得到400响应'字段值无效'消息.我在2016v1并使用Rest API通过请求库从Python调用.

Rest API文档说下面的对象应该在body中传递,但是我不清楚这些键应该使用哪些值:

{
op (string, optional),
path (string,optional),
value (string,optional)
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试了几十个电话,包括以下机构:

{'summary': 'updatedsummarytext'}
{'value': {'summary': 'updatedsummarytext'}}
{'op': {'summary': 'updatedsummarytext'}}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我只收到了以下回复:

<Response [400]>
{
"code": "InvalidObject",
"message": "operations object is invalid",
"errors": [
{
"code": "InvalidField",
"message": "The field value is invalid.",
"resource": "operations",
"field": "value"
}
]
}
Run Code Online (Sandbox Code Playgroud)

它们是一个连接的特定值是期望op或值键,还是我缺少Patch rest api调用所特有的东西?

Ada*_*amR 8

基本级别的PATCH调用使用RFC6902.

考虑以下(简化)故障单文档:

{
  "summary": "Initial Ticket Summary",
  "id": 1,
  "company": {
    "id": 5
  },
  "board": {
    "id": 10
  }
}
Run Code Online (Sandbox Code Playgroud)

如果您希望更新该summary字段,您的PATCH请求JSON将如下所示:

[
  {"op": "replace", "path": "/summary", "value": "Updated Summary"}
]
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.