如何在Asana API中创建标记时处理重复的标记

时间:2014-04-22 10:06:30

标签: asana

我正在使用Ruby Wrapper“Asana”来创建与Asana API的集成。当我通过CURL测试标签创建时的一个问题是,似乎Asana没有处理复制标签。即当我两次执行以下命令时它将生成两个具有不同标签ID的标签。 Asana可以检测到重复的标签并将任务合并在一起吗?

curl -u <my_api_key>: https://app.asana.com/api/1.0/tags \
    -d "name=Test Tag" \
    -d "workspace=123123123"

第一回应:

{"data":{"id":11800363445095,"created_at":"2014-04-22T10:03:19.888Z","name":"Test Tag","notes":"","....:[]}}%

第二回应:

{"data":{"id":11800365867646,"created_at":"2014-04-22T10:03:27.501Z","name":"Test Tag","notes":"","....:[]}}%

请注意,虽然标签具有相同的名称,但它们具有不同的ID。但我想要的是,如果创建的任务具有相同的标签名称,它将回退到之前的标签ID。

1 个答案:

答案 0 :(得分:0)

标签,比如Projects,是Asana中的真实对象 - 它们有自己的ID,数据库条目,属性等等,即使它们具有相同的名称

这当然不同于您可能熟悉的其他标签实现 - 我们已经意识到这一点并且正在寻找方法来使标签通过名称和工作区进行唯一标识,就像人们期望的那样,但这并不是直接管道。

因此,现在您可以通过首先获取标记列表并在没有该名称的标记存在的情况下创建标记列表来解决此问题。当然,这不是原子的,而且不够优雅,但它是一种潜在的解决方法。

API的通用包装器应该假定与API具有相同的语义,而不是试图隐藏它们。

相关问题