継続的統合/継続的デリバリ (CICD) API
CICD API は、パイプラインを構築するための一般的な DevOps ツールとの統合を可能にするエンドポイントを提供します。これらのツールには、Jenkins、Azure Pipelines、GitLab、GitHub Actions、Atlassian Bamboo/Pipelines などが含まれます。
これにより、インテグレーターは、ソース駆動型開発で一般的なプル/マージ要求ワークフローによって駆動されるアプリケーションのパイプラインNow Platformを構築CICDできます。ソースコントロール、アプリケーションリポジトリ、および 自動テストフレームワーク (ATF) 機能を活用します。
CI/CD API は、次の製品および機能領域を提供します。
- ソースコントロール
Studio のソースコントロール機能を使用して、特定のインスタンスでリモート Git リポジトリにリンクされたアプリケーションにリモート変更を適用します。
指定されたリポジトリ URL と分岐名を使用してアプリケーションをインポートします。
- アプリケーションリポジトリ:スコープ対象のアプリケーション、グローバルアプリケーション、ServiceNow Store のスコープ対象アプリケーションのアプリケーションカスタマイズで使用でき、プラグインを介しても使用できます。
- アプリケーションをインスタンスから、接続されたアプリケーションリポジトリに公開します。
- アプリケーションを、接続されたアプリケーションリポジトリからインスタンスにインストールします。
- ロールバックコンテキストを使用してインストールされたアプリケーションをロールバックします。
- バッチ
- JSON マニフェストファイルを定義して複数のアプリケーションを一括インストールします。
- ロールバックコンテキストを使用してバッチインストール全体をロールバックします。
- 指定された結果識別子に基づいてバッチインストールの結果を返します。
- プラグイン
- プラグインを有効化します。
- ロールバックコンテキストを使用してプラグインをロールバックします。
- 自動テストフレームワーク (ATF) (ATF)
- ATF テストスイートを開始します。
- ATF テストスイートの合格/不合格の結果を取得します。
- インスタンススキャン
- インスタンススキャン (フル、テーブルのポイントスキャン、レコードのポイントスキャン、スコープ対象のアプリケーション、更新セット、これらのアイテムの組み合わせ) を開始します。
- インスタンススキャン実行の合格/不合格の結果を取得します。
- 進捗状況
他のエンドポイント呼び出しによって開始されたプロセスのインスタンスで完了率を取得します。この機能を使用して、次のステップに進む前に進捗状況が完了するまでポーリングできます。
処理待ち」)、および一意の識別子とリンクを含む応答メッセージを返します。この情報を使用して、要求の進捗状況、ソース、結果や、検出結果に関する追加情報を取得します。機能要求に応じて、次のいずれかの方法を使用して、要求に関する追加情報を取得できます。- 開始エンドポイントによって返された links.progress.id パラメーターを使用して、/sn_cicd/progress/{progress_id} エンドポイントを呼び出します。
- 開始エンドポイントによって返された links.result.id パラメーターを使用して、/sn_cicd/testsuite/results/{result_id} エンドポイントを呼び出します。
- 開始エンドポイントによって返された links.progress.id パラメーターを使用して、/sn_cicd/instance_scan/result/{progress_id} エンドポイントを呼び出します。
- /sn_cicd/sc/apply_stash/{stash_id} エンドポイントは、/sn_cicd/progress/{progress_id} エンドポイントによって返されたパラメーターを使用してlinks.stash.id呼び出します。
- 開始エンドポイントによって返された links.<progress/result/source/findings>.url パラメーターのリンクに移動します。
この API を使用するには、sn_cicd.sys_ci_automation または admin ロールが必要です。
Tokyo 以降、要求された操作を実行するためにインスタンス全体のロック/ミューテックスを取得する必要がある API エンドポイントは、インスタンス全体のロック/ミューテックスが占有されている間は要求を拒否するのではなく、CICDキューを使用します。複数の CICD パイプラインは、拒否を検出して再試行することなく同時に要求を行い、代わりに、以前に成功した要求の場合と同様に進行状況を監視するだけで済みます。この動作はデフォルトでオンになっています。
CI/CD - GET /sn_cicd/app/batch/results/{result_id}
指定された結果識別子に基づいてバッチインストールの結果を返します。
/sn_cicd/app/batch/install エンドポイントを呼び出した後にこのメソッドを呼び出し、バッチインストールの結果を取得します。/sn_cicd/app/batch/install エンドポイントで返される結果の links.results.id パラメーターで返された値を、このエンドポイントの result_id として使用します。インストールがまだ完了していない場合は、/api/sn_cicd/progress/{progress_id} エンドポイントを呼び出して、インストールの進捗状況に関する情報を取得することもできます。
URL 形式
バージョニングされた URL: /api/sn_cicd/{api_version}/app/batch/results/{result_id}
デフォルトの URL:/api/sn_cicd/app/batch/results/{result_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| result_id | 結果情報を返すバッチインストールの sys_id。この値は、/sn_cicd/app/batch/install エンドポイントの links.results.id パラメーターで返されます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| batch_items | 各オブジェクトがパッケージインストールの詳細を提供する JSON アレイ。 データタイプ:アレイ |
| batch_items.customization_version | batch_items.type パラメーターが application または plugin に設定され、requested_customization_version パラメーターがバッチインストール要求で渡された場合にのみ適用されます。インストールするストアアプリケーションまたはスコープ対象の ServiceNow プラグインのカスタマイズパッケージのバージョン (1.0.2 や 2.3 など)。 データタイプ:文字列 |
| batch_items.id | インストールするアプリケーションの sys_id またはプラグインの識別子。開始する /sn_cicd/app/batch/install エンドポイント呼び出しの packages.id パラメーターと同じです。 データタイプ:文字列 |
| batch_items.install_date | パッケージがインストールされた日時。要求がまだ進行中の場合は空です。 データタイプ:文字列 |
| batch_items.name | パッケージの名前。 データタイプ:文字列 |
| batch_items.notes | パッケージに関するユーザー指定のメモ。開始する /sn_cicd/app/batch/install エンドポイント呼び出しの packages.notes パラメーターと同じです。 データタイプ:文字列 |
| batch_items.state | 関連するパッケージインストールの現在のステータス。 可能な値:
データタイプ:文字列 |
| batch_items.status_message | パッケージのインストールやカスタマイズ中に発生したエラーについて説明します。 データタイプ:文字列 |
| batch_items.type | アプリケーションのタイプ。開始する /sn_cicd/app/batch/install エンドポイント呼び出しの packages.type パラメーターと同じです。 有効な値:
データタイプ:文字列 |
| batch_items.url | ServiceNow インスタンスの関連するパッケージインストールレコードの URL。 データタイプ:文字列 |
| batch_items.version | インストールするパッケージのバージョン (1.0.2 や 2.3 など)。開始する /sn_cicd/app/batch/install エンドポイント呼び出しの packages.requested_version パラメーターと同じです。 データタイプ:文字列 |
| batch_plan | インストールバッチ計画について記述します。 データタイプ:オブジェクト |
| batch_plan.id | 返される結果情報の sys_id。result_id 要求パラメーターで渡された値と同じです。 データタイプ:文字列 |
| batch_plan.name | ユーザーが指定したこのバッチ要求のわかりやすい名前。開始する /sn_cicd/app/batch/install エンドポイント呼び出しの name パラメーターと同じです。 データタイプ:文字列 |
| batch_plan.notes | バッチインストールが呼び出されたときに渡された注意事項。開始する /sn_cicd/app/batch/install エンドポイント呼び出しの notes パラメーターと同じです。 データタイプ:文字列 |
| batch_plan.state | バッチインストール全体の現在のステータス。 可能な値:
データタイプ:文字列 |
| batch_plan.url | ServiceNow インスタンスのバッチインストール計画レコードの URL。 データタイプ:文字列 |
cURL 要求
この例では、「Release 2.0 IT Operations」というバッチインストール計画のステータスを確認します。
curl 'instance.servicenow.com/api/sn_cicd/app/batch/results/df24b1e9db2d0110b5e3f6c5ae97c561 \
--request GET \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"batch_plan": {
"name":“Release 2.0 IT Operations”,
"id": "df24b1e9db2d0110b5e3f6c5ae97c561",
"url": "https://instance.service-now.com/sys_batch_install_plan.do?sys_id=df24b1e9db2d0110b5e3f6c5ae97c561",
"state": "Installed",
"notes": "User specified notes for batch install plan",
}
"batch_items": [
{
"name": "com.sn_cicd_spoke",
"type": "Application",
"version": "7.0.0",
"state": "Installed",
"install_date": "2020-08-31 15:30:01",
"id": "c159b1e9db1c0010b5e3f6c5ae961903",
"url":"https://instance.service-now.com/sys_batch_install_item.do?sys_id=c159b1e9db1c0010b5e3f6c5ae961903",
"notes" : ""
},
{
"name": "Customization for CSM App1",
"type": "Application",
"version": "1.0.0",
"state": "Installed",
"install_date": "2020-08-31 15:32:01",
"id": "e824b1e9db2d1001b5e3f6c5ae97d628",
"url": "https://instance.service-now.com/sys_batch_install_item.do?sys_id=e824b1e9db2d1001b5e3f6c5ae97d628",
"notes": "Customized headers.",
"customization_version": "2.1.1”,
"status_message": ""
}]
}
}
CI/CD - GET /sn_cicd/instance_scan/result/{progress_id}
渡された進捗 ID に関連付けられた CI/CD インスタンススキャン機能の現在の進捗状況とステータスを返します。このメソッドは、他のインスタンススキャン CI/CD エンドポイントの 1 つ (/sn_cicd/instance_scan/full_scan や /sn_cicd/instance_scan/point_scan など) を呼び出した後に呼び出します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/instance_scan/result/{progress_id}
デフォルトの URL:/api/sn_cicd/instance_scan/result/{progress_id}
サポートされている要求パラメーター
| パラメーター | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| progress_id | 進捗状況情報を返す関数の一意の識別子。この値は、アクションを開始したエンドポイントの links.progress.id パラメーター (/sn_cicd/instance_scan/full_scan や /sn_cicd/instance_scan/point_scan など) で返されます。 データタイプ:文字列 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
要求本文
API は、次の JSON または XML 要素を要求本文で受け入れます。
| 要素 | 説明 |
|---|---|
| なし |
応答本文
API は、次の JSON または XML 要素を応答本文で返します。
| 要素 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.findings | インスタンススキャン結果に関する情報を含むオブジェクト。 |
| links.findings.label | インスタンススキャン結果に関する追加情報。 |
| links.findings.url | チェックに違反したレコードリストを取得するために使用する URL。 |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 進捗状況の詳細の一意の識別子。 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| links.results | 結果情報。 データタイプ:オブジェクト |
| links.results.id | インスタンススキャン結果レコードの sys_id。 |
| links.results.url | インスタンススキャンの結果を取得するために使用する URL。 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 操作が失敗した理由に関する追加情報。操作が成功した場合は空です。 データタイプ:文字列 |
サンプル cURL 要求
curl 'instance.service-now.com/api/sn_cicd/instance_scan/result/a74c70a11b7800103d374087bc4bcb28' \
--request GET \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"findings": {
"url": "https://instance.service-now.com/api/now/table/scan_finding?sysparm_query%3Dresult%3D6f4cf8651b7800103d374087bc4bcb41%5EORDERBYsys_id",
"label": "First 10,000 findings"
},
"progress": {
"id": "a74c70a11b7800103d374087bc4bcb28",
"url": "https://instance.service-now.com/api/sn_cicd/progress/a74c70a11b7800103d374087bc4bcb28"
},
"results": {
"id": "a74c70a11b7800103d374087bc4bcb28",
"url": "https://instance.service-now.com/api/sn_cicd/instance_scan/result/a74c70a11b7800103d374087bc4bcb28"
}
},
"status": "2",
"status_label": "Successful",
"status_message": "",
"status_detail": "",
"error": ""
}
}
CI/CD - GET /sn_cicd/progress/{progress_id}
指定された進捗 ID に関連付けられた関数の 継続的インテグレーションと継続的デリバリー (CICD) 現在の進捗状況とステータスを返します。
/sn_cicd/app_repo/publish、/sn_cicd/app_repo/install、/sn_cicd/testsuite/run、/sn_cicd/sc/apply_stash などの非同期 CICD エンドポイントの 1 つを呼び出した後に、このメソッドを呼び出します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/progress/{progress_id}
デフォルトの URL:/api/sn_cicd/progress/{progress_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| progress_id | 進捗状況情報を返す関数の一意の識別子。 この値は、 links.progress.id アクションを開始したエンドポイントのパラメーター ( /sn_cicd/app_repo/publish、 /sn_cicd/app_repo/install、 /sn_cicd/testsuite/run、 /sn_cicd/sc/apply_stash など) で返されます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| links.results | 結果情報。 データタイプ:オブジェクト |
| links.results.id | 結果情報の一意の識別子。関連する結果エンドポイントを呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.results.url | エンドポイント実行の結果 (results など) を取得するために使用する URL。 データタイプ:文字列 |
| links.source | ソース情報。 データタイプ:オブジェクト |
| links.source.id | 実行トラッカー [sys_execution_tracker] テーブルのソースレコードの一意の識別子。 データタイプ:文字列 |
| links.source.url | 実行トラッカー [sys_execution_tracker] テーブルのソース情報を取得するために使用する URL。 データタイプ:文字列 |
| links.stash | apply_changes操作中に が作成された場合、このオブジェクトにはスタッシュに関する情報が含まれます。スタッシュが作成されていない場合、このオブジェクトは返されません。 データタイプ: オブジェクト |
| links.stash.id | 作成されたスタッシュの一意の識別子。スタッシュを適用するエンドポイントを呼び出す場合は、 CI/CD - POST /sn_cicd/sc/apply_stash/{stash_id} この値を使用します。 データタイプ:文字列 |
| links.stash.url | 関連付けられたスタッシュの URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
テストスイート実行の進捗状況の取得
curl 'instance.servicenow.com/api/sn_cicd/progress/a4fae8911bdc00103d374087bc4bcbbd' \
--request GET \
--header 'Accept: application/json' \
--user 'username':'password'
変更の適用呼び出しの進行状況。
{
"result": {
"links": {
"progress": {
"id": "a4fae8911bdc00103d374087bc4bcbbd",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/a4fae8911bdc00103d374087bc4bcbbd"
},
"source": {
"id": "59c4c4d11b5c00103d374087bc4bcb26",
"url": "https://instance.servicenow.com/api/now/table/sys_app/59c4c4d11b5c00103d374087bc4bcb26"
}
},
"status": "2",
"status_label": "Successful",
"status_message": "This operation succeeded",
"status_detail": "Successfully applied commit 1f14e11a7dedcbfa194beb5875fcdaa15ed8accb from source control",
"error": "",
"percent_complete": 100
}
}
変更の適用呼び出しの進行状況を取得します。この場合、Studio のインスタンスに未保存/コミットされていない変更があったため、未保存の変更を保持するスタッシュが作成されました
curl 'instance.servicenow.com/api/sn_cicd/progress/a4fae8911bdc00103d374087bc4bcbbd' \
--request GET \
--header 'Accept: application/json' \
--user 'username':'password'
作成されたスタッシュに関する情報の提供の進捗状況。
{
"result": {
"links": {
"progress": {
"id": "5b12eca4e0429110f8771827f8fd36a4",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/5b12eca4e0429110f8771827f8fd36a4"
},
"stash": {
"id": "fc2224e4e0429110f8771827f8fd3634",
"url": "https://instance.servicenow.com/api/sn_cicd/sc/apply_stash/fc2224e4e0429110f8771827f8fd3634"
}
},
"status": "2",
"status_label": "Successful",
"status_message": "This operation succeeded",
"status_detail": "Successfully applied commit fa5626f6f1f7fef677c16b4a0dd8b22ba8a6e311 from source control",
"error": "",
"percent_complete": 100
}
}
cURL 要求
curl 'instance.servicenow.com/api/sn_cicd/progress/5b12eca4e0429110f8771827f8fd36a4' \
--request GET \
--header 'Accept: application/json' \
--user 'username':'password'
テストスイート実行の進捗状況 (/sn_cicd/testsuite/run)。
{
"result": {
"links": {
"progress": {
"id": "e891389d1b1040103d374087bc4bcb75",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/e891389d1b1040103d374087bc4bcb75"
},
"results": {
"id": "2891389d1b1040103d374087bc4bcb09",
"url": "https://instance.servicenow.com/api/sn_cicd/testsuite/results/2891389d1b1040103d374087bc4bcb09"
}
},
"status": "2",
"status_label": "Successful",
"status_message": "Suite passed",
"status_detail": "Suite passed",
"error": "",
"percent_complete": 100
}
}
CI/CD - GET /sn_cicd/testsuite/results/{result_id}
指定された結果識別子に基づいてテストスイート実行の結果を返します。
/sn_cicd/progress/{progress_id} を呼び出した後にこのエンドポイントを呼び出して、実行されたテストスイートの結果を取得します。
URL 形式
バージョニングされた URL: /api/sn_cicd/{api_version}/testsuite/results/{result_id}
デフォルトの URL:/api/sn_cicd/testsuite/results/{result_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| result_id | 取得するテストスイート結果の一意の識別子。対応する /sn_cicd/progress/{progress_id} エンドポイント呼び出しがこの情報を返します。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| child_suite_results | ネストされたテストスイートの結果。このコンテンツの形式は親テストと同じです。 |
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id を含むオブジェクト。 データタイプ:オブジェクト |
| links.results | 結果情報を含むオブジェクト。 データタイプ:オブジェクト |
| links.results.id | 結果情報の一意の識別子。エンドポイント /sn_cicd/testsuite/results/{result_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.results.url | エンドポイント実行の結果 (results など) を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 |
| rolledup_test_error_count | エラーのあるテストの数。 データタイプ:数値 |
| rolledup_test_failure_count | 失敗したテストの数。 データタイプ:数値 |
| rolledup_test_skip_count | スキップされたテストの数。 データタイプ:数値 |
| rolledup_test_success_count | 正常に実行されたテストの数。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用します (「0:処理待ち」など)。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用します (「0:処理待ち」など)。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
| test_suite_duration | テストスイートの実行にかかった時間。 単位:秒 データタイプ:文字列 |
| test_suite_name | テストスイートの名前。 データタイプ:文字列 |
| test_suite_status | テストスイートのステータス。 データタイプ:文字列 |
cURL 要求
curl 'instance.servicenow.com/api/sn_cicd/testsuite/results/2891389d1b1040103d374087bc4bcb09' \
--request GET \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"results": {
"id": "2891389d1b1040103d374087bc4bcb09",
"url": "https://instance.servicenow.com/sys_atf_test_suite_result.do?sys_id=2891389d1b1040103d374087bc4bcb09"
}
},
"status": "2",
"status_label": "Successful",
"status_message": "",
"status_detail": "",
"error": "",
"test_suite_status": "success",
"test_suite_duration": "1 Second",
"rolledup_test_success_count": 1,
"rolledup_test_failure_count": 0,
"rolledup_test_error_count": 0,
"rolledup_test_skip_count": 0,
"test_suite_name": "Quick Test",
"child_suite_results": []
}
}
CI/CD - POST /sn_cicd/app/batch/install
指定された単一のバッチに 2 つ以上のパッケージをインストールします。
- アプリケーション:
- 会社が所有していない ServiceNow Store 内のスコープ対象のアプリケーション
- 会社が所有しているアプリケーションリポジトリ内のスコープ対象のアプリケーションまたはグローバルアプリケーション
- アプリケーションリポジトリ内のストアアプリケーションのアプリケーションカスタマイズ
- ServiceNow プラグイン:
プラグインにパッケージ化され、アプリケーションリポジトリに公開された、スコープ対象のアプリケーションのアプリケーションカスタマイズ。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/app/batch/install
デフォルトの URL:/api/sn_cicd/app/batch/install
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| name | 必須です。ユーザーが指定したこのバッチ要求のわかりやすい名前。 データタイプ:文字列 |
| notes | バッチインストール計画に関するユーザー指定の追加メモ。 データタイプ:文字列 デフォルト:Null |
| packages | 必須です。インストールするパッケージの詳細を各オブジェクトが指定する JSON アレイ。 データタイプ:アレイ |
| packages.id | 必須です。インストールするアプリケーションの sys_id またはプラグインの識別子。 データタイプ:文字列 |
| packages.load_demo_data | パッケージのインストール時にデモデータをロードするかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| packages.notes | パッケージに関するユーザー指定のメモ。 データタイプ:文字列 デフォルト:Null |
| packages.requested_customization_version | インストールするストアアプリケーションまたはスコープ対象の ServiceNow プラグインに対するアプリケーションカスタマイズのバージョン (1.0.2 や 2.3 など)。 データタイプ:文字列 デフォルト:なし。このパラメーターが設定されていない場合、システムはアプリケーションのカスタマイズを検索しません。 |
| packages.requested_version | packages.type が applicationに設定されている場合は必須です。plugin に設定されている場合は無視されます。インストールするパッケージのバージョン (1.0.2 や 2.3 など)。 データタイプ:文字列 |
| packages.type | 必須です。パッケージのタイプ。 有効な値:
データタイプ:文字列 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 405 | 無効なメソッドです。この機能は無効です。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| links.results | 結果リンク情報を記述します。 データタイプ:オブジェクト |
| links.results.id | バッチエンドポイント呼び出しの結果の sys_id。links.results.url で指定されたエンドポイントを呼び出してバッチインストールの結果をクエリする場合は、この値を使用します。 データタイプ:文字列 |
| links.results.url | バッチインストールの結果を取得するために使用する URL。 データタイプ:文字列 |
| links.rollback | バッチインストールのロールバック情報を記述します。 データタイプ:オブジェクト |
| links.rollback.id | インストールされたパッケージのロールバック詳細の sys_id。このパラメーターを使用すると、/sn_cicd/app/batch/rollback/{rollback_id} エンドポイントを使用して、指定されたパッケージのインストールを以前のバージョンにロールバックできます。 注: ロールバック機能は、インストールが完了した後にのみ使用できます。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
この例では、インストールする 3 つのパッケージ (タイプごとに 1 つ) を含む「Release 2.2 Deployment」と呼ばれるバッチインストールを開始します。
curl 'instance.servicenow.com/api/sn_cicd/app/batch/install \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password' \
--data { "name": "Release 2.2 Deployment",
"packages": [
{
"id": "syd_id_abcefghi",
"type": "application",
"load_demo_data": false,
"requested_version": "1.0.2",
"notes": "User specific text to describe this application install"
},
{
"id": "syd_id_defabcde",
"type": "application",
"requested_version": "1.0.0",
"requested_customization_version": "2.0.7",
"notes": "Customization for CSM App1"
},
{
"id": "com.glide.some.plugin",
"type": "plugin",
"load_demo_data": true,
"notes": "Plugin related notes"
}]
}
{
"result": {
"links": {
"progress": {
"id": "c159b1e9db1c0010b5e3f6c5ae961903",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/c159b1e9db1c0010b5e3f6c5ae961903"
},
"results": {
"id": "df24b1e9db2d0110b5e3f6c5ae97c561",
"url": "https://instance.servicenow.com/api/sn_cicd/app/batch/results/df24b1e9db2d0110b5e3f6c5ae97c561"
},
"rollback":{
"id": "a329f82e871da64c724ba21c82a764f2"
},
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/app/batch/rollback/{rollback_id}
特定のバッチインストールに関連するすべてのパッケージを以前のバージョンにロールバックします。
このエンドポイントは、/sn_cicd/app/batch/install エンドポイントと連携して機能します。rollback_id は、このエンドポイントで返される結果で提供されます。このエンドポイントが呼び出されると、関連するインストールで指定されたすべてのパッケージがロールバックされます。個々のパッケージをロールバックすることはできません。以前のバージョンがない場合、エンドポイントは関連するパッケージをアンインストールします。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/app/batch/rollback/{rollback_id}
デフォルトの URL:/api/sn_cicd/app/batch/rollback/{rollback_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| rollback_id | インストールされたパッケージを以前のバージョンにロールバックするためのバッチインストール計画の sys_id。この値は、/sn_cicd/app/batch/install エンドポイントの links.rollback.id パラメーターで返されます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
この例では、指定されたインストールバッチ計画内のすべてのパッケージを以前のバージョンにロールバックします。
curl 'instance.servicenow.com/api/sn_cicd/app/batch/rollback/a329f82e871da64c724ba21c82a764f2 \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "c159b1e9db1c0010b5e3f6c5ae961903",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/c159b1e9db1c0010b5e3f6c5ae961903"
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/app_repo/install
指定されたアプリケーションを、アプリケーションリポジトリからエンドポイント呼び出しを行うインスタンスにインストールします。
このエンドポイントを使用すると、未変更とカスタマイズ済みの両方の ServiceNow ベースシステムと ServiceNow Store アプリケーション、カスタマイズされた ServiceNow プラグイン、および独自の ServiceNow アプリケーションをインストールできます。
特定のユースケースを実装するために渡す必要があるパラメーターの概要を以下に示します。指定されていないすべてのパラメーターは渡されず、関連付けられたデフォルトが使用されます。
- ベースアプリケーションのみをインストールし、対応するアプリケーションのカスタマイズをインストールしない場合は、次のようになります。
- sys_id:カスタマイズされたベースアプリケーションの sys_id。
- base_app_version:インストールするベースアプリケーションのバージョン。
- 指定されたバージョンのアプリケーションのカスタマイズをインストールし、推奨されるベースアプリケーションバージョンを自動的にインストールする場合は、次のようになります。推奨されるベースアプリケーションバージョンは、カスタマイズが最後に公開された時点でインスタンスにインストールされていたベースアプリケーションのバージョンです。アプリケーションのカスタマイズのすべてのバージョンに、対応する推奨のベースアプリケーションバージョンがあります。
- sys_id:カスタマイズされたアプリケーションの sys_id。
- auto_upgrade_base_app:true
- version:インストールするアプリケーションのカスタマイズのバージョン。
- 最新バージョンのアプリケーションのカスタマイズと、その対応する推奨のベースアプリケーションバージョンをインストールする場合は、次のようになります。
- sys_id:カスタマイズされたアプリケーションの sys_id。
- auto_upgrade_base_app:true
- 最新バージョンのアプリケーションのカスタマイズをインストールするが、ベースアプリケーションをアプリケーションのカスタマイズの推奨されるベースアプリケーションバージョンにアップグレードしない場合は、次のようになります。
- sys_id:カスタマイズされたアプリケーションの sys_id。
- auto_upgrade_base_app:false
- アプリケーションのカスタマイズを、現在のリリースのスコープ付き ServiceNow プラグインとともにインストールします。
- scope:カスタマイズされたプラグインのスコープ、または
- sys_id:カスタマイズされたアプリケーションの sys_id。これはプラグインの ID ではありません。
- version:インストールするアプリケーションのカスタマイズのバージョン。
- 既にインストールされている有効化されたスコープ対象プラグインのアプリケーションのカスタマイズをインストールする場合は、次のようになります。
- sys_id:カスタマイズされたアプリケーションの sys_id。これはプラグインの ID ではありません。
- auto_upgrade_base_app:false
- version:インストールするアプリケーションのカスタマイズのバージョン。
ベースプラグインはファミリーリリースごとに 1 つのバージョンのみを持つことができるため、auto_upgrade_base_app および base_app_version パラメーターはプラグインのアプリケーションカスタマイズのインストールには適用されません。インスタンスで初めてプラグインを有効にする場合は、代わりに /sn_cicd/plugin/{plugin_id}/activate エンドポイントを使用します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/app_repo/install
デフォルトの URL:/api/sn_cicd/app_repo/install
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| auto_upgrade_base_app | アプリケーションのカスタマイズをインストールする予定であり、現在インストールされているバージョンよりも後のバージョンでベースアプリケーションが構築されている場合にのみ適用されます。 関連付けられたベースアプリケーションを新しいバージョンに自動的にアップグレードするかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| base_app_version | インストールするベースアプリケーションのバージョン。ベースアプリケーションは、ServiceNow Store で利用可能な任意のサードパーティアプリケーションです。 アプリケーションにアプリケーションのカスタマイズがない場合、またはアプリケーションにアプリケーションのカスタマイズがあり、ベースアプリケーションのみを更新する場合は、このパラメーターに、アプリケーションの更新されたバージョンを入力します。アプリケーションのカスタマイズを更新する場合は、このパラメーターを渡すのではなく、version パラメーターを渡します。 データタイプ:文字列 デフォルト:Null |
| scope | sys_id が指定されていない場合は必須です。アプリケーションのスコープ名 (x_aah_custom_app など)。この値は、カスタムアプリケーション [sys_app] テーブルまたはストアアプリケーション [sys_store_app] テーブルの scope フィールドで見つけることができます。 データタイプ:文字列 |
| sys_id | scope が指定されていない場合は必須です。インストールするアプリケーションの sys_id。この値は、カスタムアプリケーション [sys_app] テーブルまたはストアアプリケーション [sys_store_app] テーブルの Sys ID フィールドで見つけることができます。 データタイプ:文字列 |
| version | インストールするアプリケーションのバージョン。 データタイプ:文字列 デフォルト:base_app_version パラメーターが空で auto_upgrade_base_app パラメーターが true に設定されている場合、最新のアプリケーションのカスタマイズと、その推奨されるベースアプリケーションバージョンがインストールされます (ベースアプリケーションがダウングレードされない限り)。 auto_upgrade_base_app パラメーターが false の場合、アプリケーションのカスタマイズをインストールしますが、ベースアプリケーションはアップグレードしません。 base_app_version パラメーターが定義されている場合、ベースアプリケーションのみをインストールします。 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| rollback_version | 利用可能な場合は、以前にインストールされたバージョン。利用可能でない場合は null です。 データタイプ:文字列 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
curl 'instance.servicenow.com/api/sn_cicd/app_repo/install?sys_id=2d146921dbd80010caf55268dc9619d8' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "c159b1e9db1c0010b5e3f6c5ae961903",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/c159b1e9db1c0010b5e3f6c5ae961903"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0,
"rollback_version": "1.1.0"
}
}
CI/CD - POST /sn_cicd/app_repo/publish
指定されたアプリケーションとそのすべてのアーティファクトをアプリケーションリポジトリに公開します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/app_repo/publish
デフォルトの URL:/api/sn_cicd/app_repo/publish
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| dev_notes | アプリケーションとともに保存する開発者メモ。 データタイプ:文字列 |
| scope | 指定されていない場合は sys_id 必須です。アプリケーションのスコープ。この値は、カスタムアプリケーション [sys_app] テーブルの scope フィールドで見つけることができます。 データタイプ:文字列 |
| sys_id | 指定されていない場合は scope 必須です。リポジトリに保存するアプリケーションの sys_id。この値は、カスタムアプリケーション [sys_app] テーブルの Sys ID フィールドで見つけることができます。 データタイプ:文字列 |
| version | アプリケーションを保存するバージョン。 バージョン番号が渡されると、公開プロセスはそのバージョンを使用し、ローカルアプリケーションのバージョンが異なる場合は更新します。バージョン番号が渡されない場合、公開プロセスはローカルアプリケーションの現在のバージョンを使用し、そのバージョンがアプリケーションリポジトリに存在すると失敗します。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求は失敗しました。 考えられる問題:
|
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
次の例は、指定されたsys_idとそのすべてのアーティファクトとともにアプリケーションをアプリケーションリポジトリに公開する方法を示しています。
curl 'instance.servicenow.com/api/sn_cicd/app_repo/publish?sys_id=4dd9686d1b9800103d374087bc4bcb3d' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "d174f8e11bd800103d374087bc4bcbd9",
"url": "https://instance.service-now.com/api/sn_cicd/progress/d174f8e11bd800103d374087bc4bcbd9"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/app_repo/rollback
指定されたバージョンへの、指定されたアプリケーションのロールバックを開始します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/app_repo/rollback
デフォルトの URL:/api/sn_cicd/app_repo/rollback
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| scope | sys_id が指定されていない場合は必須です。ロールバックするアプリケーションのスコープ名。 データタイプ:文字列 |
| sys_id | scope が指定されていない場合は必須です。ロールバックするアプリケーションの sys_id。 データタイプ:文字列 |
| version | 必須です。ロールバック操作後に想定されるアプリケーションのバージョン。要求がアプリのカスタマイズのインストールをロールバックすることである場合は、ロールバック操作後にシステムが持つと想定されるベースアプリケーションのバージョンにこのフィールドを設定します。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
curl 'instance.servicenow.com/api/sn_cicd/app_repo/rollback?sys_id=2d146921dbd80010caf55268dc9619d8&version=1.1.0' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "f7ddb1eddb1c0010b5e3f6c5ae9619c1",
"url": "https://instance.service-now.com/api/sn_cicd/progress/f7ddb1eddb1c0010b5e3f6c5ae9619c1"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/instance_scan/full_scan
インスタンスに存在するすべてのアクティブなチェックが実行されます。
インスタンススキャン で提供されるチェックを実行することも、独自のチェックを作成することもできます。詳細については、「 インスタンススキャン」を参照してください。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/instance_scan/full_scan
デフォルトの URL:/api/sn_cicd/instance_scan/full_scan
サポートされている要求パラメーター
| パラメーター | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
要求本文
API は、次の JSON または XML 要素を要求本文で受け入れます。
| 要素 | 説明 |
|---|---|
| なし |
応答本文
API は、次の JSON または XML 要素を応答本文で返します。
| 要素 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 進捗状況の詳細の一意の識別子。エンドポイント /sn_cicd/instance_scan/result/{progress_id} を呼び出す場合は、この値を使用します。 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 操作が失敗した理由に関する追加情報。操作が成功した場合は空です。 データタイプ:文字列 |
サンプル cURL 要求
curl 'instance.service-now.com/api/sn_cicd/instance_scan/full_scan' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "a4fae8911bdc00103d374087bc4bcbbd",
"url": "https://instance.service-now/api/sn_cicd/progress/a4fae8911bdc00103d374087bc4bcbbd"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": ""
}
}
CI/CD - POST /sn_cicd/instance_scan/point_scan
指定されたレコードに対して適用可能なすべてのチェックを実行します。
たとえば、カタログアイテムに対してポイントスキャンを実行すると、カタログアイテムテーブルに適用可能なチェックのみが実行され、指定されたレコードのみがスキャンされます。
インスタンススキャン で提供されるチェックを実行することも、独自のチェックを作成することもできます。詳細については、「 インスタンススキャン」を参照してください。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/instance_scan/point_scan
デフォルトの URL:/api/sn_cicd/instance_scan/point_scan
サポートされている要求パラメーター
| パラメーター | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| target_table | 必須です。スキャンするレコードが存在するテーブルの名前 (「Incident」など)。 データタイプ:文字列 |
| target_sys_id | 必須です。スキャンする指定されたテーブル内のレコードの sys_id。 データタイプ:文字列 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。クエリパラメーターが無効であるか空です。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
要求本文
API は、次の JSON または XML 要素を要求本文で受け入れます。
| 要素 | 説明 |
|---|---|
| なし |
応答本文
API は、次の JSON または XML 要素を応答本文で返します。
| 要素 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 進捗状況の詳細の一意の識別子。エンドポイント /sn_cicd/instance_scan/result/{progress_id} を呼び出す場合は、この値を使用します。 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 操作が失敗した理由に関する追加情報。操作が成功した場合は空です。 データタイプ:文字列 |
サンプル cURL 要求
curl 'instance.service-now.com/api/sn_cicd/instance_scan/point_scan?target_table=incident&target_sys_id=2d146921dbd80010caf55268dc9619d8' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "a4fae8911bdc00103d374087bc4bcbbd",
"url": "https://instance.service-now/api/sn_cicd/progress/a4fae8911bdc00103d374087bc4bcbbd"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": ""
}
}
CI/CD - POST /sn_cicd/instance_scan/suite_scan/combo/{combo_sys_id}
以前に実行されたスイートとターゲット (スコープ対象アプリまたは更新セット) を使用してスキャンを実行します。
このエンドポイントを呼び出す前に、 /sn_cicd/instance_scan/suite_scan/{suite_sys_id}/scoped_apps または /sn_cicd/instance_scan/suite_scan/{suite_sys_id}/update_sets エンドポイントを呼び出すか、UI で スイートスキャンを実行する必要があります 。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/instance_scan/suite_scan/combo/{combo_sys_id}
デフォルトの URL:/api/sn_cicd/instance_scan/suite_scan/combo/{combo_sys_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| combo_sys_id | 実行するスキャンの sys_id。スキャンは再実行が必要な既存のスキャンである必要があります。コンボ [scan_combo] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 要素 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 進捗状況の詳細の一意の識別子。エンドポイント /sn_cicd/instance_scan/result/{progress_id} を呼び出す場合は、この値を使用します。 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 操作が失敗した理由に関する追加情報。操作が成功した場合は空です。 データタイプ:文字列 |
cURL 要求
curl "https://instance.servicenow.com/api/sn_cicd/instance_scan/suite_scan/combo/245d29cc1bd32010178aed72604bcb4b" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
応答本文 - 成功。
{
"result": {
"links": {
"progress": {
"id": "c08be5c71b1b2010178aed72604bcb6e",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/c08be5c71b1b2010178aed72604bcb6e"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": ""
}
}
CI/CD - POST /sn_cicd/instance_scan/suite_scan/{suite_sys_id}/scoped_apps
スコープ対象のアプリのリストに対して、スイート内のすべてのアクティブなチェックを実行します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/instance_scan/suite_scan/{suite_sys_id}/scoped_apps
デフォルトの URL:/api/sn_cicd/instance_scan/suite_scan/{suite_sys_id}/scoped_apps
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| suite_sys_id | 実行する スイート のsys_id。スイート [scan_check_suite] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| app_scope_sys_ids | 必須です。スキャンするスコープ対象アプリケーションの sys_id のリスト。アプリケーション [sys_scope] テーブルにあります。アレイを空のアレイにすることはできません。 データタイプ:アレイ |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | 要求本文のデータ形式。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 要素 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 進捗状況の詳細の一意の識別子。エンドポイント /sn_cicd/instance_scan/result/{progress_id} を呼び出す場合は、この値を使用します。 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 操作が失敗した理由に関する追加情報。操作が成功した場合は空です。 データタイプ:文字列 |
cURL 要求
この例では、スコープ対象の 1 つのアプリケーションに対して、スイート内のすべてのアクティブなチェックを実行します。
curl "https://instance.servicenow.com/api/sn_cicd/instance_scan/suite_scan/833655cc1b94101046e87733cd4bcb4e/scoped_apps" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{app_scope_sys_ids: [\"078e8020950f12a215a92e8ad9b346e0\"]}" \
--user 'username':'password'
応答本文 - 成功。
{
"result": {
"links": {
"progress": {
"id": "147fc14b1b572010178aed72604bcbca",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/147fc14b1b572010178aed72604bcbca"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": ""
}
}
CI/CD - POST /sn_cicd/instance_scan/suite_scan/{suite_sys_id}/update_sets
更新セットのリストに対して、スイート内のすべてのアクティブなチェックを実行します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/instance_scan/suite_scan/{suite_sys_id}/update_sets
デフォルトの URL:/api/sn_cicd/instance_scan/suite_scan/{suite_sys_id}/update_sets
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| suite_sys_id | 実行する スイート のsys_id。スイート [scan_check_suite] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| update_set_sys_ids | 必須です。update_set_sys_ids 更新セット [sys_update_set] テーブルにあります。アレイを空のアレイにすることはできません。 データタイプ:アレイ |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | 要求本文のデータ形式。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 要素 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 進捗状況の詳細の一意の識別子。エンドポイント /sn_cicd/instance_scan/result/{progress_id} を呼び出す場合は、この値を使用します。 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 操作が失敗した理由に関する追加情報。操作が成功した場合は空です。 データタイプ:文字列 |
cURL 要求
この例では、1 つの更新セットに対して、スイート内のすべてのアクティブなチェックを実行します。
curl "https://instance.servicenow.com/api/sn_cicd/instance_scan/suite_scan/833655cc1b94101046e87733cd4bcb4e/update_sets" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{update_set_sys_ids: [\"7abef63c1b572010178aed72604bcbfd\"]}" \
--user 'username':'password'
応答本文 - 成功。
{
"result": {
"links": {
"progress": {
"id": "d27511031b972010178aed72604bcb72",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/d27511031b972010178aed72604bcb72"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": ""
}
}
CI/CD - POST /sn_cicd/plugin/{plugin_id}/activate
指定されたプラグインを有効にします。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/plugin/{plugin_id}/activate
デフォルトの URL:/api/sn_cicd/plugin/{plugin_id}/activate
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| plugin_id | プラグインの一意の識別子。この識別子は、「ID」という名前で識別され、目的のプラグインのカード内の [プラグイン] ページで見つけることができます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| links.results | 結果情報。 データタイプ:オブジェクト |
| links.results.id | 結果情報の一意の識別子。関連する結果エンドポイントを呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.results.url | エンドポイント実行の結果 (results など) を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
curl 'instance.servicenow.com/api/sn_cicd/plugin/com.glide.web_service_aggregate/activate' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "5b3f052ddb580010caf55268dc961963",
"url": "https://instance.service-now.com/api/sn_cicd/progress/5b3f052ddb580010caf55268dc961963"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/plugin/{plugin_id}/rollback
指定されたプラグインを、以前にインストールされているバージョンにロールバックします。以前のバージョンがインストールされていない場合は、エラーが返されます。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}plugin/{plugin_id}/rollback
デフォルトの URL:/api/sn_cicd/plugin/{plugin_id}/rollback
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| plugin_id | プラグインの一意の識別子。この識別子は、「ID」という名前で識別され、目的のプラグインのカード内の [プラグイン] ページで見つけることができます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
curl 'instance.servicenow.com/api/sn_cicd/plugin/com.glide.web_service_aggregate/rollback' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "6185dd61db980010caf55268dc961916",
"url": "https://instance.service-now.com/api/sn_cicd/progress/6185dd61db980010caf55268dc961916"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/sc/apply_changes
リモートソースコントロールから指定されたローカルアプリケーションまたはアプリケーションのカスタマイズへの変更の適用を開始します。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/sc/apply_changes
デフォルトの URL:/api/sn_cicd/sc/apply_changes
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| auto_upgrade_base_app | アプリのカスタマイズに変更が適用され、Git リポジトリの最新のコミットが現在ローカルインスタンスにインストールされているベースアプリケーションのバージョンよりも新しいバージョンで構築されている場合にのみ適用されます。ベースアプリケーションを新しいバージョンに自動アップグレードするかどうかを示すフラグ。 データタイプ:ブーリアン デフォルト:true |
| branch_name | アプリケーションを取得するソースコントロールシステム内の分岐の名前。 データタイプ:文字列 デフォルト:ソースコントロールシステムで指定されたデフォルトの分岐。 |
| scope | sys_id が指定されていない場合は必須です。変更を適用するアプリケーションのスコープ名 (x_aah_custom_app など)。この値は、アプリのカスタマイズのカスタムアプリケーション [sys_app] テーブルまたはストアアプリケーション [sys_store_app] テーブルの scope フィールドで見つけることができます。 データタイプ:文字列 |
| sys_id | scope が指定されていない場合は必須です。変更を適用するアプリケーションの sys_id。この値は、アプリのカスタマイズのカスタムアプリケーション [sys_app] テーブルまたはストアアプリケーション [sys_store_app] テーブルの Sys ID フィールドで見つけることができます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 操作が失敗した理由に関する追加情報。操作が成功した場合は空です。 データタイプ:文字列 |
cURL 要求
curl 'https://instance.servicenow.com/api/sn_cicd/sc/apply_changes?app_sys_id=043db024db737300a9a754e4dc961915' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "a4fae8911bdc00103d374087bc4bcbbd",
"url": "https://instance.service-now/api/sn_cicd/progress/a4fae8911bdc00103d374087bc4bcbbd"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/sc/apply_stash/{stash_id}
以前に生成された変更の「スタッシュ」をリモートソースコントロールから指定されたローカルアプリケーションまたはアプリケーションのカスタマイズに適用し始めます。
このエンドポイントは、 POST/api/sn_cicd/sc/apply_changes および CI/CD - GET /sn_cicd/progress/{progress_id} エンドポイントと連携して機能します。POST / api/sn_cicd/sc/apply_changes エンドポイントが呼び出されると、関連付けられたインスタンス上の App Engine Studio 未保存またはコミットされていない変更が スタッシュとしてデータベースに保存されます。
変更が最初に適用されたときにスタッシュが作成されたかどうかを判断するには、 GET /sn_cicd/progress/{progress_id} エンドポイントを呼び出します。スタッシュが作成された場合は、スタッシュのsys_id (stash_id) と URL が返されます。関連付けられたアプリケーションにスタッシュされた変更を適用するには、進行状況エンドポイントによって返された を使用してstash_idこの apply_stash エンドポイントを呼び出します。
URL 形式
バージョニングされた URL:/ api/sn_cicd/{api_version}/sc/apply_stash/{stash_id}
デフォルトの URL:/ api/sn_cicd/sc/apply_stash/{stash_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| stash_id | 適用するスタッシュの一意の識別子。この値は、 links.stash.id 対応する CI/CD - GET /sn_cicd/progress/{progress_id} エンドポイント呼び出しのパラメーターで返されます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | 要求本文のデータ形式。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
次のコード例は、fc2224e4e0429110f8771827f8fd3634 の stash_idapply_stash エンドポイントを呼び出す方法を示しています。
curl "https://instance.servicenow.com/api/sn_cicd/sc/apply_stash/fc2224e4e0429110f8771827f8fd3634"\
--request POST \
--header "Accept:application/json" \
--header "Content_Type:application/json" \
--user 'username':'password'
スタッシュは処理待ちなので、まだ適用されていません。
{
"result": {
"links": {
"progress": {
"id": "6b04ec28e0429110f8771827f8fd36a4",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/6b04ec28e0429110f8771827f8fd36a4"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/sc/import
指定されたリポジトリ URL と分岐名を使用してアプリケーションをインポートします。
このエンドポイントを使用して呼び出し元インスタンスのソースコントロールからアプリケーションをインポートすると、/sn_cicd/sc/apply_changes などの 継続的インテグレーションと継続的デリバリー (CICD) エンドポイントを使用してアプリケーションを上位環境に展開できます。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/sc/import
デフォルトの URL:/api/sn_cicd/sc/import
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| auto_upgrade_base_app | インポートされるアプリケーションがアプリのカスタマイズであり、Git リポジトリの最新のコミットが現在ローカルインスタンスにインストールされているベースアプリケーションのバージョンよりも新しいバージョンで構築されている場合にのみ適用されます。 ベースアプリケーションを新しいバージョンに自動アップグレードするかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト:True |
| branch_name | 必須です。アプリケーションのインポート元であるソースコントロールシステム内の分岐の名前。 データタイプ:文字列 |
| credential_sys_id | Git リポジトリにアクセスできる資格情報の sys_id。 データタイプ:文字列 デフォルト:repo_url パラメーターが https リポジトリか ssh リポジトリかに応じて、システムプロパティ glide.source_control.default_basic_auth_credential_sys_id または glide.source_control.default_ssh_private_key_credential_sys_id に設定された sys_id。デフォルトでは、このプロパティは空です。 |
| mid_server_sys_id | このアプリケーションのソースコントロール操作に使用する MID Server の sys_id。 データタイプ:文字列 デフォルト:空の文字列/NULL |
| repo_url | 必須です。アプリケーションのインポート元の Git リポジトリの URL。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
次の例は、https://code.devsnc.com/some-user/ncRegrApp1.git の main_branchにあるアプリケーションをインポートする方法を示しています。
curl "https://instance.servicenow.com/api/sn_cicd/sc/import?repo_url=https%3A%2F%2Fcode.devsnc.com%2Fsome-user%2FncRegrApp1.git&branch_name=main_branch&credential_sys_id=af9b6d6180feb010f8779c30d4dd6b6b" \
--request POST \
--header "Accept:application/json" \
--user 'admin':'admin'
インポートの進捗状況を返します。
{
"result": {
"links": {
"progress": {
"id": "a18c06ea64f23010f87769cd983d4574",
"url": "https://instance.servicenow.com/api/sn_cicd/progress/a18c06ea64f23010f87769cd983d4574"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
CI/CD - POST /sn_cicd/testsuite/run
指定された自動テストスイートを開始します。テストスイートは、エンドポイントが呼び出されたインスタンスで実行されます。
URL 形式
バージョニングされた URL:/api/sn_cicd/{api_version}/testsuite/run
デフォルトの URL:/api/sn_cicd/testsuite/run
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| browser_name | クライアントテストの実行に使用するブラウザーの名前。この値は、スケジュール済みのクライアントテストランナーで指定された値と一致する必要があります。スケジュール済みのクライアントテストランナーの詳細については、「 スケジュール済みのクライアントテストランナー 」を参照してください。 データタイプ:文字列 有効な値:(すべて小文字にする)
デフォルト:any |
| browser_version | テストの実行に使用する browser_name で指定されたブラウザーのバージョンの開始値。たとえば、「9」と入力すると、すべての「9.x.x.x」バージョンが有効になります。この値は、スケジュール済みのクライアントテストランナーで指定された値と一致する必要があります。 データタイプ:文字列 |
| os_name | テストスイートを実行するオペレーティングシステムの名前。この値は、スケジュール済みのクライアントテストランナーで指定された値と一致する必要があります。 データタイプ:文字列 |
| os_version | テストスイートを実行するオペレーティングシステムのバージョンの開始値。たとえば、「8」と入力すると、すべての「8.x.x.x」バージョンが有効になります。この値は、スケジュール済みのクライアントテストランナーで指定された値と一致する必要があります。 データタイプ:文字列 |
| test_suite_sys_id | test_suite_name が指定されていない場合は必須です。実行するテストスイートの sys_id。この値はテスト [sys_atf_test_suite] テーブルにあります。 データタイプ:文字列 |
| test_suite_name | test_suite_sys_id が指定されていない場合は必須です。実行するテストスイートの名前。この値はテスト [sys_atf_test_suite] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | ユーザー資格情報が正しくありません。 |
| 403 | 禁止されました。ユーザーが管理者でないか、sn_cicd.sys_ci_automation ロールを持っていません。 |
| 404 | 見つかりません。要求アイテムが見つかりませんでした。 |
| 405 | 無効なメソッドです。この機能は非アクティブです。 |
| 409 | 競合。要求されたアイテムが一意ではありません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | エラーメッセージ。 データタイプ:文字列 |
| links | 応答に関連付けられたすべてのリンクと sys_id。 データタイプ:オブジェクト |
| links.progress | 進捗状況リンク情報を記述します。 データタイプ:オブジェクト |
| links.progress.id | 操作の進捗状況の詳細を取得するために使用する一意の識別子。エンドポイント /sn_cicd/progress/{progress_id} を呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.progress.url | 進捗状況の詳細を取得するために使用する URL。 データタイプ:文字列 |
| links.results | 結果情報。 データタイプ:オブジェクト |
| links.results.id | 結果情報の一意の識別子。関連する結果エンドポイントを呼び出す場合は、この値を使用します。 データタイプ:文字列 |
| links.results.url | エンドポイント実行の結果 (results など) を取得するために使用する URL。 データタイプ:文字列 |
| percent_complete | 完了した要求の割合。 データタイプ:数値 |
| status | 数値による実行ステータス。status_label とともに使用されます。 値:
データタイプ:文字列 |
| status_detail | 現在のステータスに関する追加情報。 データタイプ:文字列 |
| status_label | 実行ステータスの説明。status とともに使用されます。 値:
データタイプ:文字列 |
| status_message | 現在のステータスの説明。 データタイプ:文字列 |
cURL 要求
curl 'https://instance.servicenow.com/api/sn_cicd/testsuite/run?test_suite_sys_id=632e43900b20220050192f15d6673a7e' \
--request POST \
--header 'Accept: application/json' \
--user 'username':'password'
{
"result": {
"links": {
"progress": {
"id": "0578a8d91bdc00103d374087bc4bcbcc",
"url": "https://instance.service-now.com/api/sn_cicd/progress/0578a8d91bdc00103d374087bc4bcbcc"
}
},
"status": "0",
"status_label": "Pending",
"status_message": "",
"status_detail": "",
"error": "",
"percent_complete": 0
}
}
失敗応答
{
"result": {
"status": "3",
"status_label": "Failed",
"status_message": "",
"status_detail": "",
"error": "Scheduled test/suite execution is disabled. Change the value of property 'sn_atf.schedule.enabled' to true to enable it"
}
}