Marketplace API Endpoints

Search access requests

get

Search and filter access requests the current user can manage

Authorizations
Query parameters
searchTextstringOptional
userIdsstring[]Optional
historicalbooleanOptional

Whether to include historical access requests

Default: true
includeTemporarybooleanOptional

Whether to include temporary access requests

Default: false
dataProductIdone ofOptional

The ID of the data product to filter requests by

string · cuidOptional

The ID of the data product to filter requests by

or
string · uuidOptional
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
sortOrderstring · enumOptionalDefault: descPossible values:
sortBystring · enumOptionalDefault: createdAtPossible values:
Responses
200Success
application/json
get
/api/access-request
GET /marketplace/api/access-request HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "id": "text",
      "requestingUser": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "user": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "formVersion": "text",
      "form": null,
      "type": "DATA_ACCESS",
      "metadata": null,
      "status": "PENDING",
      "expiration": "2025-10-29T15:35:14.436Z",
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedAt": "2025-10-29T15:35:14.436Z",
      "dataProduct": {
        "id": "text",
        "name": "text",
        "description": "All sales records from the current fiscal year"
      }
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Get the list of approved masking exception columns for the specified user

get

Returns the list of approved masking exception columns for the specified user

Authorizations
Query parameters
userIdstringRequired
Responses
200Success
application/json
get
/api/access-request/approved-masking-exception-columns
GET /marketplace/api/access-request/approved-masking-exception-columns?userId=text HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "columnName": "text",
    "sourceId": "text"
  }
]

Cancel a pending access request

delete

Cancel the specified pending access request by ID, cascading the cancellation to any pending and blocked approval records.

Authorizations
Path parameters
idstringRequired
Responses
204Success

No content

delete
/api/access-request/{id}
DELETE /marketplace/api/access-request/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204Success

No content

Get individual access request

get

Returns specific details for a specific access request

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/access-request/{id}
GET /marketplace/api/access-request/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "text",
  "requestingUser": {
    "id": 1,
    "iamId": "text",
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "username": "text",
    "name": "text",
    "email": "text",
    "authorizations": {
      "ANY_ADDITIONAL_PROPERTY": [
        "text"
      ]
    }
  },
  "user": {
    "id": 1,
    "iamId": "text",
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "username": "text",
    "name": "text",
    "email": "text",
    "authorizations": {
      "ANY_ADDITIONAL_PROPERTY": [
        "text"
      ]
    }
  },
  "formVersion": "text",
  "form": null,
  "type": "DATA_ACCESS",
  "metadata": null,
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "dataProduct": {
    "id": "text",
    "name": "text",
    "description": "All sales records from the current fiscal year"
  }
}

Search masking exception columns associated with the masking exception request

get

Search masking exception columns associated with a specific masking exception request

Authorizations
Path parameters
idstringRequired
Query parameters
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
Responses
200Success
application/json
get
/api/access-request/{id}/masking-exception-columns
GET /marketplace/api/access-request/{id}/masking-exception-columns HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "name": "text",
      "sourceId": "text",
      "sourceName": "text",
      "tags": [
        "text"
      ]
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Get approval records associated with the a request

get

Returns all approval records associated with a specific access request

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/access-request/{id}/records
GET /marketplace/api/access-request/{id}/records HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "approvalRecords": [
    {
      "id": "text",
      "dataAccessRequestId": "text",
      "approvers": [
        {
          "type": "USER",
          "id": "text",
          "displayName": "text"
        }
      ],
      "prerequisites": [
        "text"
      ],
      "actionBy": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "status": "PENDING",
      "reason": "text",
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedAt": "2025-10-29T15:35:14.436Z",
      "approverCriteriaMet": [
        {
          "type": "USER",
          "id": "text",
          "displayName": "text"
        }
      ],
      "duration": 1,
      "durationUnit": "text"
    }
  ]
}

Get the risk assessment for a specific access request

get

Returns the risk assessment for a specific access request

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
Responseone of
or
get
/api/access-request/{id}/risk-assessment
GET /marketplace/api/access-request/{id}/risk-assessment HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "conflictDetected": true,
  "approvalRisk": "HIGH",
  "recommendation": "APPROVED",
  "nAllowed": 1,
  "nDenied": 1,
  "riskValue": 1,
  "cohort": {
    "literals": [
      {
        "name": "text"
      },
      {
        "negation": true
      }
    ]
  },
  "medianApprovalTimeWindowInDays": 1,
  "explanation": "text",
  "approvalReasons": [
    "text"
  ],
  "denialReasons": [
    "text"
  ]
}

Approve or reject an approval record

put

Modify a pending approval record as an approver

Authorizations
Path parameters
idstringRequired
Body
statusstring · enumRequiredExample: PENDINGPossible values:
reasonstringOptional
durationnumber · min: 1Optional
durationUnitstring · enumOptionalPossible values:
Responses
200Success
application/json
put
/api/approval-record/{id}
PUT /marketplace/api/approval-record/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 72

