Skip to main content

Use Case

Run batch data enrichment and automated processing pipelines. Workflows are ideal for processing many records through multi-step pipelines (e.g., validate emails, enrich companies, export to CSV) without manual intervention.

Core Concepts

The Workflows API models pipelines as directed acyclic graphs (DAGs):

Execution Flow

  1. List workflows — Get available workflows in your organization
  2. Run workflow — Execute with input data; receive a job_id
  3. Poll live status — Monitor progress until completed, failed, cancelled, or timeout
  4. Download results — Get signed URLs for result files (CSV, NDJSON)
For workflows that start with a webhook block, see Incoming Webhooks. For recurring, cron-based execution instead of manual runs, see Workflow Schedules.

Quick Start

Don’t want to write code? Use Sixtyfour’s Workflow Builder to create and manage your own workflows.

Uploading an input file

Workflows that start with a read_csv block read their rows from a file you upload first.
Enriching a list of people or companies? Use Bulk Intelligence — one call with file and config, no workflow or handle needed.
Send the file as multipart/form-data with a single file part. Accepts .csv, .json, .jsonl, and .ndjson.
cURL
The response returns a handle_id:
Pass handle_id as specs_override.resource_handle_id when you call /workflows/run:
cURL

NDJSON input & output

Inputs can be NDJSON or JSONL as well as CSV — upload them the same way (see Uploading an input file). For NDJSON output, add result_formats=ndjson when running. CSV is always produced regardless; NDJSON is added alongside it. Use NDJSON when you need typed values — numbers, booleans, and nested objects survive instead of being flattened to strings.
cURL
The format query parameter selects which output to link — csv (default), json, or ndjson. It defaults to csv, so pass format=ndjson to get the NDJSON links.