Identity

Current Member Information

identity.me.authorized_workspaces()

Provides a list of workspaces this user is allowed to access.

Returns

A list of authorized workspaces dicts with the following keys:
  • id (int): workspace numeric ID

  • uuid (str): workspace UUID,

  • name (str): workspace name

  • default (bool): If this is the user’s default workspace

Return type

list

identity.me.delete_layout(table_id, layout_id)

Deletes or un-shares a stored layout configuration.

Parameters
  • table_id (str) – The ID of the table associated with the layout

  • layout_id (str) – The unique name of the stored layout

identity.me.get_default_layout(table_id)

Loads the default layout for the calling user on the provided table

Parameters

table_id (str) – The unique ID of the table

Returns

A dict representing the layout, in the same format as get_layout()

Return type

dict

identity.me.get_layout(table_id, layout_id)

Gets a stored layout configuration.

Parameters
  • table_id (str) – The ID of the table associated with the layout

  • layout_id (str) – The unique name of the stored layout

Returns

A dict representation of the layout config with the following keys:

columns (dict): A dict containing information about the columns (order is honored), column name as key filters (dict): A dict containing information about filters

Return type

dict

identity.me.get_option(option_id)

Gets a user option from the cache

Parameters

option_id (str) – The option unique identifier

Returns

None

identity.me.info()

Provides membership information about the requesting user.

All returned information is specific to the currently authenticated user.

Returns

result dict with the following properties
  • id (int): Database identifier of user

  • first_name (str): First name of user

  • last_name (str): Last name of user

  • username (str): Alias chosen at point of user creation

  • email (str): Email of user

  • is_active (bool): Indicates if the user is active

  • is_superuser (bool): Indicates if the user is a superuser

  • is_admin (bool): Indicates if the user is an administrator

Return type

dict

identity.me.list_layouts(table_id=None, layout_id=None)

Provides a list of layouts matching the provided params

Parameters
  • table_id (str) – The table associated with the desired layouts

  • layout_id (str, optional) – If provided, this will return layouts prefixed with this param.

Returns

A list of layout dicts with the following keys:
  • shared (str): user`|`global`|`shared - If this layout was created by the user, globally shared layout, or a layout shared directly with the user

  • table_id (str): The ID of the table this layout is defined on

  • layout_id (str): The unique name of this layout

  • config (str): A JSON-serialized version of a dict representing the layout, in the format:

  • columns (dict): A dict containing information about the columns (order is honored), column name as key

  • filters (dict): A dict containing information about filters

Return type

list

identity.me.make_default_layout(table_id, layout_id)

Makes the layout with id layout_id the default layout for the calling user on table table_id.

Parameters
  • table_id (str) – The unique ID of the table

  • layout_id (str) – The unique name of the layout

Returns

None

identity.me.save_option(option_id, value)

Saves a user option

Parameters
  • option_id (str) – The option unique identifier

  • value (str) – The value of the option

Returns

None

identity.me.scopes()

Provides scopes for the currently authenticated user

Returns

list of scopes

Return type

list

identity.me.set_layout(auth_id, table_id, layout_id, columns, filters)

save_layout(table_id, layout_id, columns, filters)

Sets a layout for a table

Parameters
  • table_id (str) – The ID of the table.

  • layout_id (str) – What to name this layout

  • columns (dict) – A dict containing information about the columns (order is honored), column name as key

  • filters (dict) – A dict containing information about filters

Returns

None

identity.me.share_layout(table_id, layout_id, destination_user)

Shares stored layout configuration with a user.

Parameters
  • table_id (str) – The ID of the table associated with the layout

  • layout_id (str) – The unique name of the stored layout

  • destination_user (int) – The ID of the user to share this layout with

identity.me.transfer_layout(table_id, layout_id, destination_user)

Transfers ownership of a stored layout configuration to a user.

Parameters
  • table_id (str) – The ID of the table associated with the layout

  • layout_id (str) – The unique name of the stored layout

  • destination_user (int) – The ID of the user to transfer ownership to

