Skip to main content
Version: current [25.0.x]

Privileges Enterprise

Use the Catalog API to retrieve information about available privileges on the different types of catalog objects.

Privileges Object
{
"availablePrivileges": [
{
"grantType": "SPACE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "ARP_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"EXTERNAL_QUERY",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER_IN_MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "PDS",
"privileges": [
"ALTER",
"DELETE",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE"
]
},
{
"grantType": "VDS",
"privileges": [
"ALTER",
"MANAGE_GRANTS",
"SELECT"
]
},
{
"grantType": "FUNCTION",
"privileges": [
"ALTER",
"EXECUTE",
"MANAGE_GRANTS",
"MODIFY"
]
}
]
}

Privileges Attributes

availablePrivileges Array of Object

Information about the grant types and privileges that are available to assign to users and roles for each type of object in the catalog. Each availablePrivileges object contains two attributes: grantType and privileges.

Example: [{"grantType": "SPACE","privileges": ["ALTER","ALTER_REFLECTION","MANAGE_GRANTS","MODIFY","SELECT","VIEW_REFLECTION"]},{"grantType": "SOURCE","privileges": ["ALTER","ALTER_REFLECTION","MANAGE_GRANTS","MODIFY","SELECT","VIEW_REFLECTION"]},{"grantType": "MUTABLE_SOURCE","privileges": ["ALTER","ALTER_REFLECTION","CREATE_TABLE","DELETE","DROP","INSERT","MANAGE_GRANTS","MODIFY","SELECT","TRUNCATE","UPDATE","VIEW_REFLECTION"]},{"grantType": "ARP_SOURCE","privileges": ["ALTER","ALTER_REFLECTION","EXTERNAL_QUERY","MANAGE_GRANTS","MODIFY","SELECT","VIEW_REFLECTION"]},{"grantType": "FOLDER_IN_MUTABLE_SOURCE","privileges": ["ALTER","ALTER_REFLECTION","CREATE_TABLE","DELETE","DROP","INSERT","MANAGE_GRANTS","SELECT","TRUNCATE","UPDATE","VIEW_REFLECTION"]},{"grantType": "FOLDER","privileges": ["ALTER","ALTER_REFLECTION","MANAGE_GRANTS","SELECT","VIEW_REFLECTION"]},{"grantType": "PDS","privileges": ["ALTER","DELETE","INSERT","MANAGE_GRANTS","SELECT","TRUNCATE","UPDATE"]},{"grantType": "VDS","privileges": ["ALTER","MANAGE_GRANTS","SELECT"]},{"grantType": "FUNCTION","privileges": ["ALTER","EXECUTE","MANAGE_GRANTS","MODIFY"]}]

Attributes of the availablePrivileges Object

grantType String

Type of the catalog object on which the listed privileges are available. ARP_SOURCE refers to relational-database sources.

Enum: SPACE, SOURCE, MUTABLE_SOURCE, ARP_SOURCE, FOLDER_IN_MUTABLE_SOURCE, FOLDER, PDS, VDS, FUNCTION

Example: SPACE


privileges Array of String

List of available privileges on the type of the catalog object specified in grantType. For more information, read Privileges.

Example: ["ALTER","ALTER_REFLECTION","MANAGE_GRANTS","MODIFY","SELECT","VIEW_REFLECTION"]

Retrieving All Catalog Privileges

Retrieve information about the available privileges on each type of object in the catalog.

Method and URL
GET /api/v3/catalog/privileges

Parameters

type Query   String   Optional

Type of the catalog object whose available privileges you want to retrieve. For more information, read type Query Parameter.

Enum: SPACE, SOURCE, MUTABLE_SOURCE, ARP_SOURCE, FOLDER_IN_MUTABLE_SOURCE, FOLDER, PDS, VDS, FUNCTION

Example Request
curl -X GET 'https://{hostname}/api/v3/catalog/privileges' \
--header 'Authorization: Bearer <PersonalAccessToken>' \
--header 'Content-Type: application/json'
Example Response
{
"availablePrivileges": [
{
"grantType": "SPACE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "ARP_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"EXTERNAL_QUERY",
"MANAGE_GRANTS",
"MODIFY",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER_IN_MUTABLE_SOURCE",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"CREATE_TABLE",
"DELETE",
"DROP",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE",
"VIEW_REFLECTION"
]
},
{
"grantType": "FOLDER",
"privileges": [
"ALTER",
"ALTER_REFLECTION",
"MANAGE_GRANTS",
"SELECT",
"VIEW_REFLECTION"
]
},
{
"grantType": "PDS",
"privileges": [
"ALTER",
"DELETE",
"INSERT",
"MANAGE_GRANTS",
"SELECT",
"TRUNCATE",
"UPDATE"
]
},
{
"grantType": "VDS",
"privileges": [
"ALTER",
"MANAGE_GRANTS",
"SELECT"
]
},
{
"grantType": "FUNCTION",
"privileges": [
"ALTER",
"EXECUTE",
"MANAGE_GRANTS",
"MODIFY"
]
}
]
}

Response Status Codes

200   OK

401   Unauthorized

404   Not Found