On this page

    Folders

    Folders are used to help you organize your spaces. Folders can only be created in either the home space or other spaces. Folders are of entityType: folder.

    Folder Object
    {
      "entityType": "folder",
      "id": "ffbe8c1d-1db7-48d1-9c58-f452838fedc0",
      "path": ["@user@dremio.com","test-folder"],
      "tag": "b79b70f4-d4a7-4fb5-bfbb-dc00b1b29801",
      "children": [
      {
        "id": "1fdcf5c3-5c95-4e50-a7a3-d0aa58056c99",
        "path": [
          "@user@dremio.com",
          "test-folder",
          "view-zip-codes"
        ],
        "tag": "a535d578-7921-4e56-b8c9-ada85d445fe6",
        "type": "DATASET",
        "datasetType": "VIRTUAL",
        "createdAt": "2021-12-01T17:33:07.786Z"
      },
      {
        "id": "f1ec2376-882e-406f-b37d-c97e8804b662",
        "path": [
          "@user@dremio.com",
          "test-folder",
          "test-sub-folder"
        ],
        "tag": "eb3c936d-e476-4bfd-9738-1619e9da4c32",
        "type": "CONTAINER",
        "containerType": "FOLDER"
      },
      {
        "id": "f460cfd7-8c8d-4295-ae3e-99dcc9162500",
        "path": [
          "@user@dremio.com",
          "test-folder",
          "SF-weather"
        ],
        "tag": "75428c7f-7e69-473e-5312-7e5543eb9fda",
        "type": "DATASET",
        "datasetType": "PROMOTED",
        "createdAt": "1970-01-01T00:00:00.000Z"
      }
      ],
      "accessControlList":{
        "users": [
        {
          "id": "63022041-783d-557e-8ead-271f5ea25812",
          "permissions": ["SELECT","ALTER"]
        }
        ]
      }
    }
    

    Folder Attributes

    entityType

    String

    Specifies the type of container. For folders, the type is FOLDER.


    id

    String (UUID)

    The UUID that is generated to identify a folder.


    path

    [String]

    The path for a folder. @user@dremio.com identifies a folder in the home space.

    Example "@user@dremio.com", "reporting", "test-folder"


    tag

    String

    Identifies the instance of the folder. Dremio Cloud changes this tag whenever a change is made to the folder. Immutable by the user.

    Example 676e73e0-8b51-44d0-972d-ef80c29ac0c6


    children

    Object

    List of items inside a folder.


    accessControlList

    Object

    The list of permissions that can be set for a folder.


    children

    id

    String

    The UUID that is generated to identify the object.


    path

    query

    [String]

    Identifies the path to the object.


    tag

    String

    Identifies the instance of the object. Dremio Cloud changes this tag whenever a change is made to the object. Immutable by the user.

    Example eb3a759b-e289-4bfd-9718-1619b9db4c02


    type

    query

    String

    The type of the object. For folders, the type is CONTAINER. For datasets, the type is DATASET.

    Enum CONTAINER , DATASET


    datasetType

    query

    String

    If the object type is a dataset, the dataset type is identified.

    Enum VIRTUAL , PROMOTED


    containerType

    query

    String

    If the object type is a folder. the container type is FOLDER.


    createdAt

    [String]

    The date and time that the object was created.


    accessControlList

    users

    Object

    The users that can access a folder. Applicable only to the home space.


    users

    id

    String

    The user ID contained in the accessControlList. Applicable only to the home space.


    permissions

    [String]

    The permissions that the user has to a folder.

    Enum SELECT , ALTER

    Adding a Folder

    Add a folder under a space.

    Adding a Folder
    POST  /v0/projects/{project-id}/catalog
    

    Parameters

    project-id

    path

    String (UUID)

    The UUID for the project that you want to add a folder for.


    entityType

    query

    String

    The type of catalog object. For folders, the type is FOLDER.


    path

    query

    [String]

    Identifies the path where you want to add a folder. Includes the name of the new folder as the last item in the list.

    Example Request
    curl -X POST 'https://api.dremio.cloud/v0/projects/02d36975-73eb-47ed-9bb5-de73060380f6/catalog' \
    -H 'Authorization: Bearer <personal access token>' \
    -H 'Content-Type: application/json' \
    -d '{
        "entityType": "folder",
        "path": ["reporting", "new-folder"]
        }'
    
    Example Response
    {
      "entityType": "folder",
      "id": "ffbe8c1d-1db7-48d1-9c58-f452838fedc0",
      "path": ["reporting","new-folder"],
      "tag": "b79b70f4-d4a7-4fb5-bfbb-dc00b1b29801",
      "accessControlList":{},
      "permissions":[]
    }
    

    Responses

    200

    Folder created successfully

    400

    Bad input parameter

    401

    Unauthorized access


    Retrieving a Folder

    Get the folder metadata by providing the folder ID.

    Retrieving a Folder
    GET /v0/projects/{project-id}/catalog/{id}
    

    Parameters

    project-id

    path

    String (UUID)

    The UUID for the project that contains the folder.


    id

    path

    String (UUID)

    The UUID for the folder that you want to retrieve.

    Example Request
    curl -X GET 'https://api.dremio.cloud/v0/projects/02d36975-73eb-47ed-9bb5-de73060380f6/catalog/ffbe8c1d-1db7-48d1-9c58-f452838fedc0' \
    -H 'Authorization: Bearer <personal access token>' \
    -H 'Content-Type: application/json'
    
    Example Response
    {
      "entityType": "folder",
      "id": "ffbe8c1d-1db7-48d1-9c58-f452838fedc0",
      "path": ["reporting","test-folder"],
      "tag": "b79b70f4-d4a7-4fb5-bfbb-dc00b1b29801",
      "accessControlList":{},
      "permissions":[]
    }
    

    Responses

    200

    Folder returned successfully

    400

    Bad input parameter

    401

    Unauthorized access

    404

    Not found


    Deleting a Folder

    Delete a folder.

    Deleting a Folder
    DELETE /v0/projects/{project-id}/catalog/{id}
    

    Parameters

    project-id

    path

    String (UUID)

    The UUID for the project that contains the folder.


    id

    path

    String (UUID)

    The UUID for the folder that you want to delete.

    Example Request
    curl -X DELETE 'https://api.dremio.cloud/v0/projects/02d36975-73eb-47ed-9bb5-de73060380f6/catalog/21a74cb1-3fcf-48c6-8f69-94c257ec3da3' \
    -H 'Authorization: Bearer <personal access token>' \
    -H 'Content-Type: application/json'
    
    Example Response
    No response
    

    Responses

    204

    No content

    400

    Bad input parameter

    401

    Unauthorized access

    404

    Not found