identity.me.workspace_id()

Returns the integer workspace the caller is currently using

Returns

The integer id for the current workspace

Return type

int

identity.me.workspace_name()

Returns the name of the workspace the caller is currently authorized for

Returns

The friendly name of the workspace

Return type

str

identity.me.workspace_uuid()

Returns the uuid workspace the caller is currently using

Returns

The uuid id for the current workspace

Return type

str

Group Management

identity.group.add_label(group_id, label)

Sets a label on a group

Parameters
  • group_id (str) – Unique security group identifier

  • label (str) – The label unique name

Returns

If the label was successfully set.

Return type

bool

identity.group.copy(group_id, rollup_id, after_position)

Copies a security group

Parameters
  • group_id (str) – Unique security group identifier

  • rollup_id (str) – Unique rollup identifier

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

Returns

None

identity.group.create(rollup_id, name, memo)

Creates a security group

Parameters
  • rollup_id (str) – Unique rollup identifier

  • name (str) – The object name

  • memo (str) – The object description

Returns

None

identity.group.create_label(name)

Creates a security group label

Parameters

name (str) – The object name

Returns

None

identity.group.create_rollup(rollup_id, position, name)

Creates a folder in the security group hierarchy

Parameters
  • rollup_id (str) – Unique rollup identifier

  • position (int) – The position order of the object within the rollup

  • name (str) – The object name

Returns

None

identity.group.delete(group_id)

Deletes security group

Parameters

group_id (str) – Unique security group identifier

Returns

None

identity.group.delete_label(label)

Deletes a security group label

Parameters

label (str) – The label unique name

Returns

None

identity.group.delete_rollup(rollup_id)

Deletes a folder and its contents in the security group hierarchy

Parameters

rollup_id (str) – Unique rollup identifier

Returns

None

identity.group.group(group_id)

Provides detailed information about the security group

Parameters

group_id (str) – Unique security group identifier

Returns

None

identity.group.groups(id_filter)

Provides a list of security groups within the specified workspace

Parameters

id_filter (list) – List or tuple of object unique identifiers to which to limit the results

Returns

List of dicts representing groups

Return type

list of dict

identity.group.groups_from_labels(labels)

Provides list of security groups for based on set of labels. Uses AND condition.

Parameters

labels (list) – List or tuple of label unique names

Returns

List of dict representations of groups

Return type

list of dict

identity.group.groups_from_path(path)

Provides list of security groups based on a path fragment. Path fragment can be to parent level.

Parameters

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

Returns

None

identity.group.id_from_path(path)

Provides the cannonical id for the from a provided path

Parameters

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

Returns

None

identity.group.labels(workspace_id)

Provides a list of labels for groups

Parameters

workspace_id (str) – Unique workspace identifier

Returns

A list of labels in {ID: label} format

Return type

list of dict

identity.group.make_rollups(path)

Creates the path and all intermediate rollup points

Parameters

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

Returns

None

identity.group.members(group_id)

Provides list of members assigned to the security group

Parameters

group_id (str) – Unique security group identifier

Returns

A list of dict representations of the users in the security group

Return type

list of dict

identity.group.move(group_id, rollup_id, after_position)

Moves a security group in the hierarchy

Parameters
  • group_id (str) – Unique security group identifier

  • rollup_id (str) – Unique rollup identifier

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

Returns

None

identity.group.paths_from_id(group_id)

Provides a list of paths associated with the cannonical id

Parameters

group_id (str) – Unique security group identifier

Returns

None

identity.group.remove_label(group_id, label)

Removes a label on a group

Parameters
  • group_id (str) – Unique security group identifier

  • label (str) – The label unique identifier

Returns

True if the label was removed.

Return type

bool

identity.group.scope_permissions(group_id, scopes)

Provides a list of the permissions with the specified list of scopes

Parameters
  • group_id (str) – Unique security group identifier

  • scopes (list) – List of scopes for the group

