API: プロジェクト
プロジェクトに関する情報を取得したり、プロジェクトを作成または変更するには、次の API メソッドを使用します。
get_project
既存のプロジェクトを返します。
GET index.php?/api/v2/get_project/:project_id
| :project_id | プロジェクトの ID |
レスポンスの内容
典型的なレスポンスについては、次のサンプルを参照してください。
{
"announcement": "..",
"completed_on": null,
"id": 1,
"is_completed": false,
"name": "Datahub",
"show_announcement": true,
"url": "http://<server>/testrail/index.php?/projects/overview/1"
}
レスポンスには次のフィールドが含まれています。
| 名前 | タイプ | 説明 |
|---|---|---|
| announcement | string | プロジェクトの説明/お知らせ |
| completed_on | int | プロジェクトが完了とマークされた日時 (UNIX タイムスタンプ) |
| id | int | プロジェクトの一意の ID |
| is_completed | bool | プロジェクトが完了としてマークされている場合は true、そうでない場合は false |
| name | string | プロジェクトの名前 |
| show_announcement | bool | お知らせ/説明を表示する場合は true、それ以外の場合は false |
| suite_mode | integer | プロジェクトのスイート モード (1 はシングル スイート モード、2 はシングル スイート+ベースライン、3 はマルチ スイート) |
| url | string | ユーザー インターフェイスに表示されるプロジェクトのアドレス/URL |
レスポンス コード
| 200 | 成功。プロジェクトがレスポンスの一部として返されます |
| 400 | 無効または不明なプロジェクト ID です |
| 403 | プロジェクトにアクセスできません |
get_projects
利用可能なプロジェクトのリストを返します。
GET index.php?/api/v2/get_projects
リクエスト フィルター
以下のフィルターを適用できます。
| 名前 | タイプ | 説明 |
|---|---|---|
| :is_completed | bool | 1 を指定すると完了したプロジェクトだけを返します。0 を指定するとアクティブなプロジェクトだけを返します。 |
| :limit | integer | レスポンスが返すプロジェクトの数 (デフォルトのレスポンス サイズは 250) (TestRail 6.7 以降が必要) |
| :offset | integer | プロジェクトのカウントを開始する場所 (オフセット) (TestRail 6.7 が必要) |
# All active projects GET index.php?/api/v2/get_projects&is_completed=0
レスポンスの内容
レスポンスにはプロジェクトの配列が含まれます。リスト内の各プロジェクトの形式は、get_project と同じです。
[
{ "id": 1, "name": "DataHub", .. },
{ "id": 2, "name": "Writer", .. },
..
]注意: 2021 年 2 月 26日から、一括 GET API エンドポイントが返すデータの構造が変更されます。これらの一括エンドポイントは、すべてのエントリの配列ではなく、追加のページ分割フィールドを持つオブジェクトと、250 エンティティまでの配列を返します。新しいレスポンス構造を確認し、必要に応じたコードの変更をテストするには、API リクエストに次のヘッダーと値を含めます: x-api-ident: beta
新しいレスポンスの内容
レスポンスにはプロジェクトの配列が含まれます。リスト内の各プロジェクトの形式は、get_project と同じです
{
"offset": 0,
"limit": 250,
"size": 2,
"_links": {
"next": null,
"prev": null
},
"projects": [
{
"id": 1,
"name": "DataHub",
..
},
{
"id": 2,
"name": "Writer",
..
},
..
]
}
レスポンス コード
| 200 | 成功。プロジェクトがレスポンスの一部として返されます注意: 最低でも読み取りアクセス権があるプロジェクトだけを返します。 |
add_project
新規プロジェクトを作成します (管理者権限が必要です)。
POST index.php?/api/v2/add_project
リクエスト フィールド
以下の POST フィールドがサポートされています。
| 名前 | タイプ | 説明 |
|---|---|---|
| name | string | プロジェクトの名前 (必須) |
| announcement | string | プロジェクトの説明 |
| show_announcement | bool | お知らせをプロジェクトの概要ページに表示する場合は true、それ以外の場合は false |
| suite_mode | integer | プロジェクトのスイート モード (1 はシングル スイート モード、2 はシングル スイート+ベースライン、3 はマルチ スイート) |
リクエストの例
新しい空のプロジェクトを作成する方法を示す例については下記を参照してください。
{
"name": "This is a new project",
"announcement": "This is the description for the project",
"show_announcement": true
}
レスポンスの内容
成功した場合、このメソッドは get_project と同じレスポンス形式を使用して新しいプロジェクトを返します。
レスポンス コード
| 200 | 成功。プロジェクトが作成され、レスポンスの一部として返されます |
| 403 | プロジェクトを追加する権限がありません (管理者権限が必要) |
update_project
既存のプロジェクトを更新します (管理者権限が必要です。部分的な更新がサポートされています。つまり、特定のフィールドのみを送信して更新できます)。
POST index.php?/api/v2/update_project/:project_id
| :project_id | プロジェクトの ID |
リクエスト フィールド
以下の POST フィールドがサポートされています。
| 名前 | タイプ | 説明 |
|---|---|---|
| name | string | プロジェクトの名前 |
| announcement | string | プロジェクトの説明 |
| show_annoucement | bool | お知らせをプロジェクトの概要ページに表示する場合は true、それ以外の場合は false |
| is_completed | bool | プロジェクトが完了とみなされるかどうかを指定 |
リクエストの例
プロジェクトを完了としてマークする方法を示す例については下記を参照してください。
{
"is_completed": true
}
レスポンスの内容
成功した場合、このメソッドは get_project と同じレスポンス形式を使用して更新されたプロジェクトを返します。
レスポンス コード
| 200 | 成功。プロジェクトが更新され、レスポンスの一部として返されます |
| 400 | 無効または不明なプロジェクト ID です |
| 403 | プロジェクトを変更する権限がありません (管理者権限が必要) |
delete_project
既存のプロジェクトを削除します (管理者権限が必要です)。
POST index.php?/api/v2/delete_project/:project_id
| :project_id | プロジェクトの ID |
注意:プロジェクトの削除を元に戻すことはできません。また、すべてのテスト スイートとテスト ケース、テスト ランと結果、そのほかプロジェクトに含まれるすべてが永久に削除されます。
レスポンス コード
| 200 | 成功。プロジェクトは削除されました |
| 400 | 無効または不明なプロジェクト ID です |
| 403 | プロジェクトを削除する権限がありません (管理者権限が必要) |