Data Editors

analyze.editor.add_label(project_id, editor_id, label, branch='master')

Sets a label on a data editor

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • label (str) – The label unique name

  • branch (str) – Project branch

Returns

None

analyze.editor.add_path(project_id, editor_id, path, branch='master')

Adds a data editor reference path in the hierarchy

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique editor identifier

  • path (str) – Object rollup path using unix style forward slashes branch (str): Project branch

Returns

None

analyze.editor.add_paths(project_id, additions, branch='master')

Adds multiple editor reference paths in the hierarchy

Parameters
  • project_id (str) – Unique project identifier

  • additions (list) – List of moves, containing: - editor_id (str): Unique editor identifier - to_path (str): New path

  • branch (str) – Project branch

Returns

None

analyze.editor.copy(project_id, editor_id, version_id, rollup_id, after_position, branch='master')

Copies a data editor

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • rollup_id (str) – Unique rollup identifier

  • after_position (int) – Position within the object rollup the object should be placed after

  • branch (str) – Project branch

Returns

dict with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

Return type

dict

analyze.editor.copy_directory(project_id, from_path, to_path, branch='master')

Copies a folder and all paths in the hierarchy but does not duplicate referenced objects

Parameters
  • project_id (str) – Unique project identifier

  • from_path (str) – Original directory path

  • to_path (str) – Destination directory path

  • branch (str) – Project branch

Returns

None

analyze.editor.create(project, path, name, memo, branch='master')

Creates a table

Parameters
  • project_id (str) – Unique project identifier

  • path (str) – Path to place the table in the hierarchy

  • name (str) – The object name

  • memo (str) – The object description

  • branch (str) – Project branch

Returns

dict with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

Return type

dict

analyze.editor.create_directory(project_id, path, branch='master')

Creates a folder in the data editor hierarchy

Parameters
  • project_id (str) – Unique project identifier

  • path (str) – Path to directory

  • branch (str) – Project branch

Returns

None

analyze.editor.delete(project_id, editor_id, branch='master')

Deletes a data editor

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • branch (str) – Project branch

Returns

None

analyze.editor.delete_directory(project_id, path, branch='master')

Deletes a folder and removes path from all objects in that directory

Parameters
  • project_id (str) – Unique project identifier

  • path (str) – Path to directory

  • branch (str) – Project branch

Returns

None

analyze.editor.editor(project_id, editor_id, branch='master')

Provides detailed data editor information

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique table identifier

  • branch (str) – Project branch

Returns

dict with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

Return type

dict

analyze.editor.editors(project_id, branch='master', id_filter=None, sort=None, keys=None, member_details=False)

Returns the list of data editors in the specified project

Parameters
  • project_id (str) – Unique project identifier

  • branch (str, optional) – Project branch

  • id_filter (list, optional) – List of identifiers to which to limit the results. If None or empty, don’t filter

  • sort (list, optional) – List of sort tuples using syntax (key, reverse). e.g. [(‘name’, False)]

  • keys (list, optional) – List of keys to return. Defaults to all.

  • member_details (bool, optional) – If True then returns member info relating to updated_by

Returns

result list of dicts with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

If member_details is set to True, the dict will also contain:
  • updated_by_full_name (str): The User Name of the user that last updated the project

  • updated_by_user_id (int): The id of the user that last updated the project

  • updated_by_gravatar_hash (str): Unique hash to pull gravatar for the user.

Return type

list

analyze.editor.editors_from_path(project_id, path, branch='master', sort=None, keys=None)

Provides list of data editors based on a path fragment. Path fragment can be to parent level.

Parameters
  • project_id (str) – Unique project identifier

  • path (str) – Object rollup path using unix style forward slashes

  • branch (str) – Project branch

  • sort (list) – List of sort tuples using syntax (key, reverse). e.g. [(‘name’, False)]

  • keys (list) – List of keys to return. Defaults to all.

Returns

result list of dicts with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

Return type

list

analyze.editor.get_data(project_id, editor_id, branch='master')

Gets the data to populate a data editor table

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • branch (str) – Project branch

Returns

list of lists representing row data in column order

Return type

list

analyze.editor.ids_from_path(project_id, path, branch='master')

Provides the canonical id for the from a provided path

Parameters
  • project_id (str) – Unique project identifier

  • path (str) – Object rollup path using unix style forward slashes

  • branch (str) – Project branch

Returns

id (str): Data editor unique identifier

Return type

list

analyze.editor.labels(project_id, editor_id, branch='master')

Provides a list of labels for the data editor

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique table identifier

  • branch (str) – Project branch

Returns

list of labels associated with data editor

Return type

list

analyze.editor.lookup_by_full_path(project_id, path, branch='master')

Returns ID for path provided

Parameters
  • project_id (str) – Unique project identifier

  • path (str) – Object rollup path using unix style forward slashes

  • branch (str) – Project branch

Returns

Editor unique identifier

Return type

str

analyze.editor.lookup_by_name(project_id, name, branch='master')

Returns ID for path provided

Parameters
  • project_id (str) – Unique project identifier

  • name (str) – Unique editor name

  • branch (str) – Project branch

Returns

Editor unique identifier

Return type

str

analyze.editor.move_directory(project_id, from_path, to_path, branch='master')

