diff --git a/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets.json b/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets.json index fe741068..c5b3cd8b 100644 --- a/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets.json +++ b/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets.json @@ -1 +1 @@ -{"$schema":"http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#","contentVersion":"1.0.0.0","parameters":{"workspaceName":{"type":"string","metadata":"Workspace name","defaultValue":"synapse-lohith"},"LS_Office365":{"type":"string"},"LS_ADLS":{"type":"string"}},"variables":{"workspaceId":"[concat('Microsoft.Synapse/workspaces/', parameters('workspaceName'))]"},"resources":[{"name":"[concat(parameters('workspaceName'), '/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets')]","type":"Microsoft.Synapse/workspaces/pipelines","apiVersion":"2019-06-01-preview","properties":{"description":"Use this template to accelerate capacity scenarios by understanding the storage and site lifecycle for SharePoint and OneDrive in your organization. This template extracts Microsoft 365 (Office) SharePoint data via Microsoft Graph Data Connect to produce analytics-ready data for analysis.\n\nWe would love to hear your thoughts on this template. Please send us your ideas and feedback at {}.","activities":[{"name":"Format Parameter","description":"Converts yyyy-mm-ddThh:mm:ssZ to yyyy/mm/dd. This is directly used as a path to read from and write to locations.","type":"SetVariable","dependsOn":[],"policy":{"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"variableName":"RequestDatePath","value":{"value":"@join(split(substring(pipeline().parameters.StartTime, 0, 10),'-'), '/')","type":"Expression"}}},{"name":"Capacity Scenario Data Flow","type":"ExecuteDataFlow","dependsOn":[{"activity":"Extract Sites","dependencyConditions":["Succeeded"]},{"activity":"Extract Files","dependencyConditions":["Succeeded"]}],"policy":{"timeout":"0.12:00:00","retry":0,"retryIntervalInSeconds":30,"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"dataflow":{"referenceName":"DF_Capacity_Scenario","type":"DataFlowReference","parameters":{"Date":{"value":"'@{variables('RequestDatePath')}'","type":"Expression"},"RunId":{"value":"'@{pipeline().RunId}'","type":"Expression"}},"datasetParameters":{"ReadSites":{"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RequestDate":{"value":"@variables('RequestDatePath')","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"}},"ReadFiles":{"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RequestDate":{"value":"@variables('RequestDatePath')","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"}},"WriteSites":{"Dataset":{"value":"sites","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"}},"WriteFiles":{"Dataset":{"value":"files","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"}}}},"staging":{},"compute":{"coreCount":8,"computeType":"General"},"traceLevel":"Fine"}},{"name":"Extract Sites","description":"Extracts SharePointSitesDataset_v1","type":"Copy","dependsOn":[{"activity":"Format Parameter","dependencyConditions":["Succeeded"]}],"policy":{"timeout":"7.00:00:00","retry":0,"retryIntervalInSeconds":30,"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"source":{"type":"Office365Source","dateFilterColumn":"SnapshotDate","startTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"endTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"outputColumns":[{"name":"ptenant"},{"name":"Id"},{"name":"Url"},{"name":"RootWeb"},{"name":"WebCount"},{"name":"StorageQuota"},{"name":"StorageUsed"},{"name":"StorageMetrics"},{"name":"GroupId"},{"name":"GeoLocation"},{"name":"IsInRecycleBin"},{"name":"IsTeamsConnectedSite"},{"name":"IsTeamsChannelSite"},{"name":"TeamsChannelType"},{"name":"IsHubSite"},{"name":"HubSiteId"},{"name":"BlockAccessFromUnmanagedDevices"},{"name":"BlockDownloadOfAllFilesOnUnmanagedDevices"},{"name":"BlockDownloadOfViewableFilesOnUnmanagedDevices"},{"name":"ShareByEmailEnabled"},{"name":"ShareByLinkEnabled"},{"name":"SensitivityLabelInfo"},{"name":"Classification"},{"name":"IBMode"},{"name":"IBSegments"},{"name":"Owner"},{"name":"SecondaryContact"},{"name":"ReadLocked"},{"name":"ReadOnly"},{"name":"CreatedTime"},{"name":"LastSecurityModifiedDate"},{"name":"Operation"},{"name":"SnapshotDate"}]},"sink":{"type":"BinarySink","storeSettings":{"type":"AzureBlobFSWriteSettings"}},"enableStaging":false},"inputs":[{"referenceName":"DS_Extraction_Sites_Source","type":"DatasetReference","parameters":{}}],"outputs":[{"referenceName":"DS_Extraction_Sites_Target","type":"DatasetReference","parameters":{"StartTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"EndTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"},"RequestDatePath":{"value":"@variables('RequestDatePath')","type":"Expression"}}}]},{"name":"Extract Files","description":"Extracts SharePointFilesDataset_v1","type":"Copy","dependsOn":[{"activity":"Format Parameter","dependencyConditions":["Succeeded"]}],"policy":{"timeout":"7.00:00:00","retry":0,"retryIntervalInSeconds":30,"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"source":{"type":"Office365Source","dateFilterColumn":"SnapshotDate","startTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"endTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"outputColumns":[{"name":"ptenant"},{"name":"SiteId"},{"name":"Author"},{"name":"DirName"},{"name":"Extension"},{"name":"FileName"},{"name":"IsLabelEncrypted"},{"name":"ItemId"},{"name":"ListId"},{"name":"ListServerTemplate"},{"name":"MajorVersion"},{"name":"MinorVersion"},{"name":"ModifiedBy"},{"name":"Operation"},{"name":"QuickXorHash"},{"name":"ScopeId"},{"name":"SensitivityLabelInfo"},{"name":"SiteUrl"},{"name":"SizeInBytes"},{"name":"SizeInBytesWithVersions"},{"name":"TimeCreated"},{"name":"TimeLastModified"},{"name":"WebId"},{"name":"WebTemplateId"},{"name":"SnapshotDate"}]},"sink":{"type":"BinarySink","storeSettings":{"type":"AzureBlobFSWriteSettings"}},"enableStaging":false},"inputs":[{"referenceName":"DS_Extraction_Files_Source","type":"DatasetReference","parameters":{}}],"outputs":[{"referenceName":"DS_Extraction_Files_Target","type":"DatasetReference","parameters":{"StartTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"EndTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"},"RequestDatePath":{"value":"@variables('RequestDatePath')","type":"Expression"}}}]}],"policy":{"elapsedTimeMetric":{}},"parameters":{"StartTime":{"type":"string","defaultValue":"2024-08-01T00:00:00Z"},"EndTime":{"type":"string","defaultValue":"2024-08-01T00:00:00Z"},"StorageAccountName":{"type":"string","defaultValue":"<>"},"StorageContainerName":{"type":"string","defaultValue":"<>"}},"variables":{"RequestDatePath":{"type":"String","defaultValue":"2023/02/25"}},"annotations":["MGDC","Azure Synapse Analytics","OneDrive","SharePoint","Capacity","Sites","Files","Documents","Syntex","M365","Office365","Graph","Microsoft","Office"],"lastPublishTime":"2024-08-08T21:27:17Z"},"dependsOn":["[concat(variables('workspaceId'), '/dataflows/DF_Capacity_Scenario')]","[concat(variables('workspaceId'), '/datasets/DS_Extraction_Sites_Source')]","[concat(variables('workspaceId'), '/datasets/DS_Extraction_Sites_Target')]","[concat(variables('workspaceId'), '/datasets/DS_Extraction_Files_Target')]","[concat(variables('workspaceId'), '/datasets/DS_Extraction_Files_Source')]"]},{"name":"[concat(parameters('workspaceName'), '/DF_Capacity_Scenario')]","type":"Microsoft.Synapse/workspaces/dataflows","apiVersion":"2019-06-01-preview","properties":{"description":"This dataflow is used to read the extracted SharePoint Sites and SharePoint Files dataset, transform them, and write them back to the Azure Storage Location under the directory \"Capacity\". The data created in this data flow will be used to power reports.","type":"MappingDataFlow","typeProperties":{"sources":[{"dataset":{"referenceName":"DS_JSON_Sites_CS_Source","type":"DatasetReference"},"name":"ReadSites","description":"Import data from DS_JSON_Sites_CS_Source"},{"dataset":{"referenceName":"DS_JSON_Files_CS_Source","type":"DatasetReference"},"name":"ReadFiles","description":"Import data from DS_JSON_Files_CS_Source"}],"sinks":[{"dataset":{"referenceName":"DS_JSON_Capacity_CS_Target","type":"DatasetReference"},"name":"WriteSites"},{"dataset":{"referenceName":"DS_JSON_Capacity_CS_Target","type":"DatasetReference"},"name":"WriteFiles"}],"transformations":[{"name":"SelectSitesColumns"},{"name":"SelectFilesColumns"},{"name":"FileCountByExtension"}],"scriptLines":["parameters{"," Date as string,"," RunId as string","}","source(output("," ptenant as string,"," Id as string,"," Url as string,"," RootWeb as (Id as string, Title as string, WebTemplate as string, WebTemplateId as integer, LastItemModifiedDate as string),"," WebCount as integer,"," StorageQuota as long,"," StorageUsed as long,"," StorageMetrics as (MetadataSize as long, TotalFileCount as long, TotalFileStreamSize as long, TotalSize as long),"," GroupId as string,"," GeoLocation as string,"," IsInRecycleBin as boolean,"," IsTeamsConnectedSite as boolean,"," IsTeamsChannelSite as boolean,"," TeamsChannelType as string,"," IsHubSite as boolean,"," HubSiteId as string,"," BlockAccessFromUnmanagedDevices as boolean,"," BlockDownloadOfAllFilesOnUnmanagedDevices as boolean,"," BlockDownloadOfViewableFilesOnUnmanagedDevices as boolean,"," ShareByEmailEnabled as boolean,"," ShareByLinkEnabled as boolean,"," SensitivityLabelInfo as ({} as string),"," IBMode as string,"," Owner as (AadObjectId as string, Email as string, Name as string),"," SecondaryContact as (AadObjectId as string, Email as string, Name as string),"," ReadLocked as boolean,"," ReadOnly as boolean,"," CreatedTime as string,"," LastSecurityModifiedDate as string,"," Operation as string,"," SnapshotDate as string"," ),"," allowSchemaDrift: false,"," validateSchema: false,"," ignoreNoFilesFound: true,"," documentForm: 'documentPerLine',"," wildcardPaths:[(concat('sites/', concat($Date, concat('/', concat($RunId, '/*')))))]) ~> ReadSites","source(output("," ptenant as string,"," SiteId as string,"," DirName as string,"," Extension as string,"," FileName as string,"," IsCheckedOutToLocal as string,"," IsLabelEncrypted as string,"," ItemId as string,"," ListBaseType as string,"," ListId as string,"," ListServerTemplate as string,"," MajorVersion as string,"," MinorVersion as string,"," RunId as string,"," ScopeId as string,"," SensitivityLabelDisplayName as string,"," SensitivityLabelId as string,"," SiteUrl as string,"," SizeInBytes as long,"," SizeInBytesWithVersions as string,"," SnapshotTime as string,"," TimeCreated as string,"," TimeLastModified as string,"," WebId as string,"," WebTemplateId as string"," ),"," allowSchemaDrift: true,"," validateSchema: false,"," ignoreNoFilesFound: false,"," documentForm: 'documentPerLine',"," wildcardPaths:[(concat('files/', concat($Date, concat('/', concat($RunId, '/*')))))]) ~> ReadFiles","ReadSites select(mapColumn("," SiteId = Id,"," SiteName = RootWeb.Title,"," SiteType = RootWeb.WebTemplate,"," LastItemModifiedDate = RootWeb.LastItemModifiedDate,"," MetadataStorageSize = StorageMetrics.MetadataSize,"," TotalFileCount = StorageMetrics.TotalFileCount,"," LatestVersionStorage = StorageMetrics.TotalFileStreamSize,"," PrimaryContactEmail = Owner.Email,"," PrimaryContactName = Owner.Name,"," SecondaryContactName = SecondaryContact.Name,"," SecondaryContactEmail = SecondaryContact.Email,"," IsInRecycleBin,"," CreatedTime,"," SiteUrl = Url,"," StorageQuota,"," SnapshotDate,"," TotalStorageSize = StorageMetrics.TotalSize"," ),"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true) ~> SelectSitesColumns","ReadFiles select(mapColumn("," SiteId,"," Extension,"," ItemId,"," SizeInBytes"," ),"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true) ~> SelectFilesColumns","SelectFilesColumns aggregate(groupBy(Extension,"," SiteId),"," FileCount_BySite = count(SiteId),"," SizeInBytes = sum(SizeInBytes)) ~> FileCountByExtension","SelectSitesColumns sink(allowSchemaDrift: true,"," validateSchema: false,"," truncate: true,"," umask: 0022,"," preCommands: [],"," postCommands: [],"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true,"," partitionBy('hash', 1)) ~> WriteSites","FileCountByExtension sink(allowSchemaDrift: true,"," validateSchema: false,"," truncate: true,"," umask: 0022,"," preCommands: [],"," postCommands: [],"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true,"," partitionBy('hash', 1)) ~> WriteFiles"]}},"dependsOn":["[concat(variables('workspaceId'), '/datasets/DS_JSON_Sites_CS_Source')]","[concat(variables('workspaceId'), '/datasets/DS_JSON_Files_CS_Source')]","[concat(variables('workspaceId'), '/datasets/DS_JSON_Capacity_CS_Target')]"]},{"name":"[concat(parameters('workspaceName'), '/DS_Extraction_Sites_Source')]","type":"Microsoft.Synapse/workspaces/datasets","apiVersion":"2019-06-01-preview","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_Office365')]","type":"LinkedServiceReference"},"annotations":[],"type":"Office365Table","schema":[],"typeProperties":{"tableName":"BasicDataSet_v0.SharePointSites_v1"}},"dependsOn":[]},{"name":"[concat(parameters('workspaceName'), '/DS_Extraction_Sites_Target')]","type":"Microsoft.Synapse/workspaces/datasets","apiVersion":"2019-06-01-preview","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StartTime":{"type":"string"},"EndTime":{"type":"string"},"StorageContainerName":{"type":"string"},"RunId":{"type":"string"},"RequestDatePath":{"type":"string"}},"annotations":[],"type":"Binary","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('sites/', dataset().RequestDatePath,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}}},"dependsOn":[]},{"name":"[concat(parameters('workspaceName'), '/DS_Extraction_Files_Target')]","type":"Microsoft.Synapse/workspaces/datasets","apiVersion":"2019-06-01-preview","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StartTime":{"type":"string"},"EndTime":{"type":"string"},"StorageContainerName":{"type":"string"},"RunId":{"type":"string"},"RequestDatePath":{"type":"string"}},"annotations":[],"type":"Binary","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('files/', dataset().RequestDatePath,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}}},"dependsOn":[]},{"name":"[concat(parameters('workspaceName'), '/DS_Extraction_Files_Source')]","type":"Microsoft.Synapse/workspaces/datasets","apiVersion":"2019-06-01-preview","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_Office365')]","type":"LinkedServiceReference"},"annotations":[],"type":"Office365Table","schema":[],"typeProperties":{"tableName":"BasicDataSet_v0.SharePointFiles_v1"}},"dependsOn":[]},{"name":"[concat(parameters('workspaceName'), '/DS_JSON_Sites_CS_Source')]","type":"Microsoft.Synapse/workspaces/datasets","apiVersion":"2019-06-01-preview","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StorageContainerName":{"type":"string"},"RequestDate":{"type":"string"},"RunId":{"type":"string"}},"annotations":[],"type":"Json","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('sites/', dataset().RequestDate,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}},"schema":{"type":"object","properties":{"ptenant":{"type":"string"},"Id":{"type":"string"},"Url":{"type":"string"},"RootWeb":{"type":"object","properties":{"Id":{"type":"string"},"Title":{"type":"string"},"WebTemplate":{"type":"string"},"WebTemplateId":{"type":"integer"},"LastItemModifiedDate":{"type":"string"}}},"WebCount":{"type":"integer"},"StorageQuota":{"type":"integer"},"StorageUsed":{"type":"integer"},"StorageMetrics":{"type":"object","properties":{"MetadataSize":{"type":"integer"},"TotalFileCount":{"type":"integer"},"TotalFileStreamSize":{"type":"integer"},"TotalSize":{"type":"integer"}}},"GroupId":{"type":"string"},"GeoLocation":{"type":"string"},"IsInRecycleBin":{"type":"boolean"},"IsTeamsConnectedSite":{"type":"boolean"},"IsTeamsChannelSite":{"type":"boolean"},"TeamsChannelType":{"type":"string"},"IsHubSite":{"type":"boolean"},"HubSiteId":{"type":"string"},"BlockAccessFromUnmanagedDevices":{"type":"boolean"},"BlockDownloadOfAllFilesOnUnmanagedDevices":{"type":"boolean"},"BlockDownloadOfViewableFilesOnUnmanagedDevices":{"type":"boolean"},"ShareByEmailEnabled":{"type":"boolean"},"ShareByLinkEnabled":{"type":"boolean"},"SensitivityLabelInfo":{"type":"object","properties":{}},"IBMode":{"type":"string"},"Owner":{"type":"object","properties":{"AadObjectId":{"type":"string"},"Email":{"type":"string"},"Name":{"type":"string"}}},"SecondaryContact":{"type":"object","properties":{"AadObjectId":{"type":"string"},"Email":{"type":"string"},"Name":{"type":"string"}}},"ReadLocked":{"type":"boolean"},"ReadOnly":{"type":"boolean"},"CreatedTime":{"type":"string"},"LastSecurityModifiedDate":{"type":"string"},"Operation":{"type":"string"},"SnapshotDate":{"type":"string"}}}},"dependsOn":[]},{"name":"[concat(parameters('workspaceName'), '/DS_JSON_Files_CS_Source')]","type":"Microsoft.Synapse/workspaces/datasets","apiVersion":"2019-06-01-preview","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StorageContainerName":{"type":"string"},"RequestDate":{"type":"string"},"RunId":{"type":"string"}},"annotations":[],"type":"Json","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('files/', dataset().RequestDate,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}},"schema":{"type":"object","properties":{"ptenant":{"type":"string"},"SiteId":{"type":"string"},"DirName":{"type":"string"},"Extension":{"type":"string"},"FileName":{"type":"string"},"IsCheckedOutToLocal":{"type":"string"},"IsLabelEncrypted":{"type":"string"},"ItemId":{"type":"string"},"ListBaseType":{"type":"string"},"ListId":{"type":"string"},"ListServerTemplate":{"type":"string"},"MajorVersion":{"type":"string"},"MinorVersion":{"type":"string"},"RunId":{"type":"string"},"ScopeId":{"type":"string"},"SensitivityLabelDisplayName":{"type":"string"},"SensitivityLabelId":{"type":"string"},"SiteUrl":{"type":"string"},"SizeInBytes":{"type":"string"},"SizeInBytesWithVersions":{"type":"string"},"SnapshotTime":{"type":"string"},"TimeCreated":{"type":"string"},"TimeLastModified":{"type":"string"},"WebId":{"type":"string"},"WebTemplateId":{"type":"string"}}}},"dependsOn":[]},{"name":"[concat(parameters('workspaceName'), '/DS_JSON_Capacity_CS_Target')]","type":"Microsoft.Synapse/workspaces/datasets","apiVersion":"2019-06-01-preview","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADLS')]","type":"LinkedServiceReference"},"parameters":{"Dataset":{"type":"string"},"StorageContainerName":{"type":"string"}},"annotations":[],"type":"Json","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('capacity/', dataset().Dataset)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}},"schema":{}},"dependsOn":[]}]} \ No newline at end of file +{"$schema":"http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#","contentVersion":"1.0.0.0","parameters":{"factoryName":{"type":"string","metadata":"Data Factory name"},"LS_ADF_Office365":{"type":"string"},"LS_ADF_ADLS":{"type":"string"}},"variables":{"factoryId":"[concat('Microsoft.DataFactory/factories/', parameters('factoryName'))]"},"resources":[{"name":"[concat(parameters('factoryName'), '/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets')]","type":"Microsoft.DataFactory/factories/pipelines","apiVersion":"2018-06-01","properties":{"description":"Use this template to accelerate capacity scenarios by understanding the storage and site lifecycle for SharePoint and OneDrive in your organization. This template extracts Microsoft 365 (Office) SharePoint data via Microsoft Graph Data Connect to produce analytics-ready data for analysis.\n\nWe would love to hear your thoughts on this template. Please send us your ideas and feedback at {}.","activities":[{"name":"Format Parameter","description":"Converts yyyy-mm-ddThh:mm:ssZ to yyyy/mm/dd. This is directly used as a path to read from and write to locations.","type":"SetVariable","dependsOn":[],"policy":{"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"variableName":"RequestDatePath","value":{"value":"@join(split(substring(pipeline().parameters.StartTime, 0, 10),'-'), '/')","type":"Expression"}}},{"name":"Capacity Scenario Data Flow","type":"ExecuteDataFlow","dependsOn":[{"activity":"Extract Sites","dependencyConditions":["Succeeded"]},{"activity":"Extract Files","dependencyConditions":["Succeeded"]}],"policy":{"timeout":"0.12:00:00","retry":0,"retryIntervalInSeconds":30,"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"dataflow":{"referenceName":"DF_Capacity_Scenario","type":"DataFlowReference","parameters":{"Date":{"value":"'@{variables('RequestDatePath')}'","type":"Expression"},"RunId":{"value":"'@{pipeline().RunId}'","type":"Expression"}},"datasetParameters":{"ReadSites":{"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RequestDate":{"value":"@variables('RequestDatePath')","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"}},"ReadFiles":{"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RequestDate":{"value":"@variables('RequestDatePath')","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"}},"WriteSites":{"Dataset":{"value":"sites","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"}},"WriteFiles":{"Dataset":{"value":"files","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"}}}},"staging":{},"compute":{"coreCount":8,"computeType":"General"},"traceLevel":"Fine"}},{"name":"Extract Sites","description":"Extracts SharePointSitesDataset_v1","type":"Copy","dependsOn":[{"activity":"Format Parameter","dependencyConditions":["Succeeded"]}],"policy":{"timeout":"7.00:00:00","retry":0,"retryIntervalInSeconds":30,"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"source":{"type":"Office365Source","dateFilterColumn":"SnapshotDate","startTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"endTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"outputColumns":[{"name":"ptenant"},{"name":"Id"},{"name":"Url"},{"name":"ArchiveState"},{"name":"RootWeb"},{"name":"WebCount"},{"name":"StorageQuota"},{"name":"StorageUsed"},{"name":"StorageMetrics"},{"name":"GroupId"},{"name":"GeoLocation"},{"name":"IsInRecycleBin"},{"name":"RecycleBinItemCount"},{"name":"RecycleBinItemSize"},{"name":"SecondStageRecycleBinStorageUsage"},{"name":"IsTeamsConnectedSite"},{"name":"IsTeamsChannelSite"},{"name":"TeamsChannelType"},{"name":"IsCommunicationSite"},{"name":"IsHubSite"},{"name":"HubSiteId"},{"name":"IsOneDrive"},{"name":"BlockAccessFromUnmanagedDevices"},{"name":"BlockDownloadOfAllFilesOnUnmanagedDevices"},{"name":"BlockDownloadOfViewableFilesOnUnmanagedDevices"},{"name":"IsExternalSharingEnabled"},{"name":"Privacy"},{"name":"ShareByEmailEnabled"},{"name":"ShareByLinkEnabled"},{"name":"SiteConnectedToPrivateGroup"},{"name":"SensitivityLabelInfo"},{"name":"Classification"},{"name":"IBMode"},{"name":"IBSegments"},{"name":"RelatedGroupId"},{"name":"Owner"},{"name":"SecondaryContact"},{"name":"ReadLocked"},{"name":"ReadOnly"},{"name":"CreatedTime"},{"name":"LastSecurityModifiedDate"},{"name":"Operation"},{"name":"LastUserAccessDate"},{"name":"SnapshotDate"}]},"sink":{"type":"BinarySink","storeSettings":{"type":"AzureBlobFSWriteSettings"}},"enableStaging":false},"inputs":[{"referenceName":"DS_Extraction_Sites_Source","type":"DatasetReference","parameters":{}}],"outputs":[{"referenceName":"DS_Extraction_Sites_Target","type":"DatasetReference","parameters":{"StartTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"EndTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"},"RequestDatePath":{"value":"@variables('RequestDatePath')","type":"Expression"}}}]},{"name":"Extract Files","description":"Extracts SharePointFilesDataset_v1","type":"Copy","dependsOn":[{"activity":"Format Parameter","dependencyConditions":["Succeeded"]}],"policy":{"timeout":"7.00:00:00","retry":0,"retryIntervalInSeconds":30,"secureOutput":false,"secureInput":false},"userProperties":[],"typeProperties":{"source":{"type":"Office365Source","dateFilterColumn":"SnapshotDate","startTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"endTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"outputColumns":[{"name":"ptenant"},{"name":"SiteId"},{"name":"Author"},{"name":"DirName"},{"name":"Extension"},{"name":"FileName"},{"name":"IsLabelEncrypted"},{"name":"ItemId"},{"name":"ListId"},{"name":"ListServerTemplate"},{"name":"MajorVersion"},{"name":"MinorVersion"},{"name":"ModifiedBy"},{"name":"Operation"},{"name":"QuickXorHash"},{"name":"ScopeId"},{"name":"SensitivityLabelInfo"},{"name":"SiteUrl"},{"name":"SizeInBytes"},{"name":"SizeInBytesWithVersions"},{"name":"TimeCreated"},{"name":"TimeLastModified"},{"name":"WebId"},{"name":"WebTemplateId"},{"name":"SnapshotDate"}]},"sink":{"type":"BinarySink","storeSettings":{"type":"AzureBlobFSWriteSettings"}},"enableStaging":false},"inputs":[{"referenceName":"DS_Extraction_Files_Source","type":"DatasetReference","parameters":{}}],"outputs":[{"referenceName":"DS_Extraction_Files_Target","type":"DatasetReference","parameters":{"StartTime":{"value":"@pipeline().parameters.StartTime","type":"Expression"},"EndTime":{"value":"@pipeline().parameters.EndTime","type":"Expression"},"StorageContainerName":{"value":"@pipeline().parameters.StorageContainerName","type":"Expression"},"RunId":{"value":"@pipeline().RunId","type":"Expression"},"RequestDatePath":{"value":"@variables('RequestDatePath')","type":"Expression"}}}]}],"policy":{"elapsedTimeMetric":{}},"parameters":{"StartTime":{"type":"string","defaultValue":"2024-08-01T00:00:00Z"},"EndTime":{"type":"string","defaultValue":"2024-08-01T00:00:00Z"},"StorageContainerName":{"type":"string","defaultValue":"<>"}},"variables":{"RequestDatePath":{"type":"String","defaultValue":"2023/02/25"}},"annotations":["MGDC","Azure Synapse Analytics","OneDrive","SharePoint","Capacity","Sites","Files","Documents","Syntex","M365","Office365","Graph","Microsoft","Office"],"lastPublishTime":"2024-09-23T17:46:31Z"},"dependsOn":["[concat(variables('factoryId'), '/dataflows/DF_Capacity_Scenario')]","[concat(variables('factoryId'), '/datasets/DS_Extraction_Sites_Source')]","[concat(variables('factoryId'), '/datasets/DS_Extraction_Sites_Target')]","[concat(variables('factoryId'), '/datasets/DS_Extraction_Files_Source')]","[concat(variables('factoryId'), '/datasets/DS_Extraction_Files_Target')]"]},{"name":"[concat(parameters('factoryName'), '/DF_Capacity_Scenario')]","type":"Microsoft.DataFactory/factories/dataflows","apiVersion":"2018-06-01","properties":{"description":"This dataflow is used to read the extracted SharePoint Sites and SharePoint Files dataset, transform them, and write them back to the Azure Storage Location under the directory \"Capacity\". The data created in this data flow will be used to power reports.","type":"MappingDataFlow","typeProperties":{"sources":[{"dataset":{"referenceName":"DS_JSON_Sites_CS_Source","type":"DatasetReference"},"name":"ReadSites","description":"Import data from DS_JSON_Sites_CS_Source"},{"dataset":{"referenceName":"DS_JSON_Files_CS_Source","type":"DatasetReference"},"name":"ReadFiles","description":"Import data from DS_JSON_Files_CS_Source"}],"sinks":[{"dataset":{"referenceName":"DS_JSON_Capacity_CS_Target","type":"DatasetReference"},"name":"WriteSites"},{"dataset":{"referenceName":"DS_JSON_Capacity_CS_Target","type":"DatasetReference"},"name":"WriteFiles"}],"transformations":[{"name":"SelectSitesColumns"},{"name":"SelectFilesColumns"},{"name":"FileCountByExtension"}],"scriptLines":["parameters{"," Date as string,"," RunId as string","}","source(output("," ptenant as string,"," Id as string,"," Url as string,"," RootWeb as (Id as string, Title as string, WebTemplate as string, WebTemplateId as integer, LastItemModifiedDate as string),"," WebCount as integer,"," StorageQuota as long,"," StorageUsed as long,"," StorageMetrics as (MetadataSize as long, TotalFileCount as long, TotalFileStreamSize as long, TotalSize as long),"," GroupId as string,"," GeoLocation as string,"," IsInRecycleBin as boolean,"," IsTeamsConnectedSite as boolean,"," IsTeamsChannelSite as boolean,"," TeamsChannelType as string,"," IsHubSite as boolean,"," HubSiteId as string,"," BlockAccessFromUnmanagedDevices as boolean,"," BlockDownloadOfAllFilesOnUnmanagedDevices as boolean,"," BlockDownloadOfViewableFilesOnUnmanagedDevices as boolean,"," ShareByEmailEnabled as boolean,"," ShareByLinkEnabled as boolean,"," SensitivityLabelInfo as ({} as string),"," IBMode as string,"," Owner as (AadObjectId as string, Email as string, Name as string),"," SecondaryContact as (AadObjectId as string, Email as string, Name as string),"," ReadLocked as boolean,"," ReadOnly as boolean,"," CreatedTime as string,"," LastSecurityModifiedDate as string,"," Operation as string,"," SnapshotDate as string"," ),"," allowSchemaDrift: false,"," validateSchema: false,"," ignoreNoFilesFound: true,"," documentForm: 'documentPerLine',"," wildcardPaths:[(concat('sites/', concat($Date, concat('/', concat($RunId, '/*')))))]) ~> ReadSites","source(output("," ptenant as string,"," SiteId as string,"," DirName as string,"," Extension as string,"," FileName as string,"," IsCheckedOutToLocal as string,"," IsLabelEncrypted as string,"," ItemId as string,"," ListBaseType as string,"," ListId as string,"," ListServerTemplate as string,"," MajorVersion as string,"," MinorVersion as string,"," RunId as string,"," ScopeId as string,"," SensitivityLabelDisplayName as string,"," SensitivityLabelId as string,"," SiteUrl as string,"," SizeInBytes as long,"," SizeInBytesWithVersions as string,"," SnapshotTime as string,"," TimeCreated as string,"," TimeLastModified as string,"," WebId as string,"," WebTemplateId as string"," ),"," allowSchemaDrift: true,"," validateSchema: false,"," ignoreNoFilesFound: false,"," documentForm: 'documentPerLine',"," wildcardPaths:[(concat('files/', concat($Date, concat('/', concat($RunId, '/*')))))]) ~> ReadFiles","ReadSites select(mapColumn("," SiteId = Id,"," SiteName = RootWeb.Title,"," SiteType = RootWeb.WebTemplate,"," LastItemModifiedDate = RootWeb.LastItemModifiedDate,"," MetadataStorageSize = StorageMetrics.MetadataSize,"," TotalFileCount = StorageMetrics.TotalFileCount,"," LatestVersionStorage = StorageMetrics.TotalFileStreamSize,"," PrimaryContactEmail = Owner.Email,"," PrimaryContactName = Owner.Name,"," SecondaryContactName = SecondaryContact.Name,"," SecondaryContactEmail = SecondaryContact.Email,"," IsInRecycleBin,"," CreatedTime,"," SiteUrl = Url,"," StorageQuota,"," SnapshotDate,"," TotalStorageSize = StorageMetrics.TotalSize"," ),"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true) ~> SelectSitesColumns","ReadFiles select(mapColumn("," SiteId,"," Extension,"," ItemId,"," SizeInBytes"," ),"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true) ~> SelectFilesColumns","SelectFilesColumns aggregate(groupBy(Extension,"," SiteId),"," FileCount_BySite = count(SiteId),"," SizeInBytes = sum(SizeInBytes)) ~> FileCountByExtension","SelectSitesColumns sink(allowSchemaDrift: true,"," validateSchema: false,"," truncate: true,"," umask: 0022,"," preCommands: [],"," postCommands: [],"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true,"," partitionBy('hash', 1)) ~> WriteSites","FileCountByExtension sink(allowSchemaDrift: true,"," validateSchema: false,"," truncate: true,"," umask: 0022,"," preCommands: [],"," postCommands: [],"," skipDuplicateMapInputs: true,"," skipDuplicateMapOutputs: true,"," partitionBy('hash', 1)) ~> WriteFiles"]}},"dependsOn":["[concat(variables('factoryId'), '/datasets/DS_JSON_Sites_CS_Source')]","[concat(variables('factoryId'), '/datasets/DS_JSON_Files_CS_Source')]","[concat(variables('factoryId'), '/datasets/DS_JSON_Capacity_CS_Target')]"]},{"name":"[concat(parameters('factoryName'), '/DS_Extraction_Sites_Source')]","type":"Microsoft.DataFactory/factories/datasets","apiVersion":"2018-06-01","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADF_Office365')]","type":"LinkedServiceReference"},"annotations":[],"type":"Office365Table","schema":[],"typeProperties":{"tableName":"BasicDataSet_v0.SharePointSites_v1"}},"dependsOn":[]},{"name":"[concat(parameters('factoryName'), '/DS_Extraction_Sites_Target')]","type":"Microsoft.DataFactory/factories/datasets","apiVersion":"2018-06-01","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADF_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StartTime":{"type":"string"},"EndTime":{"type":"string"},"StorageContainerName":{"type":"string"},"RunId":{"type":"string"},"RequestDatePath":{"type":"string"}},"annotations":[],"type":"Binary","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('sites/', dataset().RequestDatePath,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}}},"dependsOn":[]},{"name":"[concat(parameters('factoryName'), '/DS_Extraction_Files_Source')]","type":"Microsoft.DataFactory/factories/datasets","apiVersion":"2018-06-01","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADF_Office365')]","type":"LinkedServiceReference"},"annotations":[],"type":"Office365Table","schema":[],"typeProperties":{"tableName":"BasicDataSet_v0.SharePointFiles_v1"}},"dependsOn":[]},{"name":"[concat(parameters('factoryName'), '/DS_Extraction_Files_Target')]","type":"Microsoft.DataFactory/factories/datasets","apiVersion":"2018-06-01","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADF_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StartTime":{"type":"string"},"EndTime":{"type":"string"},"StorageContainerName":{"type":"string"},"RunId":{"type":"string"},"RequestDatePath":{"type":"string"}},"annotations":[],"type":"Binary","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('files/', dataset().RequestDatePath,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}}},"dependsOn":[]},{"name":"[concat(parameters('factoryName'), '/DS_JSON_Sites_CS_Source')]","type":"Microsoft.DataFactory/factories/datasets","apiVersion":"2018-06-01","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADF_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StorageContainerName":{"type":"string"},"RequestDate":{"type":"string"},"RunId":{"type":"string"}},"annotations":[],"type":"Json","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('sites/', dataset().RequestDate,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}},"schema":{"type":"object","properties":{"ptenant":{"type":"string"},"Id":{"type":"string"},"Url":{"type":"string"},"RootWeb":{"type":"object","properties":{"Id":{"type":"string"},"Title":{"type":"string"},"WebTemplate":{"type":"string"},"WebTemplateId":{"type":"integer"},"LastItemModifiedDate":{"type":"string"}}},"WebCount":{"type":"integer"},"StorageQuota":{"type":"integer"},"StorageUsed":{"type":"integer"},"StorageMetrics":{"type":"object","properties":{"MetadataSize":{"type":"integer"},"TotalFileCount":{"type":"integer"},"TotalFileStreamSize":{"type":"integer"},"TotalSize":{"type":"integer"}}},"GroupId":{"type":"string"},"GeoLocation":{"type":"string"},"IsInRecycleBin":{"type":"boolean"},"IsTeamsConnectedSite":{"type":"boolean"},"IsTeamsChannelSite":{"type":"boolean"},"TeamsChannelType":{"type":"string"},"IsHubSite":{"type":"boolean"},"HubSiteId":{"type":"string"},"BlockAccessFromUnmanagedDevices":{"type":"boolean"},"BlockDownloadOfAllFilesOnUnmanagedDevices":{"type":"boolean"},"BlockDownloadOfViewableFilesOnUnmanagedDevices":{"type":"boolean"},"ShareByEmailEnabled":{"type":"boolean"},"ShareByLinkEnabled":{"type":"boolean"},"SensitivityLabelInfo":{"type":"object","properties":{}},"IBMode":{"type":"string"},"Owner":{"type":"object","properties":{"AadObjectId":{"type":"string"},"Email":{"type":"string"},"Name":{"type":"string"}}},"SecondaryContact":{"type":"object","properties":{"AadObjectId":{"type":"string"},"Email":{"type":"string"},"Name":{"type":"string"}}},"ReadLocked":{"type":"boolean"},"ReadOnly":{"type":"boolean"},"CreatedTime":{"type":"string"},"LastSecurityModifiedDate":{"type":"string"},"Operation":{"type":"string"},"SnapshotDate":{"type":"string"}}}},"dependsOn":[]},{"name":"[concat(parameters('factoryName'), '/DS_JSON_Files_CS_Source')]","type":"Microsoft.DataFactory/factories/datasets","apiVersion":"2018-06-01","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADF_ADLS')]","type":"LinkedServiceReference"},"parameters":{"StorageContainerName":{"type":"string"},"RequestDate":{"type":"string"},"RunId":{"type":"string"}},"annotations":[],"type":"Json","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('files/', dataset().RequestDate,'/',dataset().RunId)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}},"schema":{"type":"object","properties":{"ptenant":{"type":"string"},"SiteId":{"type":"string"},"DirName":{"type":"string"},"Extension":{"type":"string"},"FileName":{"type":"string"},"IsCheckedOutToLocal":{"type":"string"},"IsLabelEncrypted":{"type":"string"},"ItemId":{"type":"string"},"ListBaseType":{"type":"string"},"ListId":{"type":"string"},"ListServerTemplate":{"type":"string"},"MajorVersion":{"type":"string"},"MinorVersion":{"type":"string"},"RunId":{"type":"string"},"ScopeId":{"type":"string"},"SensitivityLabelDisplayName":{"type":"string"},"SensitivityLabelId":{"type":"string"},"SiteUrl":{"type":"string"},"SizeInBytes":{"type":"string"},"SizeInBytesWithVersions":{"type":"string"},"SnapshotTime":{"type":"string"},"TimeCreated":{"type":"string"},"TimeLastModified":{"type":"string"},"WebId":{"type":"string"},"WebTemplateId":{"type":"string"}}}},"dependsOn":[]},{"name":"[concat(parameters('factoryName'), '/DS_JSON_Capacity_CS_Target')]","type":"Microsoft.DataFactory/factories/datasets","apiVersion":"2018-06-01","properties":{"linkedServiceName":{"referenceName":"[parameters('LS_ADF_ADLS')]","type":"LinkedServiceReference"},"parameters":{"Dataset":{"type":"string"},"StorageContainerName":{"type":"string"}},"annotations":[],"type":"Json","typeProperties":{"location":{"type":"AzureBlobFSLocation","folderPath":{"value":"@concat('capacity/', dataset().Dataset)","type":"Expression"},"fileSystem":{"value":"@dataset().StorageContainerName","type":"Expression"}}},"schema":{}},"dependsOn":[]}]} \ No newline at end of file diff --git a/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/manifest.json b/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/manifest.json index 72d888ba..e57d8cff 100644 --- a/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/manifest.json +++ b/templates/Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets/manifest.json @@ -1 +1 @@ -{"name":"Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets","description":"Use this template to accelerate capacity scenarios by understanding the storage and site lifecycle for SharePoint and OneDrive in your organization. This template extracts Microsoft 365 (Office) SharePoint data via Microsoft Graph Data Connect to produce analytics-ready data for analysis.\n\nWe would love to hear your thoughts on this template. Please send us your ideas and feedback at {}.","image":"Set variableFormat ParameterData flowCapacity ScenarioData FlowCopy dataExtract SitesCopy dataExtract Files","icons":["SetVariable","ExecuteDataFlow","Copy"],"requires":{"linkedservices":{"LS_Office365":{"supportTypes":["Office365"]},"LS_ADLS":{"supportTypes":["AzureBlobFS"]}}},"author":"admin@odsparchimedes.onmicrosoft.com","annotations":["MGDC","Azure Synapse Analytics","OneDrive","SharePoint","Capacity","Sites","Files","Documents","Syntex","M365","Office365","Graph","Microsoft","Office"],"services":[],"categories":[]} \ No newline at end of file +{"name":"Unlock Capacity Analytics and Insights for SharePoint and OneDrive using Microsoft 365 Datasets","description":"Use this template to accelerate capacity scenarios by understanding the storage and site lifecycle for SharePoint and OneDrive in your organization. This template extracts Microsoft 365 (Office) SharePoint data via Microsoft Graph Data Connect to produce analytics-ready data for analysis.\n\nWe would love to hear your thoughts on this template. Please send us your ideas and feedback at {}.","image":"Set variableFormat ParameterData flowCapacity ScenarioData FlowCopy dataExtract SitesCopy dataExtract Files","icons":["SetVariable","ExecuteDataFlow","Copy"],"requires":{"linkedservices":{"LS_ADF_Office365":{"supportTypes":["Office365"]},"LS_ADF_ADLS":{"supportTypes":["AzureBlobFS"]}}},"author":"Microsoft","annotations":["MGDC","Azure Synapse Analytics","OneDrive","SharePoint","Capacity","Sites","Files","Documents","Syntex","M365","Office365","Graph","Microsoft","Office"],"services":[],"categories":[]} \ No newline at end of file