deapi-setup

A command for choosing how a deAPI job delivers its result: polling, webhooks, or WebSockets. Polling repeatedly checks the job status; webhooks notify a server; WebSockets provide live updates.

In plain words
What is it for?
Use it to configure deAPI result handling for command-line tools, serverless or backend services, and real-time web interfaces.
Why use it?
It helps match result delivery to the application, so a local script, backend, or real-time interface can receive completed jobs appropriately.

Command

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/deapi-ai/claude-code-skills/deapi-setup
Clone the repo
git clone --depth 1 https://github.com/deapi-ai/claude-code-skills
Per session 23 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 935 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00023 $0.00935
Opus 5 $0.00012 $0.00467
Sonnet 5 $0.00005 $0.00187
Haiku 4.5 $0.00002 $0.00093

Measured 2d ago against content hash 923459ded2db, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

deapi-setup scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -s "https://api.deapi.ai/api/v1/client/request-status/{request_id}" \
deapi/commands/deapi-setup.md · 151 lines

How it starts

The opening of the file, as written. The whole thing — 151 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Result Delivery Setup

Configure how your application receives job results.

Step 1: Determine context

Ask user about their use case:

Context Recommended method
CLI tool, local script Polling (default)
Backend server, serverless Webhooks
Real-time UI, SPA WebSockets

Step 2: Configure based on method

Polling (default)

No configuration needed. Use /request-status/{id} endpoint. Already built into all deAPI commands.

curl -s "https://api.deapi.ai/api/v1/client/request-status/{request_id}" \
  -H "Authorization: Bearer $DEAPI_API_KEY"

Poll every 10 seconds until status = "done".

Webhooks

Add webhook_url to any request:

{
  "prompt": "...",
  "webhook_url": "https://your-server.com/webhooks/deapi"
}

Events received:

  • job.completed - contains result_url
  • job.failed - contains error_code

Security: Verify signature in X-DeAPI-Signature header (HMAC-SHA256).

Full docs: https://docs.deapi.ai/execution-modes-and-integrations/webhooks

WebSockets

Connect via Pusher protocol for real-time updates:

Setting Value
Host soketi.deapi.ai:443
Channel private-client.{client_id}
Event request.status.updated

Includes live preview images during generation.

Full docs: https://docs.deapi.ai/execution-modes-and-integrations/websockets

Step 3: Generate boilerplate

Based on user's choice, generate starter code for their stack.

Webhook handler (Node.js/Express):

app.post('/webhooks/deapi', (req, res) => {
  const signature = req.headers['x-deapi-signature'];
  // Verify signature with your webhook secret

  const { event, request_id, result_url, error } = req.body;

  if (event === 'job.completed') {
    // Process result from result_url
  } else if (event === 'job.failed') {
    // Handle error
  }

  res.status(200).send('OK');
});

Webhook handler (Python/FastAPI):

from fastapi import FastAPI, Request, Header

app = FastAPI()

@app.post("/webhooks/deapi")
async def deapi_webhook(
    request: Request,
    x_deapi_signature: str = Header(None)
):
    # Verify signature with your webhook secret
    body = await request.json()

    if body["event"] == "job.completed":
        result_url = body["result_url"]
        # Process result
    elif body["event"] == "job.failed":
        error = body["error"]
        # Handle error

    return {"status": "ok"}

Read the full file on GitHub · 151 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 151 lines · 23 tokens per session scan A 923459ded2db

Subscribe to this mod's changes

deapi-setup is a command published in the GitHub repository deapi-ai/claude-code-skills (21 stars, last pushed 2mo ago), licensed MIT. It adds 23 tokens to every session and 935 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.