Heppu APIv2.heppu.ai/api

Jobs explained

Work assigned to a worker. Contacts go in, executions and outcomes come out.

A job is the unit of work. "Call every new lead within 5 minutes." "Answer the support line." It has one assigned worker, a trigger, a trust level and a list of contacts.

You create and configure jobs in the dashboard. The API is for feeding them and kicking them.

Do thisEndpoint
Push contacts into a running jobPOST /v2/jobs/{id}/contacts
Run the job once, right nowPOST /v2/jobs/{id}/execute
Same as above, older flavour, contact inlinePOST /v1/jobs/{id}/trigger

Get the job id from the URL of the job page in the dashboard.

Vocabulary

Contact. A person the job should reach. Phone or email, plus whatever metadata you want the worker to know. Status goes pendingin_progresscompleted | failed | paused.

Execution. One run of the job for one contact (or no contact, for inbound jobs). Status goes pendingrunningcompleted | failed | escalated | cancelled.

Outcome. What happened. qualified, unqualified, voicemail, booked, resolved, lost, escalated. Delivered to you via webhooks.

Job status. draft, running, paused, archived, limit_reached. Only running jobs process contacts.

Trust level. supervised (asks before acting), semi_autonomous, autonomous. Set in the dashboard, read from /v2/agents.

Dispatch

Contacts don't get called the millisecond you post them. A dispatcher runs every minute and hands out a bounded number of contacts per tick (30 by default) to respect the job's schedule and concurrency. Expect a short delay, that's normal.

On this page