Schedule data exports with Automations
Last reviewed
For: An admin or ops person who needs a copy of synced data on a schedule — a nightly feed to finance, a weekly file to a downstream system, or a one-time export before off-boarding.
You’ll accomplish: creating an Automation that exports a data model as a CSV to your FTP/SFTP server, running it once on demand, and reading the run history to confirm it worked or see why it didn’t.
An Automation is how PropSocket pushes a copy of your synced data out on a schedule. You pick what to export, where it goes, and how often — and PropSocket delivers a CSV file to your FTP/SFTP server each time it runs. You manage all of this in the Automations section, which is separate from any single integration.
Automations are available on the Growth plan and above (Growth, Scale, and Enterprise). The Starter plan doesn’t include scheduled exports — if you’re on Starter and need a one-time copy of your data, contact support and we’ll help. See pricing for the full plan breakdown.
1. What an Automation is (and isn’t)
An Automation exports synced data you already have in PropSocket — properties, units, residents, leases, or lease-residents — as a CSV file delivered to an FTP/SFTP destination you control.
A few things to set expectations:
- It delivers to a server, not your computer. The file lands at the host and path you configure. There’s no “download to my laptop” button — you’ll need FTP/SFTP destination details (host, credentials, path). If you don’t have those, your IT or engineering team usually does.
- It’s a point-in-time copy. Each run exports the data as it stands at that moment. It’s not a live feed — for real-time change notifications, that’s webhooks, not Automations.
- It can run on a schedule or once on demand. Set a daily/weekly/monthly schedule, or use Run Now for a one-time export (see section 3) — handy when you’re off-boarding and just need one clean copy.
2. Create an Automation
Go to Automations in the dashboard and click New Automation. The form is one page, broken into sections:
Basics
- Name — a label for you, e.g. Daily Lease Export.
- Data Model — what you’re exporting: Properties, Units, Residents, Leases, or Lease Residents. (Choosing a model loads the available columns and filter fields below.)
- Integration Scope — All integrations, or a single integration. Scope it to one integration when you’re exporting data from just that PMS connection.
Columns — Check the fields to include in the CSV. Columns are grouped, and there are Select All / None shortcuts. By default all columns are selected.
Filters — Optional. Add field = value rows to narrow what’s exported (for example, status, type, a name contains, or date ranges like start/end date from–to, depending on the model). No filters means every record is exported.
Schedule — Pick a preset:
- Daily — once every day.
- Weekly — on the days of the week you select.
- Monthly — on the dates of the month you select.
- Custom — enter a cron expression directly.
Set the time and timezone, and the form shows you the next 3 run times so you can confirm the schedule reads the way you intended.
Destination — Where the file goes:
- Protocol — SFTP (recommended) or FTP.
- Host and Port, Username, and a Password and/or, for SFTP, an SSH private key (PEM format).
- Remote Path — the folder on the server to drop files into, e.g.
/exports/. - Click Test Connection to confirm the credentials and path work before you save — much easier than waiting for the first run to fail.
File Naming — A filename template. The default is {model}_{date}.csv. Available variables: {model}, {date} (YYYY-MM-DD), {timestamp} (YYYYMMDDTHHmmss), {datetime} (ISO 8601), and {integration}. A live preview shows the resulting filename.
Click Create Automation to save. You’ll land on the automation’s detail page.
If anything’s required but missing (a name, a valid model, a destination host), the form lists the errors at the top — fix them and resubmit.
3. Run it once, on demand
You don’t have to wait for the schedule. On the automation’s detail page, click Run Now and confirm the prompt (“Trigger a manual run now?”). PropSocket kicks off the export in the background; watch the Run History at the bottom of the page to see it move from running to completed.
This is the right tool for a one-time export — for example, pulling a final copy of your data before you remove an integration. See Pause, resume, or remove an integration for the full off-boarding order.
4. Read the run history
Every run is recorded in the Run History on the detail page, which refreshes on its own every few seconds. Each row shows when it started, how long it took, how many records were exported, the file name, the size, and a status:
- Completed — the file was built and delivered. You’re done.
- Running — in progress right now.
- Failed — a run hit an error and will be retried automatically (PropSocket retries up to three times, waiting 1, then 5, then 15 minutes between attempts).
- Dead Letter — the run failed and PropSocket gave up after exhausting its retries. This one needs attention — open it to see why.
- Pending — queued, not started yet.
Click any run to open its Run Detail, which shows the Run ID, status, which attempt it was, start and completion times, records exported, file name and size, and — if it failed — the error message. That error message is the fastest way to tell a credential problem from a destination-path problem.
5. Pause, resume, edit, or delete an Automation
From the detail page:
- Edit any section (Export Configuration, Schedule, Destination, File Naming) with the Edit button on that card. Changes save in place and show a confirmation.
- Pause / Resume — pausing stops the schedule from firing without deleting the automation; resume turns it back on. (A paused automation shows as Paused in the list.)
- Delete — removes the automation and its schedule. This doesn’t touch your synced data in PropSocket — it only removes the export job.
6. What the exported file looks like
The CSV reflects PropSocket’s stored data, so a few formatting conventions carry over: money values are written as integer cents (not $1,250.00), dates are YYYY-MM-DD, and timestamps are in UTC. If a value in the file looks unfamiliar, the Plain-English data dictionary for ops explains the formats.
If this didn’t work
If Test Connection fails, a run lands in Dead Letter, or the file never shows up at your destination, the run’s error message is the place to start — most failures are a wrong host/port, expired destination credentials, or a remote path the account can’t write to.
Open a support ticket by emailing support@propsocket.io and include:
- Organization slug (the short name in your dashboard URL, e.g.
acme-residential) - Automation name and, if it failed, the Run ID from the run detail page
- What you expected vs. what you saw (paste the run’s error message if there is one)
- The destination protocol (SFTP or FTP) and host — but not the password or SSH key
Please do not paste your destination password or private key into the ticket. If a run is reaching Dead Letter and you’re not sure why, send the Run ID and we’ll trace it from our side.
Didn't solve it?Talk to us — a real engineer replies within one business day. Or browse therest of the help center.