llms.txt : 機械可読形式のドキュメント索引。このページの Markdown バージョンも利用可能です。

YouTrack 開発者ポータルヘルプ

課題を作成してカスタムフィールドを設定する

REST API を使用して新しい課題を作成し、1 つ以上のカスタムフィールドの値を設定します。

要約

カスタムフィールドに値を設定した課題を作成するには、以下のパラメーターを取得する必要があります。

  • 新しい課題が属するプロジェクトのエンティティ ID。プロジェクト ID を取得するには、プロジェクト ID を取得するを参照してください。

  • 設定する必要のあるカスタムフィールドの name および $type

  • カスタムフィールドに設定した値の name

ステップバイステップ

次の手順は、新しい課題を作成し、いくつかの課題フィールドに値を設定する方法を示しています。サンプルでは、「Priority」フィールドと「Assignee」フィールドを設定することにしました。

課題を作成し、カスタムフィールドの値を設定するには

  1. 課題を作成するプロジェクトの ID を取得します。手順については、プロジェクト ID を取得するを参照してください。このサンプルでは、プロジェクト ID 0-0 とプロジェクト略称 SP を使用しています。

  2. 設定する必要があるカスタムフィールドの名前と $type を取得します。クエリパラメーターを使用して /api/issues エンドポイントに GET リクエストを送信できます。

    • 返される課題属性のリストを含む fields パラメーター。このケースでは、カスタムフィールドに特に関心があります。次の文字列を使用できます。

      fields=project(name),idReadable,customFields(name,$type,value(name,login))
    • 結果をターゲットプロジェクトの課題に絞り込むには、query パラメーターを使用できます。例: query=in:SP は、特定のターゲットプロジェクトの結果を絞り込みます。

    • オプションで、$top クエリパラメーターを使用して、限られた数の課題を取得します。

    結果のリクエストは次のとおりです。

    curl -X GET \ 'https://example.youtrack.cloud/api/issues?fields=idReadable,id,project(id,name),summary,description,customFields(name,$type,value(name,login))&query=in:SP&$top=1' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <YouTrack_token>' \

    応答として、サーバーは次のデータを返しました。

    [ { "idReadable": "SP-47", "project": { "name": "Sample Project", "id": "0-0", "$type": "Project" }, "customFields": [ { "value": { "name": "Show-stopper", "$type": "EnumBundleElement" }, "name": "Priority", "$type": "SingleEnumIssueCustomField" }, { "value": { "name": "Task", "$type": "EnumBundleElement" }, "name": "Type", "$type": "SingleEnumIssueCustomField" }, { "value": { "name": "Open", "$type": "StateBundleElement" }, "name": "State", "$type": "StateIssueCustomField" }, { "value": { "login": "jane.doe", "name": "Jane Doe", "$type": "User" }, "name": "Assignee", "$type": "SingleUserIssueCustomField" }, { "value": null, "name": "Subsystem", "$type": "SingleOwnedIssueCustomField" }, { "value": [], "name": "Fix versions", "$type": "MultiVersionIssueCustomField" }, { "value": [], "name": "Affected versions", "$type": "MultiVersionIssueCustomField" }, { "value": null, "name": "Fixed in build", "$type": "SingleBuildIssueCustomField" } ], "$type": "Issue" } ]

    このレスポンスから、利用可能なフィールドとそのタイプの一覧を確認できます。また、課題カスタムフィールドで利用可能なタイプの完全なリストは、このページから取得できます。

  3. ターゲットカスタムフィールドに設定する値の名前を取得します。一般に、値の名前、つまり UI での値の表示方法を知るだけで十分です。例: 優先度フィールドのショーストッパーまたはメジャー、または状態フィールドの進行中または固定。ただし、修正バージョンや担当者などの一部のフィールドでは、使用可能な値のリストが明確でない場合があります。この場合、ターゲットプロジェクトのこの特定のフィールドに使用される値のセット(バンドル)を取得する必要があります。

  4. 新しい課題を作成するには、それを特定のユーザーに割り当て、その「優先度」フィールドを Show-stopper に設定し、プロジェクトの ID、新しい課題の要約、customFields の json オブジェクトを含む本文で POST リクエストを送信します。以下を含む属性:

    • 優先度フィールドの name、$type、value

    • 担当者フィールドの name、$type、value

    description 属性は必須ではありませんが、指定することも選択しました。結果のリクエストは次のとおりです。

    curl -X POST \ https://example.youtrack.cloud/api/issues \ -H 'Accept: application/json' \ -H 'Authorization: Bearer <YouTrack_token>' \ -H 'Content-Type: application/json' \ -d '{ "project":{"id":"0-0"}, "summary":"REST API lets you create issues!", "description":"Let'\''s create a new issue using YouTrack'\''s REST API.", "customFields":[ { "name":"Priority","$type":"SingleEnumIssueCustomField","value":{"name":"Show-stopper"}}, { "name": "Assignee","$type": "SingleUserIssueCustomField","value": {"login":"jane.doe"}} ] }'

    リクエストで fields パラメーターを指定しなかったため、サーバーは作成された課題のエンティティ ID とその $type のみをレスポンスで返します。

    { "id": "2-38", "$type": "Issue" }
2026 年 10 月 02 日