无法使用 BIM 360 API 激活项目中的服务
Unable to activate a Service in a Project using BIM 360 APIs
问题:
使用 API 添加新的 BIM 360 Docs 项目后,如何使用 API 为文档管理激活它?按照在线教程没有产生预期的结果。
背景:
我试图按照教程创建 BIM 360 Docs 项目并为文档管理激活它,因为它已列出 here. Project creation itself is a breeze, however the step required to activate a service does not work as outlined。
这是我的个人步骤:
- 使用
HTTP POST https://{{ForgeURL}}/hq/v1/accounts/{{AccountId}}/projects
创建 BIM 360 项目
在响应中返回已创建的项目信息,包括新项目id和状态,为pending。
- 尝试添加项目管理员并激活服务 here
我。 添加项目管理员 - 方法 1 - 文档 here 列出了能够将项目管理员添加到特定 BIM 360 项目和服务类型的端点 .
HTTP POST https://{{ForgeURL}}/hq/v1/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}/users
{
"role":"project_admin",
"service_type":"doc_manager",
"company_id":"{{BIM360CompanyId}}",
"email":"user@email.com"
}
响应:未找到 HTTP 404
{
"code": 1004,
"message": "this project doesn't exist."
}
二。 添加项目管理员 - 方法 2 - 文档 here 列出了能够向项目添加用户(项目管理员和项目用户)的端点。
HTTP POST https://{{ForgeURL}}/hq/v2/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}/users/import
[
{
"email": "user@email.com",
"services": {
"document_management": {
"access_level": "admin"
},
"project_administration": {
"access_level": "admin"
}
},
"company_id": "{{BIM360CompanyId}}",
"industry_roles": []
}
]
响应:HTTP 200 正常,但是... 失败
{
"failure": 1,
"success": 0,
"success_items": [],
"failure_items": [
{
"email": "user@email.com",
"services": {
"document_management": {
"access_level": "admin"
},
"project_administration": {
"access_level": "admin"
}
},
"company_id": "716a5472-a69c-4c07-aa0c-9e54e98ff28f",
"industry_roles": [],
"errors": [
{
"message": "Services [\"document_management\"] are not active or pending in project",
"code": 2000
}
],
"project_id": "1b6f2179-8f2f-4fa7-907b-901aee7224be",
"account_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
]
}
可以看到它抱怨 服务 [\"document_management\"] 在项目 中未激活或挂起。 project_administration
必须包括在内,否则如果任何 access_level
设置为 admin
,它也会抱怨需要 service project_administration
。
但是,我可以看到使用 BIM 360 Docs Web 应用程序帐户管理员的项目,但显示为 不活动。
尝试使用 HTTP PATCH https://{{ForgeURL}}/hq/v1/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}
returns
激活项目
{
"code": 1001,
"message": "You cannot change the status of a project that has no project admin."
}
三。 添加项目管理员 - 方法 3 - 文档 here 列出了能够更新项目用户配置文件的端点,包括用户对项目的访问级别(管理员或用户).
HTTP PATCH https://{{ForgeURL}}/hq/v2/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}/users/{{BIM360UserId}}
{
"services": {
"document_management": {
"access_level": "user"
}
},
"company_id": "{{BIM360CompanyId}}"
}
响应:HTTP 200 正常,但 失败
{
"account_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"project_id": "1b6f2179-8f2f-4fa7-907b-901aee7224be",
"error": [
{
"message": "User does not exist in project",
"code": 2000
},
{
"message": "Services [\"document_management\"] are not active or pending in project",
"code": 2000
}
]
}
长话短说,我无法使用任何可用的方法添加项目管理员。
此外,当我使用 Project Admin\Services\Document Management 部分添加项目管理员时,项目状态变为 Active我突然能够激活概述的服务 here。
endpoint documentation 的信息不正确,指向包含
的负载
"service_types": "field"
使用 所有 BIM 360 服务 可访问和可用的项目信息创建 BIM 360 项目,但事实并非如此。必须明确指定服务类型,例如
"service_types": "doc_manager"
If nothing specified, the project will be created for all the enabled
services in the account.
这允许使用我的问题中概述的方法 1 添加项目管理员。
问题: 使用 API 添加新的 BIM 360 Docs 项目后,如何使用 API 为文档管理激活它?按照在线教程没有产生预期的结果。
背景: 我试图按照教程创建 BIM 360 Docs 项目并为文档管理激活它,因为它已列出 here. Project creation itself is a breeze, however the step required to activate a service does not work as outlined。
这是我的个人步骤:
- 使用
HTTP POST https://{{ForgeURL}}/hq/v1/accounts/{{AccountId}}/projects
创建 BIM 360 项目
在响应中返回已创建的项目信息,包括新项目id和状态,为pending。
- 尝试添加项目管理员并激活服务 here
我。 添加项目管理员 - 方法 1 - 文档 here 列出了能够将项目管理员添加到特定 BIM 360 项目和服务类型的端点 .
HTTP POST https://{{ForgeURL}}/hq/v1/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}/users
{
"role":"project_admin",
"service_type":"doc_manager",
"company_id":"{{BIM360CompanyId}}",
"email":"user@email.com"
}
响应:未找到 HTTP 404
{
"code": 1004,
"message": "this project doesn't exist."
}
二。 添加项目管理员 - 方法 2 - 文档 here 列出了能够向项目添加用户(项目管理员和项目用户)的端点。
HTTP POST https://{{ForgeURL}}/hq/v2/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}/users/import
[
{
"email": "user@email.com",
"services": {
"document_management": {
"access_level": "admin"
},
"project_administration": {
"access_level": "admin"
}
},
"company_id": "{{BIM360CompanyId}}",
"industry_roles": []
}
]
响应:HTTP 200 正常,但是... 失败
{
"failure": 1,
"success": 0,
"success_items": [],
"failure_items": [
{
"email": "user@email.com",
"services": {
"document_management": {
"access_level": "admin"
},
"project_administration": {
"access_level": "admin"
}
},
"company_id": "716a5472-a69c-4c07-aa0c-9e54e98ff28f",
"industry_roles": [],
"errors": [
{
"message": "Services [\"document_management\"] are not active or pending in project",
"code": 2000
}
],
"project_id": "1b6f2179-8f2f-4fa7-907b-901aee7224be",
"account_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
]
}
可以看到它抱怨 服务 [\"document_management\"] 在项目 中未激活或挂起。 project_administration
必须包括在内,否则如果任何 access_level
设置为 admin
,它也会抱怨需要 service project_administration
。
但是,我可以看到使用 BIM 360 Docs Web 应用程序帐户管理员的项目,但显示为 不活动。
尝试使用 HTTP PATCH https://{{ForgeURL}}/hq/v1/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}
returns
{
"code": 1001,
"message": "You cannot change the status of a project that has no project admin."
}
三。 添加项目管理员 - 方法 3 - 文档 here 列出了能够更新项目用户配置文件的端点,包括用户对项目的访问级别(管理员或用户).
HTTP PATCH https://{{ForgeURL}}/hq/v2/accounts/{{AccountId}}/projects/{{BIM360ProjectId}}/users/{{BIM360UserId}}
{
"services": {
"document_management": {
"access_level": "user"
}
},
"company_id": "{{BIM360CompanyId}}"
}
响应:HTTP 200 正常,但 失败
{
"account_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"project_id": "1b6f2179-8f2f-4fa7-907b-901aee7224be",
"error": [
{
"message": "User does not exist in project",
"code": 2000
},
{
"message": "Services [\"document_management\"] are not active or pending in project",
"code": 2000
}
]
}
长话短说,我无法使用任何可用的方法添加项目管理员。
此外,当我使用 Project Admin\Services\Document Management 部分添加项目管理员时,项目状态变为 Active我突然能够激活概述的服务 here。
endpoint documentation 的信息不正确,指向包含
的负载"service_types": "field"
使用 所有 BIM 360 服务 可访问和可用的项目信息创建 BIM 360 项目,但事实并非如此。必须明确指定服务类型,例如
"service_types": "doc_manager"
If nothing specified, the project will be created for all the enabled services in the account.
这允许使用我的问题中概述的方法 1 添加项目管理员。