NSX 階層 API を使用すると、単一の API 呼び出しでインテント全体または一部を作成できます。API への入力はツリー形式で表されます。ツリー内の各ノードに、異なるタイプの子を複数含めることができます。

階層 API は、プロジェクトでサポートされています。プロジェクト ユーザーは Patch API を呼び出し、このドキュメントで説明するように、インテント階層全体またはインテント階層の一部を作成、更新、または削除できます。

Patch API

このセクションの API 呼び出しは、ユーザー ロールの観点から編成されています。

エンタープライズ管理者

エンタープライズ管理者は、次のいずれかの Patch API 呼び出しを実行できます。

PATCH https://<nsx-mgr>/policy/api/v1/org-root
PATCH https://<nsx-mgr>/policy/api/v1/orgs/default/projects/<project-id>/infra

要求本文の例:

PATCH https://<nsx-mgr>/policy/api/v1/org-root
{
	"resource_type": "OrgRoot",
	"children": [{
		"resource_type": "ChildResourceReference",
		"id": "default",
		"target_type": "Org",
		"children": [{
			"resource_type": "ChildProject",
			"Project": {
				"id": "project-1",
				"resource_type": "Project",
				"display_name": "Test HAPI Project",
				"site_infos": [{
					"edge_cluster_paths": [
						"/infra/sites/default/enforcement-points/default/edge-clusters/ec1"
					],
					"site_path": "/infra/sites/default"
				}],
				"tier_0s": [
					"/infra/tier-0s/vmware"
				]
			}
		}]
	}]
}

ロール ベースのアクセス制御は、この Patch API の応答ペイロードに適用されます。

org-root スキーマの詳細については、『NSX API ガイド』を参照してください。

プロジェクト管理者

プロジェクト管理者は、次の Patch API 呼び出しを実行し、ChildResourceReference を使用して任意のノードの子を指定できます。

PATCH https://<nsx-mgr>/policy/api/v1/org-root

または、次の Patch API 呼び出しを実行できます。

PATCH https://<nsx-mgr>/policy/api/v1/orgs/default/projects/<project-id>/infra

これらの API の詳細については、『NSX API ガイド』を参照してください。

その他のプロジェクト ユーザー
次の Patch API 呼び出しを実行できます。
PATCH https://<nsx-mgr>/policy/api/v1/orgs/default/projects/<project-id>/infra

ただし、これらのユーザーは、変更が許可されているオブジェクトに対してのみ、この URI に対して Patch API を実行できます。

Get API

このセクションの API 呼び出しは、ユーザー ロールの観点から編成されています。

エンタープライズ管理者

Get API 呼び出しを実行して org-root プロパティを読み取ることができるのはエンタープライズ管理者だけです。

GET https://<nsx-mgr>/policy/api/v1/org-root

エンタープライズ管理者は、次の Get API 呼び出しを実行することもできます。

GET https://<nsx-mgr>/policy/api/v1/org-root?base_path=/orgs/default
GET https://<nsx-mgr>/policy/api/v1/orgs/default/projects/<project-id>/infra?filter=Type-

これらの API の詳細については、『NSX API ガイド』を参照してください。

プロジェクト管理者

プロジェクト管理者は、次の Get API 呼び出しを実行できます。

GET https://<nsx-mgr>/policy/api/v1/orgs/default/projects/<project-id>/infra?filter=Type-
その他のプロジェクト ユーザー

階層型の Get API 呼び出しは許可されていません。