data.world legacy catalog - data API

The legacy catalog - data API from data.world — 8 operation(s) for legacy catalog - data.

OpenAPI Specification

data-world-legacy-catalog-data-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    name: Contact Us
    url: https://data.world/company/contact-us
  termsOfService: https://data.world/terms-policies
  title: data.world Public catalog relationships legacy catalog - data API
  version: '0'
  description: Manage relationships between catalog resources
servers:
- url: /v0
security:
- bearerAuth: []
tags:
- name: legacy catalog - data
paths:
  /metadata/data/sources/suggest/{owner}/{sourceid}/tables/{tableid}:
    patch:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: suggestCatalogTable
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogTableSuggestRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: suggest for an existing table.
      tags:
      - legacy catalog - data
  /metadata/data/sources/{owner}:
    get:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: getDatabases
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - in: query
        name: sort
        schema:
          type: array
          items:
            type: string
      - in: query
        name: size
        schema:
          type: integer
          format: int32
          default: 10
      - in: query
        name: from
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDatabaseResults'
          description: default response
      summary: Gets datasources by owner.
      tags:
      - legacy catalog - data
  /metadata/data/sources/{owner}/{sourceid}:
    get:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: getDatabase
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
          minLength: 1
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DatabaseDto'
          description: default response
      summary: Get an individual datasource metadata
      tags:
      - legacy catalog - data
  /metadata/data/sources/{owner}/{sourceid}/tables:
    get:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: getTables
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
          minLength: 1
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: query
        name: typelabel
        schema:
          type: string
      - in: query
        name: typeiri
        schema:
          type: string
      - in: query
        name: sort
        schema:
          type: array
          items:
            type: string
      - in: query
        name: size
        schema:
          type: integer
          format: int32
          default: 10
      - in: query
        name: from
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedGenericResultsMetadataResourceDto'
          description: default response
      summary: Get tables for a data source
      tags:
      - legacy catalog - data
    post:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: createCatalogTable
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogTableRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateResponse'
          description: Table Metadata created successfully.
      summary: Create a new table metadata.
      tags:
      - legacy catalog - data
  /metadata/data/sources/{owner}/{sourceid}/tables/iri/{tableiri}:
    patch:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: patchCatalogTableByIri
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableiri
        required: true
        schema:
          type: string
          minLength: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogTableRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Update an existing table identified by IRI.
      tags:
      - legacy catalog - data
  /metadata/data/sources/{owner}/{sourceid}/tables/{tableid}:
    delete:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: deleteCatalogTable
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Delete a table.
      tags:
      - legacy catalog - data
    get:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: getTable
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
          minLength: 1
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      - in: query
        name: schema
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetadataResourceDto'
          description: default response
      summary: Get an individual table metadata
      tags:
      - legacy catalog - data
    patch:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: patchCatalogTable
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      - in: query
        name: schema
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogTableRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Update an existing table.
      tags:
      - legacy catalog - data
    put:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: replaceCatalogTable
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogTableRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Replace an existing table
      tags:
      - legacy catalog - data
  /metadata/data/sources/{owner}/{sourceid}/tables/{tableid}/columns:
    get:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: getTableColumns
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
          minLength: 1
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      - in: query
        name: sort
        schema:
          type: array
          items:
            type: string
      - in: query
        name: size
        schema:
          type: integer
          format: int32
          default: 10
      - in: query
        name: from
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedGenericResultsMetadataResourceDto'
          description: default response
      summary: Get columns for a given table
      tags:
      - legacy catalog - data
    post:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: createCatalogColumn
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogColumnRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateResponse'
          description: Column Metadata created successfully.
      summary: Create a Column.
      tags:
      - legacy catalog - data
  /metadata/data/sources/{owner}/{sourceid}/tables/{tableid}/columns/{columnid}:
    delete:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: deleteCatalogColumn
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: columnid
        required: true
        schema:
          type: string
          minLength: 1
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Delete a Column.
      tags:
      - legacy catalog - data
    get:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: getTableColumn
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
          minLength: 1
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: columnid
        required: true
        schema:
          type: string
          minLength: 1
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetadataResourceDto'
          description: default response
      summary: Get an individual column metadata
      tags:
      - legacy catalog - data
    patch:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: patchCatalogColumn
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: columnid
        required: true
        schema:
          type: string
          minLength: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogColumnRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Update an existing Column.
      tags:
      - legacy catalog - data
    put:
      description: Please refer to the updated IRI-based resource endpoints.
      operationId: replaceCatalogColumn
      parameters:
      - description: id of the user or organization
        in: path
        name: owner
        required: true
        schema:
          type: string
      - description: database source id
        in: path
        name: sourceid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: tableid
        required: true
        schema:
          type: string
          minLength: 1
      - in: path
        name: columnid
        required: true
        schema:
          type: string
          minLength: 1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogColumnRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Replace an existing column
      tags:
      - legacy catalog - data
