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 over 1 year ago