Returns

None

identity.group.scopes(group_id)

Provides a list of scopes authorized in the security group

Parameters

group_id (str) – Unique security group identifier

Returns

None

identity.group.search_by_label(text, criteria='contains')

Returns list of groups that match the search criteria

Parameters
  • text (str) – The search text to locate

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

Returns

List of dicts representing groups

Return type

list of dict

identity.group.search_by_name(text, criteria='contains')

Returns list of groups that match the search criteria

Parameters
  • text (str) – The search text to locate

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

Returns

None

identity.group.update(group_id, name, memo)

Updates a security group name and memo

Parameters
  • group_id (str) – Unique security group identifier

  • name (str) – The object name

  • memo (str) – The object description

Returns

None

identity.group.update_label(label, name)

Updates a group label name

Parameters
  • label (str) – The label unique identifier

  • name (str) – The value to update the label to

Returns

None

identity.group.update_rollup(rollup_id, position, name)

Updates a folder name in the group hierarchy

Parameters
  • rollup_id (str) – Unique rollup identifier

  • position (int) – The position order of the object within the rollup

  • name (str) – The object name

Returns

None

Member Management

identity.member.create(first_name, last_name, email, user_name, auth_type)

Creates a member

Parameters
  • first_name (str) – The user’s first name

  • last_name (str) – The user’s last name

  • email (str) – The user’s email address

  • user_name (str) – The user’s username

  • auth_type (str) – What type of authentication to use

Returns

None

identity.member.deactivate_members(member_list, column='user_name')

Disables the specified members in the workspace and sets their disabled date

Parameters
  • member_list (list) – List of members to delete. Can be Usernames, user IDs or email addresses

  • column (str, optional) – Column to use to identify members for deletion One of: “user_name”, “id”, or “email”

Returns

Number of users deactivated

Return type

int

identity.member.delete(member_id)

Deletes a member from the workspace

Parameters

member_id (int) – Unique member identifier

Returns

None

identity.member.delete_sessions(member_ids)

Deletes the member sessions for the specified users which forces a login again

Parameters

member_ids (list) – List or tuple of member unique identifiers

Returns

None

identity.member.disable(member_id)

Set the member to disabled to prevent login and access

Parameters

member_id (int) – Unique member identifier

Returns

None

identity.member.disable_admin(member_id)

Disables a member as an admin for the current workspace. Can only be executed by another admin.

Parameters

member_id (int) – Unique member identifier

Returns

None

identity.member.enable(member_id)

Sets the member to enabled to allow login and access

Parameters

member_id (int) – Unique member identifier

Returns

None

identity.member.enable_admin(member_id)

Sets a member as an admin for the current workspace. Can only be executed by another admin.

Parameters

member_id (int) – Unique member identifier

Returns

None

identity.member.logins(member_id)

Provides the list of logins with login information for the workspace

Parameters

member_id (int) – Unique member identifier

Returns

list of dicts with the following parameters:
  • ip (str): IP Address from which the user authenticated

  • platform (str): The self reported platform from the user authenticated

  • time (str): The time of the authentication event

Return type

list

identity.member.member(member_id)

Provides detailed information about the member

Parameters

member_id (int) – Unique member identifier

Returns

dict with the following properties
  • user_id (int): Unique member ID

  • first_name (str): Member first name

  • last_name (str): Member last name

  • user_name (str): Member logon name

  • last_name (str): Member last name

  • is_active (bool): Member is active is the workspace if True

  • is_admin (bool): Member is a workspace admin if True

  • address1 (str): Address line 1

  • address2 (str): Address line 2

  • city (str): Address city

  • state (str): Address state / province

  • zip (str): Address postal code

  • country (str): Address country

  • language (str): Preferred language

  • email (str): Member email

  • phone_home (str): Home phone number

  • phone_mobile (str): Mobile phone number

  • phone_fax (str): Fax number

  • phone_business (str): Business phone number

  • skype (str): Skype profile name

  • google_talk (str): Google Talk profile name

  • facebook (str): Facebook profile name

  • twitter (str): Twitter handle

  • auth_provider (str): Authentication provider type

  • default_workspace (str): Default workspace upon login

  • mobile_carrier (str): Phone mobile carrier

  • disabled_date (date): Date the user was disabled in the workspace

