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

# Create reporter



## OpenAPI

````yaml /openapi.json post /v1/reporters
openapi: 3.1.0
info:
  title: clipping API
  version: 1.0.0
  description: >-
    The clipping API — one API under /v1, two credentials:


    - **API key** (`Authorization: Bearer ck_live_…`): for integrators. Each
    call draws a flat platform fee from the key's account balance, plus the real
    cost of external calls (pass-through). No balance → HTTP 402. Create a key
    at https://clipping.cc/account.

    - **Session JWT** (`Authorization: Bearer <jwt>` from /v1/auth/login): used
    by the web app. No platform fee (only external-call pass-through).


    Either credential hits the same endpoints. Routes marked *admin only*
    require an admin role.
servers:
  - url: https://api.clipping.cc
    description: production
security:
  - ApiKeyAuth: []
  - BearerAuth: []
tags:
  - name: auth
    description: session auth, profile and API key management
  - name: accounts
    description: balance, ledger, deposits and withdrawals
  - name: items
    description: monitored sources (channels, videos, etc.)
  - name: collections
    description: collections of monitored sources
  - name: videos
    description: catalogued videos
  - name: tools
    description: tool catalog, transcripts and documents
  - name: search
    description: semantic search and tag cloud over your library
  - name: discover
    description: public catalog (collections, reporters, users)
  - name: reporters
    description: 'reporters: CRUD, clone, collections, subscriptions, run'
  - name: workflows
    description: a reporter's workflows and their steps
  - name: schedules
    description: a reporter's schedules and runs
  - name: executions
    description: workflow execution tracking
  - name: events
    description: the user's event feed
  - name: logs
    description: 'external call audit: OpenAI, YouTube, transcriber'
  - name: realtime
    description: WebSocket hub for live notifications
  - name: admin
    description: 'admin only: other users'' accounts and economy stats'
  - name: treasury
    description: 'admin only: platform cash desk'
paths:
  /v1/reporters:
    post:
      tags:
        - reporters
      summary: Create reporter
      operationId: createReporter
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReporterCreate'
      responses:
        '201':
          description: Created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReporterEnvelope'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    ReporterCreate:
      type: object
      required:
        - name
      properties:
        name:
          type: string
        description:
          type: string
        visibility:
          type: string
          enum:
            - private
            - public
        language:
          type: string
          enum:
            - pt
            - en
        expose_prompts:
          type: boolean
        expose_tools:
          type: boolean
        expose_workflows:
          type: boolean
        expose_collections:
          type: boolean
        expose_subscriptions:
          type: boolean
    ReporterEnvelope:
      type: object
      properties:
        reporter:
          $ref: '#/components/schemas/Reporter'
    Reporter:
      type: object
      additionalProperties: true
      properties:
        reporter_id:
          type: string
        name:
          type: string
        visibility:
          type: string
          enum:
            - private
            - public
    Error:
      type: object
      properties:
        erro:
          type: string
      required:
        - erro
  responses:
    BadRequest:
      description: Invalid request.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: ck_live_…
      description: 'API key: Authorization: Bearer ck_live_…'
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Session JWT from /v1/auth/login: Authorization: Bearer <jwt>'

````