Updated March 2026
Two ways: webhooks or polling.
Webhooks are real-time. Every submission triggers a POST to your endpoint. Your server receives the data and inserts it into your database. This is the most common pattern.
Polling is simpler. Call GET /api/forms/{id}/submissions periodically. Filter by date range to get new entries. Insert them into your database. A cron job every minute or every 5 minutes works.
CSV export is the manual option. GET /api/forms/{id}/export returns a CSV. Import into Postgres, MySQL, or whatever. Good for one-time migrations, not for ongoing sync.
For webhooks: your endpoint receives JSON with all field data, a submission ID, and a timestamp. Parse it, map to your schema, insert. Verify the HMAC signature to make sure it is actually from Sutrena.
For high volume: webhooks are better because you get each submission as it happens. Polling with a 1-minute interval means up to 60 seconds of delay.
The submissions also stay in Sutrena. You do not have to choose. Use your database for your app logic and Sutrena's dashboard for quick analytics.