For developers and platform teams

Automate cloud file transfers with an API, CLI, webhooks, and runners.

For agencies moving client assets, SaaS teams importing or exporting customer files, and internal tools that move bytes between provider APIs without writing the glue.

Built for agencies, SaaS engineering teams, platform groups, and internal tooling.

A typed HTTP API

Create a job with a source, a destination, a runner choice, and an optional schedule. The control plane validates, picks a runner, and emits progress events.

Sketch — final shape will land with the v1 API.

POST /v1/jobs
Authorization: Bearer sk_live_…
Content-Type: application/json

{
  "source":      { "provider": "google_drive", "path": "/Marketing" },
  "destination": { "provider": "s3", "bucket": "acme-archive", "prefix": "marketing/" },
  "runner":      "cloud",
  "schedule":    "0 2 * * *",
  "on_conflict": "skip"
}

A CLI for scripts and CI

Same jobs, driven from a terminal or a CI runner. Useful for one-shot migrations and for backups owned by a script you can read in a code review.

Planned. Behavior mirrors the API one-to-one.

syncologic jobs create \
  --source google_drive:/Marketing \
  --destination s3://acme-archive/marketing/ \
  --runner cloud \
  --schedule "0 2 * * *" \
  --on-conflict skip

Pick the runner that fits the job

Same API. Three different data paths. Choose per job, not per account.

Cloud Runner

Hosted runners for scheduled jobs and large migrations. No infrastructure on your side.

Browser Runner

For ad-hoc transfers from a tab. The data path stays in the user's browser; no long-lived tokens.

Private Runner

Self-host the runner binary in your VPC, on-prem, or on a NAS. Outbound-only connection to the control plane.

Webhooks for the events you care about

Subscribe to job lifecycle events and stream them into your queue, your dashboard, or your audit log. Payloads will be HMAC-signed.

Planned events

  • job.created
  • job.run.started
  • job.run.progress
  • job.run.completed
  • job.run.failed
  • job.schedule.fired

No SDK promises yet

We will not ship an official SDK before the API is stable. The OpenAPI spec will be public, so you can generate a typed client in any language you already use.

Join the waitlist

Help us build the right tool. Drop your email, then tell us what you need — it takes about a minute.

Which developer surface matters most to you?

Local signal only — your pick is not sent anywhere. Use the waitlist below to share more.

Developer FAQ

  • When will the API ship?
    We are not committing to a date. The API will land alongside the first paid Cloud Runner tier. The waitlist is the right way to be first in line for early access.
  • Will there be a free tier for developers?
    The Browser Runner stays free, and the Private Runner is free for the runner itself. Cloud Runner usage is what we plan to bill for.
  • Do you handle OAuth on behalf of my users?
    Yes. The control plane handles provider OAuth so transfers can run unattended. Users connect their accounts through Syncologic, not through your app.
  • Can I run jobs entirely on my own infrastructure?
    Yes. The Private Runner runs in your VPC, on a NAS, or on a developer machine. The control plane never touches your file bytes.
  • Are webhook payloads signed?
    Webhook payloads will be HMAC-signed with a per-workspace secret you control. Replay protection and timestamp tolerance follow the same conventions you would expect from Stripe or Linear.
Join the waitlist