Immuta Data Source API

APIs for managing data sources

Operations 3

PUT /api/data-product/{id}/datasources Update the data product's data sources #
GET /api/data-product/{id}/datasources Search all data sources in the data product #
GET /api/data-product/{id}/datasources/all Get all data sources in the data product #

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/immuta-data-source-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

immuta-data-source-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Immuta Data Marketplace Data Source API
  description: This is the API for the Immuta Data Marketplace based on the OpenAPI 3.0 specification. The API supports the discovery and management of data products as well as access to those products including both the request and approval process.
  version: '1.0'
  contact:
    name: Support
    url: https://support.immuta.com
    email: support@immuta.com
  termsOfService: https://www.immuta.com/terms-of-service
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://{global-segment}.api.immutacloud.com/marketplace
  description: Marketplace API Endpoint
  variables:
    global-segment:
      default: na
      enum:
      - na
      - eu
      - ap
      description: Marketplace API global segment
tags:
- name: Data Source
  description: APIs for managing data sources
paths:
  /api/data-product/{id}/datasources:
    put:
      description: Update the data sources associated with the data product. Any currently associated data sources not included in the payload will be removed.
      operationId: updateDataSources
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDataSources'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataProduct'
      security:
      - bearer: []
      summary: Update the data product's data sources
      tags:
      - Data Source
    get:
      description: Search all data sources for the data product using the provided filters
      operationId: searchDataSources
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: nextToken
        required: false
        in: query
        description: Pagination token to fetch the next page of results
        schema:
          type: string
      - name: limit
        required: false
        in: query
        description: The number of items to return per page
        schema:
          minimum: 1
          maximum: 100
          default: 10
          type: number
      - name: user
        required: false
        in: query
        description: The global user ID to search data source access status for
        schema:
          format: uuid
          type: string
      - name: nameFilter
        required: false
        in: query
        description: Data source name to filter by
        schema:
          default: ''
          oneOf:
          - type: string
            description: Data source name to filter by
          - type: string
            minLength: 0
            maxLength: 0
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDataSourceWithStatus'
      security:
      - bearer: []
      summary: Search all data sources in the data product
      tags:
      - Data Source
  /api/data-product/{id}/datasources/all:
    get:
      description: Get all data sources in the data product
      operationId: getAllDataSources
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AllDataSources'
      security:
      - bearer: []
      summary: Get all data sources in the data product
      tags:
      - Data Source