{
  "status": "PENDING",
  "reason": "text",
  "duration": 1,
  "durationUnit": "HOURS"
}
200Success
{
  "id": "text",
  "dataAccessRequestId": "text",
  "approvers": [
    {
      "type": "USER",
      "id": "text",
      "displayName": "text"
    }
  ],
  "prerequisites": [
    "text"
  ],
  "actionBy": {
    "id": 1,
    "iamId": "text",
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "username": "text",
    "name": "text",
    "email": "text",
    "authorizations": {
      "ANY_ADDITIONAL_PROPERTY": [
        "text"
      ]
    }
  },
  "status": "PENDING",
  "reason": "text",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "approverCriteriaMet": [
    {
      "type": "USER",
      "id": "text",
      "displayName": "text"
    }
  ],
  "duration": 1,
  "durationUnit": "text"
}

Search data products across the marketplace

get

Search data products in the marketplace using the provided filters

Authorizations
Query parameters
nextTokenstringOptional

Pagination token to fetch the next page of results

limitnumber · min: 1 · max: 100Optional

The number of items to return per page

Default: 10
sortOrderstring · enumOptionalDefault: ascPossible values:
sortBystring · enumOptionalPossible values:
nameFilterstringOptional
Responses
200Success
application/json
get
/api/data-product
GET /marketplace/api/data-product HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "id": "text",
      "name": "text",
      "description": "All sales records from the current fiscal year",
      "domains": [
        "4d004a3a-4568-4c1d-822e-30958ef898dc"
      ],
      "suspended": false,
      "createdBy": "123e4567-e89b-12d3-a456-426614174000",
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedAt": "2025-10-29T15:35:14.436Z",
      "status": "PENDING",
      "expiration": "2025-10-29T15:35:14.436Z",
      "stats": {
        "dataSourceCount": 1,
        "pendingRequestCount": 1,
        "approvedRequestCount": 1,
        "revokedRequestCount": 1,
        "canceledRequestCount": 1,
        "deniedRequestCount": 1,
        "totalRequestCount": 1
      },
      "requestId": "text",
      "sourceTypes": [
        "Databricks",
        "Redshift",
        "Snowflake"
      ],
      "metadata": {
        "subjectMatterExpert": {
          "id": "123e4567-e89b-12d3-a456-426614174000",
          "username": "text",
          "name": "text"
        }
      },
      "dataAccessPolicy": {
        "version": "text",
        "rules": [
          {
            "conditions": {
              "all": []
            },
            "event": {
              "type": "approve",
              "params": {
                "comment": "text",
                "duration": 1,
                "durationUnit": "HOURS"
              }
            }
          }
        ],
        "defaultEvent": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      },
      "maskingExceptionPolicy": {
        "version": "text",
        "rules": [
          {
            "conditions": {
              "all": []
            },
            "event": {
              "type": "approve",
              "params": {
                "comment": "text",
                "duration": 1,
                "durationUnit": "HOURS"
              }
            }
          }
        ],
        "defaultEvent": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    }
  ],
  "meta": {
    "nextToken": "text",
    "limit": 10
  }
}

Add new data products to the marketplace

post

Add one or more data products to the marketplace

Authorizations
Body
namestring · min: 1 · max: 64Required

Data product name

Pattern: ^[a-zA-Z0-9)(\-_/\\\s]*$
descriptionone of | nullableOptional

Data product description

stringOptional

Data product description

Example: All sales records from the current fiscal year
metadataone of | nullableRequired
domainsstring[]RequiredExample: ["4d004a3a-4568-4c1d-822e-30958ef898dc"]
idstring · uuidOptional

Data product ID

requestFormIdone ofRequired
string · cuidOptional
or
string · uuidOptional
Responses
201Success
application/json
post
/api/data-product
POST /marketplace/api/data-product HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 877

{
  "name": "text",
  "description": "All sales records from the current fiscal year",
  "metadata": {
    "subjectMatterExpert": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text"
    }
  },
  "domains": [
    "4d004a3a-4568-4c1d-822e-30958ef898dc"
  ],
  "dataAccessPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "maskingExceptionPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "dataSources": [
    {
      "sourceId": "text"
    }
  ],
  "requestFormId": "text"
}
{
  "id": "text",
  "name": "text",
  "description": "All sales records from the current fiscal year",
  "domains": [
    "4d004a3a-4568-4c1d-822e-30958ef898dc"
  ],
  "suspended": false,
  "createdBy": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "stats": {
    "dataSourceCount": 1,
    "pendingRequestCount": 1,
    "approvedRequestCount": 1,
    "revokedRequestCount": 1,
    "canceledRequestCount": 1,
    "deniedRequestCount": 1,
    "totalRequestCount": 1
  },
  "requestId": "text",
  "sourceTypes": [
    "Databricks",
    "Redshift",
    "Snowflake"
  ],
  "metadata": {
    "subjectMatterExpert": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text"
    }
  },
  "dataAccessPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "maskingExceptionPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  }
}

Delete data product by ID

delete

Delete the specified data product from the system

Authorizations
Path parameters
idstringRequired
Responses
200Success

No content

delete
/api/data-product/{id}
DELETE /marketplace/api/data-product/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success

No content

Get data product by ID

get

