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

# DataVibe documentation

> Add a deterministic pre-send safety gate between AI-generated copy and customer delivery.

# Govern AI output before it reaches customers

DataVibe evaluates generated outbound after the model writes it and before your
sequencer, CRM, support tool, or inbox sends it.

```text theme={null}
LLM / Clay drafts copy → DataVibe gate → Proceed · Blocked · Review → Sequencer / CRM / inbox
```

<Note>
  DataVibe is not a prompt guardrail and does not sit inside your LLM call. Your
  workflow sends the completed output to DataVibe before dispatch.
</Note>

<Columns cols={2}>
  <Card title="Run the quickstart" icon="rocket" href="/getting-started/quickstart">
    Create a persisted gate submission and handle every outcome safely.
  </Card>

  <Card title="Explore the API" icon="square-terminal" href="/api-reference/overview">
    Review authentication, endpoints, errors, quotas, and retries.
  </Card>

  <Card title="Use an SDK" icon="code-2" href="/sdks/typescript">
    Integrate with TypeScript or Python.
  </Card>

  <Card title="Connect Clay" icon="plug" href="/integrations/clay">
    Cross-check outbound claims against structured source evidence.
  </Card>
</Columns>

## What the gate returns

* `BLOCKED`: a hard policy violation; never send.
* `QUEUED`: human review is required; hold the message.
* `APPROVED` or `SENT`: continue according to who owns dispatch.
* `FAILED` or `REJECTED`: stop and follow the failure or rejection workflow.

Every persisted submission is bound to an immutable policy snapshot and receives
an `action_id` for audit and status polling.

<Tip>
  Use [`POST /v1/gate/outbound`](/api-reference/overview#production-gate) for
  production outbound. Use `POST /v1/check` only for a stateless preview.
</Tip>
