Skip to main content
Instead of polling the Reports API on a schedule, register a webhook endpoint that Connectly calls the moment a report run completes. The payload includes a signed URL so you can download the CSV immediately β€” no extra API call required.
The signed URL in a webhook payload expires after a few minutes only. Download the file immediately upon receiving the webhook. If the URL expires before you can download it, call the Reports API to retrieve a fresh one.

Registering the webhook

Use the Create webhook endpoint with "topic": "report":

Webhook payload

When a report run completes, Connectly POSTs the following payload to your endpoint:
1

Acknowledge receipt immediately

Return a 2xx response as soon as you receive the webhook β€” before doing any processing. Connectly may retry if it doesn’t receive a timely acknowledgement.
2

Extract and validate the URL

Read report.last_run.result.url and check expires_at to confirm the URL is still valid.
3

Download the CSV immediately

Perform a GET request to the signed URL right away β€” it expires within minutes.
4

Handle expiry gracefully

If your handler is delayed and the URL has expired, call the Reports API to retrieve a fresh signed URL for the same report.
Your webhook endpoint must be reachable over HTTPS. Connectly does not deliver webhooks to plain HTTP addresses.