This page details the /data
v1 API, which allows users to register a connection to Immuta with a single set of credentials rather than configuring an integration and creating data sources separately. For a how-to on registering a connection, see the Register a connection reference guide .
Method Endpoint Description
GET
/data/connection/{connectionKey}
Search for a host using a connection key.
Required Immuta permission : CREATE_DATA_SOURCE
, APPLICATION_ADMIN
, or Infrastructure Admin or Data Owner within the hierarchy
Copy curl -X 'GET' \
'https://your-immuta-url.com/data/connection/yourConnectionKey' \
-H 'accept: application/json' \
-H 'Authorization: Bearer your-bearer-token'
Path parameters
Attribute Description Required
Response schema
Example response
Copy {
"connectionKey": "yourConnectionKey",
"connection": {
"port": 443,
"role": "IMMUTA_SNOWFLAKE_ROLE",
"hostname": "example.us-east-1.snowflakecomputing.com",
"username": "IMMUTA_DB_SYSTEM_ACCOUNT",
"warehouse": "your-warehouse",
"technology": "Snowflake",
"authenticationType": "userPassword"
},
"createdAt": "2023-12-22T18:28:46.328Z",
"createdBy": 2,
"updatedAt": "2023-12-22T18:28:46.328Z",
"updatedBy": 2,
"creator": {
"id": 2,
"name": "Taylor Smith",
"email": "taylor@immuta.com"
},
"updater": {
"id": 2,
"name": "Taylor Smith",
"email": "taylor@immuta.com"
},
"nativeIntegrationId": 1
}
GET
/data/object/{objectPath}
Search for a specific data object using the object path.
Required Immuta permission : CREATE_DATA_SOURCE
, APPLICATION_ADMIN
, or INFRASTRUCTURE_ADMIN
or DATA_OWNER
within the hierarchy
Copy curl -X 'GET' \
'https://your-immuta-url.com/data/object/yourConnectionKey' \
-H 'accept: application/json' \
-H 'Authorization: Bearer your-bearer-token'
Path parameters
Response schema
Example response
Copy {
"objectPath": ["yourConnectionKey"],
"technology": "Snowflake",
"state": "active",
"settings": {
"activateNewChildren": {
"value": true,
"hasDescendantsWithOverrides": false
},
"dataOwners": {
"value": [{
"id": 2,
"type": "user"
}, ],
"hasDescendantsWithOverrides": false
},
"infrastructureAdmins": {
"value": [{
"id": 3,
"type": "group"
}],
"hasDescendantsWithOverrides": false
},
"isActive": {
"value": true,
"hasDescendantsWithOverrides": false
}
},
"overrides": [],
"lastCrawled": 2023 - 08 - 21 T10: 39: 00.250 Z,
"createdAt": 2023 - 08 - 21 T10: 39: 00.250 Z,
"remoteId": null
}
POST
/data/object/search/{objectPath}
Search for the children of the object defined in the objectPath. Or search all top-level data objects (hosts) if the objectPath is omitted.
Required Immuta permission : CREATE_DATA_SOURCE
, APPLICATION_ADMIN
, or INFRASTRUCTURE_ADMIN
or DATA_OWNER
within the hierarchy
Copy curl -X 'POST' \
'https://your-immuta-url.com/data/object/search/yourConnectionKey' \
-H 'accept: application/json' \
-H 'Authorization: Bearer your-bearer-token'
Path parameters
Query parameters
Response schema
Example response
Copy {
"count": 1,
"hits": [{
"objectPath": ["yourConnectionKey"],
"technology": "Snowflake",
"state": "active",
"settings": {
"activateNewChildren": {
"value": true,
"hasDescendantsWithOverrides": false
},
"dataOwners": {
"value": [{
"id": 2,
"type": "user"
}, ],
"hasDescendantsWithOverrides": false
},
"infrastructureAdmins": {
"value": [{
"id": 3,
"type": "group"
}],
"hasDescendantsWithOverrides": false
},
"isActive": {
"value": true,
"hasDescendantsWithOverrides": false
}
},
"overrides": [],
"lastCrawled": 2023 - 08 - 21 T10: 39: 00.250 Z,
"createdAt": 2023 - 08 - 21 T10: 39: 00.250 Z,
"remoteId": null
}]
}
PUT
/data/connection/{connectionKey}
Update the connection information for the specified host. Partial updates are not supported.
Required Immuta permission : INFRASTRUCTURE_ADMIN
on the host
What can be updated?
Using this endpoint, you can only update connection information. To update other integration details, use the PUT /integrations/{id}
endpoint.
Snowflake username and password
Copy curl -X 'PUT' \
'https://<your-immuta-url>/data/connection/yourConnectionKey' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: <your-bearer-token>' \
-d '{
"connection": {
"technology": "Snowflake",
"hostname": "<your-Snowflake-hostname-url>",
"port": < your - Snowflake - port > ,
"warehouse": "<your-Snowflake-warehouse>",
"role": "<your-Snowflake-role>",
"authenticationType": "userPassword",
"us