Get data product metadata for the specified data product ID

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/data-product/{id}
GET /marketplace/api/data-product/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "text",
  "name": "text",
  "description": "All sales records from the current fiscal year",
  "domains": [
    "4d004a3a-4568-4c1d-822e-30958ef898dc"
  ],
  "suspended": false,
  "createdBy": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "stats": {
    "dataSourceCount": 1,
    "pendingRequestCount": 1,
    "approvedRequestCount": 1,
    "revokedRequestCount": 1,
    "canceledRequestCount": 1,
    "deniedRequestCount": 1,
    "totalRequestCount": 1
  },
  "requestId": "text",
  "sourceTypes": [
    "Databricks",
    "Redshift",
    "Snowflake"
  ],
  "metadata": {
    "subjectMatterExpert": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text"
    }
  },
  "dataAccessPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "maskingExceptionPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  }
}

Update an existing data product

put

Update an existing data product by ID

Authorizations
Path parameters
idstringRequired
Body
namestring · min: 1 · max: 64Optional

Data product name

Pattern: ^[a-zA-Z0-9)(\-_/\\\s]*$
descriptionone of | nullableOptional

Data product description

stringOptional

Data product description

Example: All sales records from the current fiscal year
metadataone of | nullableOptional
domainsstring[]OptionalExample: ["4d004a3a-4568-4c1d-822e-30958ef898dc"]
idstring · uuidOptional

Data product ID

requestFormIdone ofOptional
string · cuidOptional
or
string · uuidOptional
suspendedbooleanOptional

Whether access to the data product's data sources is suspended

Example: false
Responses
200Success
application/json
put
/api/data-product/{id}
PUT /marketplace/api/data-product/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 895

{
  "name": "text",
  "description": "All sales records from the current fiscal year",
  "metadata": {
    "subjectMatterExpert": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text"
    }
  },
  "domains": [
    "4d004a3a-4568-4c1d-822e-30958ef898dc"
  ],
  "dataAccessPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "maskingExceptionPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "dataSources": [
    {
      "sourceId": "text"
    }
  ],
  "requestFormId": "text",
  "suspended": false
}
200Success
{
  "id": "text",
  "name": "text",
  "description": "All sales records from the current fiscal year",
  "domains": [
    "4d004a3a-4568-4c1d-822e-30958ef898dc"
  ],
  "suspended": false,
  "createdBy": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "stats": {
    "dataSourceCount": 1,
    "pendingRequestCount": 1,
    "approvedRequestCount": 1,
    "revokedRequestCount": 1,
    "canceledRequestCount": 1,
    "deniedRequestCount": 1,
    "totalRequestCount": 1
  },
  "requestId": "text",
  "sourceTypes": [
    "Databricks",
    "Redshift",
    "Snowflake"
  ],
  "metadata": {
    "subjectMatterExpert": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text"
    }
  },
  "dataAccessPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "maskingExceptionPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  }
}

Search columns in data product

get

Search and filter columns in the data product using the provided filters

Authorizations
Path parameters
idstringRequired
Query parameters
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
sortOrderstring · enumOptionalDefault: ascPossible values:
dataSourceIdsstring[]OptionalDefault: []
searchTextstringOptional

Search text to filter data product columns

maskedOnlybooleanOptional

Whether to filter columns that have a masking policy applied to them

Default: false
tagIdsstring[]OptionalDefault: []
dirstring · enumOptionalDefault: ASCPossible values:
Responses
200Success
application/json
get
/api/data-product/{id}/columns
GET /marketplace/api/data-product/{id}/columns HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "name": "text",
      "sourceId": "text",
      "sourceName": "text",
      "tags": [
        "text"
      ],
      "masking": [
        {
          "type": "text",
          "global": true
        }
      ]
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Search all data sources in the data product

get

Search all data sources for the data product using the provided filters

Authorizations
Path parameters
idstringRequired
Query parameters
nextTokenstringOptional

Pagination token to fetch the next page of results

limitnumber · min: 1 · max: 100Optional

The number of items to return per page

Default: 10
userstring · uuidOptional

The global user ID to search data source access status for

nameFilterone ofOptional

Data source name to filter by

Default: ""
stringOptional

Data source name to filter by

or
stringOptional
Responses
200Success
application/json
get
/api/data-product/{id}/datasources
GET /marketplace/api/data-product/{id}/datasources HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "id": "text",
      "name": "Web Sales 2024",
      "type": "text",
      "sourceId": "text",
      "hostname": "text",
      "database": "text",
      "schema": "text",
      "table": "text",
      "prefix": "text",
      "status": "NONE"
    }
  ],
  "meta": {
    "nextToken": "text",
    "limit": 10
  }
}

Update the data product's data sources

put

Update the data sources associated with the data product. Any currently associated data sources not included in the payload will be removed.

Authorizations
Path parameters
idstringRequired
Body
Responses
200Success
application/json
put
/api/data-product/{id}/datasources
PUT /marketplace/api/data-product/{id}/datasources HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 37

