Auto-Campaign API

One API call.
A whole hiring campaign live on Meta.

Built for teams hiring at scale — staffing agencies, gig platforms, job boards and recruiting software. Send one POST with a job and a budget. Erika writes the scripts, generates the videos and launches the Facebook & Instagram campaign. No creative team, no ad-ops, no dashboards.

One API key · async builds · signed webhooks

Who it's for

One endpoint for teams that hire by the thousand.

If you open hundreds of roles a month, you don't want a creative studio — you want an API. Erika turns every requisition into a running video campaign, automatically.

Staffing & recruiting agencies

Fire one build per client requisition. Pass your job ID, client and brand through as metadata and route every result back automatically.

Gig & on-demand platforms

Constant, high-volume demand for drivers, couriers and shift workers. Spin up a localized campaign the moment a market runs short on supply.

Recruiting software & ATS

Embed Erika behind your product. Your customers press “promote” and a full video campaign goes live — no ad accounts for them to manage.

Job boards & marketplaces

Add paid-social distribution to every listing through a single call, with creative and ad spend handled for you.

How it works

One POST does the work of an entire campaign team.

The build runs in the background — generating video takes a few minutes. You get a build ID instantly, then poll the status URL or wait for a signed webhook when it's done.

01

Send the job + budget

POST a job description (or an existing job ID) and a total budget. Location and language are inferred when you don't pass them.

02

Erika writes the campaign

It creates the role, writes the ad scripts, and generates reference images and vertical videos — AI avatars with local-language voiceovers.

03

It builds & launches on Meta

Erika assembles the campaign and pushes it live on Facebook & Instagram with native lead forms — all funded from your single budget.

04

You get the result back

Poll the status URL or receive a signed webhook on completion, with your own metadata echoed back so you can route it in your systems.

One endpoint

Start a build with a single call.

Authenticate with one API key in the X-Api-Key header. The call returns 202 immediately with a build ID and a status URL — production runs in the background.

Request
curl -X POST https://app.erikawork.com/api/v1/campaign-builds \
  -H "X-Api-Key: ek_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "jobDescription": "Hiring warehouse operators in Brno, CZ. Day shifts, no experience required, immediate start.",
    "budget": 6000,
    "budgetCurrency": "CREDITS",
    "duration": 7,
    "startDate": "2026-07-01",
    "metadata": {
      "externalJobId": "REQ-4821",
      "client": "Acme Staffing"
    },
    "callbackUrl": "https://your-app.com/hooks/erika",
    "idempotencyKey": "build-2026-06-25-001"
  }'
Response · 202 Accepted
{
  "success": true,
  "data": {
    "buildId": "b1f2e3d4-...",
    "status": "queued",
    "statusUrl": "https://app.erikawork.com/api/v1/campaign-builds/b1f2e3d4-...",
    "webhookSecret": "whsec_… (shown once, store it)"
  }
}
Built for scale

Idempotent, async and safe to fire all day.

Idempotent by design

Every build takes a unique idempotency key. Retry with the same key and you get the same build back — never a second campaign, never double spend.

One budget envelope

One number covers everything. Part funds the AI video production; the rest funds Meta ad spend. No separate caps to manage.

Metadata passthrough

Attach up to 20 key/value pairs — your job ID, client, brand. Erika stores them verbatim and returns them on the status endpoint and the completion webhook.

Signed webhooks

Give a callbackUrl and Erika posts a signed result on completion or failure. Verify the HMAC-SHA256 signature with the secret from the create response.

Status you can poll

Builds move queued → running → completed (or failed), with a step field showing the current phase the whole way through.

Structured errors

Stable codes — INSUFFICIENT_BUDGET, INSUFFICIENT_CREDITS, RATE_LIMITED — so your integration can react programmatically, not parse prose.

Auto-Campaign API

Wire hiring straight into your stack.

Create an API key with the Auto-Campaign permission and fire your first build today.