Destinations#
Destinations on the Distribution step are the delivery targets for a report's generated files. Each target type is a distributor. A distributor is configured in two places: a global integration (Settings, Integrations, Distributors, holding credentials, defaults, and a Test Connection button) and a per-job destination added on the Distribution step (path, folder, or recipient fields, most of them tokenizable, see Name and organize output files).
Distributors are global instances, not one per workspace. An administrator can configure 0 or more of any distributor type, each its own instance. Every distributor editor opens with the common integration chrome, an Enable Integration checkbox (which replaced the old per-distributor enable switch), a Display name, and an Availability workspaces dropdown that decides which workspaces the destination is offered in.
A job can target multiple destinations at once, and each destination delivers only the output formats you route to it. The Destinations area shows no tiles until at least one distributor is configured and enabled in Integrations, and only shows the distributors available to the job's workspace; ask your administrator if the tile you need is missing.
The destinations#
| Destination | Writes output? | Per-job fields | Key behavior |
|---|---|---|---|
| Yes | Recipients and message (address book plus contact tokens); From override if allowed; packaging options | Delivers files as attachments or a message. Supports Zip, combined messages, and message templates. | |
| Network Folder | Yes | Network Location, a local or UNC path (tokenizable) | On-premises file-share delivery. Runs fully offline. Auto-creates missing folders. |
| SharePoint | Yes | Location URL (tokenizable) | Delivers to a SharePoint library folder via Microsoft 365 Graph. Auto-creates folders. |
| Box | Yes | Send As User, Folder Path | Server-to-server auth; folder auto-create; new version on a name clash. |
| OneDrive | Yes | Folder path; optional Share With plus permission | Writes to the delegated service account's own drive; replaces on re-run; optional non-fatal recipient share. |
| Google Drive | Yes | Impersonate Email (contact field); Location - one tokenizable expression, //Drive/Path or a bare Path for My Drive |
Excel output auto-converts to a Google Sheet on delivery. |
| Slack | Yes | Channel (contact token: Slack Channel) | Posts the output to a channel. See setup note below. |
| Teams | Yes | Chats or channels target (contact token or semicolon-delimited) plus message | Teams Direct (Graph) only in v6, see setup note. Email addresses go to chats; channel names go to channels, sent as the authenticated M365 user. |
| SFTP | Yes | File location / output path | Delivers to a secure FTP folder. See setup note below. |
| IBM Planning Analytics | Yes | A target PA connection plus an Application Folder path (forward-slash delimited, tokenizable) | A distributor that writes the job's output files back into a PA / TM1 Application Folder so PA users open the same file inside their model. Auto-creates missing folders. |
IBM Planning Analytics is a destination, not just a source. The PA distributor writes output files into an Application Folder. This is the opposite direction from the PA report provider, which reads source reports from application folders. Same "Application Folders", opposite direction, do not conflate them.
Box is browse and read-only as a source, and a full write destination. As a source report provider Box is used to load templates; as a distributor it writes output. (There is no separate limitation to note for Box delivery beyond the folder and versioning behavior above.)
Per-destination setup notes#
These are the non-obvious prerequisites that make a distributor work. Most are configured once, by an administrator, on the global connection.
Email (Microsoft 365 Graph): a non-default From needs a "Send as" grant#
With the Microsoft 365 Graph transport, sending "as" any address other than the authenticating account's own mailbox requires that account to hold Send as on the target mailbox. In the Exchange Admin Center, open Recipients, Mailboxes, the target mailbox, Delegation, Send as, and add the authenticating account. Without it, an override-From send fails.
Network Folder: the Bootstrapper service account needs write access#
The Network Folder connection has no credential field, only a Test Folder. The destination path is
written by the Reportworq Bootstrapper service account, so that account (not the interactive user) must
have write access to the target folder. Mapped drive letters are invisible to the service context; use a
local path or a UNC path such as \\MyServer\MyFolder.
SharePoint: use the case-sensitive .../sites/<site>/... URL#
The Location must be the canonical, case-sensitive form
https://<tenant>.sharepoint.com/sites/<site>/<folder1>/<folder2>, not the URL from the browser
address bar (which is encoded or redirected and will not resolve). The authenticating account needs rights
to create, delete, and update files in the target library.
Slack: four OAuth scopes plus the bot in each channel#
The Slack app needs four Bot Token OAuth scopes: chat:write and files:write (to post reports),
plus channels:read and groups:read (to resolve a channel by name). Separately, the bot must
be added to each target channel (in the channel, Integrations, Add an App), or posts fail. These are the
two reasons a Slack distributor appears to "do nothing".
Teams: Direct (Graph) only, there is no Bot mode in v6#
Only Teams Direct (Graph) is wired. The Distribute path splits the target list into email addresses
(sent as chats) and channel names (sent as channel messages), as the authenticated user. A "Teams Bot" mode
is not shipped in v6, do not plan around a Bot send path.
Google Drive: OAuth (recommended) or a Google service account, shared with the provider#
The Google Drive destination authenticates the same way as the Google Drive report provider, using
whichever model you choose per distributor: OAuth (recommended, referencing a shared Google Workspace
credential consented by a dedicated Workspace account, see Google Workspace OAuth setup)
or a Google Cloud service account, either referenced as a shared credential or entered inline as its
JSON key. Under
OAuth, the per-job Impersonate Email field is hidden and inert; the destination remains optional and
tokenizable either way. The step leads with a single Location field holding one tokenizable expression:
no prefix delivers to My Drive (e.g. Reports/2026); a leading // names a Shared Drive
instead (e.g. //Product Development/Reports/2026; //Product Development alone targets that drive's
root). A parameter may appear anywhere in the expression, including inside the drive name. Type it
directly, or use the folder Browse button to compose the whole expression at once; Browse writes the
folder's friendly path. The drive segment after // accepts either the Drive's ID or its exact name
(also what makes a token that resolves to a drive name work here) - a name matching more than one Shared
Drive, or none, fails rather than guessing. A Shared Drive literally named "My Drive" cannot be reached by
name - that text always means your personal My Drive, so use the drive's ID instead. A / inside a Shared
Drive's or a folder's name is handled automatically rather than being a problem, since Reportworq works out
the drive/path split for you. Removing the // prefix returns delivery to My Drive. A subtle note
beneath the field confirms, in Google's own names, where it will actually deliver once you stop editing it -
or flags a malformed // prefix. Excel output is delivered as a Google Sheet and PowerPoint as Google
Slides.
The full walkthrough for both models, including Shared Drive IDs, the folder picker, and optional
Domain-Wide Delegation for service-account mode, is on
Set up Google Drive.
SFTP: provision the server account first#
Reportworq needs a server-side, SFTP-enabled account with full permissions on a dedicated folder, so it can create the per-job subfolders it delivers into. The Host Address is the server's IP address.
How delivery behaves#
| Aspect | Behavior |
|---|---|
| Availability | No destination tiles until a distributor is configured and enabled in Integrations. |
| Tokenized paths | Path, folder, and recipient fields resolve parameter and variable tokens at run time. |
| Test Connection | Verifies credentials and reachability. It does not always verify per-job write access (notably Box and OneDrive). |
| Re-run | Box and OneDrive version, update, or replace a same-named file in place rather than duplicating. |
| Send gate | A destination delivers only when the run is not Hold for Delivery and is not suppressed by an untriggered exception check, and only the formats routed to it. |
| Failure isolation | Each destination runs independently. One broken destination (for example an unreachable SharePoint) is logged as a warning; the others still deliver. |
Use cases#
- Email a monthly P&L PDF to controllers with address-book recipients.
- Publish a board deck to SharePoint, delivered to a library folder built from a region token.
- Archive a timestamped Excel to a network folder per cost center.
- Notify a finance channel with a Slack or Teams post of the run's output.
- Hand off a CSV extract to a partner over SFTP.
- Round-trip a report into Planning Analytics, delivered back into a PA Application Folder so PA users open the same file in their model.
Notes and limits#
- Test Connection may not confirm per-job write access.
- OneDrive writes only to the delegated service account's own drive.
- Teams delivers only via the Direct (Graph) path in v6.
Going deeper. To send one combined email per recipient instead of many separate messages, and to zip or collate the outputs, see Combine emails, collate, and zip.
Feedback on this page
Comments, questions, requests, or something missing or unclear? Email us - the page you are on is filled in for you.
Email feedback on this pageOr write to support@reportworq.com directly.