Soda Discovered Datasets API

Datasets discovered but not yet onboarded

OpenAPI Specification

soda-co-discovered-datasets-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Soda Cloud REST Attributes Discovered Datasets API
  description: The Soda Cloud REST API enables programmatic access to trigger data quality scans, retrieve check results, update incident status, manage datasets, datasources, contracts, runners, secrets, notification rules, and integrate data quality workflows into CI/CD pipelines. Supports EU and US cloud regions.
  version: 1.0.0
  contact:
    name: Soda Support
    url: https://soda.io
servers:
- url: https://cloud.soda.io
  description: EU Cloud
- url: https://cloud.us.soda.io
  description: US Cloud
security:
- basicAuth: []
tags:
- name: Discovered Datasets
  description: Datasets discovered but not yet onboarded
paths:
  /api/v1/discoveredDatasets:
    get:
      summary: List discovered datasets
      description: Retrieve a paginated list of discovered datasets available for onboarding.
      operationId: listDiscoveredDatasets
      tags:
      - Discovered Datasets
      parameters:
      - name: size
        in: query
        schema:
          type: integer
          minimum: 1
          maximum: 1000
          default: 10
      - name: page
        in: query
        schema:
          type: integer
          default: 0
      - name: datasourceId
        in: query
        schema:
          type: string
        description: Filter by data source
      - name: search
        in: query
        schema:
          type: string
        description: Search by dataset name
      responses:
        '200':
          description: Paginated list of discovered datasets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiDiscoveredDatasetsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    PaginatedResponse:
      type: object
      properties:
        content:
          type: array
          items:
            type: object
        first:
          type: boolean
        last:
          type: boolean
        number:
          type: integer
        size:
          type: integer
        totalElements:
          type: integer
        totalPages:
          type: integer
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
    PublicApiDiscoveredDatasetsResponse:
      allOf:
      - $ref: '#/components/schemas/PaginatedResponse'
      - type: object
        properties:
          content:
            type: array
            items:
              type: object
              properties:
                id:
                  type: string
                name:
                  type: string
                qualifiedName:
                  type: string
                datasourceId:
                  type: string
                onboarded:
                  type: boolean
                createdAt:
                  type: string
                  format: date-time
  responses:
    Unauthorized:
      description: Unauthorized - authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    TooManyRequests:
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: 'Base64-encoded API key ID and secret: base64(api_key_id:api_key_secret)'