ページを選択

プロジェクト

プロジェクトに関する情報を取得したり、プロジェクトを作成または変更するには、次の API メソッドを使用します。 

get_project

既存のプロジェクトを返します。

GET index.php?/api/v2/get_project/{project_id}

パラメーター

名前 タイプ 必須 説明
project_id integer true プロジェクトの ID

レスポンスの内容

典型的なレスポンスについては、次のサンプルを参照してください。

{
    "id": 1,
    "announcement": "Welcome to project X",
    "completed_on": 1389968184,
    "default_role_id": 3,
    "default_role": "Tester",
    "is_completed": false,
    "name": "Project X",
    "show_announcement": true,
    "suite_mode": 1,
    "url": "https://instance.testrail.io/index.php?/projects/overview/1",
    "users": [
        {
            "id": 3,
            "global_role_id": null,
            "global_role": null,
            "project_role_id": null,
            "project_role": null
        }
    ],
    "groups": []
}

レスポンスには次のフィールドが含まれています。

名前 タイプ 説明
announcement string プロジェクトの説明/お知らせ
completed_on integer プロジェクトが完了とマークされた日時 (UNIX タイムスタンプ)
default_role string プロジェクトへのアクセスに設定されたデフォルトのロール名 (TestRail 7.3 以降が必要)
default_role_id integer プロジェクトへのアクセスに設定されたデフォルトのロール ID (TestRail 7.3 以降が必要)
groups array グループ オブジェクトの配列。下の表「グループ」を参照してください (TestRail 7.3 以降が必要)。
id integer プロジェクトの一意の ID
is_completed boolean プロジェクトが完了としてマークされている場合は true、そうでない場合は false
name string プロジェクトの名前
show_announcement boolean お知らせ/説明を表示する場合は true、それ以外の場合は false
suite_mode integer プロジェクトのスイート モード (1 はシングル スイート モード、2 はシングル スイート+ベースライン、3 はマルチ スイート)
url string ユーザー インターフェイスに表示されるプロジェクトのアドレス/URL
users array ユーザー オブジェクトの配列。下の表「ユーザー」を参照してください (TestRail 7.3 以降が必要)。

レスポンスには次の GROUPS フィールドが含まれています。

名前 タイプ 説明
id integer ユーザーグループの ID
role string プロジェクト内でグループに割り当てられたロール名
role_id integer プロジェクト内でグループに割り当てられたロール ID

レスポンスには次の USERS フィールドが含まれています。

名前 タイプ 説明
id integer ユーザーの ID
global_role_id integer ユーザーのグローバル プロファイルに割り当てられたロール ID
global_role string ユーザーのグローバル プロファイルに割り当てられたロール名
project_role_id integer プロジェクト内でユーザーに割り当てられたロール ID (存在する場合)
project_role string プロジェクト内でユーザーに割り当てられたロール名 (存在する場合)

レスポンス コード

ステータス コード 説明
200 成功。プロジェクトがレスポンスの一部として返されます
400 無効または不明なプロジェクト
403 プロジェクトにアクセスできない
429 TestRail Cloud のみ – リクエストが多すぎます

get_projects

利用可能なプロジェクトのリストを返します。

GET index.php?/api/v2/get_projects

リクエスト ボディ

リクエスト URL の query パラメーターとして、以下のフィルターを適用できます。

名前 タイプ 説明
is_completed boolean 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 と同じです。

{
    "offset": 0,
    "limit": 250,
    "size": 2,
    "_links": {
        "next": null,
        "prev": null,
    },
    "projects": [
        { "id": 1, "name": "DataHub", .. },
        { "id": 2, "name": "Writer", .. }
    ]
}

レスポンスコード

ステータス コード 説明
200 成功。プロジェクトがレスポンスの一部として返されます。注意: 最低でも読み取りアクセス権があるプロジェクトだけを返します。
429 TestRail Cloud のみ – リクエストが多すぎます

add_project

新規プロジェクトを作成します (管理者権限が必要です)。

POST index.php?/api/v2/add_project

リクエストボディ

POST リクエスト ボディ メッセージで以下のフィルターを適用できます。