{
  "dataSources": [
    {
      "sourceId": "text"
    }
  ]
}
200Success
{
  "id": "text",
  "name": "text",
  "description": "All sales records from the current fiscal year",
  "domains": [
    "4d004a3a-4568-4c1d-822e-30958ef898dc"
  ],
  "suspended": false,
  "createdBy": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "stats": {
    "dataSourceCount": 1,
    "pendingRequestCount": 1,
    "approvedRequestCount": 1,
    "revokedRequestCount": 1,
    "canceledRequestCount": 1,
    "deniedRequestCount": 1,
    "totalRequestCount": 1
  },
  "requestId": "text",
  "sourceTypes": [
    "Databricks",
    "Redshift",
    "Snowflake"
  ],
  "metadata": {
    "subjectMatterExpert": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text"
    }
  },
  "dataAccessPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "maskingExceptionPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  }
}

Get all data sources in the data product

get

Get all data sources in the data product

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/data-product/{id}/datasources/all
GET /marketplace/api/data-product/{id}/datasources/all HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "dataSources": [
    {
      "sourceId": "text"
    }
  ]
}

Search all access requests for the data product

get

Search all approved access requests for the data product

Authorizations
Path parameters
idstringRequired
Query parameters
searchTextstringOptional
userIdsstring[]Optional
dataProductIdone ofOptional

The ID of the data product to filter requests by

string · cuidOptional

The ID of the data product to filter requests by

or
string · uuidOptional
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
sortOrderstring · enumOptionalDefault: descPossible values:
sortBystring · enumOptionalDefault: createdAtPossible values:
Responses
200Success
application/json
get
/api/data-product/{id}/members
GET /marketplace/api/data-product/{id}/members HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "id": "text",
      "requestingUser": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "user": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "formVersion": "text",
      "form": null,
      "type": "DATA_ACCESS",
      "metadata": null,
      "status": "PENDING",
      "expiration": "2025-10-29T15:35:14.436Z",
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedAt": "2025-10-29T15:35:14.436Z",
      "dataProduct": {
        "id": "text",
        "name": "text",
        "description": "All sales records from the current fiscal year"
      }
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Returns 5 most recent manual access determinations

get

Returns 5 most recent data access requests with a terminal status as well as the approval records which contributed to that status.

Authorizations
Path parameters
idstringRequired
Query parameters
typestring · enumOptionalDefault: DATA_ACCESSPossible values:
Responses
200Success
application/json
get
/api/data-product/{id}/recent-determinations
GET /marketplace/api/data-product/{id}/recent-determinations HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "determinations": [
    {
      "id": "text",
      "requestingUser": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "user": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "actionBy": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "reason": "text",
      "status": "PENDING",
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedAt": "2025-10-29T15:35:14.436Z",
      "expiration": "2025-10-29T15:35:14.436Z"
    }
  ]
}

Search all access requests for the data product

get

Search all access requests for the data product using the provided filters

Authorizations
Path parameters
idstringRequired
Query parameters
searchTextstringOptional
userIdsstring[]Optional
historicalbooleanOptional

Whether to include historical access requests

Default: true
includeTemporarybooleanOptional

Whether to include temporary access requests

Default: false
dataProductIdone ofOptional

The ID of the data product to filter requests by

string · cuidOptional

The ID of the data product to filter requests by

or
string · uuidOptional
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
sortOrderstring · enumOptionalDefault: descPossible values:
sortBystring · enumOptionalDefault: createdAtPossible values:
Responses
200Success
application/json
get
/api/data-product/{id}/request
GET /marketplace/api/data-product/{id}/request HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "id": "text",
      "requestingUser": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "user": {
        "id": 1,
        "iamId": "text",
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "username": "text",
        "name": "text",
        "email": "text",
        "authorizations": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "formVersion": "text",
      "form": null,
      "type": "DATA_ACCESS",
      "metadata": null,
      "status": "PENDING",
      "expiration": "2025-10-29T15:35:14.436Z",
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedAt": "2025-10-29T15:35:14.436Z",
      "dataProduct": {
        "id": "text",
        "name": "text",
        "description": "All sales records from the current fiscal year"
      }
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Request access to a data product

post

Create a new data access request for the specified data product

Authorizations
Path parameters
idstringRequired
Body
userstring · uuidRequired

Immuta global user ID of the user for whom access is being requested

formanyOptional

The request form submission

Responses
201Success
application/json
post
/api/data-product/{id}/request
POST /marketplace/api/data-product/{id}/request HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 59

{
  "user": "123e4567-e89b-12d3-a456-426614174000",
  "form": null
}
201Success
{
  "id": "text",
  "requestingUser": {
    "id": 1,
    "iamId": "text",
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "username": "text",
    "name": "text",
    "email": "text",
    "authorizations": {
      "ANY_ADDITIONAL_PROPERTY": [
        "text"
      ]
    }
  },
  "user": {
    "id": 1,
    "iamId": "text",
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "username": "text",
    "name": "text",
    "email": "text",
    "authorizations": {
      "ANY_ADDITIONAL_PROPERTY": [
        "text"
      ]
    }
  },
  "formVersion": "text",
  "form": null,
  "type": "DATA_ACCESS",
  "metadata": null,
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "dataProduct": {
    "id": "text",
    "name": "text",
    "description": "All sales records from the current fiscal year"
  }
}

View all request forms for a data product

get

Get all the request forms for the specified data product

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/data-product/{id}/request-forms
GET /marketplace/api/data-product/{id}/request-forms HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text",
    "fields": [
      {
        "id": "123e4567-e89b-12d3-a456-426614174000",
        "type": "DROPDOWN",
        "label": "text",
        "required": true,
        "options": [
          {
            "value": "text"
          }
        ]
      }
    ],
    "policy": {
      "version": "text",
      "rules": [
        {
          "conditions": {
            "all": []
          },
          "event": {
            "type": "approve",
            "params": {
              "comment": "text",
              "duration": 1,
              "durationUnit": "HOURS"
            }
          }
        }
      ],
      "defaultEvent": {
        "type": "approve",
        "params": {
          "comment": "text",
          "duration": 1,
          "durationUnit": "HOURS"
        }
      }
    },
    "dataUseAgreements": [
      {
        "id": "123e4567-e89b-12d3-a456-426614174000",
        "name": "text",
        "body": "text"
      }
    ],
    "createdBy": {
      "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text"
    },
    "createdAt": "2025-10-29T15:35:14.436Z",
    "updatedBy": {
      "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text"
    },
    "updatedAt": "2025-10-29T15:35:14.436Z",
    "version": "text"
  }
]

