Dropbox Storage and Activity Report
On a schedule, the flow aggregates Dropbox usage - storage by folder, file/subfolder counts, total GB, and recent uploads - stores a snapshot in Dataverse, and posts a report to Teams; the Dataverse snapshot powers a Power BI dashboard. Gives visibility into Dropbox usage and growth.
Provided as-is, without warranty of any kind. Review and test each pattern in a non-production environment before deploying it to live automations. See our Terms.
Overview
This flow gives IT and leadership recurring visibility into Dropbox usage and growth. On a weekly schedule it lists a monitored Dropbox folder, aggregates storage and activity metrics (file count, subfolder count, total bytes/GB, recent uploads), writes a snapshot row to a Dataverse table, and posts a formatted summary to a Microsoft Teams channel. The Dataverse table is the source for a Power BI usage-and-growth dashboard.
Why it matters: Dropbox usage and storage grow unmonitored. A recurring report surfaces trends, heavy folders, and upload activity, and the Dataverse snapshot history powers trend charts in Power BI.
Ships Off (Stopped). Power BI is the consumption layer (reads the Dataverse snapshot); no Power BI flow action is wired.
Use Case
IT/leadership wants regular, governed Dropbox usage and storage reporting without anyone manually checking the Dropbox admin console each week. The flow produces both a human-readable Teams report and a structured Dataverse snapshot for dashboarding.
Flow Architecture
Weekly Monday 07:00 Recurrence
RecurrenceWeekly cadence (Monday 07:00 ET); adjust to change reporting frequency.
Initialize Trace, Config & Counters
Initialize variableMints a correlation id, binds the folder path, Teams ids, and recent-upload window, and seeds the total-bytes / file-count / folder-count / recent-uploads accumulators.
List Dropbox Folder Contents
Dropbox - ListFolderLists the monitored folder; each entry exposes Size, IsFolder, LastModified.
Aggregate Entries
Apply to each (sequential)Tallies folders vs files, total bytes, and files modified within the recent-upload window.
Compose Total GB
ComposeConverts total bytes to GB.
Create Usage Snapshot
Dataverse - CreateRecordWrites the snapshot row (the Power BI source) to flowlibs_dbxusagesnapshots.
Post Usage Report to Teams
Teams - PostMessageToConversationPosts the HTML usage summary to the report channel.
Environment Variables
| Schema name | Type | Default | Description |
|---|---|---|---|
| flowlibs_DropboxFolderPath | String | /FlowLibs Demo | Dropbox folder to audit (empty string = account root). |
| flowlibs_RecentUploadDays | String | 7 | Days back that counts a file as a recent upload. |
| flowlibs_TeamsGroupId | String | <your-team-id> | Target Teams team (group) id for the report. |
| flowlibs_TeamsChannelId | String | <your-channel-id> | Target Teams channel id for the report. |
| flowlibs_UsageTableName | String | flowlibs_dbxusagesnapshots | Snapshot table set name (documentation/portability). |
Connectors & Connections
| Connector | API name | Actions used |
|---|---|---|
| Dropbox | shared_dropbox | ListFolder |
| Microsoft Dataverse | shared_commondataserviceforapps | CreateRecord |
| Microsoft Teams | shared_teams | PostMessageToConversation |
Note — All connections are referenced as solution connection references; the flow is portable between environments as long as a connection is mapped at import time.
Customization Guide
Almost every realistic variant of this flow can be implemented by changing environment variable values. A few cases require small edits inside the flow definition — those are called out explicitly below.
- Top contributors / external shares
- Add an HTTP action with a Dropbox Business team token (Key Vault) calling /2/team/... and /2/sharing/list_shared_links to enrich the snapshot.
- Multi-folder monitoring
- Wrap the listing + aggregation in an outer Apply to each over an array of folder paths to report per-folder rows.
- Recursive sizing
- Switch to a recursive walk (queue/child-flow) to include nested subfolders in the storage total.
- Anomaly flag
- Compare this week's GB/recent-uploads to the previous snapshot and alert when growth exceeds a threshold.
- Real Power BI push
- Once a Power BI connection and dataset exist, add RefreshDataset after the snapshot write, bound to a flowlibs_PowerBiDatasetId env var.
Key Expressions
The flow is intentionally light on Power Fx / WDL gymnastics — the heaviest expressions are the branch-name concatenation and the approval outcome check. They are listed below in the order they appear in the flow.
EXPR.01Storage GB
Converts total bytes to GB.
EXPR.02Recent upload test
Counts a file as a recent upload within the window.
EXPR.03Is folder branch
Splits folder vs file tallies.
EXPR.04Snapshot name
Primary name of the snapshot row.
Comments
Sign in to join the conversation.
Sign inNo comments yet. Be the first to share your experience with this flow.