CdmVersionApi
CdmVersionApi は、共有ライブラリの共有コンポーネントの 構成データ管理 (CDM) でバージョン (スナップショット) を公開、非公開、およびエクスポートできるようにするエンドポイントを提供します。
スナップショットを公開してエクスポートできるようにすると、 継続的インテグレーションと継続的デリバリー (CICD) パイプラインが関連する共有コンポーネントとライブラリにアクセスして使用できるようになります。エクスポーターは、公開されたスナップショットでのみ実行できます。スナップショットが不要になった場合は、公開を中止して、スナップショットが実行可能かどうかについての混乱を軽減することができます。
- スクリプト化された REST CDM ビュー ACL (sn_cdm.cdm.viewer)
- スクリプト化された REST CDM エディター ACL (sn_cdm.cdm_editor)
また、この API をインスタンスで使用するには、構成データ管理 (CDM) プラグインを有効にする必要があります。
スナップショットの詳細については、「 スナップショットの表示」を参照してください。
CdmVersionApi:GET /sn_cdm/versions/export
指定された公開バージョンについて、指定された共有ライブラリ内の指定された共有コンポーネントの構成データを返します。
このエンドポイントにアクセスするには、CDM エディターロールが必要です。
URL 形式
バージョン管理された URL: /api/sn_cdm/{api_version}/versions/export
デフォルト URL: /api/sn_cdm/versions/export
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | Description (説明) |
|---|---|
| dataFormat | 必須。構成データの形式。 有効な値:
データタイプ:文字列 |
| decryptPassword | エンコードされたパスワード値と復号化されたパスワード値のどちらを表示するかを示すフラグ。 有効な値:
デフォルト値:false |
| sharedComponentName | 必須。構成データをエクスポートする共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| sharedLibraryName | 必須。構成データを返すコンポーネントを含む共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。指定するアプリケーションでは、type フィールドが「shared_library」に設定されている必要があります。 データタイプ:文字列 |
| substituteVariables | 変数に従うかどうかを示すフラグ。変数に従う方法については、 構成データの検証と修正を参照してください。 有効な値:
デフォルト:true |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。以下のいずれかの問題が発生した可能性があります。
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| 結果 | 指定された形式の構成データ。 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次のコード例は、「JavaLib」共有ライブラリの下にある「jdk8」コンポーネントの構成データをエクスポートする方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/shared_libraries/components/exports?sharedLibraryName=JavaLib&componentName=jdk8
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
応答:
{
"result": {
"sharedComponentA": { "cdi": "val" }
}
}
CdmVersionApi:PUT /sn_cdm/versions/publish
指定された共有ライブラリで共有コンポーネントのバージョンを公開します。
このエンドポイントにアクセスするには、CDM エディターロールが必要です。
URL 形式
バージョニングされた URL: /api/sn_cdm/{api_version}/versions/publish
デフォルト URL: /api/sn_cdm/versions/publish
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| name | 必須。公開する共有コンポーネントのバージョンの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| returnFields | 応答の一部として返す CDM スナップショット [sn_cdm_snapshot] テーブル内のフィールドのカンマ区切りリスト。 データタイプ:文字列 デフォルト:すべての非システムフィールドを返します。 |
| sharedComponentName | 必須。公開する共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| sharedLibraryName | 必須。指定されたコンポーネントが存在する共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。関連するレコードのタイプフィールドを「shared_library」に設定する必要があります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。公開中にエラーが発生しました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| cdm_application_id | スナップショットに関連付けられた CDM アプリケーションに関する詳細。 データタイプ:オブジェクト |
| cdm_application_id.link | REST テーブル API を使用して CDM アプリケーションレコードにアクセスするために使用する呼び出し。 データタイプ:文字列 |
| cdm_application_id.value | 関連付けられた CDM アプリケーションレコードの sys_id。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| cdm_deployable_id | スナップショットに関連付けられた CDM 展開可能項目に関する詳細。 データタイプ:オブジェクト |
| cdm_deployable_id.link | テーブル REST API を使用してこの展開可能レコードをクエリするための呼び出し構文。 データタイプ:文字列 |
| cdm_deployable_id.value | 展開可能レコードの sys_id。CDM 展開可能項目 [sn_cdm_deployable] テーブルにあります。 データタイプ:文字列 |
| changeset_id | スナップショットに関連付けられた変更セットに関する詳細。 データタイプ: オブジェクト |
| changeset_id.link | テーブル REST API を使用してこの変更セットレコードをクエリーするための呼び出し構文。 データタイプ:文字列 |
| changeset_id.value | 変更セットレコードの一意の識別子。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 |
| 説明 | スナップショットの簡単な説明。 データタイプ:文字列 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| last_published | スナップショットが最後に公開された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| last_validated | スナップショットが最後に検証された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| name | スナップショットの名前。 データタイプ:文字列 |
| number | スナップショットを識別する一意の番号。この値は、人間が判読可能なマッピングの識別子を提供します。 データタイプ:文字列 |
| 公開済 | スナップショットが公開されたかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| sys_created_by | スナップショットを作成したユーザーの名前。 データタイプ:文字列 |
| sys_created_on | スナップショットが作成された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| sys_id | スナップショットの sys_id。CDM スナップショット [sn_cdm_snapshot] テーブルにあります。 データタイプ:文字列 |
| sys_updated_by | スナップショットを更新したユーザーの名前。 データタイプ:文字列 |
| sys_updated_on | スナップショットが最後に更新された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| 妥当性検証 | スナップショットの現在の検証ステータス。 可能な値:
データタイプ:文字列 |
cURL 要求
このコード例は、共有コンポーネント「Development」を「Development-v1.shc」というバージョン名で公開する方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/versions/publish?sharedLibraryName=LibraryJdk&componentName=Development&name=Development-v1.shc" \
--request PUT\
--header "Accept:application/json" \
--user 'username':'password
応答:
{
"result": {
"changeset_id": {
"value": "1a2bd15c7764a1109ac0cf0bbb5a99fc",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/1a2bd15c7764a1109ac0cf0bbb5a99fc"
},
"cdm_deployable_id": null,
"cdm_shared_component_node_id": {
"value": "fe2b155c7764a1109ac0cf0bbb5a995d",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_node/fe2b155c7764a1109ac0cf0bbb5a995d"
},
"cdm_shared_component_id": {
"value": "362b155c7764a1109ac0cf0bbb5a9970",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_shared_component/362b155c7764a1109ac0cf0bbb5a9970"
},
"description": null,
"cdm_application_id": {
"value": "122bd15c7764a1109ac0cf0bbb5a99fa",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_application/122bd15c7764a1109ac0cf0bbb5a99fa"
},
"published": true,
"sys_updated_on": "2023-01-18 14:15:44",
"last_published": "2023-01-18 09:53:37",
"sequence_number": "1",
"number": "SNAP0001110",
"sys_id": "df2b155c7764a1109ac0cf0bbb5a9949",
"sys_updated_by": "admin",
"sys_created_on": "2023-01-18 09:53:36",
"name": "logonService-V2.1-v1.shc",
"last_validated": "",
"validation": "passed",
"sys_created_by": "admin"
}
}
CdmVersionApi:PUT /sn_cdm/versions/unpublish
指定された共有ライブラリの共有コンポーネントのバージョンを非公開にします。
このエンドポイントにアクセスするには、CDM エディターロールが必要です。
URL 形式
バージョニングされた URL: /api/sn_cdm/{api_version}/versions/publish
デフォルト URL: /api/sn_cdm/versions/publish
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | オプションアクセスするエンドポイントのバージョン。たとえば、v1 や v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| name | 必須。非公開にする共有コンポーネントのバージョンの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| returnFields | 応答の一部として返す CDM スナップショット [sn_cdm_snapshot] テーブル内のフィールドのカンマ区切りリスト。 データタイプ:文字列 デフォルト:すべての非システムフィールドを返します。 |
| sharedComponentName | 必須。非公開にする共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| sharedLibraryName | 必須。指定されたコンポーネントが存在する共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。関連するレコードのタイプフィールドを「shared_library」に設定する必要があります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。非公開中にエラーが発生しました。 考えられる問題:
|
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| cdm_application_id | スナップショットに関連付けられた CDM アプリケーションに関する詳細。 データタイプ:オブジェクト |
| cdm_application_id.link | REST テーブル API を使用して CDM アプリケーションレコードにアクセスするために使用する呼び出し。 データタイプ:文字列 |
| cdm_application_id.value | 関連付けられた CDM アプリケーションレコードの sys_id。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| cdm_deployable_id | スナップショットに関連付けられた CDM 展開可能項目に関する詳細。 データタイプ:オブジェクト |
| cdm_deployable_id.link | テーブル REST API を使用してこの展開可能レコードをクエリするための呼び出し構文。 データタイプ:文字列 |
| cdm_deployable_id.value | 展開可能レコードの sys_id。CDM 展開可能項目 [sn_cdm_deployable] テーブルにあります。 データタイプ:文字列 |
| changeset_id | スナップショットに関連付けられた変更セットに関する詳細。 データタイプ: オブジェクト |
| changeset_id.link | テーブル REST API を使用してこの変更セットレコードをクエリーするための呼び出し構文。 データタイプ:文字列 |
| changeset_id.value | 変更セットレコードの一意の識別子。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 |
| 説明 | スナップショットの簡単な説明。 データタイプ:文字列 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| last_published | スナップショットが最後に公開された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| last_validated | スナップショットが最後に検証された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| name | スナップショットの名前。 データタイプ:文字列 |
| number | スナップショットを識別する一意の番号。この値は、人間が判読可能なマッピングの識別子を提供します。 データタイプ:文字列 |
| 公開済 | スナップショットが公開されたかどうかを示すフラグ。 可能な値:
データタイプ:ブーリアン |
| sys_created_by | スナップショットを作成したユーザーの名前。 データタイプ:文字列 |
| sys_created_on | スナップショットが作成された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| sys_id | スナップショットの sys_id。CDM スナップショット [sn_cdm_snapshot] テーブルにあります。 データタイプ:文字列 |
| sys_updated_by | スナップショットを更新したユーザーの名前。 データタイプ:文字列 |
| sys_updated_on | スナップショットが最後に更新された日時。 データタイプ:文字列 形式:yyyy-mm-dd hh:mm:ss |
| 妥当性検証 | スナップショットの現在の検証ステータス。 可能な値:
データタイプ:文字列 |
cURL 要求
次のコード例は、"OracleG-Library-10"共有ライブラリから"paymentService-V1"共有コンポーネントを非公開にする方法を示しています。
curl "https://instance-name.service-now.com/api/sn_cdm/versions/unpublish?sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1&name=paymentService-V1.1-v1.shc" \
--request PUT \
--header "Accept:application/json" \
--user 'username':'password'
応答:
{
"result": {
"changeset_id": {
"value": "1a2bd15c7764a1109ac0cf0bbb5a99fc",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_changeset/1a2bd15c7764a1109ac0cf0bbb5a99fc"
},
"cdm_deployable_id": null,
"cdm_shared_component_node_id": {
"value": "fe2b155c7764a1109ac0cf0bbb5a995d",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_node/fe2b155c7764a1109ac0cf0bbb5a995d"
},
"cdm_shared_component_id": {
"value": "362b155c7764a1109ac0cf0bbb5a9970",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_shared_component/362b155c7764a1109ac0cf0bbb5a9970"
},
"description": null,
"cdm_application_id": {
"value": "122bd15c7764a1109ac0cf0bbb5a99fa",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_application/122bd15c7764a1109ac0cf0bbb5a99fa"
},
"published": false,
"sys_updated_on": "2023-01-18 14:15:44",
"last_published": "2023-01-18 09:53:37",
"sequence_number": "1",
"number": "SNAP0001110",
"sys_id": "df2b155c7764a1109ac0cf0bbb5a9949",
"sys_updated_by": "admin",
"sys_created_on": "2023-01-18 09:53:36",
"name": "logonService-V2.1-v1.shc",
"last_validated": "",
"validation": "passed",
"sys_created_by": "admin"
}
}