> ## 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.

# Governance verdict on AI-generated output

> Send the output of your LLM call for policy evaluation. Your API keys never leave your infrastructure — DataVibe only sees the text. Returns a verdict: 'safe', 'blocked', or 'review_required'.



## OpenAPI

````yaml /openapi.json post /v1/check
openapi: 3.1.0
info:
  title: DataVibe Public Gate API
  version: 1.0.0
  description: >-
    Customer API for deterministic pre-send governance of AI-generated outbound.
    Internal operator, admin, and archived product routes are intentionally
    excluded.
  contact:
    name: DataVibe support
    email: hi@datavibe.cc
    url: https://datavibe.cc/contact
servers:
  - url: https://api.datavibe.cc
    description: Production
security: []
tags:
  - name: Governance Check
  - name: Outbound Gate
paths:
  /v1/check:
    post:
      tags:
        - Governance Check
      summary: Governance verdict on AI-generated output
      description: >-
        Send the output of your LLM call for policy evaluation. Your API keys
        never leave your infrastructure — DataVibe only sees the text. Returns a
        verdict: 'safe', 'blocked', or 'review_required'.
      operationId: check_output_v1_check_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CheckRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CheckVerdict'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
        - APIKeyHeader: []
components:
  schemas:
    CheckRequest:
      description: >-
        Governance check on AI-generated output.


        Send ONLY the text produced by your LLM. Do NOT include API keys,

        prompts, or model credentials — those must stay in your own
        infrastructure.
      properties:
        content:
          description: The AI-generated text to evaluate.
          maxLength: 100000
          minLength: 1
          title: Content
          type: string
        content_type:
          default: other
          description: Type of content — governs which rules apply.
          enum:
            - email
            - message
            - document
            - code
            - other
          title: Content Type
          type: string
        context:
          anyOf:
            - additionalProperties:
                anyOf:
                  - type: string
                  - type: integer
                  - type: number
                  - type: boolean
              type: object
            - type: 'null'
          description: >-
            Optional key/value metadata attached to this check for audit
            purposes. Do NOT put API keys or secrets here.
          title: Context
        idempotency_key:
          anyOf:
            - maxLength: 255
              type: string
            - type: 'null'
          description: Re-submitting the same key within 24h returns the original verdict.
          title: Idempotency Key
        source_model:
          anyOf:
            - maxLength: 120
              type: string
            - type: 'null'
          description: >-
            The model NAME that generated this content, e.g. 'gpt-4o'. Used for
            observability only — never treated as a credential.
          title: Source Model
      required:
        - content
      title: CheckRequest
      type: object
    CheckVerdict:
      properties:
        action_id:
          title: Action Id
          type: string
        latency_ms:
          title: Latency Ms
          type: integer
        review_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Review Url
        verdict:
          enum:
            - safe
            - blocked
            - review_required
          title: Verdict
          type: string
        violations:
          items:
            $ref: '#/components/schemas/ViolationDetail'
          title: Violations
          type: array
      required:
        - verdict
        - action_id
        - violations
        - latency_ms
      title: CheckVerdict
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    ViolationDetail:
      properties:
        detail:
          title: Detail
          type: string
        matched_substring:
          anyOf:
            - type: string
            - type: 'null'
          title: Matched Substring
        rule:
          title: Rule
          type: string
        severity:
          enum:
            - BLOCK
            - WARN
          title: Severity
          type: string
      required:
        - rule
        - severity
        - detail
      title: ViolationDetail
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
  securitySchemes:
    APIKeyHeader:
      in: header
      name: Authorization
      type: apiKey

````