---
title: "Build and verify durable signed task handoff packs with authenticated sender, recipient, context, declared permissions and checkpoint state."
method: POST
path: "/api/agent-to-agent-handoff-pack"
---

# Build and verify durable signed task handoff packs with authenticated sender, recipient, context, declared permissions and checkpoint state.

`POST /api/agent-to-agent-handoff-pack`

## Request

- Base URL: `https://weverlabs.com`
- URL: `https://weverlabs.com/api/agent-to-agent-handoff-pack`
- Auth: none declared

Build and verify durable signed task handoff packs with authenticated sender, recipient, context, declared permissions and checkpoint state. Fresh signed wallet proof is required even for paid calls. Handoff permissions require recipient enforcement. Stored evidence is not automatically verified. Scores are bounded evidence summaries, not global reputation.

## Request body

- union
  - object
    - `mode` 'build', required
    - `idempotency_key` string, required
    - `recipient_wallet` string, required
    - `task` object, required
      - `task_id` string, required
      - `objective` string, required
      - `context` string, required
    - `permissions` object, required
      - `allowed_actions` string[], required
      - `resources` string[], required
      - `expires_at` integer, required
      - `may_redelegate` unknown, required
    - `state` object, required
      - `status` 'pending' | 'in_progress' | 'blocked' | 'completed', required
      - `checkpoint` string, required
      - `evidence_sha256` string[], required
    - `usage` 'synthetic' | 'operational', required
    - `handoff_pack` string
  - object
    - `mode` 'verify', required
    - `idempotency_key` string
    - `recipient_wallet` string
    - `task` object
      - `task_id` string, required
      - `objective` string, required
      - `context` string, required
    - `permissions` object
      - `allowed_actions` string[], required
      - `resources` string[], required
      - `expires_at` integer, required
      - `may_redelegate` unknown, required
    - `state` object
      - `status` 'pending' | 'in_progress' | 'blocked' | 'completed', required
      - `checkpoint` string, required
      - `evidence_sha256` string[], required
    - `usage` 'synthetic' | 'operational'
    - `handoff_pack` string, required

## Response `200`

Real record-backed result

## Other responses

- `400`: Invalid request
- `401`: Wallet proof required
- `402`: Shared allowance exhausted; exact x402 required
- `404`: Owned record not found
- `409`: Conflict or billing pending
- `503`: Dependency unavailable

---

[API](https://skmtc.dev/weverlabs/apis/wever-labs-agent-api.md) · [All operations](https://skmtc.dev/weverlabs/apis/wever-labs-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/weverlabs/apis/wever-labs-agent-api/revisions/e4eed0d1f6e3?raw)
