Send import data to any Make scenario.
CSVbox validates every uploaded row, then fires a webhook into your Make scenario. From there, Make routes the clean data to any of its 1,500+ app integrations — CRMs, databases, messaging tools, and more. No custom API code required.
- Validated data only
- Column mapping included
- SOC 2 Type II + GDPR
Make is a visual automation platform that connects 1,500+ apps through scenarios — drag-and-drop workflows that transform and route data between services. If you use Make for business automation, CSVbox gives you a production-ready upload UI that feeds validated spreadsheet data directly into those scenarios.
Make's built-in file-handling doesn't parse structured CSV rows into individual records. CSVbox fills that gap: it parses the upload, maps columns, validates every row, and sends clean structured data as a webhook event into your Make scenario. Your scenario receives ready-to-use row data — no parsing modules needed.
- CSVbox sends each batch as a single webhook call. Add Make's Iterator module after the trigger to loop over rows and process each one individually.
- Use Make's Data Structures to define the expected CSVbox payload shape — Make auto-maps field names in every downstream module.
- Make's Router module lets you branch scenario logic based on imported field values — route rows to different apps based on any column.
How It Works
- 1Create a Make webhook
In Make, create a new scenario. Add a Webhooks module as the trigger and select "Custom webhook". Click Add to generate a new webhook and copy the URL. Optionally define a Data Structure to describe the CSVbox payload — run one test import first, then click "Determine data structure" to auto-detect it.
- 2Configure CSVbox
In the CSVbox dashboard, go to Destinations and select API / Webhook. Paste your Make webhook URL. Set format to JSON.
- 3Build your Make scenario
Add modules after the webhook trigger. Use the Iterator module to process rows one by one, then connect to any Make-supported app — a CRM, database, spreadsheet, email service, or anything else in Make's library. Add a Router for conditional branching.
- 4Embed and test
Add the CSVbox widget to your app. Upload a test file. Verify data flows into Make and through your scenario correctly.
Webhook Payload Shape
{
"import_id": "imp_01HZ9K",
"row_count": 2,
"rows": [
{ "row_id": 1, "data": { "email": "ana@example.com", "first_name": "Ana", "company": "Acme" } },
{ "row_id": 2, "data": { "email": "riku@example.com", "first_name": "Riku", "company": "Pipedata" } }
]
}What You Can Build
| Use Case | Make Modules After CSVbox |
|---|---|
| Add imported contacts to a CRM | HubSpot / Salesforce / Pipedrive — Create a Contact |
| Append rows to Google Sheets | Google Sheets — Add a Row |
| Send a welcome email per imported user | Gmail / Mailchimp / SendGrid — Send an Email |
| Create tasks from an imported list | Asana / Trello / ClickUp — Create a Task |
| Notify a Slack channel on import | Slack — Create a Message |
| Write rows to a database | PostgreSQL / MySQL / MongoDB — Insert a Row |
Frequently Asked Questions
Does CSVbox send one webhook call per row or per batch?
One call per batch (configurable batch size, default 100 rows). To process each row individually inside Make, add an Iterator module after the webhook trigger and loop over the rows array.
How do I use Make's Data Structures with CSVbox?
In the Make webhook configuration, click "Determine data structure". Either upload a sample CSVbox payload — run one test import first — or manually define the JSON structure. This gives Make field names and types for auto-mapping in all downstream modules.
Does Make's free tier work with CSVbox?
Yes. Make's free tier includes 1,000 operations per month. Each CSVbox batch delivery counts as one webhook trigger invocation; each downstream module execution consumes additional operations. For production imports with high row counts, a paid Make plan is recommended.
Can I filter rows in Make before they reach my destination?
Yes. Use Make's Router module to branch the scenario based on field values, or add a Filter condition on any module connection to skip rows that don't meet your criteria.
What if my Make webhook URL changes?
Update the webhook URL in your CSVbox destination config. The change takes effect on the next import.