ATTask API - 更新自定义字段API和C夏普(ATTask API - Updating

2019-10-19 18:35发布

我有我的API项目的非自定义字段中的精细运作,但文档并没有真正似乎与工作有关,以解释实际PUT请求的格式应该是什么使用C锋利更新的自定义字段。

我有以下几点:

所谓“TestNumber”类项目的自定义字段。

我可以很容易地与web请求搜索它:

/attask/api/proj/search?sessionID=XXXXXXX&ID=XXXXX&fields=DE:TestNumber

所以我知道该特定的自定义字段的语法是正确的。

我也可以做非自定义字段一个基本的更新:

/attask/api/proj?method=put&sessionID=XXXXX&id=XXXXX&name=TEST RESOURCES` 

它正确地更新。

但无论我做什么,我无法弄清楚如何改变这种“TestNumber”自定义字段的值,来,我选择使用API​​值。 经过一番搜索,我发现我应该使用从AtTask的API文档的“JSON编辑”部分,但是,我似乎无法找出正确的语法。

我尝试之前fullurl是:

/attask/api/proj?method=put&sessionID=XXXXX&id=XXXXXX&updates={DE:TestNumber:1234}

(这似乎与API文档REC这里JIVE http://developers.attask.com/api-docs/#JSONEdits ),但每一次我得到一个500内部服务器错误

我核实,我被正常登录。

任何建议或意见,将不胜感激。

更新:我还是不能得到这个工作。 我发现那里的人提到这个自定义复选框形式另一篇文章(搜索“AtTask API更新的自定义字段的复选框多值”):

PUT /attask/api/v3.0/task/xxxxxxxxxxxxxxxxxx?updates={DE:Labels=["a","b","c"]}

但我不知道如何传递,甚至那种数据直接用C夏普,因为它不允许双引号,当我添加一个转义字符,我还是得到了500内部服务器错误 。 我得到了“邮报”的方法,通过使用去%22中引号的地方,但不管是什么我就做放,这是行不通的。

我们AtTask顾问提到,我可能需要包括我的自定义窗体的categoryId,所以我还补充说,到我的查询字符串,但无济于事。

我已经下载了“AtTask范例”升C(这是位于developers.attask.com),我试图使用他们作为通过下面的例子中使用更新方法:

JToken project = client.Update(ObjCode.PROJECT, new { 
    ID = projectId, categoryID = "XXXXXXXXXXXXXXXX", 
    updates = "{DE:Total Feet of Line:1234}" });

正如我前面提到的,搜索工作正常,准确返回我的期望:

JToken projects = client.Search(ObjCode.PROJECT, new { 
    ID = projectId, 
    fields = "DE:Total Feet of Line" });

这会产生以下网址:

/attask/api/proj/search?sessionID=XXXX&ID=XXXX&categoryID=XXXXX&fields=DE:Total Feet of Line

我终于尝试用“的Json编辑”与非自定义字段更新,并将其与put方法,所以我必须有什么毛病我对这些领域语法的作品,但我肯定的是,它被认为是DE:FIELDNAME:"VALUE" 。 我错了吗?

我觉得我在正确的轨道上在试图解决这一术语,但我发现很难相信,有没有支持或谁这样做了其他人。 现在看来似乎是一个基本的需要能够从API更新的自定义字段...

我也试过严格遵守了其他个人例如使用自定义复选框,即使“搜索”返回如预期,“更新”失败的JSON。

Answer 1:

你说得对有关 “DE:FIELDNAME”: “VALUE”。

请尝试以下网址更新自定义字段:请确保您更改myCompany中,YOUR_ID,YOUR_CAT_ID,YOUR_FIELD,YOUR_VALUE,YOUR_LOGIN_USERNAME,YOUR_LOGIN_PASSWARD。

MYCOMPANY.attasksandbox.com/attask/api/proj?updates={"ID":"YOUR_ID","categoryID":"YOUR_CAT_ID","DE:YOUR_FIELD":"YOUR_VALUE"}&method=put&username=YOUR_LOGIN_USERNAME&password=YOUR_LOGIN_PASSWARD

这对我行得通。 让我知道是否适合你



文章来源: ATTask API - Updating Custom Field with API and C Sharp
标签: attask