Lunary Evals API

The Evals API from Lunary — 7 operation(s) for evals.

OpenAPI Specification

lunary-evals-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Lunary Analytics Evals API
  description: 'REST API for Lunary, an open-source LLM observability and evaluation

    platform. Covers ingestion (runs/traces), prompt templates with versions,

    datasets and dataset items, evaluations and criteria, analytics, audit

    logs, checklists, playground endpoints, views, and models.


    Three authentication schemes are used: project-scoped public API keys for

    ingestion endpoints, project-scoped private API keys for management

    endpoints, and organization-scoped API keys for org-level analytics. All

    are passed as Bearer tokens in the Authorization header.

    '
  version: '1.0'
  contact:
    name: Lunary
    url: https://docs.lunary.ai/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://api.lunary.ai
  description: Lunary Cloud
security:
- ProjectPrivateApiKeyAuth: []
tags:
- name: Evals
paths:
  /v1/evals:
    get:
      tags:
      - Evals
      summary: List evaluations
      operationId: listEvals
      responses:
        '200':
          description: Evaluations
          content:
            application/json:
              schema:
                type: object
    post:
      tags:
      - Evals
      summary: Create evaluation
      operationId: createEval
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
  /v1/evals/{id}:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    get:
      tags:
      - Evals
      summary: Get evaluation
      operationId: getEval
      responses:
        '200':
          description: Evaluation
          content:
            application/json:
              schema:
                type: object
    patch:
      tags:
      - Evals
      summary: Update evaluation
      operationId: updateEval
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated
          content:
            application/json:
              schema:
                type: object
    delete:
      tags:
      - Evals
      summary: Delete evaluation
      operationId: deleteEval
      responses:
        '204':
          description: Deleted
  /v1/evals/{id}/run:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    post:
      tags:
      - Evals
      summary: Run evaluation
      operationId: runEval
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: object
  /v1/evals/criteria:
    post:
      tags:
      - Evals
      summary: Create evaluation criterion
      operationId: createEvalCriterion
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
  /v1/evals/criteria/{id}:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    get:
      tags:
      - Evals
      summary: Get evaluation criterion
      operationId: getEvalCriterion
      responses:
        '200':
          description: Criterion
          content:
            application/json:
              schema:
                type: object
    patch:
      tags:
      - Evals
      summary: Update evaluation criterion
      operationId: updateEvalCriterion
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated
          content:
            application/json:
              schema:
                type: object
    delete:
      tags:
      - Evals
      summary: Delete evaluation criterion
      operationId: deleteEvalCriterion
      responses:
        '204':
          description: Deleted
  /v1/evals/{evalId}/results:
    parameters:
    - name: evalId
      in: path
      required: true
      schema:
        type: string
    get:
      tags:
      - Evals
      summary: List evaluation results
      operationId: listEvalResults
      responses:
        '200':
          description: Results
          content:
            application/json:
              schema:
                type: object
  /v1/evals/results/{id}:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    get:
      tags:
      - Evals
      summary: Get evaluation result
      operationId: getEvalResult
      responses:
        '200':
          description: Result
          content:
            application/json:
              schema:
                type: object
components:
  securitySchemes:
    ProjectPrivateApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: Lunary project private API key (UUID)
    ProjectPublicApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: Lunary project public API key (UUID)
    OrgApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: Lunary organization API key (UUID)