Docs

Agents

Authorize an AI agent to act as a verified human

Bind an agent to a verified person. Define what the agent can access. Broker credentials at runtime — without the agent ever holding a long-lived secret. Audit every action with cryptographic proof.

The architectural property

Long-lived credentials never leave Valyd's secure enclave. The agent receives only short-lived, scoped session tokens that expire when the task ends.

Overview

ResourceWhat it represents
AgentPolicyA reusable template defining what any agent under it can do.
AgentAn instance bound to a specific verified person and one policy.
ApprovalA human-in-the-loop checkpoint requiring fresh biometric authorization.

Agent policies

const policy = await valyd.agents.policies.create({
  name: "sales_rep_v1",
  allowed_systems: ["salesforce.com", "doximity.com"],
  token: { lifetime_seconds: 3600, rate_limit_per_hour: 100 },
  expires_in_days: 90
});

Credential brokering

Instead of giving the agent a password to Salesforce, the agent calls Valyd at the moment it needs access — and Valyd injects a short-lived token directly into the destination request.

const session = await valyd.agents.requestSession({
  agent: "agt_4f8a3b...",
  system: "salesforce.com",
  intent: "read.opportunities"
});

await fetch(url, { headers: { Authorization: `Bearer ${session.token}` } });

Human approvals (HITL)

Some actions are too high-stakes to authorize at policy time. Approval requires a fresh face scan — not just a tap — so the proof is binding.

const approval = await valyd.agents.approvals.create({
  agent: "agt_4f8a3b...",
  approver: "person_8YQz...",
  action: "order.submit",
  description: "Submit order #4892 for $84,200"
});

const result = await valyd.agents.approvals.waitFor(approval.id);

MCP integration

If your agent runs in Claude Code, Cursor, the OpenAI Agents SDK, LangChain, or any MCP-compatible host, Valyd is available as a hosted MCP server.

{
  "mcpServers": {
    "valyd": {
      "url": "https://api.valyd.id/v1/mcp",
      "headers": {
        "Authorization": "Bearer sk_test_4f8a...",
        "X-Valyd-Agent-Id": "agt_4f8a3b..."
      }
    }
  }
}

Quick reference

POST/v1/agents/policies
POST/v1/agents
POST/v1/agents/sessions
POST/v1/agents/approvals
DEL/v1/agents/:id

Request API access →