Return type

dict

identity.member.members(filter, keys=None, order_by=None, as_dict=False, include_system_users=False)

Provides detailed information about members in the workspace

Parameters
  • filter (dict) – Filters on the returned user list

  • keys (list) – List of keys to return. Defaults to user_id if None specified.

  • order_by (list) – List of keys to apply a sort

  • as_dict (bool) – Return as list of dicts if True, else list of lists in specified key order

  • include_system_users (bool or string) – Return non-human users if True, else only human users. If set to “agent”, Agent users will be returned, but no other system users.

Returns

dict with the following properties
  • user_id (int): Unique member ID

  • first_name (str): Member first name

  • last_name (str): Member last name

  • user_name (str): Member logon name

  • last_name (str): Member last name

  • is_active (bool): Member is active is the workspace if True

  • is_admin (bool): Member is a workspace admin if True

  • address1 (str): Address line 1

  • address2 (str): Address line 2

  • city (str): Address city

  • state (str): Address state / province

  • zip (str): Address postal code

  • country (str): Address country

  • language (str): Preferred language

  • email (str): Member email

  • phone_home (str): Home phone number

  • phone_mobile (str): Mobile phone number

  • phone_fax (str): Fax number

  • phone_business (str): Business phone number

  • skype (str): Skype profile name

  • google_talk (str): Google Talk profile name

  • facebook (str): Facebook profile name

  • twitter (str): Twitter handle

  • auth_provider (str): Authentication provider type

  • default_workspace (str): Default workspace upon login

  • mobile_carrier (str): Phone mobile carrier

  • disabled_date (date): Date the user was disabled in the workspace

Return type

dict

identity.member.members_to_table(table_id)

Provides the list of logins with login information for the workspace

Parameters
  • table_id (str) – Unique table identifier

  • columns (list) – List of columns to include in table - last_name, first_name, user_name, email, is_active, created

Returns

None

identity.member.reset_password(member_id)

Resets a member password

Parameters

member_id (int) – Unique member identifier

Returns

None

identity.member.security_groups(member_id)

Provides a list of security groups with which the member is affiliated

Parameters

member_id (int) – Unique member identifier

Returns

List of Dicts with following parameters:
  • id (int): Group ID

  • name (str): Group name

  • memo (str): Group memo

  • default (bool): Assigned by default to all new users if True

Return type

list

identity.member.sessions()

Provides list of current member web sessions

Returns

List of sessions in workspace

Return type

list

identity.member.update(member_id, first_name, last_name, email, user_name, auth_type)

Updates a member

Parameters
  • member_id (int) – Unique member identifier

  • first_name (str) – What to update the user’s first name to

  • last_name (str) – What to update the user’s last name to

  • email (str) – What to update the user’s email to

  • user_name (str) – What to update the user’s username to

  • auth_type (str) – What to update the user’s auth type to

Returns

None

Distro (Distribution) Lists

identity.distro.add_label(distro_id, label)

Sets a label on a distro

Parameters
  • distro_id (str) – Unique distro list identifier

  • label (str) – The label unique name

Returns

None

identity.distro.add_members(distro_id, members)

Add list of members to the distro distribution list

Parameters
  • distro_id (str) – Unique distro list identifier

  • members (list) – List of unique member identifiers

Returns

None

identity.distro.copy(distro_id, rollup_id, after_position)

Copies a distro

Parameters
  • distro_id (str) – Unique distro list identifier

  • rollup_id (str) – Unique rollup identifier

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

Returns

None

identity.distro.create(rollup_id, name, memo)

