共通仕様
このページでは、TimeTracker NX Web APIの共通仕様について紹介します。
基本方針
TimeTracker NX Web APIにおけるメソッド毎の共通的なふるまいは以下のとおりです。
取得 (GET)
URIに取得対象オブジェクトのIDを指定し、データを取得します。
複数のIDを指定した場合、指定したIDのデータが一つも存在しない場合にエラーになります。
いずれかのIDのデータが存在する場合はエラーになりません。
追加 (POST)
追加するデータをリクエストボディで指定します。
必須フィールドが指定されなかった場合はエラーになります。
任意のフィールドで未指定の場合は、既定値が適用されます。
更新 (PUT)
更新するデータをリクエストボディで指定します。
指定したフィールドのみ値が更新されます。
指定したIDのデータが存在しない場合はエラーになります。
削除 (DELETE)
URIのパスパラメーターに削除対象オブジェクトのIDを指定し、データを削除します。
指定したIDのデータが存在しない場合はエラーになります。
オブジェクトIDの指定
対象オブジェクト (データ)のIDをURI中で指定することにより、特定のオブジェクトに対する操作を実行します。
URIの定義中 {~Id} もしくは {~Ids} の部分が該当します。
例:指定したユーザーの実績工数を取得する
定義: GET /system/users/{userIds}/timeEntries
実行例: GET /system/users/10/timeEntries
{~Ids}の場合は、複数のIDを指定することが可能です。
その場合、対象オブジェクトのIDをカンマ区切りで指定します。
例:プロジェクト情報を取得する
定義: GET /project/projects/{projectIds}
実行例: GET /project/projects/120,121,122
対象オブジェクトを複数指定する(下位リソースが存在する)場合も、同様にそれぞれのIDを指定します。
例:指定したユーザーの特定の実績工数情報を取得する
定義: GET /system/users/{userIds}/timeEntries/{timeEntryIds}
実行例: GET /system/users/10/timeEntries/1000,1001
クエリパラメーター
クエリパラメーターとは、Web APIを実行する際に任意で追加可能なパラメーターです。
このパラメーターを使用することで、実行するAPIに様々な条件を追加することができます。
クエリパラメーターは、URIの末尾に「?」に続けて指定します。複数のクエリパラメーターを指定する場合は、「&」でつなぎます。
また、一覧取得のAPIにおいては、文字列 (string型) のクエリパラメーターに複数の値を指定することが可能です。
複数の値を指定する場合は、値と値を「,」でつなぎます。
名前指定
基本的には検索対象の値にはIDを指定しますが、名前など他の方法で指定できるパラメータもあります。
例)プロジェクト取得API
本APIでプロジェクトの管理者を指定する場合は、以下の3つの方法があります。
No | 名前 | 説明 |
---|---|---|
1 | managerIds | 取得対象の管理者ID |
2 | managerName | 管理者名 |
3 | managers | 取得対象とする管理者(複数条件からの検索) |
No.1~3のうち、どれか1つで指定すれば該当する情報を取得できます。
No.2,3の方法であればIDを取得する処理は必要なく、直接名前を指定しても対象データを取得することができます。
(API呼び出し回数の削減にも繋がります。)
該当するパラメータは各APIのリファレンスをご参照ください。
- 同じ名前が複数ある場合はIDが小さい値を取得します。
- No.1とNo.2で異なるユーザーを指定した場合は、IDで指定したデータを取得します。
ソート
以下のパラメーターにより、取得(GET)のAPIにより取得したデータの並び順を指定することができます。
ソート関連パラメーター
パラメーター | 型 | 説明 |
---|---|---|
orderby | string | 出力結果の並び順を指定します。ソート対象のフィールドの後ろに空白 (" ") を入れて指定します。 既定値は asc です。(asc: 昇順、desc: 降順) |
例:ユーザーの一覧情報をコードの降順で取得
GET /system/users?orderby=code desc