Creating a Typical Management Application

A typical management application involves the following tasks: uploading photos; creating, editing and deleting groups, galleries, collections, and photos; assigning keywords, categories, and descriptions to photos and other objects.

Below are the steps involved in creating a typical management application:

  • Since management operations are only allowed for the content owner, the application should first authenticate the user. See the Authentication topic for more information on user authentication.
  • To obtain private user profile, the application should call the LoadPrivateProfile method. The private profile contains personal user information as well as important statistics.
  • To load user group hierarchy, the application should call the LoadGroupHierarchy method. This would provide the list of all groups, galleries and collections owned by the user.
  • To obtain the list of photos in a particular gallery or collection, the application should call the LoadPhotoSet method. See also the Loading Objects topic for more information on retrieving object information.
  • To change properties of an existing group, gallery, collection, or photo you need to call the corresponding API method passing it an updater object filled with new data. See Modifying Objects for more information on modifying groups, galleries, and other objects.
  • To create a new group, gallery, or collection, the application needs to call one of the creation methods passing it an updater object with the initial object properties. See the Creating Objects topic for more information.
    Note: you cannot create a photo through the API directly. The only way to create a photo is to upload it as described in the Uploading Photos topic.
  • To delete an object such as group, gallery, collection, or photo, the application should call one of the deletion methods provided by the API. See the Deleting Objects topic for more information.

Many of the steps described above are demonstrated in the Zenfolio Uploader example application.