Data SDK Classes
All python classes utilized by the Data SDK are documented on this page.
DataConnector
A model representing a Studio data connector.
Argument | Type | Description |
---|---|---|
id | string | The unique identifier assigned to the data connector. |
name | string | The data connector's name. |
description | string | The data connector's description. |
type | DataConnectorType | The type of data connector. |
created_at | datetime | The time the data connector was initialized. |
updated_at | datetime | The time the data connector was last updated. |
DataConnectorType
class DataConnectorType(str, Enum):
SNOWFLAKE = "snowflake"
BIG_QUERY = "big-query"
ATHENA = "athena"
POSTGRES = "postgres"
PRESTO = "presto"
REDSHIFT = "redshift"
PLANET = "planet"
EARTH_ENGINE = "earth-engine"
S3 = "s3"
GOOGLE_CLOUD_STORAGE = "google-cloud-storage"
Dataset
A model representing a Studio dataset.
Argument | Type | Description |
---|---|---|
id | string | The unique identifier assigned to the dataset. |
name | string | The dataset's name. |
type | string | The type of dataset. |
created_at | datetime | The time the dataset was initialized. |
updated_at | datetime | The time the dataset was last updated. |
description | string | The dataset's description. |
is_valid | bool | The latest state of the map. |
metadata | DatasetMetadata | A list of models representing Studio datasets. |
Example
Dataset(
id=UUID('6a097258-4d06-4402-b3e9-6869dd9c78b5'),
name='states.csv',
type=<DatasetType.MANAGED: 'managed'>,
created_at=datetime.datetime(2023, 6, 15, 17, 23, 31, tzinfo=datetime.timezone.utc),
updated_at=datetime.datetime(2023, 6, 15, 17, 23, 32, tzinfo=datetime.timezone.utc),
description=None, is_valid=True,
metadata=DatasetMetadata(
media_type=<MediaType.CSV: 'text/csv'>,
size=873,
source=None,
tileset_data_url=None,
tileset_metadata_url=None,
image_url=None,
metadata_url=None,
data_status=None
)
)
DatasetMetadata
A model representing metadata for a Studio dataset.
Argument | Type | Description |
---|---|---|
media_type | Union[ MediaType,string] | For tabular datasets, the format of the dataset. |
size | int | The size of the dataset in bytes. |
source | string | A source for the dataset, if it exists. Used in datasets that are created from other datasets, such as Hex Tiles. |
tileset_data_url | string | For tiled datasets, a source for the tile data. |
tileset_metadata_url | string | For tiled datasets, a source for the tile metadata. |
image_url | string | |
metadata_url | string | |
data_status | string | The processing status of a Hex Tile dataset. |
Example
DatasetMetadata(
media_type=<MediaType.CSV: 'text/csv'>,
size=873,
source=None,
tileset_data_url=None,
tileset_metadata_url=None,
image_url=None,
metadata_url=None,
data_status=None
)
Map
The map record object.
Argument | Type | Description |
---|---|---|
id | string | Required. The unique identifier assigned to the map. |
name | string | The map's name. |
description | string | The map's description. |
created_at | datetime | The time the map was initialized. |
updated_at | datetime | The time the map was last updated. |
latest_state | MapState | The latest state of the map. |
datasets | List[ Dataset] | A list of models representing Studio datasets. |
Example
Map(id = UUID('7a739069-96b4-4cf0-b192-26ecaf05604f'),
name = 'Untitled', description = '',
created_at = datetime.datetime(2023, 6, 14, 22, 27, 42,
tzinfo = datetime.timezone.utc),
updated_at = datetime.datetime(2023, 6, 14, 22, 29, 26, tzinfo = datetime.timezone.utc),
latest_state = MapState(id = UUID('5f9a5555-687a-431e-8bcf-544b4f48fc2f'),
data = {
'config': {
'mapState': {
'zoom': 2.928147705502598,
'globe': {
'config': {
'water': True,
'labels': False,
'azimuth': False,
'basemap': True,
'surface': True,
'adminLines': True,
'atmosphere': True,
'terminator': True,
'waterColor': [17, 35, 48],
'labelsColor': [114.75, 114.75, 114.75],
'azimuthAngle': 45,
'surfaceColor': [9, 16, 29],
'adminLinesColor': [40, 63, 93],
'terminatorOpacity': 0.35
},
'enabled': False
},
'pitch': 0,
'bearing': 0,
'isSplit': False,
'latitude': 30.655952993422108,
'longitude': -77.45615389271373,
'dragRotate': False,
'mapViewMode': 'MODE_2D',
'isZoomLocked': False,
'mapSplitMode': 'SINGLE_MAP',
'isViewportSynced': True,
'splitMapViewports': []
},
'mapStyle': {
'mapStyles': {},
'styleType': 'dark',
'topLayerGroups': {},
'backgroundColor': [255, 255, 255],
'visibleLayerGroups': {
'land': True,
'road': True,
'label': True,
'water': True,
'border': False,
'building': True,
'3d building': False
},
'threeDBuildingColor': [9.665468314072012, 17.18305478057247, 31.1442867897876]
},
'visState': {
'joins': [],
'charts': [],
'editor': {
'visible': True,
'features': []
},
'layers': [{
'id': 'kcpug4j',
'type': 'geojson',
'config': {
'color': [137, 218, 193],
'label': 'State Geo',
'dataId': '654ab82a-9c1a-478d-b888-a27a30c860a9',
'hidden': False,
'columns': {
'geojson': 'State Geo'
},
'isVisible': True,
'textLabel': [{
'size': 18,
'color': [255, 255, 255],
'field': [],
'anchor': 'start',
'offset': [0, 0],
'alignment': 'center',
'background': False,
'outlineColor': [255, 0, 0, 255],
'outlineWidth': 0,
'backgroundColor': [0, 0, 200, 255]
}],
'visConfig': {
'filled': True,
'radius': 10,
'opacity': 0.8,
'stroked': False,
'enable3d': False,
'sizeRange': [0, 10],
'thickness': 0.5,
'wireframe': False,
'colorRange': {
'name': 'Global Warming',
'type': 'sequential',
'colors': ['#4C0035', '#880030', '#B72F15', '#D6610A', '#EF9100', '#FFC300'],
'category': 'Uber'
},
'fixedHeight': False,
'heightRange': [0, 500],
'radiusRange': [0, 50],
'strokeColor': None,
'strokeOpacity': 0.8,
'elevationScale': 5,
'strokeColorRange': {
'name': 'Global Warming',
'type': 'sequential',
'colors': ['#4C0035', '#880030', '#B72F15', '#D6610A', '#EF9100', '#FFC300'],
'category': 'Uber'
}
},
'columnMode': 'geojson'
},
'visualChannels': {
'sizeField': None,
'sizeScale': 'linear',
'colorField': {
'name': 'State',
'type': 'string'
},
'colorScale': 'ordinal',
'heightField': None,
'heightScale': 'linear',
'radiusField': None,
'radiusScale': 'linear',
'strokeColorField': None,
'strokeColorScale': 'quantile'
}
}],
'filters': [],
'geoKeys': [{
'id': 'geoKey#8rq95549b',
'name': 'State',
'label': 'State Geometry',
'shape': 'simplified-boundary',
'dataId': '654ab82a-9c1a-478d-b888-a27a30c860a9',
'weight': 'none',
'geoType': None,
'targetColumnName': 'State Geo'
}],
'metrics': [],
'analyses': [],
'datasets': {
'datasetColors': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': [143, 47, 191]
},
'fieldDisplayNames': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': {}
},
'fieldDisplayFormats': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': {}
}
},
'groupBys': [],
'splitMaps': [],
'layerOrder': ['kcpug4j'],
'annotations': [],
'layerBlending': 'normal',
'projectColors': ['#000000', '#F7F8FA'],
'animationConfig': {
'speed': 1,
'currentTime': None
},
'overlayBlending': 'normal',
'interactionConfig': {
'brush': {
'size': 0.5,
'enabled': False
},
'tooltip': {
'enabled': True,
'compareMode': False,
'compareType': 'absolute',
'fieldsToShow': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': [{
'name': 'State',
'format': None
}, {
'name': 'Abbreviation',
'format': None
}]
}
},
'geocoder': {
'enabled': False
},
'annotation': {
'enabled': True
},
'coordinate': {
'enabled': False
}
}
}
},
'version': 'v1'
}),
datasets =
[
Dataset(
id = UUID('654ab82a-9c1a-478d-b888-a27a30c860a9'),
name = 'states.csv', type = < DatasetType.MANAGED: 'managed' > ,
created_at = datetime.datetime(2023, 6, 12, 18, 5, 48, tzinfo = datetime.timezone.utc),
updated_at = datetime.datetime(2023, 6, 12, 18, 5, 51, tzinfo = datetime.timezone.utc),
description = None, is_valid = True,
metadata = DatasetMetadata(
media_type = < MediaType.CSV: 'text/csv' > ,
size = 873, source = None,
tileset_data_url = None,
tileset_metadata_url = None,
image_url = None, metadata_url = None,
data_status = None)
)
]
)
MapState
The map state object. This is an important object containing the map configuration data.
Argument | Type | Description |
---|---|---|
id | string | The unique identifier assigned to the map. |
data | dict | The map configuration state represented as a dictionary. See the map configuration docs. |
Example
MapState(id = UUID('5f9a5555-687a-431e-8bcf-544b4f48fc2f'),
data = {
'config': {
'mapState': {
'zoom': 2.928147705502598,
'globe': {
'config': {
'water': True,
'labels': False,
'azimuth': False,
'basemap': True,
'surface': True,
'adminLines': True,
'atmosphere': True,
'terminator': True,
'waterColor': [17, 35, 48],
'labelsColor': [114.75, 114.75, 114.75],
'azimuthAngle': 45,
'surfaceColor': [9, 16, 29],
'adminLinesColor': [40, 63, 93],
'terminatorOpacity': 0.35
},
'enabled': False
},
'pitch': 0,
'bearing': 0,
'isSplit': False,
'latitude': 30.655952993422108,
'longitude': -77.45615389271373,
'dragRotate': False,
'mapViewMode': 'MODE_2D',
'isZoomLocked': False,
'mapSplitMode': 'SINGLE_MAP',
'isViewportSynced': True,
'splitMapViewports': []
},
'mapStyle': {
'mapStyles': {},
'styleType': 'dark',
'topLayerGroups': {},
'backgroundColor': [255, 255, 255],
'visibleLayerGroups': {
'land': True,
'road': True,
'label': True,
'water': True,
'border': False,
'building': True,
'3d building': False
},
'threeDBuildingColor': [9.665468314072012, 17.18305478057247, 31.1442867897876]
},
'visState': {
'joins': [],
'charts': [],
'editor': {
'visible': True,
'features': []
},
'layers': [{
'id': 'kcpug4j',
'type': 'geojson',
'config': {
'color': [137, 218, 193],
'label': 'State Geo',
'dataId': '654ab82a-9c1a-478d-b888-a27a30c860a9',
'hidden': False,
'columns': {
'geojson': 'State Geo'
},
'isVisible': True,
'textLabel': [{
'size': 18,
'color': [255, 255, 255],
'field': [],
'anchor': 'start',
'offset': [0, 0],
'alignment': 'center',
'background': False,
'outlineColor': [255, 0, 0, 255],
'outlineWidth': 0,
'backgroundColor': [0, 0, 200, 255]
}],
'visConfig': {
'filled': True,
'radius': 10,
'opacity': 0.8,
'stroked': False,
'enable3d': False,
'sizeRange': [0, 10],
'thickness': 0.5,
'wireframe': False,
'colorRange': {
'name': 'Global Warming',
'type': 'sequential',
'colors': ['#4C0035', '#880030', '#B72F15', '#D6610A', '#EF9100', '#FFC300'],
'category': 'Uber'
},
'fixedHeight': False,
'heightRange': [0, 500],
'radiusRange': [0, 50],
'strokeColor': None,
'strokeOpacity': 0.8,
'elevationScale': 5,
'strokeColorRange': {
'name': 'Global Warming',
'type': 'sequential',
'colors': ['#4C0035', '#880030', '#B72F15', '#D6610A', '#EF9100', '#FFC300'],
'category': 'Uber'
}
},
'columnMode': 'geojson'
},
'visualChannels': {
'sizeField': None,
'sizeScale': 'linear',
'colorField': {
'name': 'State',
'type': 'string'
},
'colorScale': 'ordinal',
'heightField': None,
'heightScale': 'linear',
'radiusField': None,
'radiusScale': 'linear',
'strokeColorField': None,
'strokeColorScale': 'quantile'
}
}],
'filters': [],
'geoKeys': [{
'id': 'geoKey#8rq95549b',
'name': 'State',
'label': 'State Geometry',
'shape': 'simplified-boundary',
'dataId': '654ab82a-9c1a-478d-b888-a27a30c860a9',
'weight': 'none',
'geoType': None,
'targetColumnName': 'State Geo'
}],
'metrics': [],
'analyses': [],
'datasets': {
'datasetColors': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': [143, 47, 191]
},
'fieldDisplayNames': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': {}
},
'fieldDisplayFormats': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': {}
}
},
'groupBys': [],
'splitMaps': [],
'layerOrder': ['kcpug4j'],
'annotations': [],
'layerBlending': 'normal',
'projectColors': ['#000000', '#F7F8FA'],
'animationConfig': {
'speed': 1,
'currentTime': None
},
'overlayBlending': 'normal',
'interactionConfig': {
'brush': {
'size': 0.5,
'enabled': False
},
'tooltip': {
'enabled': True,
'compareMode': False,
'compareType': 'absolute',
'fieldsToShow': {
'654ab82a-9c1a-478d-b888-a27a30c860a9': [{
'name': 'State',
'format': None
}, {
'name': 'Abbreviation',
'format': None
}]
}
},
'geocoder': {
'enabled': False
},
'annotation': {
'enabled': True
},
'coordinate': {
'enabled': False
}
}
}
},
'version': 'v1'
})
MediaType
Data formats currently supported by Data SDK:
class MediaType(str, Enum):
CSV = "text/csv"
GEOJSON = "application/geo+json"
JSON = "application/json"
FGB = "application/x.flatgeobuf"
Updated 6 months ago