Projects are a user created item that will be have a print order placed. A User first picks a Product, i.e. 10x8 photobook, which then creates a Project – an instance of that Product which they then populate with their photos and data etc, creating their book for printing. A Project is only visible to the user who created it (enforced by the session).
Projects are versioned with Project Versions. This is to support editing a Project after it has been ordered and allow reordering an older version (for example, from Order History).
Requires:
Actions
URL | Verb | Information |
---|---|---|
/projects | GET | Returns a list of all existing projects for the currently logged in user |
/project | POST | Creates a new project |
/project/{Guid} | PUT | Updates an existing project |
/project/{Guid} | GET | Retrieves the details of an existing project |
/project/{Guid} | DELETE | Deletes an existing project |
...
Field | Data Type | Required | Information |
---|---|---|---|
Guid | Guid | Y | Used to uniquely identify a project |
Name | String | Y | Used for the user to identify the project |
ProductId | Integer | Y | Product type of the project |
Versions | Array Of Project Versions | Y | Versions of the project. |
CreatedDateUtc | DateTime | Y | The date time the project was created, in UTC |
LastSavedDateUtc | DateTime | Y | The date time the project was last saved, in UTC |
...