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

# Send Logs

> Ingest log records in OTLP HTTP/JSON format. This is the primary ingestion
endpoint for LogClaw Cloud. Logs are processed through the pipeline:
OTel Collector → Kafka → Bridge → OpenSearch.

The auth proxy automatically injects your project's `tenant_id` into each
log record based on your API key.




## OpenAPI

````yaml POST /v1/logs
openapi: 3.1.0
info:
  title: LogClaw API
  description: >
    LogClaw Cloud API for log ingestion, API key management, incident
    monitoring,

    and infrastructure health. All endpoints are authenticated via the

    `x-logclaw-api-key` header.


    Generate an API key from your project dashboard at

    [console.logclaw.ai](https://console.logclaw.ai) under **Settings → API
    Keys**.
  version: 1.0.0
  contact:
    name: LogClaw
    url: https://docs.logclaw.ai
servers:
  - url: https://otel.logclaw.ai
    description: LogClaw Cloud
security:
  - apiKey: []
tags:
  - name: Ingestion
    description: OTLP log ingestion
  - name: API Keys
    description: API key management
  - name: Bridge
    description: ETL pipeline health and configuration
  - name: Ticketing
    description: Incident management and runtime config
  - name: Infrastructure
    description: Cluster health monitoring
  - name: OpenSearch
    description: Log storage and search
paths:
  /v1/logs:
    post:
      tags:
        - Ingestion
      summary: Send Logs (OTLP/HTTP)
      description: >
        Ingest log records in OTLP HTTP/JSON format. This is the primary
        ingestion

        endpoint for LogClaw Cloud. Logs are processed through the pipeline:

        OTel Collector → Kafka → Bridge → OpenSearch.


        The auth proxy automatically injects your project's `tenant_id` into
        each

        log record based on your API key.
      operationId: sendLogs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OtlpLogPayload'
            example:
              resourceLogs:
                - resource:
                    attributes:
                      - key: service.name
                        value:
                          stringValue: my-app
                  scopeLogs:
                    - logRecords:
                        - timeUnixNano: '1709312400000000000'
                          severityText: INFO
                          body:
                            stringValue: Hello from LogClaw!
      responses:
        '200':
          description: Logs accepted
          content:
            application/json:
              schema:
                type: object
                properties:
                  partialSuccess:
                    type: object
              example:
                partialSuccess: {}
        '401':
          description: Invalid or missing API key
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              example:
                error: Missing x-logclaw-api-key header
        '502':
          description: OTel Collector unreachable
          content:
            application/json:
              example:
                error: Failed to forward request to OTel Collector
components:
  schemas:
    OtlpLogPayload:
      type: object
      required:
        - resourceLogs
      properties:
        resourceLogs:
          type: array
          items:
            type: object
            properties:
              resource:
                type: object
                properties:
                  attributes:
                    type: array
                    items:
                      type: object
                      properties:
                        key:
                          type: string
                          example: service.name
                        value:
                          type: object
                          properties:
                            stringValue:
                              type: string
                              example: my-app
              scopeLogs:
                type: array
                items:
                  type: object
                  properties:
                    logRecords:
                      type: array
                      items:
                        type: object
                        properties:
                          timeUnixNano:
                            type: string
                            example: '1709312400000000000'
                          severityText:
                            type: string
                            enum:
                              - TRACE
                              - DEBUG
                              - INFO
                              - WARN
                              - ERROR
                              - FATAL
                            example: INFO
                          severityNumber:
                            type: integer
                            example: 9
                          body:
                            type: object
                            properties:
                              stringValue:
                                type: string
                                example: Hello from LogClaw!
                          traceId:
                            type: string
                            example: abcdef1234567890abcdef1234567890
                          spanId:
                            type: string
                            example: abcdef1234567890
                          attributes:
                            type: array
                            items:
                              type: object
                              properties:
                                key:
                                  type: string
                                value:
                                  type: object
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-logclaw-api-key
      description: Your project API key (starts with `lc_proj_`)

````