---
title: "Search submissions across the organization"
method: GET
path: "/v1/submissions"
tags: ["submissions"]
---

# Search submissions across the organization

`GET /v1/submissions`

## Request

- Base URL: `https://postbag.dev`
- URL: `https://postbag.dev/v1/submissions`
- Auth: HTTP bearer

## Query parameters

- `cursor` string
- `limit` integer
- `stream` string: Filter to submissions routed through this stream id.
- `form` string: Filter to one form id.
- `status` string: Filter by status: received, quarantined or spam.
- `q` string: Free-text search over submission data.

## Response `200`

ok

- object
  - `data` Submission[], required
    - `id` string, required
    - `form_id` string, required
    - `status` 'received' | 'quarantined' | 'spam', required
    - `quarantine_reason` string, nullable, required: Machine-readable reason when status is quarantined: schema_violation, rate_limited, origin_rejected, turnstile_failed, or over_quota. Null for received or spam submissions.
    - `test` boolean, required
    - `data` object, required
    - `form_schema_version` integer, nullable, required
    - `spam` object, required
      - `score` number, required
      - `reasons` string[], required
    - `meta` object, required
    - `received_at` string, required
  - `next_cursor` string, nullable, required

---

[API](https://skmtc.dev/postbag/apis/postbag-api.md) · [All operations](https://skmtc.dev/postbag/apis/postbag-api/llms.txt) · [OpenAPI document](https://skmtc.dev/postbag/apis/postbag-api/revisions/3da976524695?raw)
