CdmSharedLibraryApi
CdmSharedLibraryApi は、共有ライブラリと共有コンポーネントを作成および管理できるようにするエンドポイントを提供します。また、共有コンポーネントの構成データをアップロードおよびエクスポートできるエンドポイントもあります。
- CDM エディターロール
- CDM 管理者ロール
共有ライブラリーおよび共有コンポーネントについて詳しくは、 アプリケーション間でのコンポーネントの共有 - コンポーネント・ライブラリーを参照してください。
CdmSharedLibraryApi - DELETE /sn_cdm/shared_libraries
指定した名前の共有ライブラリーを削除します。
このエンドポイントにアクセスするには、CDM 管理者ロールが必要です。
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| name | 必須です。削除する共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次のコード例は、共有ライブラリ「javalib」を削除する方法を示しています。
curl "http://instance.servicenow.com/sn_cdm/shared_libraries?name='javalib'\
--request DELETE\
--header "Accept:application/json" \
--user 'username':'password'
応答:
""
CdmSharedLibraryApi - DELETE /sn_cdm/shared_libraries/components
指定されたライブラリから指定された共有コンポーネントを削除します。
このエンドポイントにアクセスするには、CDM エディターロールが必要です。
URL 形式
バージョニングされた URL:/ api/sn_cdm/{api_version}/shared_libraries/components
デフォルトの URL:/ api/sn_cdm/shared_libraries/components
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| changesetNumber | 必須です。コンポーネントに関連付けられている変更セットの番号。CDM 変更セット [sn_cdm_changeset] テーブルにあります データタイプ:文字列 |
| name | 必須です。削除する共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| sharedLibraryName | 必須です。削除するコンポーネントが配置されている共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この 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」共有ライブラリの下にあるコンポーネント「TestComponent」を削除する方法を示しています。
curl "http://instance.servicenow.com/sn_cdm/shared_libraries/components?sharedLibraryName='javalib&changesetNumber='chset-8'&name='TestComponent'\
--request DELETE\
--header "Accept:application/json" \
--user 'username':'password'
応答:
""
CdmSharedLibraryApi - GET /sn_cdm/shared_libraries/upload-status/{upload-id}
指定された共有ライブラリーのアップロード要求の現在のステータスを返します。
URL 形式
バージョニングされた URL:/ api/sn_cdm/{api_version}/shared_libraries/upload-status/{upload-id}
デフォルトの URL:/ api/sn_cdm/shared_libraries/upload-status/{upload-id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| アップロード ID | ステータスを返すアップロード要求の sys_id。この値は、さまざまな CdmSharedLibrary アップロード要求エンドポイントによって返されます。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: 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 | 一意の変更セット識別値 (Chset-124 など)。 データタイプ:文字列 |
| output.publish_option | 関連するアップロード呼び出しで渡される公開オプションの値。 スナップショットの公開の詳細については、「 スナップショットの公開または非公開」を参照してください。 データタイプ:文字列 |
| output.sharedLibraryName | 元のアップロード呼び出しで渡された共有ライブラリーの名前。 データタイプ:文字列 |
| output.snapshot_description | 関連付けられたスナップショットの説明。 データタイプ:文字列 |
| output.snapshot_name | 関連付けられたスナップショットの名前。 データタイプ:文字列 |
| output.state | アップロードのステータス。 可能な値:
データタイプ:文字列 |
| output.sys_created_by | レコードを作成したエンティティの sys_id。 データタイプ:文字列 |
| output.sys_id | 変更セットを含むレコードの sys_id。 データタイプ:文字列 |
| output.title | アップロードの一部として作成された変更セットのタイトル。 データタイプ:文字列 |
| processing_state | アップロード要求の現在の処理ステータス。 可能な値: 処理済み データタイプ:文字列 |
| state | アップロード要求の現在のステータス。 可能な値:
|
| タイプ | アップロード要求のタイプ。 可能な値: upload_and_commit データタイプ:文字列 |
| upload_id | アップロードされた構成ペイロードを含むレコードSys_id。 データタイプ:文字列 |
cURL 要求
このコード例は、アップロード ID 0d91d9891b2b19109524cae0604bcbe6 のステータスを要求する方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/shared_libraries/upload-status/0d91d9891b2b19109524cae0604bcbe6" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
応答:
// Successful response
{
"result": {
"type": "upload_and_commit",
"state": "completed",
"output": {
"sys_id": "0002ea107768a1109ac0cf0bbb5a9963",
"number": "Chset-457",
"title": "admin8802ea107768a1109ac0cf0bbb5a9962",
"description": null,
"committed_at": "",
"committed_by": null,
"sys_created_by": "admin",
"state": "open",
"publish_option": "publish_none",
"auto_validate": false,
"snapshot_name": null,
"snapshot_description": null,
"cdm_application": "OracleG-Library-15",
"last_conflict_detection_time": null
},
"processing_state": "PROCESSED",
"upload_id": "00b226547768a1109ac0cf0bbb5a99f2"
}
}
// Error response
{
"result": {
"type": "upload_and_commit",
"state": "error",
"output": "Error: Application with sys_id 87fb1ecb1be3111050fc21b0604bcb95 is in State Deleted. No data can be modified on deleted applications",
"processing_state": "PROCESSED",
"upload_id": "fcdfaf7f1b88211050fc21b0604bcb79"
}
}
CdmSharedLibraryApi - POST /sn_cdm/shared_libraries
指定した名前で新しい共有ライブラリーを作成します。
このエンドポイントにアクセスするには、CDM 管理者ロールが必要です。
URL 形式
バージョニングされた URL:/ api/sn_cdm/{api_version}/shared_libraries
デフォルトの URL:/ api/sn_cdm/shared_libraries
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| description | 共有ライブラリーの説明。 データタイプ:文字列 デフォルト:空 |
| 名前 | 必須です。作成する共有ライブラリーの名前。この名前は、すべての CDM アプリケーションとライブラリで一意である必要があります。 データタイプ:文字列 |
| returnFields | 応答の一部として返すカンマ区切りのフィールドのリスト。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 デフォルト:システム以外のすべてのフィールドが返されます。 |
| userGroupId | 関連する共有ライブラリーを編集できるユーザーグループのsys_idsのカンマ区切りリスト。適切なロールを持つすべてのユーザーは、共有ライブラリーを表示できます。グループ [sys_user_group] テーブルにあります。 データタイプ:文字列 デフォルト:CDM エディターロールを持つすべてのユーザーは、共有ライブラリ内のデータを編集できます。 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| <フィールド> | CDM アプリケーション [sn_cdm_application] テーブルから要求されたフィールド。 データタイプ:変数 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
以下のコード例は、このエンドポイントを呼び出して、ライブラリーにアクセスできるすべてのユーザー・グループを持つ共有ライブラリー Java11Lib を作成する方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/shared_libraries?name=Java11Lib&description=The%20new%20java%20library" \
--request POST \
--header "Accept:application/json" \
--user 'userName':'password
応答:
{
"result": {
"sdlc_component": null,
"cdi_count": "0",
"available": false,
"description": "Description of LibraryA",
"managed_by_group": null,
"sys_updated_on": "2023-01-18 11:34:43",
"type": "shared_library",
"node": {
"value": "d852b15877a4a1109ac0cf0bbb5a99aa",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_node/d852b15877a4a1109ac0cf0bbb5a99aa"
},
"sys_id": "185235dc77a4a1109ac0cf0bbb5a994e",
"sys_updated_by": "admin",
"node_main": {
"value": "1852b15877a4a1109ac0cf0bbb5a99aa",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_node_main/1852b15877a4a1109ac0cf0bbb5a99aa"
},
"sys_created_on": "2023-01-18 11:34:43",
"cdi_usage": "0",
"name": "LibraryA",
"last_committed_changeset": {
"value": "9052b15877a4a1109ac0cf0bbb5a99aa",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/9052b15877a4a1109ac0cf0bbb5a99aa"
},
"state": "active",
"sys_created_by": "admin"
}
}
CdmSharedLibraryApi - POST /sn_cdm/shared_libraries/components
指定したライブラリの下に指定した共有コンポーネントを作成します。
このエンドポイントにアクセスするには、CDM エディターロールが必要です。
URL 形式
バージョニングされた URL:/ api/sn_cdm/{api_version}/shared_libraries/components
デフォルトの URL:/ api/sn_cdm/shared_libraries/components
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| changesetNumber | 必須です。 |
| description | 共有コンポーネントの説明。 データタイプ:文字列 |
| name | 必須です。共有ライブラリーに作成する共有コンポーネントの名前。この名前は一意である必要があります。 データタイプ:文字列 |
| returnFields | 応答の一部として返される CDM ノード [sn_cdm_node] テーブルのカンマ区切りのフィールドリスト。 データタイプ:文字列 デフォルト:すべての非内部フィールドが返されます。 |
| sharedLibraryName | 必須です。コンポーネントを作成する共有ライブラリーの名前。このライブラリーは既に存在し、アクティブ状態でなければなりません。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| <要求されたフィールド> | CDM ノード [sn_cdm_node] テーブルから要求されたフィールド。 |
| error | 処理中にエラーが発生した場合にのみ返されます。 データタイプ:オブジェクト |
| error.detail | 発生したエラーの詳細。 データタイプ:文字列 |
| error.message | エラーの概要を示すメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次のコード例では、共有ライブラリ「javalib」の下に「SharedComponent」という名前のコンポーネントを格納します。
curl "http://instance.servicenow.com/sn_cdm/shared_libraries/components/?sharedLibraryName=javalib&changeSetNumber='Chset-9'&name='SharedComponent'\
--request POST\
--header "Accept:application/json" \
--user 'username':'password'
応答:
{
"result": {
"changeset_id": {
"value": "ca7e6a501b202110636e0fe0604bcb71",
"link": "https://instance.servicenow.com/api/now/table/sn_cdm_changeset/ca7e6a501b202110636e0fe0604bcb71"
},
"node_path": "!2!3!:",
"description": null,
"sys_updated_on": "2023-01-18 16:04:52",
"type": "sn_cdm_node_shared_component",
"sys_class_name": "sn_cdm_node",
"sys_id": "6d2072901b602110636e0fe0604bcbec",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2023-01-18 16:04:52",
"value": null,
"effective_from": null,
"linked_to": null,
"sys_created_by": "admin",
"restricted_to": null,
"linked_to_version": null,
"level": "2",
"conflict_type": null,
"main_id": "19",
"effective_to": null,
"secure_value": null,
"node_classifier": "/shared_library/shared_components",
"main_id_encoded": ":",
"name": "testSharedComponent",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
}
CdmSharedLibraryApi - POST /sn_cdm/shared_libraries/uploads/components
共有ライブラリと共有コンポーネントを作成および管理できます。このエンドポイントは、CDM ノード [sn_cdm_node] テーブルに共有コンポーネントノードを作成し、CDM 共有コンポーネント [sn_cdm_shared_component] テーブルに共有コンポーネントレコードを作成します。
このエンドポイントにアクセスするには、CDM エディターロールが必要です。
URL 形式
バージョニングされた URL:/ api/sn_cdm/{api_version}/shared_libraries/uploads/components
デフォルトの URL:/ api/sn_cdm/shared_libraries/uploads/components
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| autoCommit | changesetNumber パラメーターで識別された変更セットがアップロード後にデータモデルにコミットされるかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| autoDelete | 処理の完了後に、アップロードコンテンツの一部ではない既存のノードを削除するかどうかを示すフラグ。 有効な値:
データタイプ:ブーリアン デフォルト値:false |
| changesetNumber | 必須です。アプリケーションに関連付けられた変更セットを一意に識別する文字列 (Chset-102 など)。CDM 変更セット [sn_cdm_changeset] テーブルにあります。この変更セットは [オープン] ステータスである必要があります。 データタイプ:文字列 |
| dataFormat | 必須です。構成データの形式。 有効な値:
データタイプ:文字列 |
| deleteRedundantOverrides | 冗長な値が存在する場合に上書きを作成するかどうかを示すフラグ。 有効な値:
デフォルト:true |
| identifierKeys | 同じノードを識別するために使用するアレイの子のキーを示す名前のリスト。 たとえば、アップロードする場合: 次の既存のモデルで: identifierKeys を name に設定すると、次の出力が生成されます。 それ以外の場合は、次の出力が生成されます。 データタイプ:文字列のアレイ |
| ignoreAttributes | 指定されたデータ形式が属性 (現在は XML のみ) をサポートしているかどうかを示すフラグ。 有効な値: データタイプ:ブーリアン デフォルト:false |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、または展開可能フォルダーに対する相対パスです (呼び出されるエンドポイントによって異なります)。 注: 指定されたコンポーネントが指定されたパスに存在しない場合、システムは指定されたパスにコンポーネントを自動的に作成してからデータをアップロードします。 データタイプ:文字列 |
| publishOption | 関連付けられた構成済みスナップショットの公開オプション。 有効な値:
スナップショットの公開の詳細については、「 スナップショットの公開または非公開」を参照してください。 データタイプ:文字列 デフォルト:publish_none |
| 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 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| upload_id | アップロード要求の sys_id。この ID を使用してエンドポイントを呼び出し、アップロードのステータスを取得します。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次の例は、構成データがプレーンテキストの Demo_App1631126164773 という共有ライブラリーをアップロードする方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/sharedlibrary/component/upload?namePath=%2FSettings%2FdbSettings&dataFormat=json&appName=Demo_App1631126164773&changesetNumber=Chset-8&autoCommit=false&publishOption=publish_none&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 response
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmSharedLibraryApi - POST /sn_cdm/shared_libraries/uploads/components/file
共有ライブラリーのコンポーネントフォルダーの下に構成データモデル (CDM) の一部としてファイルをアップロードします。
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 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 値は、ファイルのダウンロード時に適用されます。 データタイプ:文字列 |
| fileNodeName | ファイルノードの名前。このファイル名は、エクスポート時に構成データで使用されます。この名前はファイル拡張子を必要とせず、ダウンロードにも影響しません。 データタイプ:文字列 |
| namePath | 構成データをアップロードするターゲットノードのパス。このパスは、コンポーネント、コレクション、または展開可能フォルダーに対する相対パスです (呼び出されるエンドポイントによって異なります)。 注: 指定されたコンポーネントが指定されたパスに存在しない場合、システムは指定されたパスにコンポーネントを自動的に作成してからデータをアップロードします。 データタイプ:文字列 |
| sharedLibraryName | 必須です。削除するコンポーネントが配置されている共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | デフォルト: application/json |
| Content-Type | アップロードするファイルのコンテンツタイプ。例:application/zip、text/plain、application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
cURL 要求
次の呼び出しは、共有ライブラリのコンポーネントフォルダーにプレーンテキストファイルをアップロードする方法を示しています。
curl "http://instance.servicenow.com/api/sn_cdm/shared_libraries/uploads/components/file?autoValidate=true&sharedLibraryName=sharedLibA &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"
}
CdmSharedLibraryApi - PUT /sn_cdm/shared_libraries
共有ライブラリー情報を更新します。このエンドポイントを使用して、共有ライブラリーの名前、説明、ステータス、およびライブラリーにアクセスできるユーザーグループを更新します。
このエンドポイントにアクセスするには、CDM 管理者ロールが必要です。
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| name | 必須です。更新する共有ライブラリーの名前。CDM アプリケーション [sn_cdm_application] テーブルにあります。 データタイプ:文字列 |
| newAvailableState | 共有ライブラリーのステータスを示すフラグ。 有効な値:
デフォルト:true |
| newDescription | 共有ライブラリーの説明を更新しました。 データタイプ:文字列 |
| newName | 共有ライブラリーの新しい名前。 データタイプ:文字列 |
| newUserGroupId | 関連する共有ライブラリーにアクセスできるユーザーグループのsys_idsのカンマ区切りリスト。グループ [sys_user_group] テーブルにあります。 データタイプ:文字列 |
| returnFields | 応答の一部として返される CDM アプリケーション [sn_cdm_application] テーブルのカンマ区切りのフィールドリスト。 データタイプ:文字列 デフォルト:システム以外のすべてのフィールドが返されます。 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| <フィールド> | CDM アプリケーション [sn_cdm_application] テーブルから要求されたフィールド。 データタイプ:変数 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次のコード例は、共有ライブラリ Java11Lib のこのエンドポイントを呼び出して、ライブラリ名と説明を更新する方法を示しています。
curl "http://instance.servicenow.com/sn_cdm/shared_libraries?name=' javalib'&newName=’NewLibraryName’&newDescription=’new%20description%20of%20library’\
--request PUT\
--header "Accept:application/json" \
--user 'username':'password'
応答:
{
"result": {
"sdlc_component": null,
"cdi_count": "0",
"available": true,
"description": "Set new description",
"managed_by_group": null,
"sys_updated_on": "2023-01-18 11:51:14",
"type": "shared_library",
"node": {
"value": "021635dc77a4a1109ac0cf0bbb5a9952",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_node/021635dc77a4a1109ac0cf0bbb5a9952"
},
"sys_id": "185235dc77a4a1109ac0cf0bbb5a994e",
"sys_updated_by": "admin",
"node_main": {
"value": "1852b15877a4a1109ac0cf0bbb5a99aa",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_node_main/1852b15877a4a1109ac0cf0bbb5a99aa"
},
"sys_created_on": "2023-01-18 11:34:43",
"cdi_usage": "0",
"name": "LibraryA",
"last_committed_changeset": {
"value": "4a1635dc77a4a1109ac0cf0bbb5a9951",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_changeset/4a1635dc77a4a1109ac0cf0bbb5a9951"
},
"state": "active",
"sys_created_by": "admin"
}
}
CdmSharedLibraryApi - PUT /sn_cdm/shared_libraries/components
指定した共有コンポーネントの名前と説明を更新します。
このエンドポイントにアクセスするには、CDM エディターロールが必要です。
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| api_version | データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| changesetNumber | 必須です。関連付けられた変更セットの名前。CDM 変更セット [sn_cdm_changeset] テーブルにあります。 データタイプ:文字列 |
| name | 必須です。更新する共有コンポーネントの名前。CDM 共有コンポーネント [sn_cdm_shared_component] テーブルにあります。 データタイプ:文字列 |
| newName | 必須です。共有コンポーネントの更新された名前。 データタイプ:文字列 |
| newDescription | 共有コンポーネントの説明を更新しました。 データタイプ:文字列 デフォルト:空 |
| returnFields | 応答の一部として返される CDM 共有コンポーネント [sn_cdm_shared_component] テーブルのフィールドのカンマ区切りリスト。 データタイプ:文字列 デフォルト:システム以外のすべてのフィールドが返されます。 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。 サポートされるタイプ:
デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター
| 名前 | 説明 |
|---|---|
| <フィールド> | CDM 共有コンポーネント [sn_cdm_shared_component] テーブルから要求されたフィールド。 データタイプ:変数 |
| error | 処理中にエラーが発生した場合は、エラーに関する詳細。 データタイプ:オブジェクト |
| error.detail | エラーに関する追加情報。 データタイプ:文字列 |
| error.message | 要求の処理を試行中に生成されたエラーメッセージ。 データタイプ:文字列 |
| status | 要求のエラーステータス。 可能な値:failure データタイプ:文字列 |
cURL 要求
次のコード サンプルは、コンポーネントの SharedComponentTest の説明を更新する方法を示しています。
curl "http://instance.servicenow.com/sn_cdm/shared_libraries/components/?sharedLibraryName=javalib&changeSetNumber='chset-9'&name='SharedComponentTest'&newDescription='The shared component description'\
--request POST\
--header "Accept:application/json" \
--user 'username':'password
応答:
{
"result": {
"changeset_id": {
"value": "5c33311077e4a1109ac0cf0bbb5a9902",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/5c33311077e4a1109ac0cf0bbb5a9902"
},
"node_path": "!(1!(2!(3",
"description": "Changing the description only",
"sys_updated_on": "2023-01-18 12:09:05",
"type": "sn_cdm_node_shared_component",
"sys_class_name": "sn_cdm_node",
"sys_id": "9953f99077a4a1109ac0cf0bbb5a99ec",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2023-01-18 11:39:09",
"value": null,
"effective_from": null,
"linked_to": null,
"sys_created_by": "admin",
"restricted_to": null,
"linked_to_version": null,
"level": "2",
"conflict_type": null,
"main_id": "183",
"effective_to": null,
"secure_value": null,
"node_classifier": "/shared_library/shared_components",
"main_id_encoded": "(3",
"name": "sharedComponentName",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
}