名前 タイプ 必須 説明
name string true プロジェクトの名前
announcement string false プロジェクトの説明/お知らせ
show_announcement boolean false お知らせをプロジェクトの概要ページに表示する場合は true、それ以外の場合は false
suite_mode integer false プロジェクトのスイート モード (1 はシングル スイート モード、2 はシングル スイート+ベースライン、3 はマルチ スイート)

リクエストの例

新しい空のプロジェクトを作成する方法を示す例については下記を参照してください。

{
    "name": "Project X",
    "announcement": "Welcome to project X",
    "show_announcement": true
}

レスポンスの内容

成功した場合、このメソッドは get_project と同じレスポンス形式を使用して新しいプロジェクトを返します。

レスポンスコード

ステータス コード 説明
200 成功。プロジェクトが作成され、レスポンスの一部として返されます
403 プロジェクトを追加する権限がありません (管理者権限が必要)
429 TestRail Cloud のみ – リクエストが多すぎます

update_project

既存のプロジェクトを更新します (管理者権限が必要です。部分的な更新がサポートされています。つまり、特定のフィールドのみを送信して更新できます)。
POST index.php?/api/v2/update_project/{project_id}

パラメーター

名前 タイプ 必須 説明
project_id integer true プロジェクトの ID

リクエスト ボディ

以下のフィルターを適用できます。

名前 タイプ 必須 説明
name string true プロジェクトの名前
announcement string false プロジェクトの説明/お知らせ
show_announcement boolean false お知らせをプロジェクトの概要ページに表示する場合は true、それ以外の場合は false
suite_mode integer false プロジェクトのスイート モード (1 はシングル スイート モード、2 はシングル スイート+ベースライン、3 はマルチ スイート)

リクエストの例

プロジェクトを完了としてマークする方法を示す例については下記を参照してください。

{
    "announcement": "Happy Holidays Everyone!"
}

レスポンスの内容

{
    "name": "Project X",
    "announcement": "Welcome to project X",
    "show_announcement": true,
    "default_role_id": 3,
    "is_completed": false,
    "users": [
        {
            "user_id": 4,
            "role_id": null
        }
    ]
    "groups": []
}

レスポンスには次のフィールドが含まれています。

名前 タイプ 説明
default_role_id integer プロジェクトへのアクセスに設定されたデフォルトのロール ID (TestRail 7.3 以降が必要)
groups array グループ オブジェクトの配列。下の表「グループ」を参照してください (TestRail 7.3 以降が必要)。
users array ユーザー オブジェクトの配列。下の表「グループ」を参照してください (TestRail 7.3 以降が必要)。

レスポンスには次の GROUPS フィールドが含まれています。

名前 タイプ 説明
id integer ユーザーグループの ID
role_id integer プロジェクト内でグループに割り当てられたロール ID。割り当てを「グローバル ロール」に変更するには、0 をサブミットします。プロジェクト固有のロールを消去するには null をサブミットします。

レスポンスには次の USERS フィールドが含まれています。

名前 タイプ 説明
id integer ユーザーの ID
role_id integer プロジェクト内でグループに割り当てられたロール ID。割り当てを「グローバル ロール」に変更するには、0 をサブミットします。プロジェクト固有のロールを消去するには null をサブミットします。

レスポンス コード

ステータス コード 説明
200 成功。プロジェクトが更新され、レスポンスの一部として返されます
400 無効または不明なプロジェクト
403 プロジェクトを更新する権限がありません (管理者権限が必要)
429 TestRail Cloud のみ – リクエストが多すぎます

delete_project

削除したプロジェクトを元に戻すことはできません。また、すべてのテスト スイートとテスト ケース、テスト ランと結果、そのほかプロジェクトに含まれるすべてが永久に削除されます。

既存のプロジェクトを削除します (管理者権限が必要です)。

POST index.php?/api/v2/delete_project/{project_id}

パラメーター

名前 タイプ 必須 説明
project_id integer true プロジェクトの ID

レスポンス コード

ステータス コード 説明
200 成功。プロジェクトは削除されました
400 無効または不明なプロジェクト
403 プロジェクトを削除する権限がありません (管理者権限が必要)
429 TestRail Cloud のみ – リクエストが多すぎます