Request masking exception to columns in a data product

post

Create a new masking exception request for specific columns in the specified data product

Authorizations
Path parameters
idstringRequired
Body
userstring · uuidRequired

Immuta global user ID of the user for whom access is being requested

formanyOptional

The request form submission

Responses
201Success
application/json
post
/api/data-product/{id}/request/masking-exception
POST /marketplace/api/data-product/{id}/request/masking-exception HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 111

{
  "user": "123e4567-e89b-12d3-a456-426614174000",
  "form": null,
  "columns": [
    {
      "columnName": "text",
      "sourceId": "text"
    }
  ]
}
201Success
{
  "id": "text",
  "requestingUser": {
    "id": 1,
    "iamId": "text",
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "username": "text",
    "name": "text",
    "email": "text",
    "authorizations": {
      "ANY_ADDITIONAL_PROPERTY": [
        "text"
      ]
    }
  },
  "user": {
    "id": 1,
    "iamId": "text",
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "username": "text",
    "name": "text",
    "email": "text",
    "authorizations": {
      "ANY_ADDITIONAL_PROPERTY": [
        "text"
      ]
    }
  },
  "formVersion": "text",
  "form": null,
  "type": "DATA_ACCESS",
  "metadata": null,
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "dataProduct": {
    "id": "text",
    "name": "text",
    "description": "All sales records from the current fiscal year"
  }
}

Revoke access to a data product

delete

Updates the specified access request to revoked and revokes access to data sources associated with the data product

Authorizations
Path parameters
idstringRequired
requestIdstringRequired
Responses
204Success

No content

delete
/api/data-product/{id}/request/{requestId}
DELETE /marketplace/api/data-product/{id}/request/{requestId} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204Success

No content

Get data product by name

get

Get data product metadata for the specified data product name

Authorizations
Path parameters
namestringRequired
Responses
200Success
application/json
get
/api/data-product/{name}/byName
GET /marketplace/api/data-product/{name}/byName HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "text",
  "name": "text",
  "description": "All sales records from the current fiscal year",
  "domains": [
    "4d004a3a-4568-4c1d-822e-30958ef898dc"
  ],
  "suspended": false,
  "createdBy": "123e4567-e89b-12d3-a456-426614174000",
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "status": "PENDING",
  "expiration": "2025-10-29T15:35:14.436Z",
  "stats": {
    "dataSourceCount": 1,
    "pendingRequestCount": 1,
    "approvedRequestCount": 1,
    "revokedRequestCount": 1,
    "canceledRequestCount": 1,
    "deniedRequestCount": 1,
    "totalRequestCount": 1
  },
  "requestId": "text",
  "sourceTypes": [
    "Databricks",
    "Redshift",
    "Snowflake"
  ],
  "metadata": {
    "subjectMatterExpert": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text"
    }
  },
  "dataAccessPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "maskingExceptionPolicy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  }
}

Get all data use agreements

get

Search data use agreements in the marketplace using the provided filters

Authorizations
Query parameters
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
sortOrderstring · enumOptionalDefault: ascPossible values:
sortBystring · enumOptionalDefault: namePossible values:
nameFilterstringOptional

Filter results by data use agreement name

Default: ""
exactMatchbooleanOptional

Whether the filter should be an exact match

Default: false
Responses
200Success
application/json
get
/api/data-use-agreement
GET /marketplace/api/data-use-agreement HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "body": "text",
      "createdBy": {
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "name": "text"
      },
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedBy": {
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "name": "text"
      },
      "updatedAt": "2025-10-29T15:35:14.436Z"
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Create data use agreement

post

Create a new data use agreement

Authorizations
Body
idstring · uuidOptional
namestringRequired

The name of data use agreement

