CalypsoAI Datasets API

The Datasets API from CalypsoAI — 5 operation(s) for datasets.

Operations 6

GET /backend/v1/datasets Get #
POST /backend/v1/datasets Post #
GET /backend/v1/datasets/runs Get #
GET /backend/v1/datasets/runs/{datasetRunId} Get #
GET /backend/v1/datasets/runs/{datasetRunId}/download Get #
GET /backend/v1/datasets/{datasetId} Get #

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/calypsoai-com:calypsoai-com-datasets-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

calypsoai-com-datasets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CalypsoAI Datasets API
  version: 1.0.0
servers:
- description: US1 availability zone
  url: https://us1.calypsoai.app
- description: EU1 availability zone
  url: https://eu1.calypsoai.app
tags:
- name: Datasets
paths:
  /backend/v1/datasets:
    get:
      operationId: get_datasets
      parameters:
      - description: Include guardrails in the response.
        in: query
        name: includeScanners
        required: false
        schema:
          default: false
          description: Include guardrails in the response.
          title: Includescanners
          type: boolean
      - description: Include guardrail packages in the response.
        in: query
        name: includeScannerPackages
        required: false
        schema:
          default: false
          description: Include guardrail packages in the response.
          title: Includescannerpackages
          type: boolean
      - description: Include the users that created the datasets in the response.
        in: query
        name: includeUsers
        required: false
        schema:
          default: false
          description: Include the users that created the datasets in the response.
          title: Includeusers
          type: boolean
      - description: Limits the amount of results.
        in: query
        name: limit
        required: false
        schema:
          default: 10
          description: Limits the amount of results.
          maximum: 100
          minimum: 1
          title: Limit
          type: integer
      - description: Include dataset runs in the response
        in: query
        name: includeRuns
        required: false
        schema:
          default: false
          description: Include dataset runs in the response
          title: Includeruns
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDatasetsResponse'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Get
      tags:
      - Datasets
    post:
      operationId: post_datasets
      requestBody:
        content:
          application/json:
            schema:
              properties:
                fileId:
                  format: uuid
                  title: Fileid
                  type: string
                name:
                  maxLength: 100
                  minLength: 1
                  title: Name
                  type: string
                scannerId:
                  anyOf:
                  - format: uuid
                    type: string
                  - type: 'null'
                  title: Scannerid
                scannerPackageId:
                  anyOf:
                  - format: uuid
                    type: string
                  - type: 'null'
                  title: Scannerpackageid
                scannerVersions:
                  anyOf:
                  - items:
                      anyOf:
                      - format: uuid
                        type: string
                      - format: date-time
                        type: string
                      - maxLength: 100
                        minLength: 1
                        pattern: ^[a-zA-Z0-9-_]+$
                        type: string
                    type: array
                  - type: 'null'
                  title: Scannerversions
              required:
              - name
              - fileId
              title: PostDatasetsBody
              type: object
          multipart/form-data:
            schema:
              properties:
                file:
                  format: binary
                  title: File
                  type: string
                name:
                  maxLength: 100
                  minLength: 1
                  title: Name
                  type: string
                scannerId:
                  anyOf:
                  - format: uuid
                    type: string
                  - type: 'null'
                  title: Scannerid
                scannerPackageId:
                  anyOf:
                  - format: uuid
                    type: string
                  - type: 'null'
                  title: Scannerpackageid
                scannerVersions:
                  anyOf:
                  - format: uuid
                    type: string
                  - format: date-time
                    type: string
                  - maxLength: 100
                    minLength: 1
                    pattern: ^[a-zA-Z0-9-_]+$
                    type: string
                  - items:
                      anyOf:
                      - format: uuid
                        type: string
                      - format: date-time
                        type: string
                      - maxLength: 100
                        minLength: 1
                        pattern: ^[a-zA-Z0-9-_]+$
                        type: string
                    type: array
                  - type: 'null'
                  title: Scannerversions
              required:
              - file
              - name
              title: PostDatasetsFormBody
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostSuccessMessage'
          description: Successful Response
      security:
      - HTTPBearer: []
      summary: Post
      tags:
      - Datasets
  /backend/v1/datasets/runs:
    get:
      operationId: get_datasets_runs
      parameters:
      - description: Include guardrails in the response.
        in: query
        name: includeScanners
        required: false
        schema:
          default: false
          description: Include guardrails in the response.
          title: Includescanners
          type: boolean
      - description: Include guardrail packages in the response.
        in: query
        name: includeScannerPackages
        required: false
        schema:
          default: false
          description: Include guardrail packages in the response.
          title: Includescannerpackages
          type: boolean
      - description: Include the users that created the datasets in the response.
        in: query
        name: includeUsers
        required: false
        schema:
          default: false
          description: Include the users that created the datasets in the response.
          title: Includeusers
          type: boolean
      - description: Limits the amount of results.
        in: query
        name: limit
        required: false
        schema:
          default: 10
          description: Limits the amount of results.
          maximum: 100
          minimum: 1
          title: Limit
          type: integer
      - description: Include datasets in the response
        in: query
        name: includeDatasets
        required: false
        schema:
          default: false
          description: Include datasets in the response
          title: Includedatasets
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDatasetRunsResponse'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Get
      tags:
      - Datasets
  /backend/v1/datasets/runs/{datasetRunId}:
    get:
      operationId: get_datasets_runs_datasetRunId
      parameters:
      - in: path
        name: datasetRunId
        required: true
        schema:
          format: uuid
          title: Datasetrunid
          type: string
      - description: Include dataset in the response
        in: query
        name: includeDataset
        required: false
        schema:
          default: false
          description: Include dataset in the response
          title: Includedataset
          type: boolean
      - description: Include guardrail in the response
        in: query
        name: includeScanner
        required: false
        schema:
          default: false
          description: Include guardrail in the response
          title: Includescanner
          type: boolean
      - description: Include guardrail package in the response if one is associated to the dataset
        in: query
        name: includeScannerPackage
        required: false
        schema:
          default: false
          description: Include guardrail package in the response if one is associated to the dataset
          title: Includescannerpackage
          type: boolean
      - description: Include user in the response
        in: query
        name: includeUser
        required: false
        schema:
          default: false
          description: Include user in the response
          title: Includeuser
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDatasetRunResponse'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Get
      tags:
      - Datasets
  /backend/v1/datasets/runs/{datasetRunId}/download:
    get:
      deprecated: true
      operationId: get_datasets_runs_datasetRunId_download
      parameters:
      - in: path
        name: datasetRunId
        required: true
        schema:
          format: uuid
          title: Datasetrunid
          type: string
      responses:
        '200':
          content:
            text/csv:
              schema:
                type: string
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Get
      tags:
      - Datasets
  /backend/v1/datasets/{datasetId}:
    get:
      operationId: get_datasets_datasetId
      parameters:
      - in: path
        name: datasetId
        required: true
        schema:
          format: uuid
          title: Datasetid
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDatasetResponse'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
      - HTTPBearer: []
      summary: Get
      tags:
      - Datasets
