Table

Base definition

{
  "kind": "table",
  "uri": string,
  "id": string,
  "url": string,	
  "qualifiedReference": string,
  "scopedReference": string,
  "referenceId": string,
  "name": string,
  "hash": string,
  "isSample": boolean,
  "isFileIndex": boolean
}

List definition

In addition to the base definition, any dataset resource returned by a list request will contain the following properties:

{
    "createdAt": integer,
    "updatedAt": integer,
    "description": string,
    "numRows": integer,
    "numBytes": integer,
    "uploadMergeStrategy": string("append"|"replace")
    "variableCount": integer
}

Get definition

In addition to the list definition, any dataset resource returned by a get request will contain the following properties:

{
  "canDownload": boolean,
  "entity": {
    "name": string,
  },
  "temporalRange": [integer, integer], 
  "temporalPrecision": string,
  "geoBBox": {
    "westLongitude": number,
    "eastLongitude": number,
    "northLatitude": number,
    "southLatitude": number
  },
  "publicAccessLevel": string("none"|"overview"|"metadata"|"data"),
  "scopedAccessLevel": string("overview"|"metadata"|"data"),
  "accessLevel": string("overview"|"metadata"|"data"),
  "container": {
    "kind": string("dataset" | "project"),
    ...(dataset.base | project.base)
  }
}

Documentation

FieldsDescription

Base

kind

string

The resource type. Will always be "table".

id

integer

A unique, persistent identifier for the table.

uri

string

The fully qualified URI of this table, for use in generating calls to this API.

For example, /tables/imathews.ian_s_dataset:123:v1_0.test_table:3

qualifiedReference

string

The fully qualified reference to this table, for use (e.g.) in a SQL query.

For example,

demo.reddit:prpw:v1_0.posts:7q4m

scopedReference

string The canonical reference for the table, without any qualifiers. E.g., posts:7q4m

referenceId

string A persistent, 4-character identifier for this table. Will always be unique across all tables within a dataset / project.

url

string

The table's discoverable url.

name

string

The table's user-provided name.

hash

string A hex-encoded MD5 hash of the number of bytes, number of rows, variable names, and variable types in the table. Note that this is not a hash of the data in the table. It is possible for two tables to have identical hashes but different data if the schema, number of rows, and number of bytes remain unchanged.

isSample

boolean

Whether or not the table represents a sample of another table. Will always be false for tables that belong to a project.

isFileIndex

boolean Whether or not the table represents a collection of non-tabular files, with each row representing a file. Index tables are also referred to as "Folders" in some parts of the user interface.

uploadMergeStrategy

string

Only present on tables belonging to a dataset. Defines whether uploads in subsequent versions replace or append to the previous version's content.

Get

createdAt

integer

When the table was created. Stored as milliseconds since the epoch (1970-01-01).

updatedAt

integer

When the table was updated. Stored as milliseconds since the epoch (1970-01-01).

description

string

A user-provided description of the table. May be null.

numRows

integer

The number of rows in the table.

numBytes

integer

The number of bytes stored in the table.

variableCount

integer

The number of variables in the table.

canDownload

boolean

Whether or not the data in the table can be exported to the current client environment. Will be false if in violation of at least one export restriction, or if scopedAccessLevel < 'data'

If false, all calls that return tableRows or exports will fail with a 403 status code.

entity

object

The user provided "entity" of the table, defining what each row in the table represents. May be null.

entity.name

object

The name of the entity.

temporalRange

array(integer, integer)

Will be null if no range has been specified. A tuple representing the start and end values for the temporal range. Stored as milliseconds since the epoch (1970-01-01).

Note that in the case where temporalPrecision is "year" or "date", the upper bound of this value will store one millisecond before the next offset. For example:

[1980, 1982]

=> [1980-01-01 00:00:00.000, 1982-12-31 23:59:59.999]

[1990-09-19, 1990-09-24]

=> [1990-09-19 00:00:00.000, 1990-09-24 23:59:59.999]

temporalPrecision

string

The precision of the temporal range. Will be one of "year", "date", "dateTime"

geoBBox

object An object describing the geographic bounding box of all geographic variables in the table. Will only be present for tables containing "geography" variables, and if those variables' summary statistics have been computed (computation is performed automatically when a version of a dataset is released).

geoBBox .westLongitude .eastLongitude .northLatitude

number Each property represents one side of the bounding box, expressed in numeric degrees.

publicAccessLevel

string

The accessLevel of the table to unauthenticated users. Will be one of: "none", "overview", "metadata", "data"

scopedAccessLevel

string

The accessLevel of the table for this request, taking into account the access token being used. This will never be higher than the requesting user's access level. Will be one of: "none", "overview", "metadata", "data"

accessLevel

string

The accessLevel of the table for the current user, ignoring the access token being used. Will be one of: "none", "overview", "metadata", "data"

container

object

Either the project or dataset within which this table is contained. Will be the base definition of either a project or dataset resource.

Last updated