1

プロジェクト内でカスタム フィールド以外の API を正常に機能させていますが、c シャープを使用してカスタム フィールドを更新するための実際の put リクエスト形式を説明することに関して、ドキュメントは実際には機能していないようです。

私は次のものを持っています:

「TestNumber」と呼ばれるタイプ PROJECT のカスタム フィールド。

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 編集」部分を使用する必要があることがわかりましたが、適切な構文を理解できないようです。

試行前のフルURLは次のとおりです。

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

(API DOCS rec here http://developers.attask.com/api-docs/#JSONEditsでジャイブしているようです) しかし、毎回500 Internal Server エラーが発生します。

正しくログインされていることを確認しました。

提案やアドバイスをいただければ幸いです。

更新: 私はまだこれを機能させることができません。私は別の投稿を見つけました (「AtTask API Updating Multiple Values in Custom Checkbox Field」を検索してください)、その人はカスタム チェックボックス フォームについて次のように述べています。

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

しかし、二重引用符が許可されておらず、エスケープ文字を追加しても500 internal server error が発生するため、C Sharp を使用してそのようなデータを直接渡す方法さえわかりません。引用符の代わりに「Post」メソッドを使用%22しましたが、プットで何をしても機能しません。

AtTask のコンサルタントから、カスタム フォームに私の categoryId を含める必要があるかもしれないと言われたので、それもクエリ文字列に追加しましたが、役に立ちませんでした。

C Sharp の「AtTask Example」(developers.attask.com にあります) をダウンロードし、以下を渡す例として使用する Update メソッドを使用しようとしています。

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" });

これにより、次の URL が生成されます。

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

最後に、非カスタムフィールドで「Json Edits」を使用して更新を試みましたが、put メソッドで機能するため、これらのフィールドの構文に問題があるに違いありませんが、DE:FIELDNAME:"VALUE". 私はここで間違っていますか?

私はこれを解決しようとしているという点で正しい軌道に乗っているように感じますが、これを行ったサポートや他の人がいないとは信じがたいです. APIからカスタムフィールドを更新できるようにすることが基本的な必要性のようです...

また、カスタムチェックボックスを使用して他の個人の例に正確に従ってみましたが、「検索」が期待どおりにjsonを返しても、「更新」は失敗します。

4

1 に答える 1

2

「DE:FIELDNAME」:「VALUE」については正しいです。

カスタム フィールドを更新するには、次の URL を試してください。

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

それは私にとってはうまくいきます。それがうまくいくかどうか教えてください

于 2014-04-08T15:53:30.970 に答える