> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pnbr.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Submissions

> The generic capture door: pb.submissions.

`pb.submissions` is the generic capture entry point. Send content or an event and
Penumbra routes it: a `url` becomes a document, a shape paired with a source
becomes an extraction, and anything else stages a delta. One door, three
destinations.

## create

```ts theme={null}
const result = await pb.submissions.create({
  content: "Acme signed a 12-month renewal after a procurement review.",
});

console.log(result.route, result.status); // "delta", "applied"
```

## How it routes

| Payload                                         | Route        | Result                                                            |
| ----------------------------------------------- | ------------ | ----------------------------------------------------------------- |
| `url` (or `as_document: true`)                  | `document`   | Ingests the URL as a document.                                    |
| `shape` + a `source_file_id` or `collection_id` | `extraction` | Returns a `next_action` pointing at `POST /v1/extractions/shape`. |
| anything else (default)                         | `delta`      | Stages a governed delta; commits unless `apply: false`.           |

Pass an explicit `route` (`"delta"`, `"document"`, or `"extraction"`) to override
the inference.

## Methods

| Method                         | Description                                                      |
| ------------------------------ | ---------------------------------------------------------------- |
| `pb.submissions.create(input)` | Submit content or an event for capture; routed by payload shape. |

<Note>
  Over REST this is `POST /v1/submissions`. The delta route commits by default;
  pass `apply: false` to stage and review first.
</Note>

## Related

<Columns cols={2}>
  <Card title="Capture and extract" icon="pen-to-square" href="/sdk/capture-extract">
    Direct, typed writes with `pb.capture` and `pb.extract`.
  </Card>

  <Card title="Documents" icon="files" href="/sdk/documents">
    Ingest source files directly.
  </Card>
</Columns>