components:
  schemas:
    PaginatedDataSourceWithStatus:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: cuid
              name:
                type: string
                example: Web Sales 2024
              type:
                type: string
              sourceId:
                type: string
              hostname:
                oneOf:
                - type: string
                  description: Data source hostname
                description: Data source hostname
              database:
                oneOf:
                - type: string
                  description: Data source database name
                description: Data source database name
              schema:
                oneOf:
                - type: string
                  description: Data source schema name
                description: Data source schema name
              table:
                oneOf:
                - type: string
                  description: Data source table name
                description: Data source table name
              prefix:
                oneOf:
                - type: string
                  description: The native S3 prefix
                description: The native S3 prefix
              status:
                type: string
                enum:
                - NONE
                - RESTRICTED
                - SUBSCRIBED
                description: Govern app subscription status
            required:
            - id
            - name
            - type
            - sourceId
            - status
        meta:
          type: object
          properties:
            nextToken:
              oneOf:
              - type: string
                description: Pagination token to fetch the next page of results, or null if there are no more pages.
              description: Pagination token to fetch the next page of results, or null if there are no more pages.
            limit:
              default: 10
              type: number
              minimum: 1
              maximum: 100
              description: The number of items to return per page
          required:
          - nextToken
      required:
      - data
      - meta
    DataProduct:
      type: object
      properties:
        id:
          oneOf:
          - type: string
            format: cuid
          - type: string
            format: uuid
        name:
          type: string
          minLength: 1
          maxLength: 255
          pattern: ^[\p{L}\p{M}\p{N})(\-_/\\\s]*$
          description: Data product name
        description:
          oneOf:
          - type: string
            description: Data product description
            example: All sales records from the current fiscal year
          description: Data product description
        domains:
          type: array
          items:
            type: string
          minItems: 1
          example:
          - 4d004a3a-4568-4c1d-822e-30958ef898dc
        suspended:
          type: boolean
          description: Whether access to the data product's data sources is suspended
          example: false
        createdBy:
          type: string
          format: uuid
          description: Immuta global user ID of the user who created the data product
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        status:
          type: string
          enum:
          - APPROVED
          - CANCELED
          - DENIED
          - PENDING
          - NONE
          - PUBLISHER
          - REVOKED
          - EXPIRED
          example: PENDING
        expiration:
          oneOf:
          - type: string
            format: date-time
        stats:
          type: object
          properties:
            dataSourceCount:
              type: integer
              description: Count of data sources in a data product
            pendingRequestCount:
              type: integer
              description: Count of pending requests for a data product
            approvedRequestCount:
              type: integer
              description: Count of approved requests for a data product
            revokedRequestCount:
              type: integer
              description: Count of revoked requests for a data product
            canceledRequestCount:
              type: integer
              description: Count of canceled requests for a data product
            deniedRequestCount:
              type: integer
              description: Count of denied requests for a data product
            totalRequestCount:
              type: integer
              description: Count of total requests for a data product
          required:
          - dataSourceCount
          - pendingRequestCount
          - approvedRequestCount
          - revokedRequestCount
          - canceledRequestCount
          - deniedRequestCount
          - totalRequestCount
          description: Data product statistics
          title: Data Product Stats
        requestId:
          type: string
          format: cuid
          description: If requested, the ID of the access request for the data product
        sourceTypes:
          type: array
          items:
            type: string
          description: The types of data sources contained in the data product.
          example:
          - Databricks
          - Redshift
          - Snowflake
        metadata:
          oneOf:
          - type: object
            properties:
              subjectMatterExpert:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                    description: Immuta global user ID of the subject matter expert for this data product
                  username:
                    type: string
                  name:
                    type: string
                required:
                - id
            required:
            - subjectMatterExpert
        dataAccessPolicy:
          default:
            rules: []
            defaultEvent:
              type: review
              params:
                stages:
                - any:
                  - type: PERMISSION
                    permission: GOVERNANCE
                  - type: DOMAIN PERMISSION
                    permission: Manage Data Products
          type: object
          properties:
            version:
              type: string
              description: Policy schema version
            rules:
              type: array
              items:
                type: object
                properties:
                  conditions:
                    oneOf:
                    - type: object
                      properties:
                        all:
                          type: array
                          items: {}
                      required:
                      - all
                      additionalProperties: false
                    - type: object
                      properties:
                        any:
                          type: array
                          items: {}
                      required:
                      - any
                      additionalProperties: false
                    - type: object
                      properties:
                        not: {}
                      required:
                      - not
                      additionalProperties: false
                  event:
                    discriminator:
                      propertyName: type
                    oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                          - approve
                        params:
                          type: object
                          properties:
                            comment:
                              type: string
                            duration:
                              type: number
                              minimum: 1
                            durationUnit:
                              type: string
                              enum:
                              - HOURS
                              - DAYS
                              - WEEKS
                              - MONTHS
                              - YEARS
                          additionalProperties: false
                      required:
                      - type
                      - params
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                          - deny
                        params:
                          type: object
                          properties:
                            comment:
                              type: string
                      required:
                      - type
                      - params
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                          - review
                        params:
                          type: object
                          properties:
                            stages:
                              type: array
                              items:
                                oneOf:
                                - type: object
                                  properties:
                                    all:
                                      type: array
                                      items:
                                        oneOf:
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - USER
                                              description: Entity type
                                            id:
                                              type: string
                                              description: Entity ID
                                            displayName:
                                              type: string
                                              description: Entity display name
                                          required:
                                          - type
                                          - id
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - GROUP
                                              description: Entity type
                                            id:
                                              type: number
                                              description: Entity ID
                                            iamId:
                                              type: string
                                              description: IAM ID
                                            name:
                                              type: string
                                              description: Entity display name
                                          required:
                                          - type
                                          - name
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - PERMISSION
                                            permission:
                                              type: string
                                              enum:
                                              - GOVERNANCE
                                              - USER_ADMIN
                                              - AUDIT
                                              description: Global permission
                                          required:
                                          - type
                                          - permission
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - DOMAIN PERMISSION
                                            permission:
                                              type: string
                                              enum:
                                              - Manage Policies
                                              - Audit Activity
                                              - Manage Data Products
                                              - Manage Identifiers
                                              description: Domain permission
                                            domainId:
                                              type: string
                                              description: Domain ID
                                          required:
                                          - type
                                          - permission
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - ATTRIBUTE
                                            key:
                                              type: string
                                              description: Attribute key
                                            value:
                                              type: string
                                              description: Attribute value
                                          required:
                                          - type
                                          - key
                                          - value
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - CATALOG PERMISSION
                                          required:
                                          - type
                                      minItems: 1
                                  required:
                                  - all
                                - type: object
                                  properties:
                                    any:
                                      type: array
                                      items:
                                        oneOf:
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - USER
                                              description: Entity type
                                            id:
                                              type: string
                                              description: Entity ID
                                            displayName:
                                              type: string
                                              description: Entity display name
                                          required:
                                          - type
                                          - id
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - GROUP
                                              description: Entity type
                                            id:
                                              type: number
                                              description: Entity ID
                                            iamId:
                                              type: string
                                              description: IAM ID
                                            name:
                                              type: string
                                              description: Entity display name
                                          required:
                                          - type
                                          - name
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - PERMISSION
                                            permission:
                                              type: string
                                              enum:
                                              - GOVERNANCE
                                              - USER_ADMIN
                                              - AUDIT
                                              description: Global permission
                                          required:
                                          - type
                                          - permission
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - DOMAIN PERMISSION
                                            permission:
                                              type: string
                                              enum:
                                              - Manage Policies
                                              - Audit Activity
                                              - Manage Data Products
                                              - Manage Identifiers
                                              description: Domain permission
                                            domainId:
                                              type: string
                                              description: Domain ID
                                          required:
                                          - type
                                          - permission
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - ATTRIBUTE
                                            key:
                                              type: string
                                              description: Attribute key
                                            value:
                                              type: string
                                              description: Attribute value
                                          required:
                                          - type
                                          - key
                                          - value
                                        - type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                              - CATALOG PERMISSION
                                          required:
                                          - type
                                      minItems: 1
                                  required:
                                  - any
                              description: Array of stages for manual review
                          required:
                          - stages
                      required:
                      - type
                      - params
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                          - dataProductPolicy
                      required:
                      - type
                required:
                - conditions
                - event
            defaultEvent:
              discriminator:
                propertyName: type
              oneOf:
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - approve
                  params:
                    type: object
                    properties:
                      comment:
                        type: string
                      duration:
                        type: number
                        minimum: 1
                      durationUnit:
                        type: string
                        enum:
                        - HOURS
                        - DAYS
                        - WEEKS
                        - MONTHS
                        - YEARS
                    additionalProperties: false
                required:
                - type
                - params
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - review
                  params:
                    type: object
                    properties:
                      stages:
                        type: array
                        items:
                          oneOf:
                          - type: object
                            properties:
                              all:
                                type: array
                                items:
                                  oneOf:
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                        - USER
                                        description: Entity type
                                      id:
                                        type: string
                                        description: Entity ID
                                      displayName:
                                        type: string
                                        description: Entity display name
                                    required:
                                    - type
                                    - id
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                        - GROUP
                                        description: Entity type
                                      id:
                                        type: number
                                        description: Entity ID
                                      iamId:
                                        type: string
                                        description: IAM ID
                                      name:
                                        type: string
                                        description: Entity display name
                                    required:
                                    - type
                                    - name
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                        - PERMISSION
                                      permission:
                                        type: string
                                        enum:
                                        - GOVERNANCE
                                        - USER_ADMIN
                                        - AUDIT
                                        description: Global permission
                                    required:
                                    - type
                                    - permission
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                        - DOMAIN PERMISSION
                                      permission:
                                        type: string
                                        enum:
                                        - Manage Policies
                                        - Audit Activity
                                        - Manage Data Products
                                        - Manage Identifiers
                                        description: Domain permission
                                      domainId:
                                        type: string
                                        description: Domain ID
                                    required:
                                    - type
                                    - permission
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                        - ATTRIBUTE
                                      key:
                                        type: string
                                        description: Attribute key
                                      value:
                                        type: string
                                        description: Attribute value
                                    required:
                                    - type
                                    - key
                                    - value
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                        - CATALOG PERMISSION
                                    required:
                                    - type
                                minItems: 1
                            required:
                            - all
                          - type: object
                            properties:
                              any:
                                type: array
                                items:
                                  oneOf:
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                      

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