AlbumExposure API

Albums with Design Studio Edition

Options specific to the Design Studio Edition of AlbumExposure.

For the most part, these are the same as the regular Albums endpoints, but with a few additional options. Only the relevant options are shown here, otherwise see the Albums page.

These options are similar to what's shown when setting up an Album in the AE user interface, under the 'Client Access' section.

Endpoints:


Create an album - Client is an AE photographer

POST /api/albums

Requires knowing the photographer's AE username (client_login).

Set 'to_client' to false. This indicates the album is for a photographer.

No password is needed.

{
  "name": "Photographer Album",
  "to_client": false,
  "client_login": "joeuser"
}
Response
Status: 201 Created


Create an album - Invite a photographer to AE

POST /api/albums

If you don't know the photographer's AE username, or they aren't already an AlbumExposure user, you can invite them by email instead.

No password is needed.

{
  "name": "Photographer Album",
  "to_client": false,
  "invite_email": "photographer@example.com"
}
Response
Status: 201 Created


Create an album - Client is NOT a photographer

POST /api/albums

For design studios working directly with clients.

Set 'to_client' to true, and pass in the client name, email, and album password.

{
  "name": "Client Album",
  "password": "mypassword",
  "to_client": true,
  "client_first_name": "Joe",
  "client_last_name": "Client",
  "client_email": "client@example.com"
}
Response
Status: 201 Created


Get an album

GET /api/album/1

This is very similar to the normal album fetch response, with 3 different variations, depending on the album's client access.

`client_login` can be used to determine if a registered AE photographer has been successfully set on the album.

If an AE photographer is not set on the album, then it will show either:

{
  "client_login": "joeuser"
}

{
  "client_login": null,
  "invite_email": "photographer@example.com"
}

{
  "client_login": null,
  "client_first_name": "Joe",
  "client_last_name": "Client"
}
Response
Status: 200 OK