- Sources
- File & storage
Box
Overview
Section titled “Overview”Signals collects files from a Box folder you control, so exports your team already saves to Box can be sent to an advertising destination without moving them anywhere else.
It suits organizations standardized on Box for file storage. If your data is produced by a pipeline that can write to object storage, a bucket-based connector is usually less to maintain.
Signals reads files from a folder you control, on a schedule, and sends the rows to the destinations you have connected. Nothing is written back into your Box.
Supported destinations
Section titled “Supported destinations”Destinations supported by Box
| Category | Supported |
|---|---|
| Offline Conversions | |
| Lead Conversions | |
| Custom Audience |
Prerequisites
Section titled “Prerequisites”Before connecting Box, make sure you have:
- A Box account with access to the folder holding your files.
- A folder holding your files, and the ability to sign in as an account that can read it.
- The URL of that folder, taken from your browser address bar.
- A Datahash Studio account with the target project selected.
- A destination connected in the same project. A source on its own collects nothing.
Authentication
Section titled “Authentication”In Studio, open Sources, find the Files category, and click the Box tile. This connector uses single sign-on, so there is no key or secret to manage.
- Click Login with Box.
- Sign in as an account that can read the folder, and approve the requested permissions.
Sign in with an account that can already see the folder. Datahash reads as that account, so a folder it cannot open will not become visible by connecting.
Box permissions are granted per folder and inherited by what sits inside it. Give the account access at the folder you are pointing at rather than higher up the tree.
Configuration
Section titled “Configuration”Integration type
Section titled “Integration type”- Choose the Integration Type, which is the kind of data your files hold.
- Give the connection an Instance Name.
- Click Next.
The choice matters more than it looks. It decides the column structure Signals expects and which destinations the connection can feed, so a connection set up as Offline Events cannot be pointed at a Custom Audience destination later without the files changing too. Settle it before anyone starts producing exports.
Folder and file name
Section titled “Folder and file name”- Enter the Folder URL. Open the folder in Box where your files are saved, then copy the URL from your browser address bar.
- Enter the File Name. This is the base name only; Signals adds the date and the extension itself.
- Click Download File Format to get the template for the integration type you selected.
- Click Finish.
Signals will only pick up files whose names follow the pattern it composes from what you typed. If the File Name is Test, the names it looks for are:
| Filename | When to use it |
|---|---|
| Test_2026_07_29.csv | The file for that date. |
| Test_2026_07_29_1.csv | A second file for the same date. |
| Test_2026_07_29_2.csv | A third, and so on. |
The date segment is the file’s date in YYYY_MM_DD form, and the extension is fixed. A file named anything else sits in the folder untouched, which is the single most common reason a connection validates and then appears to do nothing. Whatever job writes your exports has to produce this pattern.
Instances and scope limits
Section titled “Instances and scope limits”To add another, open Manage Connections and click Add Instance. To change one, open the connector widget or Manage Connections, click the edit icon, update the fields and click Finish.
File format and schema
Section titled “File format and schema”There is no column mapping step on a file source. The schema is fixed, and your file has to match it.
Start from the file you downloaded with Download File Format rather than from an existing export. The column headers in it are what Signals matches on, so a header that has been renamed, reordered into a different case, or padded with a stray space will not be recognized, and the row it belongs to is dropped rather than reported.
The schema follows the integration type you chose, not the storage provider. An Offline Events file and an Audience file have different columns, and a file built for one will not work for the other. Within a schema, contact identifiers are typically accepted in more than one column, for example up to three email addresses and three phone numbers per person, with one value per cell rather than several separated by commas.
Send identifiers in plain text. Signals normalizes and hashes them before they reach any destination, so a file that arrives pre-hashed cannot be normalized and will match badly.
Data & identifiers
Section titled “Data & identifiers”Personal identifiers in your files are normalized and hashed before they are sent to a destination. Raw personal data is processed in memory only and is not stored by Datahash; only aggregated reporting metrics are retained.
Which identifiers are required depends on the destination, not on this connector. A file that satisfies one destination may be missing a required field for another, so check the destination page for the fields it needs before building the export.
Best practices
Section titled “Best practices”- Automate the filename. The date-stamped pattern is easy to type correctly once and easy to get wrong every day after that, and a mismatched name fails silently.
- Use a dedicated folder for Datahash rather than one your team already writes to for other purposes. The connection reads a folder, not a file, so anything matching the pattern is collected.
- Start from the downloaded file format. Reusing an existing export and hoping the headers line up is the most common reason a connection validates and then delivers nothing.
- Sign in with a service account rather than an individual’s, so the connection survives someone leaving.
- Grant access at the folder itself rather than at a parent, so the connection cannot see more than it needs.
- Clean the data at source: lowercase email, phone in E.164, no stray whitespace. Hashing a badly formatted value produces a hash that will never match.
- Export often enough for the destination you are feeding. Some destinations reject events older than a few days, so a monthly file may be refused outright.
Troubleshooting & FAQ
Section titled “Troubleshooting & FAQ”The connection is set up but nothing is collected. Check the filenames first. They have to match the pattern Signals composed from your File Name, including the date segment and the extension. A file with the right contents and the wrong name is ignored.
The folder URL is rejected. Copy it from the browser address bar with the folder open, rather than from a share dialog. A share link is not the same address.
The folder is not found after signing in. The account you signed in with has not been given access to it. Add it as a collaborator on that folder.
The file is picked up but rows are rejected. The column headers do not match the downloaded file format, or required values are missing. Compare your header row against it character for character.
Some rows land and others do not. The ones failing are missing a field the destination requires. That requirement comes from the destination, not from this connector.
Only the first file for a date is collected. Additional files for the same date need the numbered suffix. Without it they do not match the pattern.
It was working and stopped. The sign-in grant may have been revoked, or the account may have lost access to the folder. Reconnect and check the folder is still shared with it.

