Projects
A project is the logical entity for isolating compute, data and other resources needed by a team for data analysis. An organization may contain multiple projects. Projects are linked to your cloud account - your first project was created and linked to your cloud account as part of the signup. This API allows you to add, modify, delete and list projects.
Project Object{
"name": "default-project",
"id": "c683b988-aa93-439c-a9ac-0d7f72b53d23",
"cloudId": "37b34779-13f1-48e5-b2c8-f3db4c824733",
"state": "ACTIVE",
"createdBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"modifiedBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"createdAt": "Thu Aug 19 14:39:38 UTC 2021",
"modifiedAt": "Thu Aug 19 14:39:46 UTC 2021",
"projectStore": "my.dremio.store",
"credentials": {
"type": "ACCESS_KEY",
"accessKeyId": "AKIAJIPU77TQL8LR6OIR",
"secretAccessKey": null
}
}
Project Attributes
name
String
User defined name for a project.
Example
my-first-project
id
String (UUID)
Unique identifier of a project.
Example
c683b988-aa93-439c-a9ac-0d7f72b53d23
cloudId
String (UUID)
The ID of the cloud where compute resources will be created.
Example
37b34779-13f1-48e5-b2c8-f3db4c824733
state
String
The current state of the project. If the state is ARCHIVING, ARCHIVED, or RESTORING, only users having the OWNERSHIP privilege on a project or users in the ADMIN role will have access to the project.
Enum
CREATING
,
ACTIVE
,
ARCHIVING
,
ARCHIVED
,
RESTORING
,
DEACTIVATING
,
INACTIVE
,
ACTIVATING
Example
ACTIVE
createdBy
String
User that created the project.
Example
de8a47bf-432a-4d83-b60e-90d86cda8d70
modifiedBy
String
User that last modified the project.
Example
de8a47bf-432a-4d83-b60e-90d86cda8d70
createdAt
String
Date and time that the project was created.
Example
Thu Aug 19 14:39:38 UTC 2021
modifiedAt
String
Date and time that the cloud was last modified.
Example
Thu Aug 19 14:39:46 UTC 2021
projectStore
String
The Amazon S3 bucket for Dremio Cloud to store metadata for this project.
Example
my.dremio.store
object
The credentials you are using to configure the storage settings for the cloud.
Enum
ACCESS_KEY
,
IAM_ROLE
credentials
type
String
The type of credentials you are using to configure the storage settings for the cloud.
Enum
ACCESS_KEY
,
IAM_ROLE
Example
ACCESS_KEY
accessKeyId
String
The access key generated from the AWS IAM User you created to provide Dremio Cloud with storage capabilities. This field is required if you selected ACCESS_KEY for credentials.
Example
AKIAJIPU77TQL8LR6OIR
secretAccessKey
String
The secret key generated from the AWS IAM User you created to provide Dremio Cloud with storage access. This field is required if you selected ACCESS_KEY for credentials.
Example
vJalrXUtnFEMI/K7MDENG/bPxRfiDYEXAMPLEKEY
roleArn
String
The cross-account role used to access the project store bucket. To create this IAM Role, you need to provide the Trust Account ID (572051091487) and External ID. This field is required if you selected IAM_ROLE for credentials.
Example
arn:aws:iam::461138020052:role/CustomerRole
instanceProfileArn
String
The instance profile used by Dremio Cloud engines to access the project store bucket. This field is required if you selected IAM_ROLE for credentials.
Example
arn:aws:iam::461138020052:instance-profile/InstanceRole
externalId
String
An ID required to identify Dremio Cloud as a provider. This field is required if you selected IAM_ROLE for credentials.
Example
c9560ff9-2c21-472b-8d9e-139eaab6bb49
Listing All Projects
Returns a list of all the projects and the metadata for each project.
Listing All ProjectsGET /v0/projects
curl -X GET 'https://api.dremio.cloud/v0/projects' \
-H 'Authorization: Bearer <personal access token>' \
-H 'Content-Type: application/json'
[
{
"name": "Default Project",
"id": "c683b988-aa93-439c-a9ac-0d7f72b53d23",
"cloudId": "37b34779-13f1-48e5-b2c8-f3db4c824733",
"state": "ACTIVE",
"createdBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"modifiedBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"createdAt": "Thu Aug 19 14:39:38 UTC 2021",
"modifiedAt": "Thu Aug 19 14:39:46 UTC 2021",
"projectStore": "my.dremio.store",
"credentials": {
"type": "ACCESS_KEY",
"accessKeyId": "AKIAJIPU77TQL8LR6OIR",
"secretAccessKey": null
}
}
]
Responses
200
OK
403
Forbidden
Adding a Project
Add a project.
Adding a ProjectPOST /v0/projects
Parameters
Project
name
query
String
User defined name for the project.
cloudId
query
String (UUID)
The ID of the cloud where compute resources will be created.
projectStore
query
string
The Amazon S3 bucket for Dremio Cloud to store metadata for this project.
query
object
The cross-account role ARN for the AWS IAM Role you created to provide Dremio Cloud with compute capabilities. To create this IAM Role, you need to provide the Trust Account ID (572051091487) and External ID (07d34bd0-7d63-43f1-92ca-9e54bb6a7135). This field is required if you selected IAM_ROLE for credentials.
requestId
query
string (UUID)
Optional
User-defined idempotency key, which is a unique value generated by the user that the server uses to register consequent retries of the same request. Generate the request ID by using a UUID generator tool. For more information, read idempotent requests.
credentials
type query String
The type of credentials you are using to configure the storage settings for the cloud. Select from Access Key or IAM Role.
accessKeyId query String
The access key generated from the AWS IAM User you created to provide Dremio Cloud with storage capabilities. This field is required if you selected ACCESS_KEY for credentials.
secretAccessKey query String
The secret key generated from the AWS IAM User you created to provide Dremio Cloud with storage access. This field is required if you selected ACCESS_KEY for credentials.
roleArn query String
The cross-account role Dremio Cloud uses to access the project store bucket. To create this IAM Role, you need to provide the Trust Account ID (572051091487) and External ID. This field is required if you selected IAM_ROLE for credentials.
instanceProfileArn query String
The instance profile used by Dremio Cloud engines to access the project store bucket. This field is required if you selected IAM_ROLE for credentials.
externalId query String
An ID required to identify Dremio Cloud as a provider. This field is required if you selected IAM_ROLE for credentials.
curl -X POST 'https://api.dremio.cloud/v0/projects' \
-H 'Authorization: Bearer <personal access token>' \
-H 'Content-Type: application/json' \
-D '{
"name": "docproject",
"cloudId": "37b34779-13f1-48e5-b2c8-f3db4c824733",
"projectStore": "my.dremio.store",
"credentials": {
"type": "ACCESS_KEY",
"accessKeyId": "AKIAJIPU77TQL8LR6OIR",
"secretAccessKey": "vJalrXUtnFEMI/K7MDENG/bPxRfiDYEXAMPLEKEY"
},
"requestId": "a7801e74-6c34-48b4-9e42-2cacdf06d31c"
}'
{
"name": "docproject",
"id": "c683b988-aa93-439c-a9ac-0d7f72b53d23",
"cloudId": "37b34779-13f1-48e5-b2c8-f3db4c824733",
"state": "ACTIVE",
"createdBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"modifiedBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"createdAt": "Thu Aug 19 14:39:38 UTC 2021",
"modifiedAt": "Thu Aug 19 14:39:46 UTC 2021",
"projectStore": "my.dremio.store",
"credentials": {
"type": "ACCESS_KEY",
"accessKeyId": "AKIAJIPU77TQL8LR6OIR",
"secretAccessKey": "vJalrXUtnFEMI/K7MDENG/bPxRfiDYEXAMPLEKEY"
}
}
Responses
200
OK
400
Bad Request
403
Forbidden
500
Internal Server Error
Retrieving a Project
Get the project metadata for an existing project by providing the project ID that was returned on creation of the project.
Retrieiving a ProjectGET /v0/projects/{id}
Parameters
id
path
String (UUID)
The ID of the project for which you want to retrieve metadata.
curl -X GET 'https://api.dremio.cloud/v0/projects/05e2d620-5978-4269-8c96-aa463df830b7' \
-H 'Authorization: Bearer <personal access token>' \
-H 'Content-Type: application/json'
{
"name": "docproject",
"id": "05e2d620-5978-4269-8c96-aa463df830b7",
"cloudId": "37b34779-13f1-48e5-b2c8-f3db4c824733",
"state": "ACTIVE",
"createdBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"modifiedBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"createdAt": "Sat Aug 21 12:22:51 UTC 2021",
"modifiedAt": "Sat Aug 21 12:22:59 UTC 2021",
"projectStore": "my.dremio.store",
"credentials": {
"type": "ACCESS_KEY",
"accessKeyId": "AKIAJIPU77TQL8LR6OIR",
"secretAccessKey": null
}
}
Responses
200
OK
400
Bad Request
403
Access denied. You do not have OWNERSHIP privilege on the project.
Modifying a Project
Modify the project by providing the project ID that was returned on creation of the project. Parameters that are not provided will be left unchanged.
note:
Currently only the name of a project can be modified.
PUT /v0/projects/{id}
Parameters
id
path
String (UUID)
The ID of the project for which you want to retrieve metadata.
name
query
String
Optional
User defined name for the project.
curl -X PUT 'https://api.dremio.cloud/v0/projects/05e2d620-5978-4269-8c96-aa463df830b7' \
-H 'Authorization: Bearer <personal access token>' \
-H 'Content-Type: application/json' \
-D '{
"name": "doc-project"
}'
{
"name": "doc-project",
"id": "c683b988-aa93-439c-a9ac-0d7f72b53d23",
"cloudId": "37b34779-13f1-48e5-b2c8-f3db4c824733",
"state": "ACTIVE",
"createdBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"modifiedBy": "de8a47bf-432a-4d83-b60e-90d86cda8d70",
"createdAt": "Thu Aug 19 14:39:38 UTC 2021",
"modifiedAt": "Fri Aug 20 12:01:57 UTC 2021",
"projectStore": "my.dremio.store",
"credentials": {
"type": "ACCESS_KEY",
"accessKeyId": "AKIAJIPU77TQL8LR6OIR",
"secretAccessKey": "vJalrXUtnFEMI/K7MDENG/bPxRfiDYEXAMPLEKEY"
}
}
Responses
200
OK
400
Bad Request
Deleting a Project
Delete the project by providing the project ID that was returned on creation of the project.
note:
Dremio Cloud does not allow you to delete a project that is the only project in an organization.
DELETE /v0/projects/{id}
Parameters
id
path
String
The ID of the project that you want to delete.
curl -X DELETE 'https://api.dremio.cloud/v0/projects/05e2d620-5978-4269-8c96-aa463df830b7' \
-H 'Authorization: Bearer <personal access token>' \
-H 'Content-Type: application/json'
No response
Responses
200
OK
500
Internal Server Error