diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_01.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_01.json new file mode 100644 index 000000000000..78594e99f768 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_01.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/", + "extendedProperties": { + } + }, + "includeNextLevelAssetCount": true, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "name": "azure_blob_service", + "type": "Azure Blob Storage", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "azure_blob_service", + "extendedProperties": {} + }, + "properties": { + "cloudType": "Azure" + }, + "count": 54 + }, + { + "name": "azure_datalake_gen2_service", + "type": "Azure Data Lake Storage Gen2", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "azure_datalake_gen2_service", + "extendedProperties": {} + }, + "properties": { + "cloudType": "Azure" + }, + "count": 47 + }, + { + "name": "azure_sql_server", + "type": "Azure SQL Server", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "azure_sql_server", + "extendedProperties": {} + }, + "properties": { + "cloudType": "Azure" + }, + "count": 31 + }, + { + "name": "azure_storage_account", + "type": "Azure Storage Account", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "azure_storage_account", + "extendedProperties": {} + }, + "properties": { + "cloudType": "Azure" + }, + "count": 101 + }, + { + "name": "azure_sql_db", + "type": "Azure SQL Database", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "azure_sql_db", + "extendedProperties": {} + }, + "properties": { + "cloudType": "Azure" + }, + "count": 84 + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_02.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_02.json new file mode 100644 index 000000000000..edcd86284047 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_02.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/azure_sql_server", + "extendedProperties": { + } + }, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "name": "testsqlserver01", + "type": "azure_sql_server", + "isLeafNode": false, + "isEntity": true, + "itemPath": { + "path": "testsqlserver01", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "identifier": "mssql://testsqlserver01.database.windows.net", + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver01", + "cloudType": "Azure" + } + }, + { + "name": "testsqlserver02", + "type": "azure_sql_server", + "isLeafNode": false, + "isEntity": true, + "itemPath": { + "path": "testsqlserver02", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver02.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "identifier": "mssql://testsqlserver02.database.windows.net", + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver02", + "cloudType": "Azure" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_03.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_03.json new file mode 100644 index 000000000000..41f5cec23be9 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_03.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/azure_sql_server/testsqlserver01", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "properties": {}, + "name": "databases", + "type": "databases", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "databases", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + } + }, + { + "properties": {}, + "name": "datawarehouses", + "type": "datawarehouses", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "datawarehouses", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_04.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_04.json new file mode 100644 index 000000000000..48221ef2784e --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_04.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/azure_sql_server/testsqlserver01/databases", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "name": "exampleDatabase01", + "type": "azure_sql_db", + "isLeafNode": false, + "isEntity": true, + "itemPath": { + "path": "exampleDatabase01", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver01/databases/exampleDatabase01" + } + }, + { + "name": "exampleDatabase02", + "type": "azure_sql_db", + "isLeafNode": false, + "isEntity": true, + "itemPath": { + "path": "exampleDatabase02", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver01/databases/exampleDatabase02" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_05.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_05.json new file mode 100644 index 000000000000..dd6d9d3ffb00 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_05.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/azure_sql_server/testsqlserver01/databases/exampleDatabase01", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "properties": {}, + "name": "schemas", + "type": "schemas", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "schemas", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_06.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_06.json new file mode 100644 index 000000000000..c115cabc6001 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_06.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/azure_sql_server/testsqlserver01/databases/schemas", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "name": "schema01", + "type": "azure_sql_schema", + "isLeafNode": false, + "isEntity": true, + "itemPath": { + "path": "schema01", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver01/databases/exampleDatabase01/schemas/schema01" + } + }, + { + "name": "schema02", + "type": "azure_sql_schema", + "isLeafNode": false, + "isEntity": true, + "itemPath": { + "path": "schema02", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver01/databases/exampleDatabase01/schemas/schema02" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_07.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_07.json new file mode 100644 index 000000000000..968a0d688b7d --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_07.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/azure_sql_server/testsqlserver01/databases/exampleDatabase01/schemas/schema01", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "properties": {}, + "name": "tables", + "type": "tables", + "isLeafNode": false, + "isEntity": false, + "itemPath": { + "path": "tables", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_08.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_08.json new file mode 100644 index 000000000000..4783313eff71 --- /dev/null +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigate_08.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "NavigationRequest": { + "navigationMode": "assetType", + "itemPath": { + "path": "/azure_sql_server/testsqlserver01/databases/schemas/schema01/tables", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + } + }, + "api-version": "2024-03-01-preview", + "maxpagesize": 100, + "continuationToken": null + }, + "responses": { + "200": { + "body": { + "items": [ + { + "name": "table01", + "type": "azure_sql_table", + "isLeafNode": true, + "isEntity": true, + "itemPath": { + "path": "table01", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver01/databases/exampleDatabase01/schemas/schema01/tables/table01" + } + }, + { + "name": "table02", + "type": "azure_sql_table", + "isLeafNode": true, + "isEntity": true, + "itemPath": { + "path": "table02", + "extendedProperties": { + "resourceGroup": "test-rg", + "serverEndpoint": "testsqlserver01.database.windows.net", + "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" + } + }, + "properties": { + "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/test-rg/providers/Microsoft.Sql/servers/testsqlserver01/databases/exampleDatabase01/schemas/schema01/tables/table02" + } + }, + ] + } + } + } +} \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigation.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigation.json deleted file mode 100644 index 4704b7def81c..000000000000 --- a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/examples/Discovery_Navigation.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "NavigationRequest": { - "navigationMode": "assetType", - "itemPath": { - "path": "/azure_sql_server/exampleServer/databases", - "extendedProperties": { - "resourceGroup": "exampleResourceGroup", - "serverEndpoint": "exampleServer.database.windows.net", - "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" - } - }, - "properties": { - } - }, - "api-version": "2024-03-01-preview", - "maxpagesize": 100, - "continuationToken": null - }, - "responses": { - "200": { - "body": { - "items": [ - { - "name": "exampleDatabase", - "type": "azure_sql_db", - "isLeafNode": false, - "isEntity": true, - "itemPath": { - "path": "exampleDatabase", - "extendedProperties": { - "resourceGroup": "exampleResourceGroup", - "serverEndpoint": "exampleServer.database.windows.net", - "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" - } - }, - "properties": { - "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/exampleResourceGroup/providers/Microsoft.Sql/servers/exampleServer/databases/exampleDatabase" - } - }, - { - "name": "exampleDatabase2", - "type": "azure_sql_db", - "isLeafNode": false, - "isEntity": true, - "itemPath": { - "path": "exampleDatabase2", - "extendedProperties": { - "resourceGroup": "exampleResourceGroup", - "serverEndpoint": "exampleServer.database.windows.net", - "subscriptionId": "12345678-1234-5678-1234-86b7251e0353" - } - }, - "properties": { - "resourceId": "/subscriptions/12345678-1234-5678-1234-86b7251e0353/resourceGroups/exampleResourceGroup/providers/Microsoft.Sql/servers/exampleServer/databases/exampleDatabase2" - } - } - ] - } - } - } - } \ No newline at end of file diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/purviewdatamap.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/purviewdatamap.json index a80fa67e22cb..9e2098860f65 100644 --- a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/purviewdatamap.json +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/preview/2024-03-01-preview/purviewdatamap.json @@ -3066,8 +3066,29 @@ "description": "Navigate entities by itemPath.", "operationId": "Discovery_Navigation", "x-ms-examples": { - "Discovery_Navigation": { - "$ref": "./examples/Discovery_Navigation.json" + "Example 1": { + "$ref": "./examples/Discovery_Navigate_01.json" + }, + "Example 2": { + "$ref": "./examples/Discovery_Navigate_02.json" + }, + "Example 3": { + "$ref": "./examples/Discovery_Navigate_03.json" + }, + "Example 4": { + "$ref": "./examples/Discovery_Navigate_04.json" + }, + "Example 5": { + "$ref": "./examples/Discovery_Navigate_05.json" + }, + "Example 6": { + "$ref": "./examples/Discovery_Navigate_06.json" + }, + "Example 7": { + "$ref": "./examples/Discovery_Navigate_07.json" + }, + "Example 8": { + "$ref": "./examples/Discovery_Navigate_08.json" } }, "parameters": [ @@ -6916,12 +6937,13 @@ }, "NavigationRequest": { "type": "object", + "description": "The request payload of Navigation API.", "properties": { "navigationMode": { - "$ref": "#/definitions/NavigationModeCategory" + "$ref": "#/definitions/NavigationMode" }, "itemPath": { - "$ref": "#/definitions/itemPathIdentifier" + "$ref": "#/definitions/ItemPath" }, "properties": { "type": "object", @@ -6932,38 +6954,38 @@ }, "includeNextLevelAssetCount": { "type": "boolean", - "description": "Whether to return the count of the next level asset." + "description": "Whether to return the next level asset count." } } }, - "NavigationModeCategory": { + "NavigationMode": { "type": "string", - "title": "NavigationModeCategory", "description": "The enum of navigation mode.", "enum": [ "assetType", "azureResourceHierarchy" ], "x-ms-enum": { - "name": "NavigationModeCategory", + "name": "NavigationMode", "modelAsString": true } }, - "itemPathIdentifier": { + "ItemPath": { "type": "object", "properties": { "path": { "type": "string", - "description": "The path of the item." + "description": "The identifier of the item. The path starts with an empty string or a single slash. To navigate further, you need to concatenate with a slash to form the full itemPath using the previous navigation response's relative item path." }, "extendedProperties": { "type": "object", - "description": "The extended properties of the item.", + "description": "The extended properties of the itemPath are typically obtained from the last navigation response. While not mandatory to provide, including them can enhance performance. Otherwise, there may be some impact on performance.", "additionalProperties": { "type": "string" } } - } + }, + "description": "The identifier of navigation request." }, "NavigationResult": { "type": "object", @@ -6971,7 +6993,7 @@ "items": { "type": "array", "items": { - "$ref": "#/definitions/NavigationResultValue" + "$ref": "#/definitions/NavigationElement" } }, "continuationToken": { @@ -6979,13 +7001,11 @@ "description": "The token used to get next batch of data. Absent if there's no more data." } }, - "title": "NavigationResult", - "description": "The result items of the Navigation Request." + "description": "The response payload of the Navigation API." }, - "NavigationResultValue": { + "NavigationElement": { "type": "object", - "title": "NavigationResultValue", - "description": "The value item of the navigate request.", + "description": "The item payload of the NavigationResult.", "properties": { "name": { "type": "string", @@ -6997,23 +7017,23 @@ }, "isLeafNode": { "type": "boolean", - "description": "Whether the item is a leaf node." + "description": "Indicates whether the item is a leaf node. If it is, further navigation is not possible." }, "isEntity": { "type": "boolean", - "description": "Whether the item is Entity. If yes, can get detail of this entity." + "description": "Whether the item is Entity. If yes, can get complete definition of an entity given its itemPath" }, "itemPath": { - "$ref": "#/definitions/itemPathIdentifier" + "$ref": "#/definitions/ItemPath" }, "count": { "type": "integer", "format": "int32", - "description": "The count of the top level asset. Won't return if request payload 'count' is false." + "description": "The count of the top level asset. Won't return if request payload 'includeNextLevelAssetCount' is false." }, "properties": { "type": "object", - "description": "The additional properties of the item.", + "description": "The additional properties of the navigation element.", "additionalProperties": { "type": "string" }