For Your Team

Deepline for Agencies

Lead-gen and outbound agencies run the same enrichment workflows across 10, 20, 50 clients. But every client has different provider contracts, different billing, different ICP criteria. Managing this in Clay means tangled billing, shared API keys, and margin-eating credit burns.

The multi-client problem

Agencies run the same enrichment workflows across 10, 20, 50 clients. Each client has different provider contracts, different billing, different ICP criteria. Managing this in Clay means tangled billing, shared API keys, and margin-eating credit burns.

How Deepline handles multi-client operations

Per-client workspaces

Each client gets their own workspace with isolated:

  • Provider API keys (their Apollo, their Hunter, their sequencer)
  • Postgres database (their enriched records, exportable)
  • Billing (provider costs pass through to their account)

Reproducible workflows

Every client campaign is a shell command. Check it into git, change configurations per client, and deploy the same workflow with one Claude Code prompt.

Tell Claude Code
Set up a new workspace for Client X. Paste their Apollo API key. Build a prospect list: 100 CEOs at US SaaS companies with 11-50 employees. Enrich via waterfall. Push to their Instantly campaign.

Claude Code creates the workspace and deploys:

deepline workspace create --name "client-x"
deepline workspace switch client-x
deepline enrich --input target-companies.csv --output prospects.csv \
  --with-waterfall email \
  --with 'apollo=apollo_people_match:...'
deepline sequence --provider instantly --campaign q2-outbound --input prospects.csv

Copy workflows across clients

Copy the same workflow to a new client with one command. Just switch workspaces and run — configurations and API keys are isolated.

Tell Claude Code
Run the same CEO prospecting workflow for Client Y. Use their API keys.
deepline workspace switch client-y
deepline enrich --input target-companies.csv --output prospects.csv \
  --with-waterfall email \
  --with 'apollo=apollo_people_match:...'

Monitor all clients from one view

See run history, credits used, and workflow status across all client workspaces from a single dashboard.

deepline workspace list --with-usage
# → client-x: 2,340 credits used, 3 active workflows
# → client-y: 1,120 credits used, 1 active workflow
# → client-z: 890 credits used, 2 active workflows

Client isolation model

WhatHow it works
API keysStored in client workspace. Never shared across clients.
DataDedicated Postgres per client. Export, query, or wire a dashboard.
BillingBYOK: client pays providers directly. Managed: credits billed to client workspace.
WorkflowsShell commands. Save in git. Hand off when engagement ends.

Who uses this

RoleWhat they do with Deepline
Agency founderManage enrichment costs across multiple clients
Campaign operatorSpin up and tear down client campaigns weekly
White-label providerKeep client data and billing fully isolated

Cost structure

BYOK mode: Client pays providers directly. You pay $0 platform fee.

Managed credits: $0.10/credit. Bill clients for credits used plus your margin.


Get started

curl -s "https://code.deepline.com/api/v2/cli/install" | bash
deepline auth register
deepline workspace create --name "Client X"

Common questions

Frequently Asked Questions

1Can clients see each other's data?+

No. Workspaces are fully isolated. No shared API keys, no shared databases.

2Can I white-label this?+

Yes. Deepline does not appear in client-facing outputs. Shell commands look like your tooling.

3How do I hand off to a client?+

Export the workflow as a shell script. Client can run it themselves or you can deploy it as a scheduled workflow.

Try this yourself

Install the CLI and run this use case in under 5 minutes.