bodystringRequired

The contents of data use agreement

Responses
201Success
application/json
post
/api/data-use-agreement
POST /marketplace/api/data-use-agreement HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 73

{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "body": "text"
}
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "body": "text",
  "createdBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "updatedAt": "2025-10-29T15:35:14.436Z"
}

Delete data use agreement

delete

Delete the specified data use agreement

Authorizations
Path parameters
idstringRequired
Responses
204Success

No content

delete
/api/data-use-agreement/{id}
DELETE /marketplace/api/data-use-agreement/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204Success

No content

Get data use agreement by ID

get

Get data use agreement by ID

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/data-use-agreement/{id}
GET /marketplace/api/data-use-agreement/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "body": "text",
  "createdBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "updatedAt": "2025-10-29T15:35:14.436Z"
}

Update data use agreement

put

Update a data use agreement

Authorizations
Path parameters
idstringRequired
Body
namestringOptional

The name of data use agreement

bodystringOptional

The contents of data use agreement

Responses
201Success
application/json
put
/api/data-use-agreement/{id}
PUT /marketplace/api/data-use-agreement/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 29

{
  "name": "text",
  "body": "text"
}
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "body": "text",
  "createdBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "updatedAt": "2025-10-29T15:35:14.436Z"
}

Get request forms associated with a data use agreement

get

Get request forms associated with a data use agreement.

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/data-use-agreement/{id}/request-forms
GET /marketplace/api/data-use-agreement/{id}/request-forms HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  }
]

Search Immuta attributes

get

Search across all attributes in Immuta

Authorizations
Query parameters
searchstringOptional
typestringOptional
Responses
200Success
application/json
get
/api/metadata/attributes
GET /marketplace/api/metadata/attributes HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "attributes": [
    {
      "type": "text",
      "value": "text"
    }
  ]
}

Get available Immuta domains

get

Search Immuta domains that can be used to create a data product in the marketplace

Authorizations
Responses
200Success
application/json
get
/api/metadata/domain
GET /marketplace/api/metadata/domain HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "domains": [
    {
      "id": "text",
      "name": "North American Sales",
      "description": "A collection of data sources relevant to North American sales"
    }
  ]
}

Get the specified domain

get

Returns the Immuta domain specified in the request

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/metadata/domain/{id}
GET /marketplace/api/metadata/domain/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "text",
  "name": "North American Sales",
  "description": "A collection of data sources relevant to North American sales"
}

Search data sources in domain

get

Search data sources within the selected domain that can be included in a data product

Authorizations
Path parameters
idstringRequired
Query parameters
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
searchTextstringOptional

Search text to filter data sources

dataSourceIdsnumber[]Optional

Array of ids to filter data sources

Responses
200Success
application/json
get
/api/metadata/domain/{id}/datasources
GET /marketplace/api/metadata/domain/{id}/datasources HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "dataSourceId": 1,
      "name": "November 2023 Online",
      "platform": "Databricks",
      "createdAt": "2025-10-29T15:35:14.436Z",
      "prefix": "text",
      "hostname": "text",
      "database": "text",
      "schema": "text",
      "table": "text"
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Search Immuta groups

get

Search across all groups in Immuta

Authorizations
Query parameters
limitnumberOptionalDefault: 100
filterstringOptional
Responses
200Success
application/json
get
/api/metadata/groups
GET /marketplace/api/metadata/groups HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "groups": [
    {
      "id": 1,
      "iamId": "text",
      "name": "text",
      "email": "[email protected]"
    }
  ]
}

Search Immuta tags

get

Search across all tags in Immuta

Authorizations
Query parameters
searchTextstringOptional

A string used to filter returned tags based on name.

fuzzySearchbooleanOptional

Whether to perform a fuzzy search.

limitnumber · max: 200Optional

The maximum number of search results that will be returned.

Responses
200Success
application/json
get
/api/metadata/tags
GET /marketplace/api/metadata/tags HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "addedBy": 1,
    "color": "text",
    "context": "text",
    "createdAt": "text",
    "createdBy": 1,
    "dataProductName": "text",
    "deleted": true,
    "description": "text",
    "displayName": "text",
    "hasLeafNodes": true,
    "id": 1,
    "name": "text",
    "protected": true,
    "source": "text",
    "systemCreated": true,
    "updatedAt": "text"
  }
]

Search Immuta users

get

Search across all users in Immuta

Authorizations
Query parameters
limitnumberOptionalDefault: 100
filterstringOptional
globalUserIdstring[]Optional
Responses
200Success
application/json
get
/api/metadata/users
GET /marketplace/api/metadata/users HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "users": [
    {
      "id": 1,
      "iamId": "text",
      "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
      "username": "text",
      "name": "text",
      "email": "text",
      "authorizations": {
        "ANY_ADDITIONAL_PROPERTY": [
          "text"
        ]
      }
    }
  ]
}

Get user notification preferences

get

Get the notification preferences for the current user

Authorizations
Responses
200Success
application/json
get
/api/notification/user-preferences
GET /marketplace/api/notification/user-preferences HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "provider": "text",
    "enabled": true,
    "typePreferences": [
      {
        "notificationType": "text",
        "enabled": true
      }
    ]
  }
]

