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

# Accept terms

> Records that the authenticated user accepts the given Terms & Conditions version. The `document_id` must be the currently active (published) version, else the request is rejected so a stale client cannot accept superseded terms. Idempotent: accepting twice is a no-op. Captures IP and user-agent for the audit ledger.

Records the authenticated user's acceptance of the active Terms & Conditions version. Session auth only.


## OpenAPI

````yaml api-reference/openapi.json POST /api/v1/me/terms/accept
openapi: 3.1.0
info:
  title: Omnifence API
  description: >-
    Content moderation API. Clients submit images or videos which pass through a
    classification pipeline and receive a pass/reject decision.
  version: 1.0.0
  contact:
    email: support@omnifence.ai
servers:
  - url: http://localhost:3051
    description: Local development
security:
  - bearerAuth: []
tags:
  - name: System
    description: Health and diagnostics
  - name: Moderation
    description: Submit moderation jobs
  - name: Jobs
    description: Query job status and progress
  - name: Usage
    description: Billing and usage data
  - name: Webhooks
    description: Webhook registration
  - name: Account
    description: Authenticated client account settings
  - name: Billing
    description: Customer-facing billing balance and ledger
  - name: Admin
    description: Platform administration (requires admin:config scope)
paths:
  /api/v1/me/terms/accept:
    post:
      tags:
        - Account
      summary: Record acceptance of the active Terms & Conditions
      description: >-
        Records that the authenticated user accepts the given Terms & Conditions
        version. The `document_id` must be the currently active (published)
        version, else the request is rejected so a stale client cannot accept
        superseded terms. Idempotent: accepting twice is a no-op. Captures IP
        and user-agent for the audit ledger.
      operationId: acceptTerms
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              properties:
                document_id:
                  type: string
                  minLength: 1
              required:
                - document_id
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                properties:
                  accepted:
                    type: boolean
                  version:
                    type: integer
                  accepted_at:
                    type: string
                    format: date-time
                required:
                  - accepted
                  - version
                  - accepted_at
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key from the Omnifence dashboard

````