CdmApplicationsApi
CdmApplicationsApi は、DevOps コンフィグ Workspace UI にあるコンポーネント、コレクション、展開可能、およびコンポーネント変数フォルダーに構成データを uploadzoominsoftware.io/utah-devops/ できるようにするエンドポイントを提供します。また、展開可能な構成データを DevOps パイプラインにエクスポートし、共有コンポーネントと共有アプリケーションを管理できるエンドポイントもあります。
エクスポートおよびアップロードのエンドポイントでは、非同期キュー実装を使用します。このタイプの実装では、最初に目的のエクスポートまたはアップロード要求エンドポイントを呼び出します。これらのエンドポイントは要求をキューに入れ、要求識別子を返します。次に、この要求識別子を使用して、アップロード用とエクスポート用の別々の適切なステータスエンドポイントを呼び出して、アップロード/エクスポートのステータスを取得します。エクスポート要求の場合、エクスポートが完了したら、エクスポートのコンテンツを要求することもできます。
この API は、アプリケーションレコードの簡単な取得を実行するエンドポイントは提供しません。これらのレコードを取得するには、テーブル API を使用します。
- スクリプト化された REST CDM ビュー ACL (sn_cdm.cdm.viewer)
- スクリプト化された REST CDM エディター ACL (sn_cdm.cdm_editor)
また、この API をインスタンスで使用するには、構成データ管理 (CDM) プラグインを有効にする必要があります。
構成データ管理 と DevOps コンフィグ Workspace UI の詳細については、「構成データのアップロード」を参照してください。
共有コンポーネントおよび共有ライブラリーについて詳しくは、 アプリケーション間でのコンポーネントの共用 - コンポーネント・ライブラリーを参照してください。
CdmApplicationsApi - DELETE /sn_cdm/applications/deployables
指定された Configuration Data Management (CDM) 展開可能項目を削除します。
このエンドポイントの呼び出し元には、CDM 管理者ロールが必要です。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/deployables
デフォルトの URL:/api/sn_cdm/applications/deployables
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 必須です。展開可能項目が関連付けられている CDM アプリケーションの名前。CDM 展開可能項目 [sn_cdm_deployable] テーブルにあります。 データタイプ:文字列 |
| name | 削除する展開可能項目の名前。CDM 展開可能項目 [sn_cdm_deployable] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| なし |
cURL 要求
次のコード例は、展開可能項目を削除する方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables?appName=testApp&name=Dep-1" \
--request DELETE \
--header "Accept:application/json" \
--user 'username':'password1'
展開可能項目が正常に削除された場合、HTTP ステータスコード以外の応答は返されません。
None - results defined by the HTTP status code
CdmApplicationsApi:/sn_cdm/applications/shared_components を削除
指定された 構成データ管理 (CDM) アプリケーションから共有コンポーネント使用参照を削除します。
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 必須。指定された共有コンポーネントの関連付けを削除するアプリケーションの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。指定するアプリケーションでは、type フィールドが「shared_library」に設定されている必要があります。 データタイプ:文字列 |
| changesetNumber | 必須。 |
| sharedComponentName | 必須。指定されたアプリケーションから削除する共有コンポーネントの一意の名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| 結果 | 空。HTTP ステータスコードは、呼び出しの結果を示します。 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次のコード例は、"App1" アプリケーションから "paymentService-V1.1" 共有コンポーネントを削除する方法を示しています。
curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?appName=App1&sharedComponentName=paymentService-V1.1&changesetNumber=Chset-25" \
--request DELETE \
--header "Accept:application/json" \
--user 'username':'password'
応答:
""
CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/content
指定された構成データのエクスポート要求に関連付けられたコンテンツを返します。
このエンドポイントは、CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status エンドポイントから完全な応答を受信した後にのみ呼び出すようにします。エクスポートが完了する前にこのエンドポイントを呼び出すと、400 ステータスエラーが返されます。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/deployables/exports/{export_id}/content
デフォルトの URL:/api/sn_cdm/applications/deployables/exports/{export_id}/content
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| export_id | 構成データを返すエクスポート要求の一意の識別子。この値は CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports エンドポイントによって返されます。 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| エラー | エクスポート中に発生したエラーの説明。 データタイプ:文字列 |
| export_id | エクスポート要求 ID。エンドポイントに渡されるものと同じです。 データタイプ:文字列 |
| exporter_result | 指定された構成データエクスポートのコンテンツ。 データタイプ:
|
| request_id | エクスポート要求 ID。エンドポイントに渡されるものと同じです。 データタイプ:文字列 |
| state | 指定されたエクスポートの現在のステータス。CDM 要求キュー [sn_cdm_request_queue] テーブルのステータス列の値。 可能な値:
データタイプ:文字列 |
cURL 要求
次の例では、ID が 3ab14a7d53b1301096edddeeff7b12f のエクスポート要求の構成データを要求します。
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports/3ab14a7d53b1301096edddeeff7b12f/content" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
返される可能な結果を次に示します。
// Successful completion of the export request
{
"result": {
"export_id": "3ab14a7d53b1301096edddeeff7b12f"
"exporter_result": "DEP1.COMP.cdi_1=cdi-1-value"
}
}
// Response when an incorrect export_id is passed. Note: Status code is 200.
{
"result": {
"request_id": "3ab14a7d53b1301096edddeeff7b12e",
"state": "error",
"errors": "Invalid requestId '3ab14a7d53b1301096edddeeff7b12fe'",
"export_id": "3ab14a7d53b1301096edddeeff7b12e"
}
}
CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status
指定された構成データのエクスポート要求の現在のステータスを返します。
CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports エンドポイントを使用してエクスポート要求を行います。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/deployables/exports/{export_id}/status
デフォルトの URL:/api/sn_cdm/applications/deployables/exports/{export_id}/status
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| export_id | ステータスを返すエクスポート要求の sys_id。この値は CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports エンドポイントによって返されます。 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| エラー | エクスポート中に発生したエラーの説明。 データタイプ:文字列 |
| export_id | エクスポート要求 ID。エンドポイントに渡されるものと同じです。 データタイプ:文字列 |
| exporter_result | 関連するエラーの詳細。 データタイプ:オブジェクト |
| exporter_result.errors | エクスポート中に発生したエラーの説明。 データタイプ:アレイ |
| exporter_result.execution_id | エクスポーター実行レコードの一意の識別子。sn_cdm_exporter_execution テーブルにあります。 データタイプ:文字列 |
| exporter_result.state | 指定されたエクスポートの現在のステータス。sn_cdm_exporter_execution テーブルにあります。 可能な値:
データタイプ:文字列 |
| request_id | エクスポート要求 ID。エンドポイントに渡されるものと同じです。 データタイプ:文字列 |
| state | 指定されたエクスポートの現在のステータス。CDM 要求キュー [sn_cdm_request_queue] テーブルのステータス列の値。 可能な値:
データタイプ:文字列 |
cURL 要求
次の例は、ID が 3ab14a7d53b1301096edddeeff7b12f のエクスポートのステータスを要求しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports/3ab14a7d53b1301096edddeeff7b12f/status" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
返される可能がある結果を次に示します。
// Successful completion of the export request
{
"result": {
"state": "completed",
"export_id": "3ab14a7d53b1301096edddeeff7b12f0"
}
}
// Response when an incorrect export_id is passed. Note: Status code is 200.
{
"result": {
"request_id": "3ac8e1b05311301096edddeeff7b123c",
"state": "error",
"errors": "Invalid requestId '3ac8e1b05311301096edddeeff7b123c'",
"export_id": "3ac8e1b05311301096edddeeff7b123c"
}
}
// Response when the export encounters an error. The exporter_result array contains the error information. Note: Status code is 200.
{
"result": {
"state": "completed",
"export_id": "24536c3353f9301096edddeeff7b12b1",
"exporter_result": {
"execution_id": "81536c3353f9301096edddeeff7b129e",
"state": "failure",
"errors": [
"Snapshot 'SNA-001-published-non_compliant' has not passed validation. All snapshots of deployable '/ApplicationA/deployables/DEP3' are required to pass validation"
]
}
}
}
CdmApplicationsApi:/sn_cdm/applications/shared_components を取得
指定されたアプリケーションによって使用される共有コンポーネントのリストを返します。また、新しいバージョンが利用可能な共有コンポーネントのみを返すように指定することもできます。
このエンドポイントにアクセスするには、CDM admin ロールが必要です。
URL 形式
バージョン管理された URL: /api/sn_cdm/{api_version}/applications/shared_components
デフォルト URL: /api/sn_cdm/applications/shared_components
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 必須。共有コンポーネントのリストを返すアプリケーションの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。アプリケーションのタイプフィールドを shared_library に設定する必要があります。 データタイプ:文字列 |
| withUpdatesOnly | 新しい更新バージョンが利用可能な共有コンポーネントのみを返すかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| currentVersion | CDM アプリケーションの現在のバージョン。 データタイプ:整数 |
| currentVersionName | 現在使用されている共有コンポーネントバージョンの名前。 データタイプ:文字列 |
| 説明 | 共有コンポーネントの説明。 データタイプ:文字列 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| name | 共有コンポーネントの一意の名前。 データタイプ:文字列 |
| sharedLibraryName | 共有コンポーネントが属する共有ライブラリーの名前。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| updateVersionName | 更新可能な共有コンポーネントバージョンの名前。 データタイプ:文字列 |
cURL 要求
次のコード例は、このエンドポイントを呼び出して、"App1" で使用される新しいバージョンを持つ共有コンポーネントを取得する方法を示しています。
curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?updatesOnly=true&appName=App1" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
応答:
{
"result": [
{
"name": "Component_Name",
"description": "”,
"sharedLibraryName": "Shared Library",
"currentVersion": "2",
"currentVersionName": "Component_A-v2.shc",
"updateVersionName": "Component_A-v3.shc"
}
]
}
CdmApplicationsApi:/sn_cdm/applications/shared_libraries/components/applications を取得
指定されたライブラリ内にある共有コンポーネントとそれを使用するアプリケーションのマップを返します。
このエンドポイントにアクセスするには、CDM admin ロールが必要です。
URL 形式
バージョン管理された URL: /api/sn_cdm/{api_version}/applications/shared_libraries/components/applications
デフォルト URL: /api/sn_cdm/applications/shared_libraries/components/applications
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| sharedComponentName | 必須。マップに含める共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| sharedLibraryName | 必須。マップに含める共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。指定するアプリケーションでは、type フィールドが「shared_library」に設定されている必要があります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| 説明 | 共有コンポーネントを使用するアプリケーションの説明 データタイプ:文字列 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| managed_by_group | アプリケーションを管理できるグループのsys_idsのカンマ区切りリスト。 データタイプ:文字列 |
| name | コンポーネントを使用するアプリケーションの一意の名前。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| sys_id | 共有コンポーネントを使用するアプリケーションのSys_id。 データタイプ:文字列 |
cURL 要求
次のコード例は、このエンドポイントを呼び出して、「paymentService-V1.1」共有コンポーネントを使用する「OracleG-Library-10」共有ライブラリ内のアプリケーションを示すマップを取得する方法を示しています。
curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_libraries/components/applications?sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
応答:
{
"result": {
"component_name": [
{
"name": "App Name",
"description": "desc",
"managed_by_group": null,
"sys_id": "4e7808bb1b371110636e0fe0604bcb08"
},
{
"name": "Config App",
"description": "desc",
"managed_by_group": null,
"sys_id": "55a75cfb1b771110636e0fe0604bcb5c"
},
{
"name": "Database App",
"description": "desc",
"managed_by_group": null,
"sys_id": "2eb7503f1b771110636e0fe0604bcb06"
}
]
}
}
CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}
指定された構成データのエクスポート要求の現在のステータスを返します。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/upload-status/{upload_id}
デフォルトの URL:/api/sn_cdm/applications/upload-status/{upload_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| upload_id | ステータスを返すアップロード要求の sys_id。この値は、さまざまな CdmApplications アップロード要求エンドポイントによって返されます。 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| エラー | アップロード中に発生したエラーの説明。 データタイプ:文字列 |
| output | アップロードされたデータの説明、または発生したエラーを説明するエラーメッセージ (アップロード中にエラーが発生した場合)。 データタイプ:文字列のアレイ |
| output.auto_validate | コミット後に検証を呼び出すかどうかを示します。 データタイプ:文字列 |
| output.cdm_application | アップロードが実行されたアプリケーションの名前。 データタイプ:文字列 |
| output.committed_at | アップロードされたコンテンツがコミットされた日時。 データタイプ:文字列 |
| output.committed_by | コミットを実行したエンティティのレコードの sys_id。 データタイプ:文字列 |
| output.description | 現在使用されていません。 データタイプ:文字列 |
| output.last_conflict_detection_time | 日時の競合検出の発動。 データタイプ:文字列 |
| output.number | 変更セットの一意の番号。 データタイプ:文字列 |
| output.publish_option | 関連付けられた構成済みスナップショットの公開オプション。
有効な値:
スナップショットの公開の詳細については、「 スナップショットを公開または非公開にする」を参照してください。 データタイプ:文字列 デフォルト:publish_none 注: このオプションは、 autoCommit パラメーターの値が true の場合にのみ使用できます。 |
| output.snapshot_description | 関連付けられたスナップショットの説明。 データタイプ:文字列 |
| output.snapshot_name | 関連付けられたスナップショットの名前。 データタイプ:文字列 |
| output.state | アップロードコンテンツのステータス。 可能な値:
データタイプ:文字列 |
| output.sys_created_by | レコードを作成したエンティティの sys_id。 データタイプ:文字列 |
| output.sys_id | 変更セットを含むレコードの sys_id。 データタイプ:文字列 |
| output.title | アップロードの一部として作成された変更セットのタイトル。 データタイプ:文字列 |
| processing_state | アップロード要求の現在の処理ステータス。 可能な値:
データタイプ:文字列 |
| state | アップロード要求の現在のステータス。 可能な値:
|
| type | アップロード要求のタイプ。 可能な値:
データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
次の例は、ID が 5560a6895326301096edddeeff7b1230 のアップロードのステータスの要求を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/upload-status/5560a6895326301096edddeeff7b1230" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
返される可能がある結果を次に示します。
// Successful completion of the upload request
{
"result": {
"type": "upload_and_commit",
"state": "completed",
"output": {
"sys_id": "be681dc95362301096edddeeff7b12ba",
"number": "Chset-102",
"title": "admin2021-09-10 08:09:07",
"description": null,
"committed_at": "2021-09-10 20:23:37",
"committed_by": "6816f79cc0a8016401c5a33be04be441",
"sys_created_by": "admin",
"state": "committed",
"publish_option": "publish_none",
"auto_validate": false,
"snapshot_name": null,
"snapshot_description": null,
"cdm_application": "Demo_App1631126164773",
"last_conflict_detection_time": "1631305417894"
},
"processing_state": "PROCESSED",
"upload_id": "5560a6895326301096edddeeff7b1230"
}
}
// Response when an incorrect upload_id is passed. Note: Status code is 200.
{
"result": {
"state": "error",
"errors": "Invalid requestId '5560a6895326301096edddeeff7b1240'",
"upload_id": "5560a6895326301096edddeeff7b1240"
}
}
// Response when the upload encounters an error. The exporter_result array contains the error information. Note: Status code is 200.
{
"result": {
"type": "upload_and_commit",
"state": "error",
"output": "Error encountered during execution of request.\nError: Node 'dbSettings' of type 'sg_cdm_node_component' cannot create child 'dbSettings' of type 'sg_cdm_node_folder'",
"processing_state": "PROCESSED",
"upload_id": "272f8a415326301096edddeeff7b1232"
}
}
CdmApplicationsApi - POST /sn_cdm/applications/deployables
新しい展開可能項目を作成し、指定された 構成データ管理 (CDM) アプリケーションに自動的に接続します。
開発、テスト、本番の 3 つの環境タイプのいずれか向けに展開可能項目を作成できます。
このエンドポイントにアクセスするには、呼び出し元に CDM 管理者ロールが必要です。
複数の展開可能項目を作成する必要がある場合は、CdmApplicationsApi - POST /sn_cdm/applications/deployables/create エンドポイントを使用します。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/deployables
デフォルトの URL:/api/sn_cdm/applications/deployables
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 必須です。展開可能項目に関連付ける既存のアクティブな CDM アプリケーションの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| envType | 必須です。 展開可能な環境タイプ。 有効な値 (大文字と小文字を区別):
注: 展開可能な環境の種類は、作成後に変更できません。 データタイプ:文字列 |
| name | 必須です。CDM 展開可能項目の名前。 255 文字以下にする必要があります。デフォルトで使用できる文字は、0 ~ 9、A ~ Z、a ~ z、_、-、.、%、$、空白文字、:、# です。 データタイプ:文字列 最大長:255 文字 許容される文字:0 ~ 9、A ~ Z、a ~ z、_、-、.、%、$、空白文字、:、# |
| returnFields | 応答の一部として返すフィールドのリスト。sys_id、sys_updated_by、state などのレコード列名を渡します。 データタイプ:アレイ デフォルト:エンドポイントによって決定されるすべてのフィールド |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| cdi_count | 関連する CDM アプリケーションに含まれる構成データアイテム (CDI) の数。 データタイプ:整数 |
| cdi_usage | 展開可能項目によって使用される CDI の割合。 データタイプ:整数 |
| cdm_app | 展開可能項目に関連付けられた CDM アプリケーションオブジェクト。 データタイプ:オブジェクト |
| cdm_app.link | REST テーブル API を使用して CDM アプリケーションレコードにアクセスするために使用する呼び出し。 データタイプ:文字列 |
| cdm_app.value | 関連付けられた CDM アプリケーションレコードの sys_id。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| cdm_ci | 展開可能項目に関連付けられたアプリケーションサービスオブジェクト。 データタイプ:オブジェクト |
| cdm_ci.link | REST テーブル API を使用してアプリケーションサービスにアクセスするために使用する呼び出し。 データタイプ:文字列 |
| cdm_ci.value | 関連付けられたアプリケーションサービスレコードの sys_id。構成アイテム [cmdb_ci] テーブルにあります。 データタイプ:文字列 |
| 説明 | 生成された CDM 展開可能項目の説明。 データタイプ:文字列 |
| environment_type | 展開可能な環境タイプ。 可能な値:
データタイプ:文字列 |
| error | 処理中にエラーが発生した場合にのみ返されます。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| name | CDM 展開可能項目の名前。 データタイプ:文字列 |
| node | 展開可能ノードについての詳細。 データタイプ:オブジェクト |
| node.link | REST テーブル API を使用して展開可能ノードレコードにアクセスするために使用する呼び出し。 データタイプ:文字列 |
| node.value | 展開可能ノードレコードの sys_id。CDM 展開可能項目 [sn_cdm_deployable] テーブルにあります。 データタイプ:文字列 |
| snapshot_version_counter | 展開可能項目に対して作成されたスナップショットの数。 データタイプ:整数 |
| state | 展開可能項目の現在のステータス。 可能な値:
データタイプ:文字列 |
| sys_created_by | CDM 展開可能項目を作成したユーザーのユーザー名。たとえば、able.tuter などです。 データタイプ:文字列 |
| sys_created_on | CDM 展開可能項目が作成された日時。 形式:YYYY-mm-DD hh:mm:ss データタイプ:文字列 |
| sys_id | 作成された展開可能項目の sys_id。CDM 展開可能項目 [sn_cdm_deployable] テーブルにあります。 データタイプ:文字列 |
| sys_updated_by | CDM 展開可能項目を最後に更新したユーザーのユーザー名。たとえば、able.tuter などです。 データタイプ:文字列 |
| sys_updated_on | CDM 展開可能項目が最後に更新された日時。 形式:YYYY-mm-DD hh:mm:ss データタイプ:文字列 |
cURL 要求
次のコード例は、展開可能項目を作成して CDM アプリケーションに関連付ける方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables?name=Dep-1&returnFields=name%2Csys_id%2Cstate&appName=testApp&envType=Test" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password1'
返される結果:
{
"result": [
{
"cmdb_ci": {
"value": "f5b9e00b53901110a1d3ddeeff7b12b8",
"link": "http://192.168.0.233:8080/api/now/table/cmdb_ci_service_auto/f5b9e00b53901110a1d3ddeeff7b12b8"
},
"cdi_count": "0",
"snapshot_version_counter": "0",
"description": null,
"sys_updated_on": "2022-06-29 12:53:57",
"environment_type": "Test",
"node": {
"value": "7db9e00b53901110a1d3ddeeff7b12b6",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_node/7db9e00b53901110a1d3ddeeff7b12b6"
},
"sys_id": "39b9e00b53901110a1d3ddeeff7b12b7",
"sys_updated_by": "admin",
"cdm_app": {
"value": "62b517a953b70110a1d3ddeeff7b128c",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c"
},
"sys_created_on": "2022-06-29 12:53:57",
"cdi_usage": "0",
"name": "Dep-2",
"state": "active",
"sys_created_by": "admin"
}
]
}
CdmApplicationsApi - POST /sn_cdm/applications/deployables/create
1 つ以上の新しい展開可能項目を作成します。
- アプリケーションモデル (CI サービス) への手動接続が必要な展開可能項目。
- 動的に作成された新しいアプリケーションモデル (CI サービス) に自動的に接続される展開可能項目。
開発、テスト、本番の 3 つの環境タイプのいずれか向けに展開可能項目を作成できます。 複数の展開可能項目を作成する場合、展開可能項目の自動生成名は、DeployableType_Number のパターンに従います。ここで、Number は新しい展開可能項目の作成に基づく実行中のシーケンス番号です。たとえば、エンドポイント呼び出しで Test タイプの展開可能項目を 3 件作成した場合、Test_1、Test_2、および Test_3 という名前になります。エンドポイントを再度呼び出して、別のテスト展開可能項目を作成すると、その自動生成名は Test_4 になります。展開可能項目が削除されても、これらの番号が再利用されることはありません。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/deployables/create
デフォルトの URL:/api/sn_cdm/applications/deployables/create
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appSysId | 必須です。展開可能項目に関連付けるアクティブな CDM アプリケーションの sys_id。 データタイプ:文字列 |
| autoConnect | 必須です。新しく作成された展開可能項目を動的に生成されたアプリケーションモデルに自動的に接続するかどうかを決定するフラグ。 有効な値:
データタイプ:ブーリアン |
| envType | 必須です。 展開可能な環境タイプ。 有効な値 (大文字と小文字を区別):
注: 展開可能な環境の種類は、作成後に変更できません。 データタイプ:文字列 |
| quantity | 必須です。作成する展開可能項目の数。 データタイプ:数値 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| result | 作成された展開可能項目の sys_id。 データタイプ:アレイ |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次の例は、展開可能項目を 1 件作成して既存の CDM アプリケーションに関連付ける方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/create?envType=Production&appSysId=5e118055b712011054c1e5a6ce11a9d4&quantity=5&autoConnect=true" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--user 'username':'password'
この呼び出しに対して考えられる成功とエラーの両方の応答を以下に示します。
// Successful completion of the upload request
{
"result": [
"8ba43a3db7d6011054c1e5a6ce11a9a4",
"93a47a3db7d6011054c1e5a6ce11a90d",
"dba47a3db7d6011054c1e5a6ce11a91d",
"6fa47a3db7d6011054c1e5a6ce11a921",
"efa47a3db7d6011054c1e5a6ce11a925"
]
}
// Error response
{
"error": {
"message": "Error: CDM Application with SysID 5e118055b712011054c1e5a6ce11a9d1 was not found. (sys_script_include.8cf0fbf453626010a1d3ddeeff7b12fe.script; line 211)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports
指定されたアプリケーションの現在のスナップショットと 1 つ以上の展開可能項目を CDM エクスポーターキャッシュ [sn_cdm_exporter_cache] テーブルにエクスポートする要求を送信します。
このエンドポイントは要求の一意の識別子を返します。この識別子を使用して CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status エンドポイントを呼び出し、エクスポートのステータスを取得します。エクスポートが完了したら、CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/content エンドポイントを使用して、関連するアプリケーションの構成データを取得できます。
スナップショットは、構成の変更がコミットされた時点での展開可能項目の完全なデータモデルです。これには、含まれているコンポーネント、コレクション、変数、および展開可能項目固有の変数とオーバーライドが含まれます。展開可能項目の詳細については、「 展開可能項目の作成と更新」を参照してください。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/deployables/exports
デフォルトの URL:/api/sn_cdm/applications/deployables/exports
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| additionalDeployables | 非プライマリのエクスポートする展開可能項目。 データタイプ:オブジェクトのアレイ
例: デフォルト:空のアレイ - [] |
| additionalDeployables.app_name | additionalDeployables アレイが指定されている場合は必須です。構成データをエクスポートする展開可能項目に関連付けられているアプリケーションの名前。 データタイプ:文字列 |
| additionalDeployables.deployable_name | additionalDeployables アレイが指定されている場合は必須です。構成データをエクスポートする非プライマリ展開可能項目の名前。 データタイプ:文字列 |
| appName | 必須です。構成データをエクスポートするアプリケーションの名前。 データタイプ:文字列 |
| args | カスタム引数のキーと値のペアを含む JSON オブジェクト。 データタイプ:オブジェクト |
| dataFormat | エクスポートされたデータの出力形式。 有効な値 (大文字と小文字を区別):
データタイプ:文字列 デフォルト:json |
| deployableName | 必須です。構成データをエクスポートする展開可能項目の名前。 データタイプ:文字列 |
| exporterName | 必須です。スナップショットデータのエクスポートに使用するエクスポーターの名前。エクスポーターは実装者ごとにカスタマイズされます。カスタムエクスポーターの作成の詳細については、「 カスタムエクスポーターの作成」を参照してください。 データタイプ:文字列 |
| restrictExport | データのエクスポート時にエンドポイントでスナップショットを検証するかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| snapshotName | エクスポートするスナップショットの名前。deployableName または additionalDeployables.deployable_name で指定された展開可能項目に関連付けられたスナップショット名の 1 つのみにできます。 デフォルト:エンドポイントは最新の公開済みスナップショットをエクスポートします。公開されたスナップショットがない場合、「展開可能項目 '{0}' の最新の公開スナップショットが見つかりませんでした」というエラーがスローされます。 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。application/json のみをサポートします。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 考えられるエラーメッセージ:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| error | 発生したエラーの詳細。
データタイプ:アレイ |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| export_id | エクスポート要求の一意の識別子。CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status エンドポイントを呼び出してエクスポート要求の現在のステータスを確認するときに、この ID を使用します。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次の例は、エクスポーター = exporter-1-primary_deployable を使用して、アプリケーション名 = TestAppA、展開可能項目名 = DEP の構成データのエクスポートを要求しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports?appName=TestAppA&args=%7B%22arg_A_required%22%20%3A%20%22value%20A%22%7D&exporterName=exporter-1-primary_deployable&deployableName=DEP1" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--user 'username':'password'
エクスポート要求の一意の識別子を返します。
{
"result": {
"export_id": "64b5f79f5379301096edddeeff7b12eb"
}
}
CdmApplicationsApi - POST /sn_cdm/applications/shared_components
指定された共有コンポーネントを、指定された変更セット内のアプリケーションに関連付けます。
このエンドポイントにアクセスするには、CDM admin ロールが必要です。
URL 形式
バージョン管理された URL: /api/sn_cdm/{api_version}/applications/shared_components
デフォルト URL: /api/sn_cdm/applications/shared_components
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 必須。共有コンポーネントに関連付けるアプリケーションの名前。 データタイプ:文字列 |
| changesetNumber | 必須。コンポーネントに関連付けられた変更セットの一意の識別子。 データタイプ:文字列 |
| returnFields | 応答の一部として返すフィールドのリスト。sys_id、sys_updated_by、state などのレコード列名を渡します。 データタイプ:アレイ デフォルト:エンドポイントによって決定されるすべてのフィールド |
| sharedComponentName | 必須。指定されたアプリケーションに関連付ける共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| sharedLibraryName | 必須。コンポーネントを作成する共有ライブラリの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。共有ライブラリーには、以下のフィールドが次のように定義されている必要があります。
データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。渡された変更セットが存在しません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
応答フィールドは、要求の returnFields パラメーターで指定されたフィールドによって異なります。以下では、いくつかの重要なフィールドについて説明します。
| 名前 | 説明 |
|---|---|
| changeset_id | ノードに関連付けられた変更セットレコードの詳細。 データタイプ:オブジェクト |
| changeset_id.link | テーブル REST API を使用してこの変更セットレコードをクエリーするための呼び出し構文。 データタイプ:文字列 |
| changeset_id.value | 変更セットレコードの一意の識別子。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 |
| 説明 | CDM ノードの説明。 データタイプ:文字列 |
| error | 処理中にエラーが発生した場合にのみ返されます。 データタイプ:オブジェクト |
| error.detail | 発生したエラーの詳細。 データタイプ:文字列 |
| error.message | エラーの概要を示すメッセージ。 データタイプ:文字列 |
| linked_to | 共有コンポーネントに関連付けられたメインノードの ID。 データタイプ:文字列 |
| linked_to_version | ノードに関連付けられた CDM スナップショットレコードの詳細。 データタイプ: オブジェクト |
| linked_to_version.リンク | Table REST API を使用してこのバージョンレコードをクエリするための呼び出し構文。 データタイプ:文字列 |
| linked_to_version.value | バージョンレコードのSys_id。 データタイプ:文字列 |
| メイン | 関連付けられたスナップショットが公開されたかどうかを示すフラグ。 有効な値:
|
| main_id | 新しく作成されたメインノードの一意の ID。 データタイプ:文字列 |
| main_id_encoded | 新しく作成されたメインノードのエンコードされた ID。 データタイプ:文字列 |
| name | CDM ノードの名前。 データタイプ:文字列 |
| ノード | 共有コンポーネントノードのSys_id。 データタイプ:文字列 |
| node_path | 共有コンポーネントを追加するときに作成される新しいリンクノードへのパス。 データタイプ:文字列 |
| status | ノードのステータス。 可能な値:新規 データタイプ:文字列 |
| sys_created_by | CDM ノードを作成するユーザーのユーザー名。たとえば、able.tuter などです。 データタイプ:文字列 |
| sys_created_on | CDM ノードが作成された日時。 形式:YYYY-mm-DD hh:mm:ss データタイプ:文字列 |
| sys_id | ノードの sys_id。CDM ノード [sn_cdm_node] テーブルにあります。 データタイプ:文字列 |
| sys_updated_by | CDM ノードを最後に更新したユーザーのユーザー名。たとえば、able.tuter などです。 データタイプ:文字列 |
| sys_updated_on | CDM ノードが最後に更新された日時。 形式:YYYY-mm-DD hh:mm:ss データタイプ:文字列 |
| type | ノードタイプ。 データタイプ:文字列 |
cURL 要求
次の例は、このエンドポイントを呼び出して、アプリケーション「App1」を「Chset-20」変更セット内の共有ライブラリ「OracleG-Library-10」の下にある共有コンポーネント「paymentService-V1.1」に関連付ける方法を示しています。
curl "https://instance.servicenow.com/api/sn_cdm/applications/shared_components?appName=App1&changesetNumber=Chset-20&sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
応答:
{
"result": {
"changeset_id": {
"value": "74b7ff6fc33711100c257e2cc840dd6b",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/74b7ff6fc33711100c257e2cc840dd6b"
},
"node_path": "!,0!,1!/D",
"description": null,
"sys_updated_on": "2022-12-22 17:07:29",
"type": "sn_cdm_node_linked_shared_component",
"sys_class_name": "sn_cdm_node",
"sys_id": "ff8b37ebc3b711100c257e2cc840ddba",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2022-12-22 17:07:29",
"value": null,
"effective_from": null,
"linked_to": "210",
"sys_created_by": "admin",
"restricted_to": null,
"linked_to_version": {
"value": "581fc3e9c3b311100c257e2cc840dd17",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_snapshot/581fc3e9c3b311100c257e2cc840dd17"
},
"level": "2",
"conflict_type": null,
"main_id": "483",
"effective_to": null,
"secure_value": null,
"node_classifier": "/application/components",
"main_id_encoded": "/D",
"name": "LIB2_C",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/components
指定されたアプリケーションのシステムコンポーネントフォルダー内の特定のコンポーネント用に渡された構成データをアップロードする要求を送信します。
次の画像は、ServiceNow DevOps コンフィグ UI を参照してコンポーネントの構成データがアップロードされる例を示しています。コンポーネントが dbComponent、アプリケーションが paymentSvc であると想定します。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/uploads/components
デフォルトの URL:/api/sn_cdm/applications/uploads/components
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 構成データに関連付けられるアプリケーションの名前。このアプリケーションはアクティブステータスである必要があります。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoDelete | アップロードコンテンツの一部ではない既存のノードを処理の完了後に削除するかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoValidate | コミット時に作成されたスナップショットを検証するかどうかを示すフラグ。 有効な値:
注: このオプションは、autoCommit パラメーターが true の場合にのみ使用できます。 データタイプ:ブール デフォルト値:false |
| changesetNumber | アプリケーションに関連付けられた 変更セット を一意に識別する文字列 (Chset-102 など)。この変更セットは [オープン] ステータスである必要があります。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 デフォルト:使用する変更セットを作成します。変更セットの詳細は CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} の結果の一部として返されます。 |
| dataFormat | 必須。構成データの形式。 有効な値:
データタイプ:文字列 |
| データフォーマット属性 | dataFormat パラメーターが csv に設定されている場合にのみサポートされます。CSV データ形式を定義する属性。詳細については、「Parsing of CSV files in CDM」を参照してください。 データタイプ: オブジェクト |
| dataFormatAttributes.containsHeaders | データにヘッダー行が含まれているかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| dataFormatAttributes.delimeter | データ内のフィールドを区切るために使用する文字。 データタイプ:文字列 デフォルト:カンマ "," |
| dataFormatAttributes.headers | パラメーターdataFormatAttributes.containsHeaders false の場合は必須です。ヘッダーを構成するデータ内のフィールド。これらのヘッダーは、JSON 形式の CDI のキー名に変換されます。ヘッダーの数は、レコードフィールドの数と一致する必要があります。 データタイプ:アレイ デフォルト:空のアレイ |
| dataFormatAttributes.securedHeaders | CDM にアップロードされたデータで暗号化する必要がある、安全なフィールドであるデータ内のフィールド。セキュリティで保護されたヘッダーの名前は、ヘッダー属性またはデータ ファイル内のヘッダーの名前と一致する必要があります。これらのフィールドは、パスワード (双方向暗号化) タイプの列に格納されます。 注: この属性を使用してのみフィールドを保護できます。保護されたフィールドの保護を解除することはできません。 データタイプ:アレイ デフォルト:空のアレイ |
| deleteRedundantOverrides | 冗長な値が存在する場合に上書きを作成するかどうかを示すフラグ。 有効な値:
デフォルト:true |
| fileName | アップロードするファイルの名前。この名前は実際のファイル名と異なっていてもよく、ファイル拡張子を含むことができます。たとえば、.txt/.scv/.jar などです。fileName 値は、ファイルのダウンロード時に適用されます。 データタイプ:文字列 |
| ファイルノード名 | ファイルノードの名前。このファイル名は、構成データをエクスポートするときに使用されます。この名前にはファイル拡張子は必要なく、ダウンロードにも影響しません。 データタイプ:文字列 |
| identifierKeys | 同じノードを識別するために使用するアレイの子のキーを示す名前のリスト。 たとえば、次のようにアップロードする場合: 次の既存のモデルで: identifierKeys を name に設定すると、次の出力が生成されます。 それ以外の場合は、次の出力が生成されます。 データタイプ:文字列のアレイ |
| ignoreAttributes | 指定されたデータ形式が属性 (現在は XML のみ) をサポートしているかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、またはデプロイ可能なフォルダー (呼び出されるエンドポイントによって異なります) に対する相対パスです。 名前パスは、次のいずれかの形式で渡すことができます。たとえば、ノード testApp/deployables/Development1/cdi1 の名前パスを定義するには、次のようにします。
注: 指定されたパスに指定されたコンポーネントが存在しない場合、指定されたパスにコンポーネントが自動的に作成され、データがアップロードされます。 データタイプ:文字列 |
| sharedLibraryName | 必須。削除するコンポーネントが置かれている共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| 変数アップロードデータ | アップロードする構成データ。これは、クエリパラメーターの dataFormat パラメーターで定義された形式の任意のデータにすることができます。 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。サポートされるタイプ:text/plain および application/x-www-form-urlencoded。 デフォルト: text/plain |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。 アップロード要求が却下されました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
次の例は、アプリケーション Demo_App1631126164773 のアップロード要求を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components?namePath=%2FSettings%2FdbSettings&dataFormat=json&appName=Demo_App1631126164773&changesetNumber=Chset-8&autoCommit=false&publishOption=publish_none&autoValidate=false&autoDelete=true" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\
"}" \
--user 'username':'password'
返される次の結果は、この要求の成功応答とエラー応答の両方を示しています。
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST sn_cdm/applications/uploads/components/file
ファイルを構成データモデル (CDM) の一部としてコンポーネントフォルダーにアップロードします。
このメソッドを使用して、コンポーネントファイルノードにアップロードします。
URL 形式
バージョン管理された URL: POST /api/sn_cdm/{api_version}/applications/uploads/components/file
デフォルト URL: POST /api/sn_cdm/applications/uploads/components/file
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 構成データに関連付けられるアプリケーションの名前。このアプリケーションはアクティブステータスである必要があります。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoValidate | コミット時に作成されたスナップショットを検証するかどうかを示すフラグ。 有効な値:
注: このオプションは、autoCommit パラメーターが true の場合にのみ使用できます。 データタイプ:ブール デフォルト値:false |
| changesetNumber | アプリケーションに関連付けられた 変更セット を一意に識別する文字列 (Chset-102 など)。この変更セットは [オープン] ステータスである必要があります。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 デフォルト:使用する変更セットを作成します。変更セットの詳細は CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} の結果の一部として返されます。 |
| fileName | アップロードするファイルの名前。この名前は実際のファイル名と異なっていてもよく、ファイル拡張子を含むことができます。たとえば、.txt/.scv/.jar などです。fileName 値は、ファイルのダウンロード時に適用されます。 データタイプ:文字列 |
| ファイルノード名 | ファイルノードの名前。このファイル名は、構成データをエクスポートするときに使用されます。この名前にはファイル拡張子は必要なく、ダウンロードにも影響しません。 データタイプ:文字列 |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、またはデプロイ可能なフォルダー (呼び出されるエンドポイントによって異なります) に対する相対パスです。 名前パスは、次のいずれかの形式で渡すことができます。たとえば、ノード testApp/deployables/Development1/cdi1 の名前パスを定義するには、次のようにします。
注: 指定されたパスに指定されたコンポーネントが存在しない場合、指定されたパスにコンポーネントが自動的に作成され、データがアップロードされます。 データタイプ:文字列 |
| publishOption | 関連付けられた構成済みスナップショットの公開オプション。
有効な値:
スナップショットの公開の詳細については、「 スナップショットを公開または非公開にする」を参照してください。 データタイプ:文字列 デフォルト:publish_none 注: このオプションは、 autoCommit パラメーターの値が true の場合にのみ使用できます。 |
| 名前 | 説明 |
|---|---|
| 変数アップロードデータ | アップロードする構成データ。デフォルトでは、アップロードできるファイルサイズは 5 MB に制限されています。アップロードファイルのサイズと種類を調整する方法については、こちらを参照してください。 Now Support article. データタイプ:文字列/ストリーム |
ヘッダー
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | アップロードするファイルのデータタイプ。サポートされているタイプ: application/zip、 text/plain、 application/json。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。 アップロード要求が却下されました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
次の例は、コンテンツをテキストファイルにアップロードする方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components/file?autoValidate=true&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "This is sample content that will be uploaded to a plain text file."\
--user 'username':'password'
返される次の結果は、この要求の成功応答とエラー応答の両方を示しています。
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Could not find active application with name: ‘testApp’ of type application",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/components/vars
指定されたアプリケーションのシステムコンポーネントフォルダー内の vars フォルダーに渡された構成データをアップロードする要求を送信します。
次の画像は、ServiceNow DevOps コンフィグ ワークスペース UI を参照してコンポーネントの vars 構成データがアップロードされる例を示しています。アプリケーションが paymentSvc であると想定します。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/uploads/components/vars
デフォルトの URL:/api/sn_cdm/applications/uploads/components/vars
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 構成データに関連付けられるアプリケーションの名前。このアプリケーションはアクティブステータスである必要があります。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoDelete | アップロードコンテンツの一部ではない既存のノードを処理の完了後に削除するかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoValidate | コミット時に作成されたスナップショットを検証するかどうかを示すフラグ。 有効な値:
注: このオプションは、autoCommit パラメーターが true の場合にのみ使用できます。 データタイプ:ブール デフォルト値:false |
| changesetNumber | アプリケーションに関連付けられた 変更セット を一意に識別する文字列 (Chset-102 など)。この変更セットは [オープン] ステータスである必要があります。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 デフォルト:使用する変更セットを作成します。変更セットの詳細は CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} の結果の一部として返されます。 |
| dataFormat | 必須。構成データの形式。 有効な値:
データタイプ:文字列 |
| deleteRedundantOverrides | 冗長な値が存在する場合に上書きを作成するかどうかを示すフラグ。 有効な値:
デフォルト:true |
| fileName | アップロードするファイルの名前。この名前は実際のファイル名と異なっていてもよく、ファイル拡張子を含むことができます。たとえば、.txt/.scv/.jar などです。fileName 値は、ファイルのダウンロード時に適用されます。 データタイプ:文字列 |
| ファイルノード名 | ファイルノードの名前。このファイル名は、構成データをエクスポートするときに使用されます。この名前にはファイル拡張子は必要なく、ダウンロードにも影響しません。 データタイプ:文字列 |
| identifierKeys | 同じノードを識別するために使用するアレイの子のキーを示す名前のリスト。 たとえば、次のようにアップロードする場合: 次の既存のモデルで: identifierKeys を name に設定すると、次の出力が生成されます。 それ以外の場合は、次の出力が生成されます。 データタイプ:文字列のアレイ |
| ignoreAttributes | 指定されたデータ形式が属性 (現在は XML のみ) をサポートしているかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、またはデプロイ可能なフォルダー (呼び出されるエンドポイントによって異なります) に対する相対パスです。 名前パスは、次のいずれかの形式で渡すことができます。たとえば、ノード testApp/deployables/Development1/cdi1 の名前パスを定義するには、次のようにします。
注: 指定されたパスに指定されたコンポーネントが存在しない場合、指定されたパスにコンポーネントが自動的に作成され、データがアップロードされます。 データタイプ:文字列 |
| sharedLibraryName | 必須。削除するコンポーネントが置かれている共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| 変数アップロードデータ | アップロードする構成データ。これは、クエリパラメーターの dataFormat パラメーターで定義された形式の任意のデータにすることができます。 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。サポートされるタイプ:text/plain および application/x-www-form-urlencoded。 デフォルト: text/plain |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。 アップロード要求が却下されました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
次の例は、アプリケーション Demo_App1631126164773 の vars アップロード要求を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components/vars?changesetNumber=Chset-102&autoValidate=false&autoDelete=true&publishOption=publish_none&appName=Demo_App1631126164773&namePath=%2FSettings%2FdbSettings&autoCommit=false&dataFormat=json" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbSettings\": {
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"username:password server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"username:password server2.xyz.com dbName_payments_backup\"
}
}"
--user 'username':'password'
返される次の結果は、この要求の成功応答とエラー応答の両方を示しています。
// Successful completion of the upload request
{
"result": {
"upload_id": "d21f71f45322301096eccceaff7b1ce3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/collections
指定されたアプリケーションのシステムコレクションフォルダー内にある特定のコレクション用に渡された構成データをアップロードする要求を送信します。
次の画像は、ServiceNow DevOps コンフィグ ワークスペース UI を参照して構成データがアップロードされる例を示しています。コレクションが db0Release1.0、アプリケーションが paymentSvc であると想定します。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/uploads/collections
デフォルトの URL:/api/sn_cdm/applications/uploads/collections
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 構成データに関連付けられるアプリケーションの名前。このアプリケーションはアクティブステータスである必要があります。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoDelete | アップロードコンテンツの一部ではない既存のノードを処理の完了後に削除するかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoValidate | コミット時に作成されたスナップショットを検証するかどうかを示すフラグ。 有効な値:
注: このオプションは、autoCommit パラメーターが true の場合にのみ使用できます。 データタイプ:ブール デフォルト値:false |
| changesetNumber | アプリケーションに関連付けられた 変更セット を一意に識別する文字列 (Chset-102 など)。この変更セットは [オープン] ステータスである必要があります。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 デフォルト:使用する変更セットを作成します。変更セットの詳細は CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} の結果の一部として返されます。 |
| collectionName | 必須です。アップロードされたペイロードを保存するコレクションの名前。 注: 指定された namePath がこのコレクションに存在しない場合、システムは自動的にこのコレクションの下にコンポーネントを作成し、構成コンテンツをアップロードします。たとえば、コレクション collA をパス compA/comp/compC でアップロードする場合、データは /collA/collections/compa/compB/compC の下にアップロードされます。
データタイプ:文字列 |
| dataFormat | 必須。構成データの形式。 有効な値:
データタイプ:文字列 |
| データフォーマット属性 | dataFormat パラメーターが csv に設定されている場合にのみサポートされます。CSV データ形式を定義する属性。詳細については、「Parsing of CSV files in CDM」を参照してください。 データタイプ: オブジェクト |
| dataFormatAttributes.containsHeaders | データにヘッダー行が含まれているかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| dataFormatAttributes.delimeter | データ内のフィールドを区切るために使用する文字。 データタイプ:文字列 デフォルト:カンマ "," |
| dataFormatAttributes.headers | パラメーターdataFormatAttributes.containsHeaders false の場合は必須です。ヘッダーを構成するデータ内のフィールド。これらのヘッダーは、JSON 形式の CDI のキー名に変換されます。ヘッダーの数は、レコードフィールドの数と一致する必要があります。 データタイプ:アレイ デフォルト:空のアレイ |
| dataFormatAttributes.securedHeaders | CDM にアップロードされたデータで暗号化する必要がある、安全なフィールドであるデータ内のフィールド。セキュリティで保護されたヘッダーの名前は、ヘッダー属性またはデータ ファイル内のヘッダーの名前と一致する必要があります。これらのフィールドは、パスワード (双方向暗号化) タイプの列に格納されます。 注: この属性を使用してのみフィールドを保護できます。保護されたフィールドの保護を解除することはできません。 データタイプ:アレイ デフォルト:空のアレイ |
| deleteRedundantOverrides | 冗長な値が存在する場合に上書きを作成するかどうかを示すフラグ。 有効な値:
デフォルト:true |
| ignoreAttributes | 指定されたデータ形式が属性 (現在は XML のみ) をサポートしているかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、またはデプロイ可能なフォルダー (呼び出されるエンドポイントによって異なります) に対する相対パスです。 名前パスは、次のいずれかの形式で渡すことができます。たとえば、ノード testApp/deployables/Development1/cdi1 の名前パスを定義するには、次のようにします。
注: 指定されたパスに指定されたコンポーネントが存在しない場合、指定されたパスにコンポーネントが自動的に作成され、データがアップロードされます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| 変数アップロードデータ | アップロードする構成データ。これは、クエリパラメーターの dataFormat パラメーターで定義された形式の任意のデータにすることができます。 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。サポートされるタイプ:text/plain および application/x-www-form-urlencoded。 デフォルト: text/plain |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。 アップロード要求が却下されました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
この例は、JSON 形式の dbSettings 構成日付を、アプリケーション Demo_App1631126164773 のコレクションフォルダーにアップロードする方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/collections?dataFormat=json&autoValidate=false&changesetNumber=Chset-102&appName=Demo_App1631126164773&autoDelete=true&namePath=%2FSettings%2FdbSettings&collectionName=release-1.0&autoCommit=false&publishOption=publish_none" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbSettings\": {
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\"
}
}" \
--user 'username':'password'
この呼び出しに対して考えられる成功とエラーの両方の応答を以下に示します。
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi:/sn_cdm/applications/uploads/collections/file を POST
構成データモデル (CDM) のコレクションフォルダーにファイルをアップロードします。
URL 形式
バージョン管理された URL: POST /api/sn_cdm/{api_version}/applications/uploads/collections/file
デフォルト URL: POST /api/sn_cdm/applications/uploads/collections/file
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 構成データに関連付けられるアプリケーションの名前。このアプリケーションはアクティブステータスである必要があります。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoValidate | コミット時に作成されたスナップショットを検証するかどうかを示すフラグ。 有効な値:
注: このオプションは、autoCommit パラメーターが true の場合にのみ使用できます。 データタイプ:ブール デフォルト値:false |
| collectionName | 必須です。アップロードされたペイロードを保存するコレクションの名前。 注: 指定された namePath がこのコレクションの下に存在しない場合、システムはこのコレクションの下にコンポーネントを自動的に作成し、構成コンテンツをアップロードします。たとえば、コレクション collA をパス compA/comp/compC でアップロードする場合、データは /collA/collections/compa/compB/compC の下にアップロードされます。compA が存在するが、compB および compC がない場合、エンドポイントはこれらのコンポーネントを作成し、データを compC の下にアップロードします。データタイプ:文字列 |
| changesetNumber | アプリケーションに関連付けられた 変更セット を一意に識別する文字列 (Chset-102 など)。この変更セットは [オープン] ステータスである必要があります。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 デフォルト:使用する変更セットを作成します。変更セットの詳細は CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} の結果の一部として返されます。 |
| fileName | アップロードするファイルの名前。この名前は実際のファイル名と異なっていてもよく、ファイル拡張子を含むことができます。たとえば、.txt/.scv/.jar などです。fileName 値は、ファイルのダウンロード時に適用されます。 データタイプ:文字列 |
| ファイルノード名 | ファイルノードの名前。このファイル名は、構成データをエクスポートするときに使用されます。この名前にはファイル拡張子は必要なく、ダウンロードにも影響しません。 データタイプ:文字列 |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、またはデプロイ可能なフォルダー (呼び出されるエンドポイントによって異なります) に対する相対パスです。 名前パスは、次のいずれかの形式で渡すことができます。たとえば、ノード testApp/deployables/Development1/cdi1 の名前パスを定義するには、次のようにします。
注: 指定されたパスに指定されたコンポーネントが存在しない場合、指定されたパスにコンポーネントが自動的に作成され、データがアップロードされます。 データタイプ:文字列 |
| publishOption | 関連付けられた構成済みスナップショットの公開オプション。
有効な値:
スナップショットの公開の詳細については、「 スナップショットを公開または非公開にする」を参照してください。 データタイプ:文字列 デフォルト:publish_none 注: このオプションは、 autoCommit パラメーターの値が true の場合にのみ使用できます。 |
| 名前 | 説明 |
|---|---|
| 変数アップロードデータ | アップロードする構成データ。デフォルトでは、アップロードできるファイルサイズは 5 MB に制限されています。アップロードファイルのサイズと種類を調整する方法については、こちらを参照してください。 Now Support article. データタイプ:文字列/ストリーム |
ヘッダー
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | アップロードするファイルのコンテンツタイプ。例:application/zip、text/plain、application/json。 |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。 アップロード要求が却下されました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
次の呼び出しは、プレーンテキストファイルを CDM コレクションフォルダーにアップロードします。
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/collections/file?autoValidate=true&collectionName=collA&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "This is sample content that will be uploaded to a plain text file."\
--user 'username':'password'
次の戻り値は、この要求に対する成功とエラーの両方の応答を示しています。
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Could not find active application with name: ‘testApp’ of type application",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/deployables
指定されたアプリケーションの展開可能項目システムフォルダー内にある特定の展開可能項目の構成コンテンツをアップロードする要求を送信します。
次の画像は、ServiceNow DevOps コンフィグ UI を参照して展開可能項目の構成データがアップロードされる例を示しています。展開可能項目が Development_1、アプリケーションが paymentSvc であると想定します。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/uploads/deployables
デフォルトの URL:/api/sn_cdm/applications/uploads/deployables
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 構成データに関連付けられるアプリケーションの名前。このアプリケーションはアクティブステータスである必要があります。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoDelete | アップロードコンテンツの一部ではない既存のノードを処理の完了後に削除するかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoValidate | コミット時に作成されたスナップショットを検証するかどうかを示すフラグ。 有効な値:
注: このオプションは、autoCommit パラメーターが true の場合にのみ使用できます。 データタイプ:ブール デフォルト値:false |
| changesetNumber | アプリケーションに関連付けられた 変更セット を一意に識別する文字列 (Chset-102 など)。この変更セットは [オープン] ステータスである必要があります。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 デフォルト:使用する変更セットを作成します。変更セットの詳細は CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} の結果の一部として返されます。 |
| dataFormat | 必須。構成データの形式。 有効な値:
データタイプ:文字列 |
| データフォーマット属性 | dataFormat パラメーターが csv に設定されている場合にのみサポートされます。CSV データ形式を定義する属性。詳細については、「Parsing of CSV files in CDM」を参照してください。 データタイプ: オブジェクト |
| dataFormatAttributes.containsHeaders | データにヘッダー行が含まれているかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| dataFormatAttributes.delimeter | データ内のフィールドを区切るために使用する文字。 データタイプ:文字列 デフォルト:カンマ "," |
| dataFormatAttributes.headers | パラメーターdataFormatAttributes.containsHeaders false の場合は必須です。ヘッダーを構成するデータ内のフィールド。これらのヘッダーは、JSON 形式の CDI のキー名に変換されます。ヘッダーの数は、レコードフィールドの数と一致する必要があります。 データタイプ:アレイ デフォルト:空のアレイ |
| dataFormatAttributes.securedHeaders | CDM にアップロードされたデータで暗号化する必要がある、安全なフィールドであるデータ内のフィールド。セキュリティで保護されたヘッダーの名前は、ヘッダー属性またはデータ ファイル内のヘッダーの名前と一致する必要があります。これらのフィールドは、パスワード (双方向暗号化) タイプの列に格納されます。 注: この属性を使用してのみフィールドを保護できます。保護されたフィールドの保護を解除することはできません。 データタイプ:アレイ デフォルト:空のアレイ |
| deleteRedundantOverrides | 冗長な値が存在する場合に上書きを作成するかどうかを示すフラグ。 有効な値:
デフォルト:true |
| deployableName | 必須です。アップロードされたペイロードを保存する展開可能項目の名前。 注: 指定された namePath がこの展開可能項目の下に存在しない場合、システムはこの展開可能項目の下にコンポーネントを自動的に作成し、構成コンテンツをアップロードします。 |
| identifierKeys | 同じノードを識別するために使用するアレイの子のキーを示す名前のリスト。 たとえば、次のようにアップロードする場合: 次の既存のモデルで: identifierKeys を name に設定すると、次の出力が生成されます。 それ以外の場合は、次の出力が生成されます。 データタイプ:文字列のアレイ |
| ignoreAttributes | 指定されたデータ形式が属性 (現在は XML のみ) をサポートしているかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、またはデプロイ可能なフォルダー (呼び出されるエンドポイントによって異なります) に対する相対パスです。 名前パスは、次のいずれかの形式で渡すことができます。たとえば、ノード testApp/deployables/Development1/cdi1 の名前パスを定義するには、次のようにします。
注: 指定されたパスに指定されたコンポーネントが存在しない場合、指定されたパスにコンポーネントが自動的に作成され、データがアップロードされます。 データタイプ:文字列 |
| publishOption | 関連付けられた構成済みスナップショットの公開オプション。
有効な値:
スナップショットの公開の詳細については、「 スナップショットを公開または非公開にする」を参照してください。 データタイプ:文字列 デフォルト:publish_none 注: このオプションは、 autoCommit パラメーターの値が true の場合にのみ使用できます。 |
| 名前 | 説明 |
|---|---|
| 変数アップロードデータ | アップロードする構成データ。これは、クエリパラメーターの dataFormat パラメーターで定義された形式の任意のデータにすることができます。 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。application/json のみをサポートします。 |
| Content-Type | 要求本文のデータ形式。サポートされるタイプ:text/plain および application/x-www-form-urlencoded。 デフォルト: text/plain |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。 アップロード要求が却下されました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
次の例は、アプリケーション Demo_App1631126164773 のアップロード要求を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/deployables?deployableName=TST-1&autoValidate=false&dataFormat=json&autoDelete=false&changesetNumber=Chset-102&appName=Demo_App1631126164773&publishOption=publish_none&autoCommit=true&namePath=%2FSettings%2FdbSettings" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\"
}" \
--user 'username':'password'
返される次の結果は、この要求の成功応答とエラー応答の両方を示しています。
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi:POST /sn_cdm/applications/uploads/deployables/file
構成データモデル (CDM) の展開可能項目フォルダーにファイルをアップロードします。
URL 形式
バージョニングされた URL: POST /api/sn_cdm/{api_version}/applications/uploads/deployables/file
デフォルト URL: POST /api/sn_cdm/applications/uploads/deployables/file
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 構成データに関連付けられるアプリケーションの名前。このアプリケーションはアクティブステータスである必要があります。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoValidate | コミット時に作成されたスナップショットを検証するかどうかを示すフラグ。 有効な値:
注: このオプションは、autoCommit パラメーターが true の場合にのみ使用できます。 データタイプ:ブール デフォルト値:false |
| changesetNumber | アプリケーションに関連付けられた 変更セット を一意に識別する文字列 (Chset-102 など)。この変更セットは [オープン] ステータスである必要があります。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 デフォルト:使用する変更セットを作成します。変更セットの詳細は CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} の結果の一部として返されます。 |
| deployableName | 必須です。ポリシーをマッピングする CDM 展開可能項目の名前。CDM 展開可能項目 [sn_cdm_deployable] テーブルにあります。 データタイプ:文字列 |
| fileName | アップロードするファイルの名前。この名前は実際のファイル名と異なっていてもよく、ファイル拡張子を含むことができます。たとえば、.txt/.scv/.jar などです。fileName 値は、ファイルのダウンロード時に適用されます。 データタイプ:文字列 |
| ファイルノード名 | ファイルノードの名前。このファイル名は、構成データをエクスポートするときに使用されます。この名前にはファイル拡張子は必要なく、ダウンロードにも影響しません。 データタイプ:文字列 |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、またはデプロイ可能なフォルダー (呼び出されるエンドポイントによって異なります) に対する相対パスです。 名前パスは、次のいずれかの形式で渡すことができます。たとえば、ノード testApp/deployables/Development1/cdi1 の名前パスを定義するには、次のようにします。
注: 指定されたパスに指定されたコンポーネントが存在しない場合、指定されたパスにコンポーネントが自動的に作成され、データがアップロードされます。 データタイプ:文字列 |
| publishOption | 関連付けられた構成済みスナップショットの公開オプション。
有効な値:
スナップショットの公開の詳細については、「 スナップショットを公開または非公開にする」を参照してください。 データタイプ:文字列 デフォルト:publish_none 注: このオプションは、 autoCommit パラメーターの値が true の場合にのみ使用できます。 |
| 名前 | 説明 |
|---|---|
| 変数アップロードデータ | アップロードする構成データ。デフォルトでは、アップロードできるファイルサイズは 5 MB に制限されています。アップロードファイルのサイズと種類を調整する方法については、こちらを参照してください。 Now Support article. データタイプ:文字列/ストリーム |
ヘッダー
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | アップロードするファイルのデータタイプ。サポートされているタイプ: application/zip、 text/plain、 application/json。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。 アップロード要求が却下されました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用して CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} エンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
cURL 要求
次の要求は、CDM アプリケーションの展開可能フォルダーにプレーンテキストファイルをアップロードします。
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/deployables/file?autoValidate=true&deployableName=depA&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "This is sample content that will be uploaded to a plain text file."\
--user 'username':'password'
次の戻り値は、この要求に対する成功とエラーの両方の応答を示しています。
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Could not find active application with name: ‘testApp’ of type application",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi:PUT /sn_cdm/applications/deployables
指定された変更セット内のアプリケーション内の指定された共有コンポーネントを更新します。
- 名前
- 説明
- アプリケーションサービス\ダイナミック CI グループ
- 展開可能項目の識別子
このエンドポイントにアクセスするには、CDM admin ロールが必要です。
URL 形式
バージョニングされた URL:/api/sn_cdm/{api_version}/applications/deployables
デフォルトの URL:/api/sn_cdm/applications/deployables
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプション。アクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| appName | 必須。CDM アプリケーションの名前。 データタイプ:文字列 |
| name | 必須。展開可能な CDM の名前。 データタイプ:文字列 |
| 新しい説明 | オプション。展開可能な CDM の説明。 データタイプ:文字列 |
| newServiceId | オプション。目的のアプリケーションサービス/ダイナミック CI グループの ID。cURL 要求で、展開可能項目をサービスから切断するための 「」 を指定します。 |
| 新しい識別子 | オプション。展開可能項目の識別子。 データタイプ:選択肢 (開発/テスト/本番) |
| newName | オプション。展開可能項目の新しい名前。 データタイプ:文字列 |
| returnFields | オプション。応答の一部として返されるフィールドのカンマ区切りリスト。 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。サポートされているタイプ:application/json |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| sys_id | CDM 展開可能sys_Id。 |
| name | 展開可能な CDM の名前。 |
| ノード | 展開可能ノードオブジェクト。
|
| 説明 | CDM 展開可能の説明。 |
| 識別子 | 展開可能項目の識別子。 |
| cmdb_ci | 展開可能項目に接続されているアプリサービスオブジェクト。
|
| cmdb_app | CDM アプリケーションオブジェクト。
|
| snapshot_version_counter | 展開可能項目に対して作成されたスナップショットの数。 |
| cdi_count | この CDM 展開可能項目に含まれる CDI の数。 |
| cdi_usage | CDI 使用率。 |
| environment_type | 環境タイプ。可能な値:
|
| state | アクティブまたは削除済みステータス . 可能な値:
|
| sys_created_by | <username> によって作成された CDM 展開可能項目。 |
| sys_created_on | <yyyy-MM-dd hh:mm:ss> 形式の CDM 展開可能項目の作成タイムスタンプ。 |
| sys_updated_by | CDM 展開可能項目は <username> によって更新されました。 |
| sys_updated_on | CDM 展開可能項目は、<yyyy-MM-dd hh:mm:ss> の形式のタイムスタンプによって更新されました。 |
cURL 要求
curl "http://localhost:8080/api/sn_cdm/applications/deployables?appName=testApp&name=Dep-1" \
--request PUT\
--header "Accept:application/json" \
--user 'cdm_admin':'password1!'
出力:
{
"result": {
"identifier": "identiy1",
"cmdb_ci": {
"value": "f5b9e00b53901110a1d3ddeeff7b12b8",
"link": "http://192.168.0.233:8080/api/now/table/cmdb_ci_service_auto/f5b9e00b53901110a1d3ddeeff7b12b8"
},
"cdi_count": "3",
"snapshot_version_counter": "1",
"description": "cdcds",
"sys_updated_on": "2022-07-27 13:40:13",
"environment_type": "Test",
"node": {
"value": "30c00d4053015110a1d3ddeeff7b12bf",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_node/30c00d4053015110a1d3ddeeff7b12bf"
},
"sys_id": "39b9e00b53901110a1d3ddeeff7b12b7",
"sys_updated_by": "admin",
"cdm_app": {
"value": "62b517a953b70110a1d3ddeeff7b128c",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c"
},
"sys_created_on": "2022-06-29 12:53:57",
"cdi_usage": "0.03",
"name": "Dep-2",
"state": "active",
"sys_created_by": "admin"
}
}
CdmApplicationsApi - /sn_cdm/applications/shared_components を PUT
指定された変更セット内のアプリケーション内の指定された共有コンポーネントを更新します。
このエンドポイントにアクセスするには、CDM admin ロールが必要です。
URL 形式
バージョン管理された URL: /api/sn_cdm/{api_version}/applications/shared_components
デフォルト URL: /api/sn_cdm/applications/shared_components
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| changesetNumber | 必須。コンポーネントに関連付けられた変更セットの一意の識別子。 データタイプ:文字列 |
| returnFields | 応答の一部として返すフィールドのリスト。sys_id、sys_updated_by、state などのレコード列名を渡します。 データタイプ:アレイ デフォルト:エンドポイントによって決定されるすべてのフィールド |
| sharedComponentName | 必須。指定されたアプリケーションに関連付けられた共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| sharedLibraryName | 必須。コンポーネントが存在する共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。共有ライブラリーには、以下のフィールドが次のように定義されている必要があります。
データタイプ:文字列 |
| version | 必須。共有コンポーネントに関連付けられたバージョン名。CDM スナップショット [sn_cdm_snapshot] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。渡された変更セットが存在しません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
応答フィールドは、要求の returnFields パラメーターで指定されたフィールドによって異なります。以下では、いくつかの重要なフィールドについて説明します。
| 名前 | 説明 |
|---|---|
| changeset_id | ノードに関連付けられた変更セットレコードの詳細。 データタイプ:オブジェクト |
| changeset_id.link | テーブル REST API を使用してこの変更セットレコードをクエリーするための呼び出し構文。 データタイプ:文字列 |
| changeset_id.value | 変更セットレコードの一意の識別子。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 |
| 説明 | CDM ノードの説明。 データタイプ:文字列 |
| error | 処理中にエラーが発生した場合にのみ返されます。 データタイプ:オブジェクト |
| error.detail | 発生したエラーの詳細。 データタイプ:文字列 |
| error.message | エラーの概要を示すメッセージ。 データタイプ:文字列 |
| linked_to | 共有コンポーネントに関連付けられたメインノードの ID。 データタイプ:文字列 |
| linked_to_version | ノードに関連付けられた CDM スナップショットレコードの詳細。 データタイプ: オブジェクト |
| linked_to_version.リンク | Table REST API を使用してこのバージョンレコードをクエリするための呼び出し構文。 データタイプ:文字列 |
| linked_to_version.value | バージョンレコードのSys_id。 データタイプ:文字列 |
| メイン | 関連付けられたスナップショットが公開されたかどうかを示すフラグ。 有効な値:
|
| main_id | 新しく作成されたメインノードの一意の ID。 データタイプ:文字列 |
| main_id_encoded | 新しく作成されたメインノードのエンコードされた ID。 データタイプ:文字列 |
| name | CDM ノードの名前。 データタイプ:文字列 |
| ノード | 共有コンポーネントノードのSys_id。 データタイプ:文字列 |
| node_path | 共有コンポーネントを追加するときに作成される新しいリンクノードへのパス。 データタイプ:文字列 |
| status | ノードのステータス。 可能な値:新規 データタイプ:文字列 |
| sys_created_by | CDM ノードを作成するユーザーのユーザー名。たとえば、able.tuter などです。 データタイプ:文字列 |
| sys_created_on | CDM ノードが作成された日時。 形式:YYYY-mm-DD hh:mm:ss データタイプ:文字列 |
| sys_id | ノードの sys_id。CDM ノード [sn_cdm_node] テーブルにあります。 データタイプ:文字列 |
| sys_updated_by | CDM ノードを最後に更新したユーザーのユーザー名。たとえば、able.tuter などです。 データタイプ:文字列 |
| sys_updated_on | CDM ノードが最後に更新された日時。 形式:YYYY-mm-DD hh:mm:ss データタイプ:文字列 |
| type | ノードタイプ。 データタイプ:文字列 |
cURL 要求
次の例は、このエンドポイントを呼び出して、変更セット「Chset-20」内の共有ライブラリ「OracleG-Library-10」の下にある共有コンポーネント「paymentService-V1.1」でアプリケーション「App1」を更新する方法を示しています。
"https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?sharedComponentName=paymentService-V1.1&sharedLibraryName=OracleG-Library-10&changesetNumber=Chset-20&versionName=sComp3-v2.shc&appName=App1" \
--request PUT \
--header "Accept:application/json" \
--user 'username':'password'
応答:
"result": {
"changeset_id": {
"value": "7343d0f71b771110636e0fe0604bcb0b",
"link": "https://instance-name.service-now.com/api/now/table/sn_cdm_changeset/7343d0f71b771110636e0fe0604bcb0b"
},
"node_path": "!2!3!&`",
"description": null,
"sys_updated_on": "2022-12-22 18:52:38",
"type": "sn_cdm_node_linked_shared_component",
"sys_class_name": "sn_cdm_node",
"sys_id": "339314b71b771110636e0fe0604bcba3",
"sys_updated_by": ”admin",
"previous_version": {
"value": "a9ce80bf1b371110636e0fe0604bcb10",
"link": "https://instance-name.service-now.com/api/now/table/sn_cdm_node/a9ce80bf1b371110636e0fe0604bcb10"
},
"sys_created_on": "2022-12-22 18:52:38",
"value": null,
"effective_from": null,
"linked_to": "146",
"sys_created_by": ”admin",
"restricted_to": null,
"linked_to_version": {
"value": "54115c371b771110636e0fe0604bcb77",
"link": "https://instance-name.service-now.com/api/now/table/sn_cdm_snapshot/54115c371b771110636e0fe0604bcb77"
},
"level": "2",
"conflict_type": null,
"main_id": "166",
"effective_to": null,
"secure_value": null,
"node_classifier": "/application/components",
"main_id_encoded": "&`",
"name": "Component_A",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "updated",
"conflict": false
}