components:
  schemas:
    ImageIcon:
      allOf:
      - $ref: '#/components/schemas/Icon'
      - type: object
        properties:
          image:
            $ref: '#/components/schemas/Image'
            oneOf:
            - $ref: '#/components/schemas/HostedImage'
            - $ref: '#/components/schemas/ProvidedImage'
          largeImage:
            $ref: '#/components/schemas/Image'
            oneOf:
            - $ref: '#/components/schemas/HostedImage'
            - $ref: '#/components/schemas/ProvidedImage'
          selectedImage:
            $ref: '#/components/schemas/Image'
            oneOf:
            - $ref: '#/components/schemas/HostedImage'
            - $ref: '#/components/schemas/ProvidedImage'
          type:
            type: string
            const: image
    PubSearchHydrations:
      type: object
      properties:
        agents:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/AgentHydrationDto'
        catalogConcepts:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CatalogConceptHydrationDto'
        collections:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CollectionHydrationDto'
        properties:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/PropertyHydrationDto'
        relationships:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/RelationshipHydrationDto'
        resourceHierarchy:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: array
              items:
                $ref: '#/components/schemas/ResourceHierarchyDto'
    CatalogTableRequest:
      type: object
      properties:
        assetStatusIri:
          type: string
          maxLength: 5000
          minLength: 0
        collections:
          type: array
          description: Catalog Collection to which this metadata resource is added. Required for POST and PUT.Available catalog collection can be discovered via appropriate discovery endpoints.
          example:
          - Aid Option
          items:
            type: string
            description: Catalog Collection to which this metadata resource is added. Required for POST and PUT.Available catalog collection can be discovered via appropriate discovery endpoints.
            example:
            - Aid Option
        description:
          type: string
          description: A short, but descriptive statement about the metadata resource.
          example: Aid given to charity is an option that can be exercised by individuals and corporations
          maxLength: 5000
          minLength: 0
        properties:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/StringOrArray'
          description: Custom properties for the metadata resource mapped to API Bindings. Can be simple name-value string pairs or nested values for a string name. See examples for details.
        summary:
          type: string
          maxLength: 25000
          minLength: 0
        tags:
          type: array
          description: A collection of tags to identify the relevance of metadata resource. Tags with no spaces is defacto standard
          example:
          - HumanitarianAid
          items:
            type: string
            description: A collection of tags to identify the relevance of metadata resource. Tags with no spaces is defacto standard
            example:
            - HumanitarianAid
        title:
          type: string
          description: Title of the metadata resource. Required for POST and PUT.
          example: crypto.snowflake
          maxLength: 120
          minLength: 1
        typeLabel:
          type: string
          description: 'Indicates the type of metadata resource. Some examples of valid values are Report, Tableau dashboard, Glossary, Table, Database view etc. Default values will be assumed if not provided. Defaults to Report for analysis resources, Glossary for Glossary resources, Table for Table resources and Column for Column resources. Once specified during creation, this cannot be changed via PATCH. Only a PUT can change the type '
          example: Tableau dashboard
    DatabaseDto:
      type: object
      properties:
        catalog:
          type: string
        created:
          type: string
          format: date-time
        environment:
          type: string
        id:
          type: string
        port:
          type: integer
          format: int32
        schema:
          type: string
        server:
          type: string
        type:
          type: string
        updated:
          type: string
          format: date-time
    EmojiIcon:
      allOf:
      - $ref: '#/components/schemas/Icon'
      - type: object
        properties:
          type:
            type: string
            const: emoji
          value:
            type: string
    AgentHydrationDto:
      type: object
      properties:
        avatarUrl:
          type: string
        deactivated:
          type: boolean
        displayName:
          type: string
        id:
          type: string
    Image:
      type: object
      discriminator:
        mapping:
          hosted: '#/components/schemas/HostedImage'
          provided: '#/components/schemas/ProvidedImage'
        propertyName: type
      properties:
        type:
          type: string
          enum:
          - hosted
          - provided
    CatalogTableSuggestRequest:
      type: object
      properties:
        collectionsToAdd:
          type: array
          description: Catalog Collection to which this metadata resource is added. Required for POST and PUT.Available catalog collection can be discovered via appropriate discovery endpoints.
          example:
          - Aid Option
          items:
            type: string
            description: Catalog Collection to which this metadata resource is added. Required for POST and PUT.Available catalog collection can be discovered via appropriate discovery endpoints.
            example:
            - Aid Option
        collectionsToRemove:
          type: array
          description: Catalog Collection to which this metadata resource is added. Required for POST and PUT.Available catalog collection can be discovered via appropriate discovery endpoints.
          example:
          - Aid Option
          items:
            type: string
            description: Catalog Collection to which this metadata resource is added. Required for POST and PUT.Available catalog collection can be discovered via appropriate discovery endpoints.
            example:
            - Aid Option
        description:
          type: string
          description: A short, but descriptive statement about the metadata resource.
          example: Aid given to charity is an option that can be exercised by individuals and corporations
          maxLength: 5000
          minLength: 0
        message:
          type: string
          description: Message for the suggestion
          example: I strongly suggest
          maxLength: 250
          minLength: 1
        properties:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/StringOrArray'
          description: Custom properties for the metadata resource mapped to API BindingsCan be simple name-value string pairs or nested values for a string name. See examples for details.
        summary:
          type: string
          maxLength: 25000
          minLength: 0
        tagsToAdd:
          type: array
          description: A collection of tags to identify the relevance of metadata resource. Tags with no spaces is defacto standard
          example:
          - HumanitarianAid
          items:
            type: string
            description: A collection of tags to identify the relevance of metadata resource. Tags with no spaces is defacto standard
            example:
            - HumanitarianAid
        tagsToRemove:
          type: array
          description: A collection of tags to identify the relevance of metadata resource. Tags with no spaces is defacto standard
          example:
          - HumanitarianAid
          items:
            type: string
            description: A collection of tags to identify the relevance of metadata resource. Tags with no spaces is defacto standard
            example:
            - HumanitarianAid
        title:
          type: string
          description: Title of the metadata resource. Required for POST and PUT.
          example: crypto.snowflake
          maxLength: 120
          minLength: 1
        typeLabel:
          type: string
          description: 'Indicates the type of metadata resource. Some examples of valid values are Report, Tableau dashboard, Glossary, Table, Database view etc. Default values will be assumed if not provided. Defaults to Report for analysis resources, Glossary for Glossary resources, Table for Table resources and Column for Column resources. Once specified during creation, this cannot be changed via PATCH. Only a PUT can change the type '
          example: Tableau dashboard
    RelationshipHydrationDto:
      type: object
      properties:
        labels:
          type: array
          description: Label of the relationship presentation associated with the relationship
          items:
            type: string
    PropertyHydrationDto:
      type: object
      properties:
        label:
          type: array
          description: Label of the metadata presentation associated with the property
          items:
            type: string
    ResourceHierarchyDto:
      type: object
      properties:
        assetStatus:
          $ref: '#/components/schemas/AssetStatus'
          description: 'Resource status: Pending, Approved etc.'
        hierarchy:
          type: array
          description: Parent types of this resource's type. Returns the most specific type followed by its parent. The first item is the same as type. The last item is the root type.
          items:
            $ref: '#/components/schemas/EntryType'
        icon:
          $ref: '#/components/schemas/Icon'
          description: Resource icon details.
          oneOf:
          - $ref: '#/components/schemas/EmojiIcon'
          - $ref: '#/components/schemas/ImageIcon'
          - $ref: '#/components/schemas/SvgIcon'
        iri:
          type: string
          description: Resource IRI.
        owner:
          type: string
          description: The ID of the organization that this resource belongs to
        title:
          type: string
          description: Resource title
        type:
          type: string
          description: Resource simple type name, e.g. catalogDatabase, catalogEntry etc.
        typeLabel:
          type: string
          description: Resource type label.
    AssetStatus:
      type: object
      properties:
        assetStatusLabel:
          type: string
        dispositionLabel:
          type: string
    TableId:
      type: object
      properties:
        owner:
          type: string
        sourceId:
          type: string
        tableId:
          type: string
      required:
      - owner
      - tableId
    CreateResponse:
      type: object
      properties:
        message:
          type: string
          maxLength: 256
          minLength: 0
        uri:
          type: string
          format: uri
      required:
      - uri
    SvgIcon:
      allOf:
      - $ref: '#/components/schemas/Icon'
      - type: object
        properties:
          image:
            $ref: '#/components/schemas/Image'
            oneOf:
            - $ref: '#/components/schemas/HostedImage'
            - $ref: '#/components/schemas/ProvidedImage'
          largeImage:
            $ref: '#/components/schemas/Image'
            oneOf:
            - $ref: '#/components/schemas/HostedImage'
            - $ref: '#/components/schemas/ProvidedImage'
          selectedImage:
            $ref: '#/components/schemas/Image'
            oneOf:
            - $ref: '#/components/schemas/HostedImage'
            - $ref: '#/components/schemas/ProvidedImage'
          type:
            type: string
            const: svg-image
    Icon:
      type: object
      discriminator:
        mapping:
          emoji: '#/components/schemas/EmojiIcon'
          image: '#/components/schemas/ImageIcon'
          svg-image: '#/components/schemas/SvgIcon'
        propertyName: type
      properties:
        type:
          type: string
          enum:
          - emoji
          - image
          - svg-image
    StringOrArray:
      oneOf:
      - type: string
      - type: array
        items:
          type: string
    HostedImage:
      allOf:
      - $ref: '#/components/schemas/Image'
      - type: object
        properties:
          type:
            type: string
            const: hosted
          url:
            type: string
    CatalogId:
      type: object
      properties:
        collectionId:
          type: string
        owner:
          type: string
        referent:
          type: string
      required:
      - collectionId
      - owner
      - referent
    PaginatedDatabaseResults:
      type: object
      properties:
        count:
          type: integer
          format: int32
          minimum: 0
        nextPageToken:
          type: string
        records:
          type: array
          items:
            $ref: '#/components/schemas/DatabaseDto'
      required:
      - count
      - records
    EntryType:
      type: object
      properties:
        icon:
          $ref: '#/components/schemas/Icon'
          oneOf:
          - $ref: '#/components/schemas/EmojiIcon'
          - $ref: '#/components/schemas/ImageIcon'
          - $ref: '#/components/schemas/SvgIcon'
        instantiable:
          type: boolean
        label:
          type: string
        pluralLabel:
          type: string
        requestable:
          type: boolean
        type:
          type: string
          description: Entry type IRI
    CollectionHydrationDto:
      type: object
      properties:
        description:
          type: string
        id:
          type: string
          description: dct:identifier of the collection
        iri:
          type: string
        owner:
          type: string
        title:
          type: string
    MetadataResourceDto:
      type: object
      properties:
        assetStatus:
          $ref: '#/components/schemas/AssetStatus'
        category:
          type: string
        collections:
          type: array
          items:
            $ref: '#/components/schemas/CatalogId'
        columnIndex:
          type: integer
          format: int32
        created:
          type: string
          format: date-time
        dataType:
          type: string
        description:
          type: string
        encodedIri:
          type: string
        

# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/data-world/refs/heads/main/openapi/data-world-legacy-catalog-data-api-openapi.yml