Yes, using multiple app_ids like this is against the TOS. We are
building infrastructure to support your use case, however, so that you
do not need to use multiple application IDs. In the meantime, we are
happy to consider exceptions on a case-by-base basis. You can file
your request using the form at:
http://code.google.com/support/bin/request.py?contact_type=AppEngineMultiInstanceExceptionRequest
If you want more details, there are basically two ways of deploying a
single application to multiple domains:
1. Use a single app_id and build namespacing API hooks for your calls
to memcache and the datastore. If you want to use the users API with
this solution, you'll have to stick with ordinary Google Accounts, not
Google Apps Accounts. For more on API hooks, see
http://code.google.com/appengine/articles/hooks.html
2. Use multiple app identifiers and bind each to a separate domain.
This solution allows for use of the users API with Google Apps
Accounts.
To support option 2, we will consider making exceptions to our terms
when it is clear that multiple identifiers are being used to deploy an
app to multiple different customers. That is, each application ID must
restrict authentication to a different Google Apps domain, and any
significant functionality (beyond splash pages, login pages, etc) must
be available only to members of these domains. To apply for an
exception, use the form linked above.
Cheers!
- Jason