On this page

    Table

    Use the Catalog API to retrieve tables, format files and folders as tables, update and refresh tables, and revert tables to files and folders.

    Table Object
    {
      "entityType": "dataset",
      "id": "c9c11d32-0576-4200-5a5b-8c7229cb3d72",
      "type": "PHYSICAL_DATASET",
      "path": [
        "Samples",
        "samples.dremio.com",
        "Dremio University",
        "restaurant_reviews.parquet"
      ],
      "createdAt": "2023-01-13T19:52:01.894Z",
      "tag": "cb2905bb-39c0-497f-ae74-4c310d534f25",
      "accelerationRefreshPolicy": {
        "refreshPeriodMs": 3600000,
        "gracePeriodMs": 10800000,
        "method": "FULL",
        "neverExpire": false,
        "neverRefresh": false
      },
      "format": {
        "type": "Parquet",
        "name": "restaurant_reviews.parquet",
        "fullPath": [
          "Samples",
          "samples.dremio.com",
          "Dremio University",
          "restaurant_reviews.parquet"
        ],
        "ctime": 0,
        "isFolder": false,
        "location": "/samples.dremio.com/Dremio University/restaurant_reviews.parquet",
        "autoCorrectCorruptDates": true
      },
      "accessControlList": {
        "users": [
          {
            "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3",
            "permissions": [
              "SELECT",
              "ALTER"
            ]
          },
          {
            "id": "30fca499-4abc-4469-7142-fc8dd29acac8",
            "permissions": [
              "SELECT",
              "ALTER",
              "MANAGE_GRANTS"
            ]
          }
        ],
        "roles": [
          {
            "id": "76a9884b-aea5-46d5-a73a-000edf23f390",
            "permissions": [
              "SELECT",
              "ALTER"
            ]
          }
        ]
      },
      "permissions": [
        "READ",
        "WRITE",
        "ALTER_REFLECTION",
        "SELECT",
        "ALTER",
        "VIEW_REFLECTION",
        "MODIFY",
        "MANAGE_GRANTS",
        "CREATE_TABLE",
        "DROP",
        "EXTERNAL_QUERY",
        "INSERT",
        "TRUNCATE",
        "DELETE",
        "UPDATE",
        "EXECUTE",
        "CREATE_SOURCE",
        "ALL"
      ],
      "owner": {
        "ownerId": "30fca499-4abc-4469-7142-fc8dd29acac8",
        "ownerType": "USER"
      },
      "fields": [
        {
          "name": "_id",
          "type": {
            "name": "VARCHAR"
          }
        },
        {
          "name": "name",
          "type": {
            "name": "VARCHAR"
          }
        },
        {
          "name": "city",
          "type": {
            "name": "VARCHAR"
          }
        },
        {
          "name": "state",
          "type": {
            "name": "VARCHAR"
          }
        },
        {
          "name": "categories",
          "type": {
            "name": "LIST",
            "subSchema": [
              {
                "type": {
                  "name": "VARCHAR"
                }
              }
            ]
          }
        },
        {
          "name": "review_count",
          "type": {
            "name": "BIGINT"
          }
        },
        {
          "name": "stars",
          "type": {
            "name": "DOUBLE"
          }
        },
        {
          "name": "attributes",
          "type": {
            "name": "STRUCT",
            "subSchema": [
              {
                "name": "Parking",
                "type": {
                  "name": "STRUCT",
                  "subSchema": [
                    {
                      "name": "garage",
                      "type": {
                        "name": "BOOLEAN"
                      }
                    },
                    {
                      "name": "street",
                      "type": {
                        "name": "BOOLEAN"
                      }
                    },
                    {
                      "name": "lot",
                      "type": {
                        "name": "BOOLEAN"
                      }
                    },
                    {
                      "name": "valet",
                      "type": {
                        "name": "BOOLEAN"
                      }
                    }
                  ]
                }
              },
              {
                "name": "Accepts Credit Cards",
                "type": {
                  "name": "BOOLEAN"
                }
              },
              {
                "name": "Wheelchair Accessible",
                "type": {
                  "name": "BOOLEAN"
                }
              },
              {
                "name": "Price Range",
                "type": {
                  "name": "BIGINT"
                }
              }
            ]
          }
        },
        {
          "name": "date",
          "type": {
            "name": "VARCHAR"
          }
        }
      ],
      "approximateStatisticsAllowed": false
    }
    

    Table Attributes

    entityType

    String

    Type of the catalog object. For tables, the entityType is dataset.

    Example dataset


    id

    String (UUID)

    Unique identifier of the table.

    Example c9c11d32-0576-4200-5a5b-8c7229cb3d72


    type

    String

    Type of dataset. For tables, the type is PHYSICAL_DATASET.

    Example PHYSICAL_DATASET


    path

    [String]

    Path of the table within Dremio, expressed as an array. The path consists of the source or space, followed by any folder and subfolders, followed by the table itself as the last item in the array.

    Example [ "Samples", "samples.dremio.com", "Dremio University", "restaurant_reviews.parquet" ]


    createdAt

    String

    Date and time that the table was created, in UTC format.

    Example 2023-01-13T19:52:01.894Z


    tag

    String (UUID)

    Unique identifier of the version of the table. Dremio changes the tag whenever the table changes and uses the tag to ensure that PUT requests apply to the most recent version of the table.

    Example cb2905bb-39c0-497f-ae74-4c310d534f25


    accelerationRefreshPolicy

    Object

    Attributes that define the acceleration refresh policy for the table.


    format

    Object

    Table format attributes.


    accessControlList

    Object

    Enterprise only. Information about users and roles with access to the table and the specific privileges each user or role has. May include an array of users, an array of roles, or both, depending on the configured access and privileges. The accessControlList array is empty if table-specific access control privileges are not set.

    Example { "users": [ { "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3", "permissions": [ "SELECT", "ALTER" ] }, { "id": "30fca499-4abc-4469-7142-fc8dd29acac8", "permissions": [ "SELECT", "ALTER", "MANAGE_GRANTS" ] } ], "roles": [ { "id": "76a9884b-aea5-46d5-a73a-000edf23f390", "permissions": [ "SELECT", "ALTER" ] } ] }


    permissions

    [String]

    Enterprise-only. List of the privileges that you have on the table. Only appears in the response if the request URL includes the permissions query parameter. For more information, read Privileges.

    Example [ "READ", "WRITE", "ALTER_REFLECTION", "SELECT", "ALTER", "VIEW_REFLECTION", "MODIFY", "MANAGE_GRANTS", "CREATE_TABLE", "DROP", "EXTERNAL_QUERY", "INSERT", "TRUNCATE", "DELETE", "UPDATE", "EXECUTE", "CREATE_SOURCE", "ALL" ]


    owner

    Object

    Information about the table's owner.

    Example { "ownerId": "30fca499-4abc-4469-7142-fc8dd29acac8", "ownerType": "USER" }


    fields

    Object

    Attributes that represent the table schema.


    approximateStatisticsAllowed

    Boolean

    If true, COUNT DISTINCT queries run on the table return approximate results. Otherwise, false.

    Example false

    accelerationRefreshPolicy

    refreshPeriodMs

    Integer

    Refresh period for the data in all reflections for the table, in milliseconds.

    Example 3600000


    gracePeriodMs

    Integer

    Maximum age allowed for reflection data used to accelerate queries, in milliseconds.

    Example 10800000


    method

    String

    Approach used for refreshing the data in reflections for the table. For more information, read Refreshing Reflections.

    Enum FULL , INCREMENTAL

    Example FULL


    refreshField

    String

    For INCREMENTAL refresh method, the field to refresh for the table. Used only if method is INCREMENTAL.

    Example business_id


    neverExpire

    Boolean

    If the reflection never expires, the value is true. Otherwise, the value is false.

    Example false


    neverRefresh

    Boolean

    If the reflection never refreshes, the value is true. Otherwise, the value is false.

    Example false

    format

    type

    String

    Type of data in the table.

    Enum Delta , Excel , Iceberg , JSON , Parquet , Text , Unknown , XLS

    Example Parquet


    name

    String

    Table name. Dremio automatically duplicates the name of the origin file or folder to populate this value.

    Example restaurant_reviews.parquet


    fullPath

    [String]

    Path of the table within Dremio, expressed as an array. The path consists of the source or space, followed by any folder and subfolders, followed by the table itself as the last item in the array.

    Example [ "Samples", "samples.dremio.com", "Dremio University", "restaurant_reviews.parquet" ]


    ctime

    Integer

    Not used. Has the value 0.

    Example 0


    isFolder

    Boolean

    If the value is true, the table was created from a folder. If the value is false, the table was created from a file.

    Example false


    location

    String

    Location, expressed as a string, where the table's metadata is stored within a Dremio source or space.

    Example /samples.dremio.com/Dremio University/restaurant_reviews.parquet


    metaStoreType

    String

    Not used. Has the value HDFS.

    Example HDFS


    parquetDataFormat

    Object

    Information about data format for Parquet tables.


    dataFormatTypeList

    [String]

    List of data format types in the table. Included only for Iceberg tables, and PARQUET is the only valid value.

    Example [ "PARQUET" ]


    sheetName

    String

    For tables created from files that contain multiple sheets, the name of the sheet used to create the table.

    Example location_1


    extractHeader

    Boolean

    For tables created from files, the value is true if Dremio extracted the table's column names from the first line of the file. Otherwise, the value is false.

    Example false


    hasMergedCells

    Boolean

    For tables created from files, the value is true if Dremio expanded merged cells in the file when creating the table. Otherwise, the value is false.

    Example true


    fieldDelimiter

    String

    Character used to indicate separate fields in the table. May be , for a comma (default), \t for a tab, | for a pipe, or a custom character.


    quote

    String

    Character used for quotation marks in the table. May be \" for a double quote (default), ' for a single quote, or a custom character.


    comment

    String

    Character used to indicate comments in the table. May be # for a number sign (default) or a custom character.


    escape

    String

    Character used to indicate an escape in the table. May be " for a double quote (default), ` for a back quote, \\ for a backward slash, or a custom character.


    lineDelimiter

    String

    Character used to indicate separate lines in the table. May be \r\n for a carriage return and a new line (default), \n for a new line, or a custom character.


    skipFirstLine

    Boolean

    If Dremio skipped the first line in the file or folder when creating the table, the value is true. Otherwise, the value is false.

    Example false


    autoGenerateColumnNames

    Boolean

    If Dremio used the existing columnn names in the file or folder for the table columns, the value is true. Otherwise, the value is false.

    Example true


    trimHeader

    Boolean

    If Dremio trimmed column names to a specific number of characters when creating the table, the value is true. Otherwise, the value is false.

    Example true


    autoCorrectCorruptDates

    Boolean

    If Dremio automatically corrects corrupted date fields in the table, the value is true. Otherwise, the value is false.

    Example true

    accessControlList

    users

    [Object]

    Enterprise only. List of users with access to the table and the specific privileges each user should have.

    Example [ { "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3", "permissions": [ "SELECT", "ALTER" ] }, { "id": "30fca499-4abc-4469-7142-fc8dd29acac8", "permissions": [ "SELECT", "ALTER", "MANAGE_GRANTS" ] } ]


    roles

    [Object]

    Enterprise only. List of roles whose members have access to the table and the specific privileges each role has.

    Example [ { "id": "76a9884b-aea5-46d5-a73a-000edf23f390", "permissions": [ "SELECT", "ALTER" ] } ]

    users and roles

    id

    String

    Enterprise only. Unique identifier of the user or role with access to the table.

    Example c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3


    permissions

    [String]

    Enterprise only. List of privileges the user or role has on the table. For more information, read Privileges.

    Example [ "SELECT', "ALTER" ]

    owner

    ownerId

    String (UUID)

    Unique identifier of the table's owner.

    Example 30fca499-4abc-4469-7142-fc8dd29acac8


    ownerType

    String

    Type of owner of the table.

    Enum USER , ROLE

    Example USER

    fields

    name

    String

    Name of the table field.

    Example review_count


    type

    Object

    Information about the table field.

    type

    name

    String

    Name of the table field's type.

    Enum STRUCT , LIST , UNION , INTEGER , BIGINT , FLOAT , DOUBLE , VARCHAR , VARBINARY , BOOLEAN , DECIMAL , TIME , DATE , TIMESTAMP , INTERVAL DAY TO SECOND , INTERVAL YEAR TO MONTH

    Example BIGINT


    precision

    Integer

    Total number of digits in the number. Included only for the DECIMAL type.

    Example 38


    scale

    Integer

    Number of digits to the right of the decimal point. Included only for the DECIMAL type.

    Example 0


    subSchema

    [Object]

    List of objects that represent the field's composition. For example, a field composed of data about a restaurant might have a subSchema with an object for parking options, another for payment methods, and so on. subSchemas may be nested within other subSchemas. subSchema appears only for the STRUCT, LIST, and UNION types.

    subSchema

    name

    String

    Name for the subSchema object.

    Example Parking


    type

    Object

    Object that contains a name attribute that provides the field's type.

    Example { "name": "BOOLEAN" }

    parquetDataFormat

    type

    String

    Type of data in the table. Within the parquetDataFormat object, the only valid type is Parquet.

    Example Parquet


    ctime

    Integer

    Not used. Has the value 0.

    Example 0


    isFolder

    Boolean

    If the value is true, the table was created from a folder. If the value is false, the table was created from a file.

    Example true


    autoCorrectCorruptDates

    Boolean

    If the value is true, Dremio automatically corrects corrupted date fields in the table. Otherwise, the value is false.

    Example true

    Formatting a File or Folder as a Table

    Format a file or folder as a table so that you can query the data in Dremio.

    note:

    To format a folder, all files in the folder must be the same format.

    Method and URL
    POST /api/v3/catalog/{id}
    

    Parameters

    id

    path

    String

    Unique identifier of the file or folder you want to format. The ID can be a UUID or a text path. If the ID is a text path, URI-encode the path to replace special characters with their UTF-8 equivalents: %3A for a colon; %2F for a forward slash, and %20 for a space. For example, if the ID value is dremio:/Samples/samples.dremio.com/Dremio University, the URI-encoded ID is dremio%3A%2FSamples%2Fsamples.dremio.com%2FDremio%20University.

    Example c590ed7f-7142-4e1f-ba7d-94173afdc9a3


    entityType

    body

    String

    Type of the catalog object. To format a file or folder as a table, the entityType is dataset.


    path

    body

    [String]

    Path of the file or folder you want to format, expressed as an array. The path consists of the source or space, followed by any folder and subfolders, followed by the file or folder itself as the last item in the array. Get the path from the file or folder's children object in the response to a Folder request.

    Example [ "Samples', "samples.dremio.com", "Dremio University", "restaurant_reviews.parquet" ]


    type

    body

    String

    Type of dataset. For tables, the type is PHYSICAL_DATASET.


    format

    body

    String

    Parameters that describe how to format the file or folder.


    accessControlList

    body

    Object

    Optional

    Enterprise only. Object used to specify which users and roles should have access to the table and the specific privileges each user or role should have. May include an array of users, an array of roles, or both.

    Example { "users": [ { "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3", "permissions": [ "SELECT", "ALTER" ] }, { "id": "30fca499-4abc-4469-7142-fc8dd29acac8", "permissions": [ "SELECT", "ALTER", "MANAGE_GRANTS" ] } ], "roles": [ { "id": "76a9884b-aea5-46d5-a73a-000edf23f390", "permissions": [ "SELECT", "ALTER" ] } ] }

    format

    type

    body

    String

    Type of data in the file or folder. All files in the folder must be the same format.

    Enum Delta , Excel , Iceberg , JSON , Parquet , Text , Unknown , XLS


    skipFirstLine

    body

    Boolean

    Optional

    If Dremio should skip the first line in the file or folder when creating the table, set to true. Otherwise, set to false (default). Optional for files or folders of the Excel and Text types.

    Example true


    extractHeader

    body

    Boolean

    Optional

    If Dremio should extract the table's column names from the first line of the file, set to true. Otherwise, set to false (default). Optional for files or folders of the Excel and Text types.

    Example true


    hasMergedCells

    body

    Boolean

    Optional

    If Dremio should expand merged cells in the file when creating the table, set to true. Otherwise, set to false (default). Optional for files or folders of the Excel type.

    Example true


    sheetName

    body

    String

    Optional

    For tables created from Excel files that contain multiple sheets, the name of the sheet to use to create the table. Default is the first sheet in the file (for files that contain multiple sheets).

    Example location_1


    fieldDelimiter

    body

    String

    Optional

    Character to use to indicate separate fields in the table. May be , for a comma (default), \t for a tab, | for a pipe, or a custom character. Optional for files or folders of the Text type.


    quote

    body

    String

    Optional

    Character to use for quotes in the table. May be \" for a double quote (default), ' for a single quote, or a custom character. Optional for files or folders of the Text type.


    comment

    body

    String

    Optional

    Character to use to indicate comments in the table. May be # for a number sign (default) or a custom character. Optional for files or folders of the Text type.


    escape

    body

    String

    Optional

    Character used to indicate an escape in the table. May be " for a double quote (default), ` for a back quote, \\ for a backward slash, or a custom character. Optional for files or folders of the Text type.


    lineDelimiter

    body

    String

    Optional

    Character used to indicate separate lines in the table. May be \r\n for a carriage return and a new line (default), \n for a new line, or a custom character. Optional for files or folders of the Text type.


    autoGenerateColumnNames

    body

    Boolean

    Optional

    If Dremio should use the existing columnn names in the file or folder for the table columns, set to true (default). Otherwise, set to false. Optional for files or folders of the Text type.

    Example true


    trimHeader

    body

    Boolean

    Optional

    If Dremio should trim column names to a specific number of characters when creating the table, set to true. Otherwise, set to false (default). Optional for files or folders of the Text type.

    Example true

    accessControlList

    users

    body

    [Object]

    Optional

    Enterprise only. List of users who should have access to the table and the specific privileges each user should have.

    Example [ { "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3", "permissions": [ "SELECT", "ALTER" ] }, { "id": "30fca499-4abc-4469-7142-fc8dd29acac8", "permissions": [ "SELECT", "ALTER", "MANAGE_GRANTS" ] } ]


    roles

    body

    [Object]

    Optional

    Enterprise only. List of roles whose members should have access to the table and the specific privileges each role should have.

    Example [ { "id": "76a9884b-aea5-46d5-a73a-000edf23f390", "permissions": [ "SELECT", "ALTER" ] } ]

    users and roles

    id

    body

    String

    Optional

    Enterprise only. Unique identifier of the user or role who should have access to the table.

    Example c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3


    permissions

    body

    [String]

    Optional

    Enterprise only. List of privileges the user or role should have on the table. For more information, read Privileges.

    Example [ "SELECT', "ALTER" ]


    Example Request
    curl -X POST 'https://{hostname}/api/v3/catalog/c9c11d32-0576-4200-5a5b-8c7229cb3d72' \
    --header 'Authorization: _dremio{tokenstring}' \
    --header 'Content-Type: application/json' \
    --data-raw '{
      "entityType": "dataset",
      "path": [
        "Samples",
        "Dremio University",
        "restaurant_reviews.parquet"
      ],
      "type": "PHYSICAL_DATASET",
      "format": {
        "type": "Parquet"
      },
      "accessControlList": {
        "users": [
          {
            "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3",
            "permissions": [
              "SELECT",
              "ALTER"
            ]
          },
          {
            "id": "30fca499-4abc-4469-7142-fc8dd29acac8",
            "permissions": [
              "SELECT",
              "ALTER",
              "MANAGE_GRANTS"
            ]
          }
        ],
        "roles": [
          {
            "id": "76a9884b-aea5-46d5-a73a-000edf23f390",
            "permissions": [
              "SELECT",
              "ALTER"
            ]
          }
        ]
      }
    }'
    
    Example Response
    {
        "entityType": "dataset",
        "id": "c9c11d32-0576-4200-5a5b-8c7229cb3d72",
        "type": "PHYSICAL_DATASET",
        "path": [
          "Samples",
          "samples.dremio.com",
          "Dremio University",
          "restaurant_reviews.parquet"
        ],
        "createdAt": "2023-01-13T19:52:01.894Z",
        "tag": "cb2905bb-39c0-497f-ae74-4c310d534f25",
        "format": {
          "type": "Parquet",
          "name": "restaurant_reviews.parquet",
          "fullPath": [
            "Samples",
            "samples.dremio.com",
            "Dremio University",
            "restaurant_reviews.parquet"
          ],
          "ctime": 0,
          "isFolder": false,
          "location": "/samples.dremio.com/Dremio University/restaurant_reviews.parquet",
          "autoCorrectCorruptDates": true
        },
        "accessControlList": {
          "users": [
            {
              "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3",
              "permissions": [
                "SELECT",
                "ALTER"
              ]
            },
            {
              "id": "30fca499-4abc-4469-7142-fc8dd29acac8",
              "permissions": [
                "SELECT",
                "ALTER",
                "MANAGE_GRANTS"
              ]
            }
          ],
          "roles": [
            {
              "id": "76a9884b-aea5-46d5-a73a-000edf23f390",
              "permissions": [
                "SELECT",
                "ALTER"
              ]
            }
          ]
        },
        "owner": {
          "ownerId": "30fca499-4abc-4469-7142-fc8dd29acac8",
          "ownerType": "USER"
        },
        "fields": [
          {
            "name": "_id",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "name",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "city",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "state",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "categories",
            "type": {
              "name": "LIST",
              "subSchema": [
                {
                  "type": {
                    "name": "VARCHAR"
                  }
                }
              ]
            }
          },
          {
            "name": "review_count",
            "type": {
              "name": "BIGINT"
            }
          },
          {
            "name": "stars",
            "type": {
              "name": "DOUBLE"
            }
          },
          {
            "name": "attributes",
            "type": {
              "name": "STRUCT",
              "subSchema": [
                {
                  "name": "Parking",
                  "type": {
                    "name": "STRUCT",
                    "subSchema": [
                      {
                        "name": "garage",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "street",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "lot",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "valet",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      }
                    ]
                  }
                },
                {
                  "name": "Accepts Credit Cards",
                  "type": {
                    "name": "BOOLEAN"
                  }
                },
                {
                  "name": "Wheelchair Accessible",
                  "type": {
                    "name": "BOOLEAN"
                  }
                },
                {
                  "name": "Price Range",
                  "type": {
                    "name": "BIGINT"
                  }
                }
              ]
            }
          },
          {
            "name": "date",
            "type": {
              "name": "VARCHAR"
            }
          }
        ],
        "approximateStatisticsAllowed": false
      }
    
    Example Request for Excel format type
    curl -X POST 'https://{hostname}/api/v3/catalog/dremio%3A%2FSamples%2Fsamples.dremio.com%2FDremio%20University%2Foracle-departments.xlsx' \
    --header 'Authorization: _dremio{tokenstring}' \
    --header 'Content-Type: application/json' \
    --data-raw '{
      "entityType": "dataset",
      "path": [
          "Samples",
          "samples.dremio.com",
          "Dremio University",
          "oracle-departments.xlsx"
        ],
      "type": "PHYSICAL_DATASET",
      "format": {
        "type": "Excel",
        "extractHeader": true,
        "hasMergedCells": true,
        "sheetName": "Sheet1"
        }
    }'
    
    Example Request for Text format type
    curl -X POST 'https://{hostname}/api/v3/catalog/6ba3bd6e-fd27-4572-a535-77e1548283b3' \
    --header 'Authorization: _dremio{tokenstring}' \
    --header 'Content-Type: application/json' \
    --data-raw '{
      "entityType": "dataset",
      "path": [
        "Samples",
        "samples.dremio.com",
        "Dremio University",
        "airbnb_listings.csv"
      ],
      "type": "PHYSICAL_DATASET",
      "format": {
        "type": "Text",
        "fieldDelimiter": ",",
        "skipFirstLine": false,
        "extractHeader": true,
        "quote": "\"",
        "comment": "#",
        "escape": "\"",
        "lineDelimiter": "\r\n",
        "autoGenerateColumnNames": true,
        "trimHeader": false
      }
    }'
    

    Response Status Codes

    200

    OK

    400

    Bad Request

    401

    Unauthorized

    404

    Not Found

    500

    Internal Server Error


    Retrieving a Table by ID

    Retrieve a table by specifying the table’s id value.

    Method and URL
    GET /api/v3/catalog/{id}
    

    Parameters

    id

    path

    String (UUID)

    Unique identifier of the table that you want to retrieve.

    Example c9c11d32-0576-4200-5a5b-8c7229cb3d72


    include

    query

    String

    Optional

    Include a non-default attribute in the response. The available value for the include query parameter is permissions. For more information, read include and exclude Query Parameters.

    Example ?include=permissions


    Example Request
    curl -X GET 'https://{hostname}/api/v3/catalog/c9c11d32-0576-4200-5a5b-8c7229cb3d72' \
    --header 'Authorization: _dremio{tokenstring}' \
    --header 'Content-Type: application/json'
    
    Example Response
    {
        "entityType": "dataset",
        "id": "c9c11d32-0576-4200-5a5b-8c7229cb3d72",
        "type": "PHYSICAL_DATASET",
        "path": [
          "Samples",
          "samples.dremio.com",
          "Dremio University",
          "restaurant_reviews.parquet"
        ],
        "createdAt": "2023-01-13T19:52:01.894Z",
        "tag": "cb2905bb-39c0-497f-ae74-4c310d534f25",
        "format": {
          "type": "Parquet",
          "name": "restaurant_reviews.parquet",
          "fullPath": [
            "Samples",
            "samples.dremio.com",
            "Dremio University",
            "restaurant_reviews.parquet"
          ],
          "ctime": 0,
          "isFolder": false,
          "location": "/samples.dremio.com/Dremio University/restaurant_reviews.parquet",
          "autoCorrectCorruptDates": true
        },
        "accessControlList": {
          "users": [
            {
              "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3",
              "permissions": [
                "SELECT",
                "ALTER"
              ]
            },
            {
              "id": "30fca499-4abc-4469-7142-fc8dd29acac8",
              "permissions": [
                "SELECT",
                "ALTER",
                "MANAGE_GRANTS"
              ]
            }
          ],
          "roles": [
            {
              "id": "76a9884b-aea5-46d5-a73a-000edf23f390",
              "permissions": [
                "SELECT",
                "ALTER"
              ]
            }
          ]
        },
        "owner": {
          "ownerId": "30fca499-4abc-4469-7142-fc8dd29acac8",
          "ownerType": "USER"
        },
        "fields": [
          {
            "name": "_id",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "name",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "city",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "state",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "categories",
            "type": {
              "name": "LIST",
              "subSchema": [
                {
                  "type": {
                    "name": "VARCHAR"
                  }
                }
              ]
            }
          },
          {
            "name": "review_count",
            "type": {
              "name": "BIGINT"
            }
          },
          {
            "name": "stars",
            "type": {
              "name": "DOUBLE"
            }
          },
          {
            "name": "attributes",
            "type": {
              "name": "STRUCT",
              "subSchema": [
                {
                  "name": "Parking",
                  "type": {
                    "name": "STRUCT",
                    "subSchema": [
                      {
                        "name": "garage",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "street",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "lot",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "valet",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      }
                    ]
                  }
                },
                {
                  "name": "Accepts Credit Cards",
                  "type": {
                    "name": "BOOLEAN"
                  }
                },
                {
                  "name": "Wheelchair Accessible",
                  "type": {
                    "name": "BOOLEAN"
                  }
                },
                {
                  "name": "Price Range",
                  "type": {
                    "name": "BIGINT"
                  }
                }
              ]
            }
          },
          {
            "name": "date",
            "type": {
              "name": "VARCHAR"
            }
          }
        ],
        "approximateStatisticsAllowed": false
      }
    

    Response Status Codes

    200

    OK

    400

    Bad Request

    401

    Unauthorized

    404

    Not Found


    Retrieving a Table by Path

    Retrieve a table by specifying the table’s path.

    Method and URL
    GET /api/v3/catalog/by-path/{path}
    

    Parameters

    path

    path

    String

    Table's location within Dremio, using forward slashes as separators. For example, for the "NYC-taxi-trips" table in the "samples.dremio.com" folder within the source "Samples," the path is Samples/samples.dremio.com/NYC-taxi-trips. If the name of any component in the path includes a special character for URLs, such as a space, replace the special character with its UTF-8 equivalent. For example, "Dremio University" should be Dremio%20University in the URL path.

    Example Samples/samples.dremio.com/Dremio%20University/restaurant_reviews.parquet


    include

    query

    String

    Optional

    Include a non-default attribute in the response. The available value for the include query parameter is permissions. For more information, read include and exclude Query Parameters.

    Example ?include=permissions


    Example Request
    curl -X GET 'https://{hostname}/api/v3/catalog/by-path/Samples/samples.dremio.com/Dremio%20University/restaurant_reviews.parquet' \
    --header 'Authorization: _dremio{tokenstring}' \
    --header 'Content-Type: application/json'
    
    Example Response
    {
        "entityType": "dataset",
        "id": "c9c11d32-0576-4200-5a5b-8c7229cb3d72",
        "type": "PHYSICAL_DATASET",
        "path": [
          "Samples",
          "samples.dremio.com",
          "Dremio University",
          "restaurant_reviews.parquet"
        ],
        "createdAt": "2023-01-13T19:52:01.894Z",
        "tag": "cb2905bb-39c0-497f-ae74-4c310d534f25",
        "format": {
          "type": "Parquet",
          "name": "restaurant_reviews.parquet",
          "fullPath": [
            "Samples",
            "samples.dremio.com",
            "Dremio University",
            "restaurant_reviews.parquet"
          ],
          "ctime": 0,
          "isFolder": false,
          "location": "/samples.dremio.com/Dremio University/restaurant_reviews.parquet",
          "autoCorrectCorruptDates": true
        },
        "accessControlList": {
          "users": [
            {
              "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3",
              "permissions": [
                "SELECT",
                "ALTER"
              ]
            },
            {
              "id": "30fca499-4abc-4469-7142-fc8dd29acac8",
              "permissions": [
                "SELECT",
                "ALTER",
                "MANAGE_GRANTS"
              ]
            }
          ],
          "roles": [
            {
              "id": "76a9884b-aea5-46d5-a73a-000edf23f390",
              "permissions": [
                "SELECT",
                "ALTER"
              ]
            }
          ]
        },
        "owner": {
          "ownerId": "30fca499-4abc-4469-7142-fc8dd29acac8",
          "ownerType": "USER"
        },
        "fields": [
          {
            "name": "_id",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "name",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "city",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "state",
            "type": {
              "name": "VARCHAR"
            }
          },
          {
            "name": "categories",
            "type": {
              "name": "LIST",
              "subSchema": [
                {
                  "type": {
                    "name": "VARCHAR"
                  }
                }
              ]
            }
          },
          {
            "name": "review_count",
            "type": {
              "name": "BIGINT"
            }
          },
          {
            "name": "stars",
            "type": {
              "name": "DOUBLE"
            }
          },
          {
            "name": "attributes",
            "type": {
              "name": "STRUCT",
              "subSchema": [
                {
                  "name": "Parking",
                  "type": {
                    "name": "STRUCT",
                    "subSchema": [
                      {
                        "name": "garage",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "street",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "lot",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      },
                      {
                        "name": "valet",
                        "type": {
                          "name": "BOOLEAN"
                        }
                      }
                    ]
                  }
                },
                {
                  "name": "Accepts Credit Cards",
                  "type": {
                    "name": "BOOLEAN"
                  }
                },
                {
                  "name": "Wheelchair Accessible",
                  "type": {
                    "name": "BOOLEAN"
                  }
                },
                {
                  "name": "Price Range",
                  "type": {
                    "name": "BIGINT"
                  }
                }
              ]
            }
          },
          {
            "name": "date",
            "type": {
              "name": "VARCHAR"
            }
          }
        ],
        "approximateStatisticsAllowed": false
      }
    

    Response Status Codes

    200

    OK

    400

    Bad Request

    401

    Unauthorized

    404

    Not Found


    Updating a Table

    Update the specified table in Dremio.

    Method and URL
    PUT /api/v3/catalog/{id}
    

    Parameters

    id

    path

    String (UUID)

    Unique identifier of the table that you want to update.

    Example c9c11d32-0576-4200-5a5b-8c7229cb3d72


    entityType

    body

    String

    Type of the catalog object. For tables, the entityType is dataset.


    id

    body

    String (UUID)

    Unique identifier of the table that you want to update.

    Example c9c11d32-0576-4200-5a5b-8c7229cb3d72


    path

    body

    [String]

    Path of the table that you want to update, expressed as an array. The path consists of the source or space, followed by any folder and subfolders, followed by the table itself as the last item in the array. Get the path from the table's children object in the response to a Folder request.

    Example [ "Samples', "samples.dremio.com", "Dremio University", "restaurant_reviews.parquet" ]


    tag

    body

    String (UUID)

    Optional

    Unique identifier of the version of the table that you want to update. If you provide a tag in the request body, Dremio uses the tag to ensure that you are requesting to update the most recent version of the table. If you do not provide a tag, Dremio automatically updates the most recent version of the table.

    Example cb2905bb-39c0-497f-ae74-4c310d534f25


    type

    body

    String

    Type of dataset. For tables, the type is PHYSICAL_DATASET.


    format

    body

    String

    Parameters that describe the table's format.


    accessControlList

    body

    Object

    Optional

    Enterprise only. Object used to specify which users and roles should have access to the table and the specific privileges each user or role should have. May include an array of users, an array of roles, or both.

    Example { "users": [ { "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3", "permissions": [ "SELECT", "ALTER" ] }, { "id": "30fca499-4abc-4469-7142-fc8dd29acac8", "permissions": [ "SELECT", "ALTER", "MANAGE_GRANTS" ] } ], "roles": [ { "id": "76a9884b-aea5-46d5-a73a-000edf23f390", "permissions": [ "SELECT", "ALTER" ] } ] }

    format

    type

    body

    String

    Type of data in the table.

    Enum Delta , Excel , Iceberg , JSON , Parquet , Text , Unknown , XLS


    skipFirstLine

    body

    Boolean

    Optional

    If Dremio should skip the first line in the table, set to true. Otherwise, set to false (default). Optional for Excel and Text types.

    Example true


    extractHeader

    body

    Boolean

    Optional

    If Dremio should extract the table's column names from the first line of the file, set to true. Otherwise, set to false (default). Optional for tables created from files or folders of the Excel and Text types.

    Example true


    hasMergedCells

    body

    Boolean

    Optional

    If Dremio should expand merged cells in the table, set to true. Otherwise, set to false (default). Optional for tables created from files or folders of the Excel type.

    Example true


    fieldDelimiter

    body

    String

    Optional

    Character to use to indicate separate fields in the table. May be , for a comma (default), \t for a tab, | for a pipe, or a custom character. Optional for tables created from files or folders of the Text type.


    quote

    body

    String

    Optional

    Character to use for quotes in the table. May be \" for a double quote (default), ' for a single quote, or a custom character. Optional for tables created from files or folders of the Text type.


    comment

    body

    String

    Optional

    Character to use to indicate comments for the table. May be # for a number sign (default) or a custom character. Optional for tables created from files or folders of the Text type.


    escape

    body

    String

    Optional

    Character to use to indicate an escape for the table. May be " for a double quote (default), ` for a back quote, \\ for a backward slash, or a custom character. Optional for tables created from files or folders of the Text type.


    lineDelimiter

    body

    String

    Optional

    Character to use to indicate separate lines for the table. May be \r\n for a carriage return and a new line (default), \n for a new line, or a custom character. Optional for tables created from files or folders of the Text type.


    autoGenerateColumnNames

    body

    Boolean

    Optional

    If Dremio should use the existing columnn names for the table columns, set to true (default). Otherwise, set to false. Optional for tables created from files or folders of the Text type.

    Example true


    trimHeader

    body

    Boolean

    Optional

    If Dremio should trim column names to a specific number of characters when updating the table, set to true. Otherwise, set to false (default). Optional for tables created from files or folders of the Text type.

    Example true

    accessControlList

    users

    [Object]

    Optional

    Enterprise only. List of users who should have access to the table and the specific privileges each user should have.

    Example [ { "id": "c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3", "permissions": [ "SELECT", "ALTER" ] }, { "id": "30fca499-4abc-4469-7142-fc8dd29acac8", "permissions": [ "SELECT", "ALTER", "MANAGE_GRANTS" ] } ]


    roles

    [Object]

    Optional

    Enterprise only. List of roles whose members should have access to the table and the specific privileges each role should have.

    Example [ { "id": "76a9884b-aea5-46d5-a73a-000edf23f390", "permissions": [ "SELECT", "ALTER" ] } ]

    users and roles

    id

    String

    Optional

    Enterprise only. Unique identifier of the user or role that should have access to the table.

    Example c590ed7f-b2b4-4e1f-ba7d-94173afdc9a3


    permissions

    [String]

    Optional

    Enterprise only. List of privileges the user or role should have on the table. For more information, read Privileges.

    Example [ "SELECT', "ALTER" ]


    Example Request
    curl -X PUT 'https://{hostname}/api/v3/catalog/dba1e4fe-6351-44d2-a3e0-7aa20e782bf3' \
    --header 'Authorization: _dremio{tokenstring}' \
    --header 'Content-Type: application/json' \
    --data-raw '{
      "entityType": "dataset",
      "id": "dba1e4fe-6351-44d2-a3e0-7aa20e782bf3",
      "path": [
        "Samples",
        "samples.dremio.com",
        "Dremio University",
        "airbnb_listings.csv"
      ],
      "type": "PHYSICAL_DATASET",
      "format": {
        "type": "Text",
        "fieldDelimiter": ",",
        "skipFirstLine": false,
        "extractHeader": true,
        "quote": "\"",
        "comment": "#",
        "escape": "\"",
        "lineDelimiter": "\r\n",
        "autoGenerateColumnNames": true,
        "trimHeader": true
      }
    }'
    
    Example Response
    {
        "entityType": "dataset",
        "id": "dba1e4fe-6351-44d2-a3e0-7aa20e782bf3",
        "type": "PHYSICAL_DATASET",
        "path": [
            "Samples",
            "samples.dremio.com",
            "Dremio University",
            "airbnb_listings.csv"
        ],
        "createdAt": "2023-01-23T21:26:59.568Z",
        "tag": "fc1707df-35a1-45c1-87d7-5f66fb11a729",
        "format": {
            "type": "Text",
            "ctime": 0,
            "isFolder": false,
            "location": "/samples.dremio.com/Dremio University/airbnb_listings.csv",
            "fieldDelimiter": ",",
            "skipFirstLine": false,
            "extractHeader": true,
            "quote": "\"",
            "comment": "#",
            "escape": "\"",
            "lineDelimiter": "\r\n",
            "autoGenerateColumnNames": true,
            "trimHeader": true
        },
        "accessControlList": {},
        "owner": {
            "ownerId": "c590ed7f-7142-4e1f-ba7d-94173afdc9a3",
            "ownerType": "USER"
        },
        "fields": [
            {
                "name": "id",
                "type": {
                    "name": "VARCHAR"
                }
            },
            {
                "name": "listing_url",
                "type": {
                    "name": "VARCHAR"
                }
            },
            {
                "name": "scrape_id",
                "type": {
                    "name": "VARCHAR"
                }
            },
            {
                "name": "last_scraped",
                "type": {
                    "name": "VARCHAR"
                }
            },
            {
                "name": "name",
                "type": {
                    "name": "VARCHAR"
                }
            },
            {
                "name": "summary",
                "type": {
                    "name": "VARCHAR"
                }
            },
            {
                "name": "reviews_per_month",
                "type": {
                    "name": "VARCHAR"
                }
            }
        ],
        "approximateStatisticsAllowed": false
    }
    

    Response Status Codes

    200

    OK

    400

    Bad Request

    401

    Unauthorized

    404

    Not Found

    500

    Internal Server Error


    Refreshing a Table

    Refresh the reflections associated with the specified table.

    note:

    Refreshing a table’s reflections does not refresh its metadata. Read Refreshing Metadata to learn how to refresh table metadata. Read Refreshing Reflections for more information about refreshing reflections.

    Method and URL
    POST /api/v3/catalog/{id}/refresh
    

    Parameters

    id

    path

    String (UUID)

    Unique identifier of the table that you want to refresh.

    Example c9c11d32-0576-4200-5a5b-8c7229cb3d72


    Example Request
    curl -X POST 'https://{hostname}/api/v3/catalog/c9c11d32-0576-4200-5a5b-8c7229cb3d72/refresh' \
    -H 'Authorization: _dremio{tokenstring}' \
    -H 'Content-Type: application/json' 
    
    Example Response
    No response
    

    Response Status Codes

    204

    No Content

    400

    Bad Request

    401

    Unauthorized

    404

    Not Found


    Reverting a Table to a File or Folder

    Revert a table in a source to change the data in the table back to its original format, file or folder. For more information, read Formatting Data to a Table and Removing Formatting on Data

    note:

    If a table is saved in your home space, the revert request will delete the table entirely. The revert endpoint only changes a table back to a file or folder if the table is saved in a source.

    Method and URL
    DELETE /api/v3/catalog/{id}
    

    Parameters

    id

    path

    String (UUID)

    Unique identifier of the table that you want to revert to a file or folder.

    Example c9c11d32-0576-4200-5a5b-8c7229cb3d72


    Example Request
    curl -X DELETE 'https://{hostname}/api/v3/catalog/c9c11d32-0576-4200-5a5b-8c7229cb3d72' \
    -H 'Authorization: _dremio{tokenstring}' \
    -H 'Content-Type: application/json' 
    
    Example Response
    No response
    

    Response Status Codes

    204

    No Content

    400

    Bad Request

    401

    Unauthorized

    404

    Not Found