Agent Hooks
Send signed SeeLLM jobs to your agents, work queues, and automation stack.
Agent Hooks deliver SeeLLM jobs to the tools where work already happens: internal agents, queues, workflow engines, Slack bridges, Linear, GitHub, or a custom endpoint.
Use webhooks as the delivery channel, but treat the product primitive as a SeeLLM job. Your endpoint receives the problem, evidence, recommended action, dashboard link, and action URLs.
See Jobs API for approving actions and attaching patch or edge-page implementations.
Create a Hook
curl -X POST https://api.seellm.link/api/agent-hooks \
-H "Authorization: Bearer sk_live_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"name": "Agent work queue",
"url": "https://your-company.example/hooks/seellm",
"events": ["job.created"]
}'
The response includes a secret once. Store it in your secret manager. SeeLLM does not return it again on list requests.
Test Delivery
curl -X POST https://api.seellm.link/api/agent-hooks/ah_your_hook_id/test \
-H "Authorization: Bearer sk_live_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"domain":"example.com"}'
SeeLLM sends a job.created test payload to your endpoint.
Verify Signatures
Every delivery includes:
seellm-event-id: evt_...
seellm-event-type: job.created
seellm-signature: t=1770000000,v1=<hmac_sha256>
Compute the HMAC SHA-256 digest over:
<timestamp>.<raw_request_body>
Use your hook secret as the HMAC key. Reject requests with old timestamps or mismatched signatures.
Payload Shape
{
"id": "evt_...",
"event": "job.created",
"created_at": "2026-05-19T00:00:00.000Z",
"org_id": "org_...",
"job": {
"id": "job_...",
"type": "ai_attention_gap",
"domain": "example.com",
"priority": "high",
"status": "new",
"headline": "AI attention is not turning into traffic",
"summary": "SeeLLM detected AI crawler activity, but AI tool visits are not following.",
"evidence": [
{ "label": "AI bot visits", "value": 3472, "detail": "Last 7 days" },
{ "label": "AI tool visits", "value": 5, "detail": "Last 7 days" }
],
"recommended_action": "Review the page-level recommendation and approve the fix.",
"links": {
"dashboard": "https://app.seellm.link/overview/",
"api": "https://api.seellm.link/api/agent-hooks"
},
"created_at": "2026-05-19T00:00:00.000Z"
},
"actions": [
{
"id": "approve_fix",
"label": "Approve recommended fix",
"method": "POST",
"url": "https://api.seellm.link/api/jobs/job_.../actions"
}
]
}
Events
The first supported event is job.created. The event vocabulary is intentionally broader so integrations can adopt one contract as SeeLLM adds more automation:
job.createdjob.priority_changedjob.approvedjob.dismissedjob.resolvedjob.evidence_updated