class ftrack_api.entity.component.Component(session, data=None, reconstructing=False)[source]

Represent a component.


Return availability in locations.

If locations is None, all known locations will be checked.

Return a dictionary of {location_id:percentage_availability}

__init__(session, data=None, reconstructing=False)

Initialise entity.

session is an instance of ftrack_api.session.Session that this entity instance is bound to.

data is a mapping of key, value pairs to apply as initial attribute values.

reconstructing indicates whether this entity is being reconstructed, such as from a query, and therefore should not have any special creation logic applied, such as initialising defaults for missing data.

attributes = None

Reset all locally modified attribute values.

default_projections = None
entity_type = 'Entity'
get(k[, d]) D[k] if k in D, else d.  d defaults to None.

Return list of tuples of (key, value) pairs.


Will fetch all values from the server if not already fetched or set locally.

keys() a set-like object providing a view on D's keys
merge(entity, merged=None)

Merge entity attribute values and other data into this entity.

Only merge values from entity that are not ftrack_api.symbol.NOT_SET.

Return a list of changes made with each change being a mapping with the keys:

  • type - Either ‘remote_attribute’, ‘local_attribute’ or ‘property’.

  • name - The name of the attribute / property modified.

  • old_value - The previous value.

  • new_value - The new merged value.

pop(k[, d]) v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem() (k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

primary_key_attributes = None
setdefault(k[, d]) D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F) None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v


Return list of values.

class ftrack_api.entity.component.CreateThumbnailMixin[source]

Mixin to add create_thumbnail method on entity class.

create_thumbnail(path, data=None)[source]

Set entity thumbnail from path.

Creates a thumbnail component using in the ftrack.server location Session.create_component The thumbnail component will be created using data if specified. If no component name is given, thumbnail will be used.

The file is expected to be of an appropriate size and valid file type.


A Session.commit will be automatically issued.