Creates a distro (Distribution List)

Parameters
  • rollup_id (str) – Unique rollup identifier

  • name (str) – The object name

  • memo (str) – The object description

Returns

None

identity.distro.create_label(name)

Deletes a distro label

Parameters

name (str) – The object name

Returns

None

identity.distro.create_rollup(rollup_id, position, name)

Creates a folder in the distro hierarchy

Parameters
  • rollup_id (str) – Unique rollup identifier

  • position (int) – The position order of the object within the rollup

  • name (str) – The object name

Returns

None

identity.distro.delete(distro_id)

Deletes a distro

Parameters

distro_id (str) – Unique distro list identifier

Returns

None

identity.distro.delete_label(label)

Removes a label

Parameters

label (str) – The label unique name

Returns

None

identity.distro.delete_rollup(rollup_id)

Deletes a folder and its contents in the distro hierarchy

Parameters

rollup_id (str) – Unique rollup identifier

Returns

None

identity.distro.distro(distro_id)

Provides detailed information about the distro

Parameters

distro_id (str) – Unique distro list identifier

Returns

None

identity.distro.distros(id_filter=None)

Provides a list of distros within the specified workspace

Parameters

id_filter (list) – List or tuple of object unique identifiers to which to limit the results

Returns

None

identity.distro.distros_from_labels(labels)

Provides list of distros for based on set of labels. Uses AND condition.

Parameters

labels (list) – List or tuple of label unique names

Returns

None

identity.distro.distros_from_path(path)

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

Parameters

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

Returns

None

identity.distro.get_addresses_formatted(dlist_id)
Parameters

dlist_id – Unique distro list identifier

Returns

String of comma-seperated email addresses in this dlist, in the format

emailer expects.

Return type

str

identity.distro.id_from_path(path)

Provides the cannonical id for the from a provided path

Parameters

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

Returns

None

identity.distro.labels()

Provides a list of labels for distros

Returns

list of labels

Return type

list

identity.distro.make_rollups(path)

Creates the path and all intermediate rollup points

Parameters

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

Returns

None

identity.distro.members(distro_id)

Provides list of members in the distro distribution list

Parameters

distro_id (str) – Unique distro list identifier

Returns

None

identity.distro.move(distro_id, rollup_id, after_position)

Moves a distro in the hierarchy

Parameters
  • distro_id (str) – Unique distro list identifier

  • rollup_id (str) – Unique rollup identifier

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

Returns

None

identity.distro.paths_from_id(distro_id)

Provides a list of paths associated with the cannonical id

Parameters

distro_id (str) – Unique distro list identifier

Returns

None

identity.distro.remove_label(distro_id, tag)

Removes a label on a distro

Parameters
  • distro_id (str) – Unique distro list identifier

  • label (str) – The label unique name

Returns

None

identity.distro.remove_members(distro_id, members)

Removes list of members from the distro distribution list

Parameters
  • distro_id (str) – Unique distro list identifier

  • members (list) – List of unique member identifiers for removal

Returns

None

identity.distro.search_by_label(text, criteria='contains')

Returns list of distros that match the search criteria

Parameters
  • text (str) – The search text to locate

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

Returns

None

identity.distro.search_by_name(text, criteria='contains')

Returns list of distros that match the search criteria

Parameters
  • text (str) – The search text to locate

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

Returns

None

identity.distro.update(distro_id, name, memo)

Updates a distro name and memo

Parameters
  • distro_id (str) – Unique distro list identifier

  • name (str) – The object name

  • memo (str) – The object description

Returns

None

identity.distro.update_label(tag, name)

Updates a distro label

Parameters
  • label (str) – The label unique name

  • name (str) – The object name

Returns

None

identity.distro.update_rollup(rollup_id, position, name)

Updates a folder name in the distro hierarchy

Parameters
  • rollup_id (str) – Unique rollup identifier

  • position (int) – The position order of the object within the rollup

  • name (str) – The object name

Returns

None