- Have Manager, Worker, and their infrastructure running locally
- Register and test a database connection
- Create an extraction job and read its status
Prerequisites
- Docker and Docker Compose
- Make
- Go (only for development — the toolchain version is declared in the repo’s
go.mod)
Set up and run
Set up environment files
.env files for each component from their .env.example templates.Generate the master encryption key
APP_ENC_KEY in both components/manager/.env and components/worker/.env. This key is required — the services will not start without it, and both must use the same value: the Worker needs it to decrypt connection credentials and verify message signatures.Run your first extraction
An extraction has three moves: register a connection, create a job, poll the job until it finishes.
1. Register a database connection
2. Create an extraction job
Tell Fetcher which fields to extract from which tables, per datasource:202 Accepted with a job ID. If an identical job was submitted within the last 5 minutes, Fetcher detects the duplicate and returns the existing job with 200 OK instead of creating a new one.
3. Poll the job status
pending → processing → completed (or failed). On completion, the Worker has encrypted the results into object storage and published a job.completed event.
When authentication is enabled (
PLUGIN_AUTH_ENABLED=true), requests also carry an Authorization: Bearer <token> header. The local quickstart runs with auth disabled.Next steps
Core concepts
Understand connections, schema discovery, jobs, filters, and results.
Configuration
The environment variables that shape a Fetcher deployment.

