Module dropbox_sdk::file_properties[][src]

This is supported on crate feature dbx_file_properties only.
Expand description

This namespace contains helpers for property and template metadata endpoints.

These endpoints enable you to tag arbitrary key/value data to Dropbox files.

The most basic unit in this namespace is the PropertyField. These fields encapsulate the actual key/value data.

Fields are added to a Dropbox file using a PropertyGroup. Property groups contain a reference to a Dropbox file and a PropertyGroupTemplate. Property groups are uniquely identified by the combination of their associated Dropbox file and template.

The PropertyGroupTemplate is a way of restricting the possible key names and value types of the data within a property group. The possible key names and value types are explicitly enumerated using PropertyFieldTemplate objects.

You can think of a property group template as a class definition for a particular key/value metadata object, and the property groups themselves as the instantiations of these objects.

Templates are owned either by a user/app pair or team/app pair. Templates and their associated properties can’t be accessed by any app other than the app that created them, and even then, only when the app is linked with the owner of the template (either a user or team).

User-owned templates are accessed via the user-auth file_properties/templates/_for_user endpoints, while team-owned templates are accessed via the team-auth file_properties/templates/_for_team endpoints. Properties associated with either type of template can be accessed via the user-auth properties/* endpoints.

Finally, properties can be accessed from a number of endpoints that return metadata, including files/get_metadata, and files/list_folder. Properties can also be added during upload, using files/upload.

Structs

Raw key/value data to be associated with a Dropbox file. Property fields are added to Dropbox files as a PropertyGroup.

Defines how a single property field may be structured. Used exclusively by PropertyGroupTemplate.

A subset of the property fields described by the corresponding PropertyGroupTemplate. Properties are always added to a Dropbox file as a PropertyGroup. The possible key names and value types in this group are defined by the corresponding PropertyGroupTemplate.

Defines how a property group may be structured.

Enums

Functions

Add property groups to a Dropbox file. See templates_add_for_user() or templates_add_for_team() to create new templates.

Overwrite property groups associated with a file. This endpoint should be used instead of properties_update() when property groups are being updated via a “snapshot” instead of via a “delta”. In other words, this endpoint will delete all omitted fields from a property group, whereas properties_update() will only delete fields that are explicitly marked for deletion.

Permanently removes the specified property group from the file. To remove specific property field key value pairs, see properties_update(). To update a template, see templates_update_for_user() or templates_update_for_team(). To remove a template, see templates_remove_for_user() or templates_remove_for_team().

Search across property templates for particular property field values.

Once a cursor has been retrieved from properties_search(), use this to paginate through all search results.

Add, update or remove properties associated with the supplied file and templates. This endpoint should be used instead of properties_overwrite() when property groups are being updated via a “delta” instead of via a “snapshot” . In other words, this endpoint will not delete any omitted fields from a property group, whereas properties_overwrite() will delete any fields that are omitted from a property group.

Add a template associated with a team. See properties_add() to add properties to a file or folder. Note: this endpoint will create team-owned templates.

Add a template associated with a user. See properties_add() to add properties to a file. This endpoint can’t be called on a team member or admin’s behalf.

Get the schema for a specified template.

Get the schema for a specified template. This endpoint can’t be called on a team member or admin’s behalf.

Get the template identifiers for a team. To get the schema of each template use templates_get_for_team().

Get the template identifiers for a team. To get the schema of each template use templates_get_for_user(). This endpoint can’t be called on a team member or admin’s behalf.

Permanently removes the specified template created from templates_add_for_user(). All properties associated with the template will also be removed. This action cannot be undone.

Permanently removes the specified template created from templates_add_for_user(). All properties associated with the template will also be removed. This action cannot be undone.

Update a template associated with a team. This route can update the template name, the template description and add optional properties to templates.

Update a template associated with a user. This route can update the template name, the template description and add optional properties to templates. This endpoint can’t be called on a team member or admin’s behalf.

Type Definitions