---
title: "The packet"
url: https://services.dev/docs/people/pool/packet
captured: [legal-patent.txt, task-packet.txt]
codes: [ineligible, not_cleared]
---
# The packet

URL: https://services.dev/docs/people/pool/packet

> What a member works from once they've claimed and cleared a Task, and what they attest to. It opens to that member alone, and its hash is what their attestation binds.

## Its fields

| Field | Type | In the captured packet |
|---|---|---|
| `object` | string | `packet` |
| `task` | string | `tsk_7Hq2` |
| `job` | string | `job_7Hq2` |
| `service` | string | `demand-letter` |
| `step` | string | `sign` |
| `act` | string | `sign` |
| `summary` | string | `Demand Letter: A demand letter, sent certified. Done so far: …` |
| `input` | object | `client`, `recipient`, `claim`, `amount`, `client_region`, `recipient_region`, `evidence` |
| `sheet` | object | `parties`, `kind`, `amount` |
| `artifacts` | list | 1 item, each `path`, `sha256`, `versions`, `url` |
| `reviews` | list | 1 item, each `step`, `verdict`, `report` |
| `answers` | list | none |
| `checklist` | list | 2 items: `every claim is supported`, `no threat the client cannot carry out` |
| `stamps` | boolean | `true` |
| `record` | string | `collections · signal \| recipient_elsewhere · signal \| consent…` |
| `signals` | list | 2 items: `collections`, `recipient_elsewhere` |
| `clock` | object | `due`, `hold_until`, `extended` |
| `hash` | string | `sha256:c5272424af7d0a91fbf80692b1b63a4ed83917f1766ea12b5db184…` |
| `simulated` | boolean | `true` |

## Before it opens

```txt
→ GET /reviews/tsk_7Hq2/packet   # before it is claimed
```

```txt title="magic values: client.email = signs@example.test, member = mbr_eligible"
← 403 not_cleared: tsk_7Hq2's packet opens only to the signer who claimed and cleared it.
```

```txt
→ POST /reviews/tsk_7Hq2/claim
```

```txt title="magic values: client.email = signs@example.test, member = mbr_eligible"
← tsk_7Hq2 · claimed · attorney · sign · US-NY · $75.00 · signals collections, recipient_elsewhere · 30 min · $150.00 an hour · due 2026-10-27 14:02
→ POST /reviews/tsk_7Hq2/clear {"attest":[]}
← 403 ineligible · clearance: Attest each statement before the packet opens: I checked conflicts across my full book, including my firm.
→ POST /reviews/tsk_7Hq2/clear {"attest":["I checked conflicts across my full book, including my firm"]}
← tsk_7Hq2 · cleared · attorney · sign · US-NY · $75.00 · signals collections, recipient_elsewhere · 30 min · $150.00 an hour · due 2026-10-27 14:02
```

## Once it's cleared

```txt
→ GET /reviews/tsk_7Hq2/packet
```

```json title="200 · magic values: client.email = signs@example.test, member = mbr_eligible"
{
  "object": "packet",
  "task": "tsk_7Hq2",
  "job": "job_7Hq2",
  "service": "demand-letter",
  "step": "sign",
  "act": "sign",
  "summary": "Demand Letter: A demand letter, sent certified. Done so far: consent, draft, attack. Yours: sign in US-NY.",
  "input": {
    "client": {
      "name": "Ada Lovelace"
    },
    "recipient": {
      "name": "Initech",
      "org": "Initech Inc"
    },
    "claim": "unpaid debt for invoice 1042",
    "amount": 4200,
    "client_region": "US-NY",
    "recipient_region": "US-NJ",
    "evidence": [
      {
        "url": "data:text/plain,The%20invoice-1042.pdf.",
        "name": "invoice-1042.pdf"
      }
    ]
  },
  "sheet": {
    "parties": [
      {
        "as": "client",
        "name": "Ada Lovelace"
      },
      {
        "as": "recipient",
        "name": "Initech",
        "org": "Initech Inc"
      }
    ],
    "kind": "Demand Letter",
    "amount": 4200
  },
  "artifacts": [
    {
      "path": "draft/letter.pdf",
      "sha256": "sha256:a20379a9c4205f2e0d3910a8428aebcd105af1ac2238073423e753dacef84f45",
      "versions": 1,
      "url": "http://localhost:8787/matters/job_7Hq2/files/a20379a9c4205f2e0d3910a8428aebcd105af1ac2238073423e753dacef84f45"
    }
  ],
  "reviews": [
    {
      "step": "attack",
      "verdict": "pass",
      "report": {
        "step": "attack",
        "of": "draft",
        "kind": "adversarial",
        "round": 0,
        "lenses": [
          "accuracy",
          "tone",
          "collection rules"
        ],
        "findings": [],
        "signals": {
          "accuracy": false,
          "tone": false,
          "collection rules": false
        },
        "verdict": "pass"
      }
    }
  ],
  "answers": [],
  "checklist": [
    "every claim is supported",
    "no threat the client cannot carry out"
  ],
  "stamps": true,
  "record": "collections · signal | recipient_elsewhere · signal | consent · client · consent | draft · ai | attack · ai · adversarial · 3 lenses · pass",
  "signals": [
    "collections",
    "recipient_elsewhere"
  ],
  "clock": {
    "due": "2026-10-27T14:02:11.000Z",
    "hold_until": "2026-10-26T14:02:11.000Z",
    "extended": false
  },
  "hash": "sha256:c5272424af7d0a91fbf80692b1b63a4ed83917f1766ea12b5db18464bcb53079",
  "simulated": true
}
```

