LangWatch Dataset API

The Dataset API from LangWatch — 7 operation(s) for dataset.

Operations 12

GET /api/dataset #
POST /api/dataset #
POST /api/dataset/upload #
GET /api/dataset/{slugOrId} #
PATCH /api/dataset/{slugOrId} #
DELETE /api/dataset/{slugOrId} #
POST /api/dataset/{slugOrId}/records #
GET /api/dataset/{slugOrId}/records #
DELETE /api/dataset/{slugOrId}/records #
PATCH /api/dataset/{slugOrId}/records/{recordId} #
POST /api/dataset/{slugOrId}/upload #
POST /api/dataset/{slug}/entries #

Documentation

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/langwatch-dataset-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

langwatch-dataset-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: LangWatch Agents Dataset API
  version: 1.0.0
  description: LangWatch openapi spec
servers:
- url: https://app.langwatch.ai
security:
- project_api_key: []
tags:
- name: Dataset
paths:
  /api/dataset:
    get:
      responses: {}
      operationId: getApiDataset
      parameters:
      - in: query
        name: page
        schema:
          type: integer
          exclusiveMinimum: 0
          default: 1
      - in: query
        name: limit
        schema:
          type: integer
          exclusiveMinimum: 0
          maximum: 1000
          default: 50
      description: List all non-archived datasets for the project (paginated)
      tags:
      - Dataset
    post:
      responses: {}
      operationId: postApiDataset
      parameters: []
      description: Create a new dataset
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                columnTypes:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                      type:
                        anyOf:
                        - type: string
                          const: string
                        - type: string
                          const: boolean
                        - type: string
                          const: number
                        - type: string
                          const: date
                        - type: string
                          const: list
                        - type: string
                          const: json
                        - type: string
                          const: spans
                        - type: string
                          const: rag_contexts
                        - type: string
                          const: chat_messages
                        - type: string
                          const: annotations
                        - type: string
                          const: evaluations
                        - type: string
                          const: image
                    required:
                    - name
                    - type
                  default: []
              required:
              - name
      tags:
      - Dataset
  /api/dataset/upload:
    post:
      responses: {}
      operationId: postApiDatasetUpload
      parameters: []
      description: Create a new dataset from an uploaded file (CSV, JSON, JSONL)
      tags:
      - Dataset
  /api/dataset/{slugOrId}:
    get:
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        datasetId:
                          type: string
                        projectId:
                          type: string
                        entry:
                          type: object
                          additionalProperties: {}
                        createdAt:
                          type: string
                        updatedAt:
                          type: string
                      required:
                      - id
                      - datasetId
                      - projectId
                      - entry
                      - createdAt
                      - updatedAt
                required:
                - data
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '404':
          description: Dataset not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
      operationId: getApiDatasetBySlugOrId
      parameters:
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      description: Get a dataset by its slug or id.
      tags:
      - Dataset
    patch:
      responses: {}
      operationId: patchApiDatasetBySlugOrId
      parameters:
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      description: Update a dataset by its slug or id
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                columnTypes:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                      type:
                        anyOf:
                        - type: string
                          const: string
                        - type: string
                          const: boolean
                        - type: string
                          const: number
                        - type: string
                          const: date
                        - type: string
                          const: list
                        - type: string
                          const: json
                        - type: string
                          const: spans
                        - type: string
                          const: rag_contexts
                        - type: string
                          const: chat_messages
                        - type: string
                          const: annotations
                        - type: string
                          const: evaluations
                        - type: string
                          const: image
                    required:
                    - name
                    - type
      tags:
      - Dataset
    delete:
      responses: {}
      operationId: deleteApiDatasetBySlugOrId
      parameters:
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      description: Archive a dataset (soft-delete)
      tags:
      - Dataset
  /api/dataset/{slugOrId}/records:
    post:
      responses: {}
      operationId: postApiDatasetBySlugOrIdRecords
      parameters:
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      description: Create records in a dataset in batch
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                entries:
                  type: array
                  items:
                    type: object
                    additionalProperties: {}
                  minItems: 1
                  maxItems: 1000
              required:
              - entries
      tags:
      - Dataset
    get:
      responses: {}
      operationId: getApiDatasetBySlugOrIdRecords
      parameters:
      - in: query
        name: page
        schema:
          type: integer
          exclusiveMinimum: 0
          default: 1
      - in: query
        name: limit
        schema:
          type: integer
          exclusiveMinimum: 0
          maximum: 1000
          default: 50
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      description: List records for a dataset (paginated)
      tags:
      - Dataset
    delete:
      responses: {}
      operationId: deleteApiDatasetBySlugOrIdRecords
      parameters:
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      description: Delete records from a dataset by IDs
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                recordIds:
                  type: array
                  items:
                    type: string
                  minItems: 1
                  maxItems: 1000
              required:
              - recordIds
      tags:
      - Dataset
  /api/dataset/{slugOrId}/records/{recordId}:
    patch:
      responses: {}
      operationId: patchApiDatasetBySlugOrIdRecordsByRecordId
      parameters:
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      - schema:
          type: string
        in: path
        name: recordId
        required: true
      description: Update or create a record in a dataset
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                entry:
                  type: object
                  additionalProperties: {}
              required:
              - entry
      tags:
      - Dataset
  /api/dataset/{slugOrId}/upload:
    post:
      responses: {}
      operationId: postApiDatasetBySlugOrIdUpload
      parameters:
      - schema:
          type: string
        in: path
        name: slugOrId
        required: true
      description: Upload a file (CSV, JSON, JSONL) to an existing dataset
      tags:
      - Dataset
  /api/dataset/{slug}/entries:
    post:
      responses: {}
      operationId: postApiDatasetBySlugEntries
      parameters:
      - schema:
          type: string
        in: path
        name: slug
        required: true
      description: Add entries to a dataset
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DatasetPostEntries'
      tags:
      - Dataset
components:
  schemas:
    DatasetPostEntries:
      type: object
      properties:
        entries:
          type: array
          items:
            type: object
            additionalProperties: {}
          example:
          - input: hi
            output: Hello, how can I help you today?
      required:
      - entries
  securitySchemes:
    project_api_key:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: 'Project API key for sending traces and accessing project-scoped resources. Format: sk-lw-... (no underscore). Obtain one by creating a project via the Admin API or the LangWatch UI.'
    admin_api_key:
      type: http
      scheme: bearer
      description: 'Admin API key for organization-level operations (managing projects, API keys). Create one in Settings > API Keys or via POST /api/api-keys. Format: sk-lw-{id}_{secret}.'