Challenge Overview
Create an AppEngine app that will manage a mailbox download through the use of the Email Audit API. Feature set of the app:
- Multi-tenant- Ability to upload PGP key for a given Google Apps domain
- Create a Mailbox request for download
- Retrieve export status of mailboxes
- Download of select mailboxes
- Deleting an encrypted mailbox
Flow of the app:
2. Either uploads or have the capability to enter email addresses into a text area, comma-delimited
3. Sets the search criteria, all the below are optional:
-��Begin Date
- End Date
-��Search Query
-��Include Deleted (yes/no)
4. Admin user clicks on ���Start Audit���, and submits the email addresses specified on Step #2 to be created as mailbox requests for audit
5. Once a mailbox has been submitted for mailbox audit, there should be a scheduled task that checks when an audit is completed and ready for download. In addition, when a mailbox is in the ���COMPLETED��� status, it should notify the admin user through email that the given mailbox or mailboxes (if more than one mailbox was set on Step #2) has been completed and ready for download.
6. Admin user returns to the web interface, sees a list of the mailboxes that were created for audit on Step #2, with their status. Those that are marked as ���COMPLETED���, a link to download the file(s) should be provided. In addition, if there are more than one mailbox to be downloaded, admin user should have capability to download multiple mailboxes at once.
In addition, there should be an option for the admin user to upload the PGP key that the Audit API will use for encryption of the mailboxes. Click here for more info.
If you can accomplish these additional features through AppEngine, it would be a plus:
- Generate the PGP key through AppEngine- Ability to decrypt the mailbox through AppEngine before it is downloaded locally