## A document in two versions

```txt
→ GET /reviews/tsk_7Hq2/packet
```

```json title="200 · magic values: metadata.sandbox.review = flag_once, member = mbr_eligible"
{
  "summary": "Provisional Patent Application: A provisional application, drafted, examined, filed. Done so far: consent, questions, draft, examine. Yours: sign.",
  "input": {
    "invention": [
      {
        "url": "data:text/plain,The%20hinge.pdf.",
        "name": "hinge.pdf"
      }
    ]
  },
  "artifacts": [
    {
      "path": "draft/application.pdf",
      "sha256": "sha256:417c317be6a999b5b53d6deb8483d0b36ba6b3ca0211b4555934a6f90d2a5221",
      "versions": 2,
      "url": "http://localhost:8787/matters/job_7Hq2/files/417c317be6a999b5b53d6deb8483d0b36ba6b3ca0211b4555934a6f90d2a5221",
      "diff": [
        "+ ",
        "+ Revised for:",
        "+ - examine: Simulated: eligibility found a problem in draft."
      ]
    },
    {
      "path": "draft/exam.pdf",
      "sha256": "sha256:b72f9fb762d07755a213a7a426b2578754cc62b94f0ee0603a2a600d0a737d28",
      "versions": 2,
      "url": "http://localhost:8787/matters/job_7Hq2/files/b72f9fb762d07755a213a7a426b2578754cc62b94f0ee0603a2a600d0a737d28",
      "diff": [
        "+ ",
        "+ Revised for:",
        "+ - examine: Simulated: eligibility found a problem in draft."
      ]
    }
  ],
  "answers": [
    {
      "step": "questions",
      "answer": "It folds flat, and locks open with one hand."
    }
  ],
  "reviews": [
    "examine · flagged",
    "examine · pass"
  ],
  "record": "consent · applicant · consent | questions · applicant · answer | draft · ai | examine · ai · adversarial · 4 lenses · flagged | draft · ai · redo | examine · ai · adversarial · 4 lenses · pass",
  "checklist": [
    "the claims read on the disclosure",
    "every inventor is named",
    "a reasonable inquiry was made"
  ],
  "stamps": true,
  "hash": "sha256:b7d7371699d7a9159fef85465d677aa2acf3095b3fcd695845cca4d39ea1cd78"
}
```

*Screen: the delivery portal at `/reviews/tsk_7Hq2/packet`, job_7Hq2 · waiting at sign · with the member (captured/screens/legal-delivery-packet.html).*

| See also | |
|---|---|
| [`packet`](https://services.dev/docs/reference/objects.md#packet) | every field, as served |
| [`attestation`](https://services.dev/docs/reference/objects.md#attestation) | what signing it freezes |

## In a work register

| In a [work register](https://services.dev/docs/people/pool/register.md) | |
|---|---|
| In place of the packet | the brief the AI prepared, and the site: its address, the window and the `evidence` the step asks for |
| Opens | on the claim, to the member who holds it |
| The completion artifact | the hash of the evidence, not of a packet |

## Refusals

| Code | Category | HTTP | Why |
|---|---|---|---|
| [`not_cleared`](https://services.dev/docs/reference/errors.md#not_cleared) | blocked | 403 | The packet opens only to the member who claimed the Task and cleared it. |
| [`ineligible`](https://services.dev/docs/reference/errors.md#ineligible) | blocked | 403 | The member can't take this Task: the answer names the first eligibility predicate they fail, and its cure. |

---

- Up: [Pool(): your marketplace](https://services.dev/docs/people/pool.md)
- Previous: [What a member sees, and when](https://services.dev/docs/people/pool/disclosure.md)
- Next: [When no one claims](https://services.dev/docs/people/pool/fill.md)
