我正在尝试通过此调用获取 API token :
curl -H "Content-Type: application/json" -X POST -d '{"username": "MY_EMAIL","password": "MY_PWD","client_name": "XXX","client_vendor": "XXX"}' https://app.activecollab.com/MY_ID/api/v1/issue-token
但即使密码正确,我也会收到此回复:
{
"type":"ApiSubscriptionError",
"message":"Invalid password",
"code":3
}
我正在按照 https://labs.activecollab.com/nightly-activecollab-api/v1/authentication.html 的说明进行操作
有人可以使用 Active Collab v5 API 吗?如果有,您能帮忙找出问题吗?
最佳答案
身份验证分两步完成。第一个是向主身份验证服务( https://activecollab.com )进行身份验证:
curl -XPOST -d 'email=user@example.com&password=******' https://activecollab.com/api/v1/external/login
此调用将返回经过身份验证的用户有权访问的帐户列表以及用户详细信息:
{
"is_ok": true,
"accounts": [
{
"class": "FeatherApplicationInstance",
"display_name": "Company Name (ID: #ACCOUNT_ID#)",
"name": 1,
"url": "https://app.activecollab.com/#ACCOUNT_ID#"
}
],
"user": {
"avatar_url": "https://activecollab.com/avatars/user_#USER_ID#.png",
"first_name": "John",
"last_name": "Doe",
"intent": "long string"
}
}
在用户属性中有 intent
属性。它用于对特定的 Active Collab 5 帐户进行身份验证,如下所示:
curl -XPOST -d 'intent=LONG-INTENT-STRING-HERE&client_name=AppName&client_vendor=AppVendor' https://app.activecollab.com/#ACCOUNT_ID#/api/v1/issue-token-intent
客户供应商和客户名称是您的组织名称和您的应用程序的名称。此调用将返回一个 token ,您可以使用该 token 在该帐户中进行进一步的 API 调用:
curl -H "X-Angie-AuthApiToken: TOKEN-HERE" https://app.activecollab.com/#ACCOUNT_ID#/api/v1/projects
关于api - 即使密码有效,Active Collab v5 issue-token API 调用也会返回 "invalid password",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34664042/