components:
  schemas:
    ScannerAvailability:
      properties:
        global:
          default: false
          description: If True guardrail can be used by all projects
          title: Global
          type: boolean
        projectIds:
          default: []
          items:
            format: uuid
            type: string
          title: Projectids
          type: array
          uniqueItems: true
      title: ScannerAvailability
      type: object
    GetDatasetResponse:
      properties:
        dataset:
          $ref: '#/components/schemas/Dataset'
      required:
      - dataset
      title: GetDatasetResponse
      type: object
    GetDatasetsResponse:
      properties:
        datasetRuns:
          additionalProperties:
            $ref: '#/components/schemas/DatasetRun'
          default: {}
          description: Map of dataset run IDs to runs.
          propertyNames:
            format: uuid
          title: Datasetruns
          type: object
        datasets:
          description: Array of datasets.
          items:
            $ref: '#/components/schemas/Dataset'
          title: Datasets
          type: array
        scannerPackages:
          additionalProperties:
            $ref: '#/components/schemas/ScannerPackage'
          default: {}
          description: Map of guardrail version IDs to guardrails.
          propertyNames:
            format: uuid
          title: Scannerpackages
          type: object
        scanners:
          additionalProperties:
            $ref: '#/components/schemas/Scanner'
          default: {}
          description: Map of guardrail version IDs to guardrails.
          propertyNames:
            format: uuid
          title: Scanners
          type: object
        users:
          additionalProperties:
            $ref: '#/components/schemas/User'
          default: {}
          description: Map of user IDs to users.
          title: Users
          type: object
      required:
      - datasets
      title: GetDatasetsResponse
      type: object
    DatasetRun:
      properties:
        datasetId:
          format: uuid
          title: Datasetid
          type: string
        fileId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Fileid
        id:
          format: uuid
          title: Id
          type: string
        result:
          anyOf:
          - $ref: '#/components/schemas/DatasetScores'
          - type: 'null'
        scannerId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Scannerid
        scannerPackageId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Scannerpackageid
        scannerVersionId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Scannerversionid
        status:
          $ref: '#/components/schemas/RunStatus'
      required:
      - id
      - datasetId
      - status
      title: DatasetRun
      type: object
    KeywordScannerConfig:
      properties:
        type:
          const: keyword
          default: keyword
          title: Type
          type: string
        words:
          description: Words to check for in the prompt or response. Case insensitive. Empty strings will be removed.
          items:
            type: string
          title: Words
          type: array
      required:
      - words
      title: KeywordScannerConfig
      type: object
    ValidationError:
      properties:
        ctx:
          title: Context
          type: object
        input:
          title: Input
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
      - loc
      - msg
      - type
      title: ValidationError
      type: object
    DatasetScores:
      properties:
        accuracy:
          title: Accuracy
          type: number
        f1Score:
          title: F1Score
          type: number
        falseNegative:
          title: Falsenegative
          type: integer
        falsePositive:
          title: Falsepositive
          type: integer
        trueNegative:
          title: Truenegative
          type: integer
        truePositive:
          title: Truepositive
          type: integer
      required:
      - f1Score
      - accuracy
      - falseNegative
      - truePositive
      - trueNegative
      - falsePositive
      title: DatasetScores
      type: object
    ZipScannerSource:
      properties:
        type:
          const: zip
          default: zip
          title: Type
          type: string
      title: ZipScannerSource
      type: object
    InternalScannerSource:
      properties:
        type:
          const: internal
          default: internal
          title: Type
          type: string
      title: InternalScannerSource
      type: object
    RemediationScannerSource:
      properties:
        sourceId:
          format: uuid
          title: Sourceid
          type: string
        type:
          const: remediation
          default: remediation
          title: Type
          type: string
      required:
      - sourceId
      title: RemediationScannerSource
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    PostSuccessMessage:
      description: Contains the ID of an object after a successful POST operation.
      properties:
        id:
          anyOf:
          - format: uuid
            type: string
          - type: string
          title: Id
      required:
      - id
      title: PostSuccessMessage
      type: object
    ScannerVersionMeta:
      properties:
        createdAt:
          format: date-time
          title: Createdat
          type: string
        createdBy:
          anyOf:
          - type: string
          - type: 'null'
          title: Createdby
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        direction:
          anyOf:
          - $ref: '#/components/schemas/ScannerDirection'
          - type: 'null'
        f1Score:
          anyOf:
          - type: number
          - type: 'null'
          title: F1Score
        id:
          format: uuid
          title: Id
          type: string
        latestDatasetResult:
          anyOf:
          - $ref: '#/components/schemas/ScannerDatasetResult'
          - type: 'null'
        name:
          maxLength: 100
          minLength: 1
          pattern: ^[a-zA-Z0-9-_]+$
          title: Name
          type: string
        published:
          title: Published
          type: boolean
      required:
      - id
      - createdAt
      - name
      - published
      title: ScannerVersionMeta
      type: object
    LegacyScannerConfig:
      additionalProperties: true
      properties: {}
      title: LegacyScannerConfig
      type: object
    GenAIScannerConfig:
      properties:
        input:
          default: ''
          title: Input
          type: string
        scanContext:
          default: directional
          description: 'Describes the context that is provided to the scanner

            individual: Scan only the latest message

            directional: Scan all messages in the conversation in the same direction as the latest message'
          enum:
          - individual
          - directional
          title: Scancontext
          type: string
        type:
          default: custom
          enum:
          - genai
          - custom
          title: Type
          type: string
      title: GenAIScannerConfig
      type: object
    GetDatasetRunResponse:
      properties:
        dataset:
          anyOf:
          - $ref: '#/components/schemas/Dataset'
          - type: 'null'
        run:
          $ref: '#/components/schemas/DatasetRun'
        scanner:
          anyOf:
          - $ref: '#/components/schemas/Scanner'
          - type: 'null'
        scannerPackage:
          anyOf:
          - $ref: '#/components/schemas/ScannerPackage'
          - type: 'null'
        user:
          anyOf:
          - $ref: '#/components/schemas/User'
          - type: 'null'
      required:
      - run
      title: GetDatasetRunResponse
      type: object
    VendorScannerSource:
      properties:
        type:
          const: vendor
          default: vendor
          title: Type
          type: string
      title: VendorScannerSource
      type: object
    ScannerDatasetResult:
      properties:
        datasetRunId:
          format: uuid
          title: Datasetrunid
          type: string
        f1Score:
          title: F1Score
          type: number
      required:
      - datasetRunId
      - f1Score
      title: ScannerDatasetResult
      type: object
    GetDatasetRunsResponse:
      properties:
        datasetRuns:
          description: Array of dataset runs.
          items:
            $ref: '#/components/schemas/DatasetRun'
          title: Datasetruns
          type: array
        datasets:
          additionalProperties:
            $ref: '#/components/schemas/Dataset'
          default: {}
          description: Map of dataset IDs to datasets.
          propertyNames:
            format: uuid
          title: Datasets
          type: object
        scannerPackages:
          additionalProperties:
            $ref: '#/components/schemas/ScannerPackage'
          default: {}
          description: Map of guardrail version IDs to guardrails.
          propertyNames:
            format: uuid
          title: Scannerpackages
          type: object
        scanners:
          additionalProperties:
            $ref: '#/components/schemas/Scanner'
          default: {}
          description: Map of guardrail version IDs to guardrails.
          propertyNames:
            format: uuid
          title: Scanners
          type: object
        users:
          additionalProperties:
            $ref: '#/components/schemas/User'
          default: {}
          title: Users
          type: object
      required:
      - datasetRuns
      title: GetDatasetRunsResponse
      type: object
    Scanner:
      properties:
        availability:
          $ref: '#/components/schemas/ScannerAvailability'
          default:
            global: false
            projectIds: []
        config:
          anyOf:
          - discriminator:
              mapping:
                custom: '#/components/schemas/GenAIScannerConfig'
                genai: '#/components/schemas/GenAIScannerConfig'
                keyword: '#/components/schemas/KeywordScannerConfig'
                ml_text: '#/components/schemas/MLTextScannerConfig'
                regex: '#/components/schemas/RegexScannerConfig'
              propertyName: type
            oneOf:
            - $ref: '#/components/schemas/RegexScannerConfig'
            - $ref: '#/components/schemas/KeywordScannerConfig'
            - $ref: '#/components/schemas/GenAIScannerConfig'
            - $ref: '#/components/schemas/MLTextScannerConfig'
          - $ref: '#/components/schemas/LegacyScannerConfig'
          - type: 'null'
          title: Config
        direction:
          $ref: '#/components/schemas/ScannerDirection'
          default: request
        id:
          format: uuid
          title: Id
          type: string
        name:
          title: Name
          type: string
        packageId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Packageid
        projectId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Projectid
        scannerTemplateId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Scannertemplateid
        source:
          default:
            type: internal
          discriminator:
            mapping:
              internal: '#/components/schemas/InternalScannerSource'
              remediation: '#/components/schemas/RemediationScannerSource'
              vendor: '#/components/schemas/VendorScannerSource'
              zip: '#/components/schemas/ZipScannerSource'
            propertyName: type
          oneOf:
          - $ref: '#/components/schemas/InternalScannerSource'
          - $ref: '#/components/schemas/ZipScannerSource'
          - $ref: '#/components/schemas/VendorScannerSource'
          - $ref: '#/components/schemas/RemediationScannerSource'
          title: Source
        tags:
          default: []
          items:
            maxLength: 50
            minLength: 1
            pattern: ^[a-zA-Z0-9-_]+$
            type: string
          title: Tags
          type: array
        vendored:
          anyOf:
          - type: boolean
          - items:
              type: string
            type: array
          default: false
          title: Vendored
        versionMeta:
          $ref: '#/components/schemas/ScannerVersionMeta'
      required:
      - name
      - id
      - versionMeta
      title: Scanner
      type: object
    Dataset:
      properties:
        createdAt:
          format: date-time
          title: Createdat
          type: string
        createdBy:
          title: Createdby
          type: string
        fileId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Fileid
        filename:
          anyOf:
          - type: string
          - type: 'null'
          title: Filename
        id:
          format: uuid
          title: Id
          type: string
        name:
          title: Name
          type: string
        scannerPackageId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Scannerpackageid
      required:
      - id
      - createdBy
      - createdAt
      - fileId
      - filename
      - name
      title: Dataset
      type: object
    ScannerDirection:
      enum:
      - both
      - request
      - response
      title: ScannerDirection
      type: string
    RunStatus:
      enum:
      - in_progress
      - complete
      - error
      title: RunStatus
      type: string
    User:
      properties:
        admin:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Admin
        blocked:
          default: false
          title: Blocked
          type: boolean
        createdAt:
          anyOf:
          - format: date-time
            type: string
          - type: 'null'
          title: Createdat
        email:
          format: password
          title: Email
          type: string
          writeOnly: true
        id:
          title: Id
          type: string
        lastInvitationSentAt:
          anyOf:
          - format: date-time
            type: string
          - type: 'null'
          title: Lastinvitationsentat
        machine:
          default: false
          title: Machine
          type: boolean
        name:
          format: password
          title: Name
          type: string
          writeOnly: true
        org:
          title: Org
          type: string
        permissions:
          default: []
          items:
            type: string
          title: Permissions
          type: array
          uniqueItems: true
        roleIds:
          default: []
          items:
            format: uuid
            type: string
          title: Roleids
          type: array
        roles:
          default: []
          items:
            type: string
          title: Roles
          type: array
        social:
          default: false
          title: Social
          type: boolean
        teams:
          default: []
          items:
            type: string
          title: Teams
          type: array
        verified:
          default: true
          title: Verified
          type: boolean
      required:
      - id
      - name
      - email
      - org
      title: User
      type: object
    MLTextScannerConfig:
      properties:
        type:
          const: ml_text
          default: ml_text
          title: Type
          type: string
      required: []
      title: MLTextScannerConfig
      type: object
    RegexScannerConfig:
      properties:
        pattern:
          description: Python Flavored Regular Expression (RegEx) to check for in the prompt or response. Case insensitive.
          title: Pattern
          type: string
        type:
          const: regex
          default: regex
          title: Type
          type: string
      required:
      - pattern
      title: RegexScannerConfig
      type: object
    ScannerPackage:
      properties:
        availability:
          $ref: '#/components/schemas/ScannerAvailability'
          default:
            global: false
            projectIds: []
        direction:
          $ref: '#/components/schemas/ScannerDirection'
        id:
          format: uuid
          title: Id
          type: string
        name:
          title: Name
          type: string
        performanceScannerIds:
          anyOf:
          - items:
              format: uuid
              type: string
            type: array
          - type: 'null'
          title: Performancescannerids
        projectId:
          anyOf:
          - format: uuid
            type: string
          - type: 'null'
          title: Projectid
        scannerCounts:
          additionalProperties:
            type: integer
          default: {}
          title: Scannercounts
          type: object
        scannerIds:
          items:
            format: uuid
            type: string
          title: Scannerids
          type: array
        source:
          discriminator:
            mapping:
              internal: '#/components/schemas/InternalScannerSource'
              remediation: '#/components/schemas/RemediationScannerSource'
              vendor: '#/components/schemas/VendorScannerSource'
              zip: '#/components/schemas/ZipScannerSource'
            propertyName: type
          oneOf:
          - $ref: '#/components/schemas/InternalScannerSource'
          - $ref: '#/components/schemas/ZipScannerSource'
          - $ref: '#/components/schemas/VendorScannerSource'
          - $ref: '#/components/schemas/RemediationScannerSource'
          title: Source
        vendored:
          anyOf:
          - type: boolean
          - items:
              type: string
            type: array
          default: false
          title: Vendored
      required:
      - id
      - name
      - source
      - direction
      - scannerIds
      title: ScannerPackage
      type: object
  securitySchemes:
    HTTPBearer:
      scheme: bearer
      type: http