Update user notification preferences

put

Update the notification preferences for the current user

Authorizations
Body
Responses
200Success
application/json
put
/api/notification/user-preferences
PUT /marketplace/api/notification/user-preferences HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 100

{
  "preferences": [
    {
      "provider": "text",
      "typePreferences": [
        {
          "notificationType": "text",
          "enabled": true
        }
      ]
    }
  ]
}
200Success
{
  "recipientId": "123e4567-e89b-12d3-a456-426614174000",
  "preferences": [
    {
      "provider": "text",
      "typePreferences": [
        {
          "notificationType": "text",
          "enabled": true
        }
      ]
    }
  ]
}

Get all webhooks for the current user

get

Search all the webhooks for the current user

Authorizations
Responses
200Success
application/json
get
/api/notification/webhook
GET /marketplace/api/notification/webhook HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "url": "https://example.com",
    "verifyTls": true,
    "signingKey": false,
    "suppressed": false
  }
]

Create webhook for the current user

post

Create a new webhook for the current user

Authorizations
Body
urlstring · uriRequired
verifyTlsbooleanOptionalDefault: true
signingKeystringOptional
Responses
200Success
application/json
post
/api/notification/webhook
POST /marketplace/api/notification/webhook HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 66

{
  "url": "https://example.com",
  "verifyTls": true,
  "signingKey": "text"
}
200Success
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "url": "https://example.com",
  "verifyTls": true,
  "signingKey": false,
  "suppressed": false
}

Get webhook by ID

get

Get the webhook with the specified ID

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/notification/webhook/{id}
GET /marketplace/api/notification/webhook/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "url": "https://example.com",
  "verifyTls": true,
  "signingKey": false,
  "suppressed": false
}

Update webhook by ID

put

Update the webhook with the specified ID

Authorizations
Path parameters
idstringRequired
Body
urlstring · uriOptional
verifyTlsbooleanOptionalDefault: true
signingKeystringOptional
Responses
200Success
application/json
put
/api/notification/webhook/{id}
PUT /marketplace/api/notification/webhook/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 66

{
  "url": "https://example.com",
  "verifyTls": true,
  "signingKey": "text"
}
200Success
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "url": "https://example.com",
  "verifyTls": true,
  "signingKey": false,
  "suppressed": false
}

Delete webhook by ID

delete

Delete the webhook with the specified ID

Authorizations
Path parameters
idstringRequired
Responses
204Success

No content

delete
/api/notification/webhook/{id}
DELETE /marketplace/api/notification/webhook/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204Success

No content

Get webhook history by webhook ID

get

Search the webhook history for the specified webhook using the provided filters

Authorizations
Path parameters
idstringRequired
Query parameters
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
Responses
200Success
application/json
get
/api/notification/webhook/{id}/history
GET /marketplace/api/notification/webhook/{id}/history HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "webhookId": "123e4567-e89b-12d3-a456-426614174000",
      "deliveryId": "123e4567-e89b-12d3-a456-426614174000",
      "status": "text",
      "httpStatusCode": 1,
      "createdAt": "2025-01-09T12:34:56.000Z",
      "message": "text"
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}

Test webhook by ID

post

Send a test notification to the webhook with the specified ID

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
post
/api/notification/webhook/{id}/test
POST /marketplace/api/notification/webhook/{id}/test HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "status": "UNSPECIFIED",
  "httpStatusCode": 1,
  "errorMessage": "text"
}

Test webhook configuration

post

Send a test notification to a webhook using the provided configuration

Authorizations
Body
urlstring · uriRequired
verifyTlsbooleanOptionalDefault: true
signingKeystringOptional
Responses
200Success
application/json
post
/api/notification/webhook/test
POST /marketplace/api/notification/webhook/test HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 66

{
  "url": "https://example.com",
  "verifyTls": true,
  "signingKey": "text"
}
200Success
{
  "status": "UNSPECIFIED",
  "httpStatusCode": 1,
  "errorMessage": "text"
}

Get all request forms

get

Search request forms in the marketplace using the provided filters

Authorizations
Query parameters
offsetnumberOptionalDefault: 0
limitnumber · min: 1OptionalDefault: 10
sortOrderstring · enumOptionalDefault: ascPossible values:
sortBystring · enumOptionalDefault: namePossible values:
nameFilterstringOptional

Filter results by request form name

Default: ""
exactMatchbooleanOptional

Whether the filter should be an exact match

