我正在编写的应用程序是一个员工目录系统。我们希望使用Google Apps的公司能够安装我们的Google Apps Marketplace应用,并且通过该安装,所有Google Apps用户都会显示在我们的员工目录应用中。 我们正在努力解决的一般问题是,当公司管理员添加我们的市场应用程序时,我们希望立即开始设置我们的系统,但我们没有足够的信息来这样做。我们确实需要访问Directory API才能进行设置。除非我们知道有效管理员用户的电子邮件地址或ID,否则使用服务帐户似乎无法做到这一点。我们不知道这一点,直到他们在我们的网站上进行身份验证,他们不一定在应用程序安装后进行身份验证。
这是一个简短的问题列表,可以帮助我们确定我们的入职流程:
当有人安装我们的应用时,有没有办法获得通知或回电?最好有关于用户安装它的信息。
有没有办法获取使用服务帐户的用户和/或管理员列表,即使我们还不知道任何用户信息?
您是否知道任何具有类似要求的应用程序通过应用程序市场在入职帐户方面做得很好?
如果针对给定的Google Apps客户取消选中“启用API访问权限”,我的服务帐户是否可以进行目录API调用?我最近遇到了权限错误,因为API访问被禁用但我认为Google Marketplace应用没有有这个限制。
供参考,以下是我们的应用程序请求的auth范围: https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/admin.directory.user https://www.googleapis.com/auth/admin.directory.orgunit https://www.googleapis.com/auth/admin.directory.group https://apps-apis.google.com/a/feeds/domain/
非常感谢您的帮助,谢谢!
答案 0 :(得分:3)
安装没有回调机制,但您可以轮询Licensing API以获取该信息。
管理员安装了应用后,您可以使用目录API的user.list method搜索用户。
此时没有人想到。
不幸的是,可能存在客户仍然禁用该位的情况。对于新域,我们默认启用它。如果管理员明确禁用它,他们仍然可以安装应用程序,API访问将无法正常工作。我们正在努力修复。
你为什么要求https://apps-apis.google.com/a/feeds/domain/?不推荐使用provisioning api,但您应该可以使用目录API的user.list method进行检索。