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.created
  • job.priority_changed
  • job.approved
  • job.dismissed
  • job.resolved
  • job.evidence_updated