Default: false
Responses
200Success
application/json
get
/api/request-form
GET /marketplace/api/request-form HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "fields": [
        {
          "id": "123e4567-e89b-12d3-a456-426614174000",
          "type": "DROPDOWN",
          "label": "text",
          "required": true,
          "options": [
            {
              "value": "text"
            }
          ]
        }
      ],
      "policy": {
        "version": "text",
        "rules": [
          {
            "conditions": {
              "all": []
            },
            "event": {
              "type": "approve",
              "params": {
                "comment": "text",
                "duration": 1,
                "durationUnit": "HOURS"
              }
            }
          }
        ],
        "defaultEvent": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      },
      "dataUseAgreements": [
        {
          "id": "123e4567-e89b-12d3-a456-426614174000",
          "name": "text",
          "body": "text"
        }
      ],
      "createdBy": {
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "name": "text"
      },
      "createdAt": "2025-10-29T15:35:14.436Z",
      "updatedBy": {
        "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
        "name": "text"
      },
      "updatedAt": "2025-10-29T15:35:14.436Z",
      "version": "text",
      "associatedDomains": [
        "4d004a3a-4568-4c1d-822e-30958ef898dc"
      ]
    }
  ],
  "meta": {
    "offset": 0,
    "limit": 10,
    "totalCount": 1,
    "pageCount": 1,
    "currentPage": 1,
    "totalPages": 1
  }
}
post

Create a request form

Authorizations
Body
namestringRequired
idstring · uuidOptional
dataUseAgreementIdsstring · uuid[]Optional
Responses
201Success
application/json
post
/api/request-form
POST /marketplace/api/request-form HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 510

{
  "name": "text",
  "fields": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "type": "DROPDOWN",
      "label": "text",
      "required": true,
      "options": [
        {
          "value": "text"
        }
      ]
    }
  ],
  "policy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "dataUseAgreementIds": [
    "123e4567-e89b-12d3-a456-426614174000"
  ]
}
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "fields": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "type": "DROPDOWN",
      "label": "text",
      "required": true,
      "options": [
        {
          "value": "text"
        }
      ]
    }
  ],
  "policy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "dataUseAgreements": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "body": "text"
    }
  ],
  "createdBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "version": "text"
}

Delete a request form

delete

Delete a request form

Authorizations
Path parameters
idstringRequired
Responses
204Success

No content

delete
/api/request-form/{id}
DELETE /marketplace/api/request-form/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204Success

No content

Get request form by ID

get

Get request form by ID

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/request-form/{id}
GET /marketplace/api/request-form/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "fields": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "type": "DROPDOWN",
      "label": "text",
      "required": true,
      "options": [
        {
          "value": "text"
        }
      ]
    }
  ],
  "policy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "dataUseAgreements": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "body": "text"
    }
  ],
  "createdBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "version": "text"
}

Update a request form

put

Update a request form

Authorizations
Path parameters
idstringRequired
Body
namestringOptional
idstring · uuidOptional
dataUseAgreementIdsstring · uuid[]Optional
Responses
201Success
application/json
put
/api/request-form/{id}
PUT /marketplace/api/request-form/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 510

{
  "name": "text",
  "fields": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "type": "DROPDOWN",
      "label": "text",
      "required": true,
      "options": [
        {
          "value": "text"
        }
      ]
    }
  ],
  "policy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "dataUseAgreementIds": [
    "123e4567-e89b-12d3-a456-426614174000"
  ]
}
201Success
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "fields": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "type": "DROPDOWN",
      "label": "text",
      "required": true,
      "options": [
        {
          "value": "text"
        }
      ]
    }
  ],
  "policy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "dataUseAgreements": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "body": "text"
    }
  ],
  "createdBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "version": "text"
}

Get data products by request form

get

Get the data products assigned to the request form

Authorizations
Path parameters
idstringRequired
Responses
200Success
application/json
get
/api/request-form/{id}/data-products
GET /marketplace/api/request-form/{id}/data-products HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
[
  {
    "id": "text",
    "name": "text"
  }
]

Get request form by version

get

Get request form by its version

Authorizations
Path parameters
versionstringRequired
Responses
200Success
application/json
get
/api/request-form/version/{version}
GET /marketplace/api/request-form/version/{version} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200Success
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "text",
  "fields": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "type": "DROPDOWN",
      "label": "text",
      "required": true,
      "options": [
        {
          "value": "text"
        }
      ]
    }
  ],
  "policy": {
    "version": "text",
    "rules": [
      {
        "conditions": {
          "all": []
        },
        "event": {
          "type": "approve",
          "params": {
            "comment": "text",
            "duration": 1,
            "durationUnit": "HOURS"
          }
        }
      }
    ],
    "defaultEvent": {
      "type": "approve",
      "params": {
        "comment": "text",
        "duration": 1,
        "durationUnit": "HOURS"
      }
    }
  },
  "dataUseAgreements": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "body": "text"
    }
  ],
  "createdBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "createdAt": "2025-10-29T15:35:14.436Z",
  "updatedBy": {
    "globalUserId": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text"
  },
  "updatedAt": "2025-10-29T15:35:14.436Z",
  "version": "text"
}

Frontend settings

get

Get the settings for the frontend marketplace application.

Responses
200Success
application/json
get
/api/settings/frontend
GET /marketplace/api/settings/frontend HTTP/1.1
Host: na.api.immutacloud.com
Accept: */*
200Success
{
  "theme": {
    "primaryColor": "text",
    "accentColor": "text",
    "lightModeImage": "text",
    "darkModeImage": "text"
  },
  "featureFlags": {
    "statsigClientKey": "text",
    "statsigEnvironment": "text"
  }
}

Last updated

Was this helpful?