Updates a folder name in the hierarchy

Parameters
  • project_id (str) – Unique project identifier

  • from_path (str) – Original directory path

  • to_path (str) – Destination directory path

  • branch (str) – Project branch

Returns

None

analyze.editor.move_path(project_id, editor_id, from_path, to_path, branch='master')

Moves a data editor reference path in the hierarchy

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique editor identifier

  • from_path (str) – Original path

  • to_path (str) – Destination path

  • branch (str) – Project branch

Returns

None

analyze.editor.move_paths(project_id, moves, branch='master')

Moves multiple data editor reference paths in the hierarchy

Parameters
  • project_id (str) – Unique project identifier

  • moves (list) – List of moves, containing: - editor_id (str): Unique editor identifier - from_path (str): Original path - to_path (str): Destination path

  • branch (str) – Project branch

Returns

None

analyze.editor.paths(project_id, branch='master', path=None)

Provides a list of paths for all tables and folders

Parameters
  • project_id (str) – Unique project identifier

  • branch (str) – Project branch

  • path (str) – Initial path to search

Returns

List of table and directory paths

Return type

list

analyze.editor.paths_from_id(project_id, editor_id, branch='master')

Provides a list of paths associated with the cannonical id

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • branch (str) – Project branch

Returns

List of paths that point to the data editor specified

Return type

list

analyze.editor.remove_label(project_id, editor_id, label, branch='master')

Removes a label on a table

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • label (str) – The label unique name

  • branch (str) – Project branch

Returns

None

analyze.editor.remove_path(project_id, editor_id, path, branch='master')

Removes a data editor reference path in the hierarchy

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique editor identifier

  • path (str) – Object rollup path using unix style forward slashes branch (str): Project branch

Returns

None

analyze.editor.save_data(project_id, editor_id, data, branch='master')

Gets the data to populate a data editor table

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • data (list) – List of dicts with values submitted by data editor

  • branch (str) – Project branch

Returns

None

analyze.editor.search_by_label(project_id, text, criteria='contains', branch='master', sort=None, keys=None)

Returns list of data editors that match the search criteria

Parameters
  • project_id (str) – Unique project identifier

  • text (str) – The search text to locate

  • criteria (str) – exact, startswith, endswith, or contains

  • branch (str) – Project branch

  • sort (list) – List of sort tuples using syntax (key, reverse). e.g. [(‘name’, False)]

  • keys (list) – List of keys to return. Defaults to all.

Returns

result list of dicts with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

Return type

list

analyze.editor.search_by_name(project_id, text, criteria='contains', branch='master', sort=None, keys=None)

Returns list of data editors that match the search criteria

Parameters
  • project_id (str) – Unique project identifier

  • text (str) – The search text to locate

  • criteria (str) – The search criteria (contains, exact, startswith, or endswith)

  • branch (str) – Project branch

  • keys (list) – List of keys to return. Defaults to all.

Returns

result list of dicts with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

Return type

list

analyze.editor.update(project_id, editor_id, memo, branch='master', **kwargs)

Updates the specified data editor

Parameters
  • project_id (str) – Unique project identifier

  • editor_id (str) – Unique data editor identifier

  • branch (str) – Project branch

Kwargs:
  • name (str): The table name

  • memo (str): The table description

  • view_manager (bool): Table is visible to Manager roles if True

  • view_explorer (bool): Table is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

Returns

dict with the following properties
  • project_id (str): Unique project identifier

  • branch (str): Project branch

  • id (str): Unique editor identifier

  • name (str): Unique editor identifier

  • memo (str): Description of editor

  • paths (list): List of hierarchy paths that reference the editor

  • labels (list): List of labels assigned to editor

  • update_time (str): Date and time data was updated as ISO 8601 compliant time

  • updated_by (int): User ID of last updater

  • view_manager (bool): Editor is visible to Manager roles if True

  • view_explorer (bool): Editor is visible to Explorer roles if True

  • source_kind (str): Where the source data is pulled (table or udf)

  • source (str): Name of source

  • target_kind (str): Where the results are sent (table or udf)

  • target (str): Name of target

  • target_mode (str): ‘append’ or ‘replace’

  • ids (list): List of column identifiers

  • names (list): List of column names

  • controls (list): List of column data entry controls

  • enabled (bool): True if the editor is enabled

  • record_updated_by (bool): True if recording user who edited values

  • record_update_time (bool): True if recording the time when values are edited

  • record_updated_by_id (str): Column ID to record the user who edited the values

  • record_update_time_id (str): Column ID to record the time the values were edited

Return type

dict

analyze.editor.view_explorer(project_id, editor_ids, allowed=True, branch='master')

Sets View Explorer flag

Parameters
  • project_id (str) – Unique project identifier

  • editor_ids (str) – Unique data editor identifier or list of unique data editor identifiers

  • allowed (bool) – Indicate whether Explorer role can view item

  • branch (str) – Project branch

Returns

None

analyze.editor.view_manager(project_id, editor_ids, allowed=True, branch='master')

Sets View Manager flag

Parameters
  • project_id (str) – Unique project identifier

  • editor_ids (str) – Unique data editor identifier or list of unique data editor identifiers

  • allowed (bool) – Indicate whether Manager role can view item

  • branch (str) – Project branch

Returns

None