Skip to content

01Agents · Who is acting?

A Gasket agent is something your application calls: instructions, a model, tools, and the one policy every tool call answers to. It is also an identity. Requests for an unknown, paused or wrong-environment agent stop before anything runs. Change the controls below to see what the API returns.
SA

support-agent

agt_8kq2Lw0aX3

active

Agent status

Agent environment

API key used

Change anything. The response on the right is what the API returns, in the order it checks: environment first, then status, then policy.

POST /v1/actions → response201
{
  "id": "act_…",
  "object": "action",
  "agent_id": "agt_8kq2Lw0aX3",
  "environment": "test",
  "status": "authorized",
  "decision": {
    "effect": "allow",
    "reason": "Allow stripe.refund.create"
  }
}

What an agent is

  1. 01Instructions and a modelThe system prompt you write, run on Claude Haiku 5.5. Your server sends a message to POST /v1/agents/:id/runs and gets the reply.
  2. 02ToolsHTTPS endpoints you own, like lookup_order or refund_order. The model calls them by name; Gasket checks each call against the policy and signs the request it sends you.
  3. 03A stable idEach agent has an id like agt_…. Runs, actions, approvals and events are attributed to it.
  4. 04An environmentTest or live, fixed at creation. A test key can only reach test agents and a live key only live agents, so a test script can never act as production.
  5. 05A statusActive agents can send actions. Pause one and its next request gets 409 agent_not_active; resume it and it works again. Archive one to retire it.
  6. 06One policyThe agent's policy decides every action it asks for. Swap it and the next request uses the new rules. No policy means every request is denied.
  7. 07A historyThe agent's page lists its actions and events. Last activity updates whenever it sends a request.

From the API

Agents are configured in the dashboard. Your server runs one with a single request and gets the reply, the steps it took and what it cost.

Agents in the docs →
curl https://usegasket.xyz/api/v1/agents/agt_8kq2Lw0aX3/runs \
  -H "Authorization: Bearer $GASKET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message": "Where is order 4821?"}'