Documentation Index
Fetch the complete documentation index at: https://docs.ascendgtm.net/llms.txt
Use this file to discover all available pages before exploring further.
When to use async jobs
Chat sessions wait for the agent to complete before returning. Async jobs are fire-and-forget — use them when:- The task takes longer than 30 seconds (e.g. enriching 500 contacts)
- You want a callback when the result is ready
- You’re triggering work from another system (n8n, Zapier, your own backend)
Submitting a job
Checking job status
Webhook payload
Whencallback_url is set, Hermes POSTs the completed job result to your URL:
"status": "error" with an error field. Implement idempotent webhook handlers — Hermes retries delivery up to 3 times with exponential backoff.
Job parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
agent_type | string | Yes | Agent config to run |
message | string | Yes | Job instruction |
callback_url | string | No | Webhook URL for completion notification |
context | object | No | Additional context passed to the agent |
max_iterations | integer | No | Override config default |
Job statuses
| Status | Meaning |
|---|---|
queued | Job accepted, not yet started |
running | Agent loop executing |
complete | Finished successfully |
max_iterations_reached | Stopped at iteration limit; partial result available |
error | Unrecoverable error; check error_code |
Listing jobs
cursor field. Jobs are retained for 30 days.
Integration examples
n8n webhook trigger
In n8n, add an HTTP Request node that POSTs to/jobs, captures job_id, then uses a Webhook node configured at callback_url to receive the result.
Polling from your backend
If you can’t receive webhooks, poll/jobs/{job_id} every 10–30 seconds until status is not queued or running. Most jobs complete within 2 minutes; set a polling timeout of 10 minutes.