Data product managers are able to create and manage request forms. Data stewards can edit request forms they are assigned to.
Requirement: Immuta permission GOVERNANCE or Manage Data Products in a domain
From the Marketplace app,
Navigate to the .
Click New request form.
Enter the form name, which is how data product owners can add it to their own data product.
Enter one or more request questions for the data consumer to answer:
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
Requirement: Immuta permission GOVERNANCE, Manage Data Products in a domain, or assigned data steward in the request form
Editing the Standard Request Form is not supported.
From the Marketplace app,
Navigate to the .
Click on the name of the request form you want to edit.
Make the changes you want.
Click Save.
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
Requirement: Immuta permission GOVERNANCE or Manage Data Products in a domain
A request form can only be deleted if it is not currently in use in any data product.
From the Marketplace app,
Navigate to the .
Click the name of the request for you want to delete.
Click Delete.
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
Enter a question and select the answer format in the dropdown.
Short answer: Enter a question that the requester must answer with their own text response.
Dropdown: Enter a question and the options for the dropdown. A requester must answer the question with a single dropdown option.
Checkboxes: Enter a question and the options for the checkboxes. A requester may answer the question with multiple checkbox options.
Access duration: The question and options will be pre-populated. A requester must answer the question with a time range.
Use the switch to dictate if the question is required. Access duration is always required if included.
Click the + icon to add more questions.
Select how you want the review flow determined:
Delegate to data product: Data products that use this form will configure their own review flow.
In this request form: The review flow defined here will apply to all assigned data products.
Choose if you would like to require approval for requests on this data product:
Yes: When the user makes a request on a data product, in addition to acknowledging the data use agreement and answering the required question, they will need to be approved by the data stewards.
Assign the data stewards: Choose the Immuta source from the dropdowns that will dictate who is a data steward. If you select a domain permission, the data steward must have that domain-specific permission for the domain that the data product is built off of.
Choose if you would like to require all or any data stewards to approve:
Add a data use agreement (optional). Use the default data use agreement or Create new +. The data use agreement is what the data consumer must agree to when requesting access to your data product.
Click Save.
All stewards: For every source you select, a data steward from that source must make a determination. If a data steward qualifies multiple sources, their determination will count for each of the sources they have. If any of the data stewards deny the request, it will be denied. If any of the data stewards temporarily approve the request, once the determination is made, the user will be approved for temporary access for the shortest time period given.
Any steward: A single determination is required for the request, and any data steward with any of the sources dictated can make the determination.
No: When the user makes a request on a data product, they will be automatically approved once they acknowledge the data use agreement and answer any question required for access:
Auto approve: Enter the reason users do not need approval.
Auto approve with expiration: Enter the reason users do not need approval and use the dropdown to select how long users will have access to the data before the access expires.
Data stewards are able to make determinations on access requests for access to data products and masking exceptions.
In the Marketplace app,
Navigate to the .
Click the request you want to approve or deny.
Review the request details depending on the request type:
Data access request: Review the request details, data sources, and data use agreement.
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
In the Marketplace app,
Navigate to the .
Opt to filter by status, type, or date.
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
,
Navigate to the Data product you want to view requests for.
Click the Access requests tab.
Opt to filter by status, type, or date.
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
In the Marketplace app,
Navigate to the .
Click the request you want the details for.
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
Revoking access to a data product depends on the type of access granted:
Data access: To revoke a user's data access to a data product, , or revoke access through the access request ().
Masking exception: To revoke a user's unmasked access to a masked column, revoke access through the access request ().
In the Marketplace app,
Navigate to the .
Click the request that originally granted the user access to the data product.
Click Revoke Access, and then Confirm revoke access.
Ensure you set the and use a when using the Marketplace API. See the for additional guidance or to download the OpenAPI YAML for your own client generation.
Masking exception request: Review the request details, columns the user wants unmasked access to, and data use agreement.
Select Continue to determination, and opt to view the Determination history tab for data access requests.
Select the determination for access:
Temporarily approve: Approve the access request for a specific period of time. If the request form had an access duration question, the requester's response will be presented as a recommendation.
Enter your reason to approve access to the data product.
Use the dropdowns to select how long the user should have access to the data product. If entering a custom time range, you must enter a whole, positive number.
Approve: Approve the access request indefinitely.
Enter your reason to approve access to the data product.
Deny: Deny the access request.
Enter your reason to deny access to the data product.
Click Submit determination. Your determination cannot be edited after it is submitted, even if the request remains open for other data stewards to approve.
Create a request form
Request form with name already exists.
Modify a pending approval record as an approver
PENDINGPossible values: Search and filter access requests the current user can manage
Whether to include historical access requests
trueWhether to include temporary access requests
falseThe ID of the data product to filter requests by
The ID of the data product to filter requests by
010descPossible values: createdAtPossible values: Search all access requests for the data product using the provided filters
Whether to include historical access requests
trueWhether to include temporary access requests
falseThe ID of the data product to filter requests by
The ID of the data product to filter requests by
010descPossible values: createdAtPossible values: Updates the specified access request to revoked and revokes access to data sources associated with the data product
No content
No content
{
"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-12-14T17:28:25.679Z",
"updatedBy": {
"globalUserId": "123e4567-e89b-12d3-a456-426614174000",
"name": "text"
},
"updatedAt": "2025-12-14T17:28:25.679Z",
"version": "text"
}{
"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-12-14T17:28:25.679Z",
"updatedBy": {
"globalUserId": "123e4567-e89b-12d3-a456-426614174000",
"name": "text"
},
"updatedAt": "2025-12-14T17:28:25.679Z",
"version": "text"
}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"
]
}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"
]
}DELETE /marketplace/api/request-form/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"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-12-14T17:28:25.679Z",
"updatedAt": "2025-12-14T17:28:25.679Z",
"approverCriteriaMet": [
{
"type": "USER",
"id": "text",
"displayName": "text"
}
],
"duration": 1,
"durationUnit": "text"
}{
"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-12-14T17:28:25.679Z",
"createdAt": "2025-12-14T17:28:25.679Z",
"updatedAt": "2025-12-14T17:28:25.679Z",
"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
}
}{
"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-12-14T17:28:25.679Z",
"createdAt": "2025-12-14T17:28:25.679Z",
"updatedAt": "2025-12-14T17:28:25.679Z",
"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
}
}{
"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-12-14T17:28:25.679Z",
"createdAt": "2025-12-14T17:28:25.679Z",
"updatedAt": "2025-12-14T17:28:25.679Z",
"dataProduct": {
"id": "text",
"name": "text",
"description": "All sales records from the current fiscal year"
}
}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"
}GET /marketplace/api/access-request HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
GET /marketplace/api/data-product/{id}/request HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
GET /marketplace/api/access-request/{id} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
DELETE /marketplace/api/data-product/{id}/request/{requestId} HTTP/1.1
Host: na.api.immutacloud.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*