跳过内容

组织

组织是 Capgo 的顶级实体。它们允许您将应用程序、团队成员和资源归类到一个单一的组织下。每个组织可以有多个具有不同角色和权限的成员。

常见用例

常见用例
  • 为您的公司创建新组织
  • 管理组织设置
  • 更新组织信息
  • 获取组织详细信息

端点

端点

GET

GET

https://api.capgo.app/organization/

获取组织信息。如果 orgId is 提供在参数中,返回一个单独的组织。否则,返回所有可访问的组织。

  • orgId (可选):要检索的特定组织的 ID
interface Organization {
id: string
created_by: string
created_at: string
updated_at: string
logo: string | null
name: string
management_email: string
customer_id: string | null
}
终端窗口
# Get all organizations
curl -H "x-api-key: YOUR_API_KEY" https://api.capgo.app/organization/
# Get specific organization
curl -H "x-api-key: YOUR_API_KEY" https://api.capgo.app/organization/?orgId=org_123
{
"data": {
"id": "org_123",
"name": "My Company",
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z",
"logo": "https://example.com/logo.png",
"management_email": "admin@example.com",
"customer_id": "cus_123"
}
}

https://api.capgo.app/organization/

创建一个新组织。

当使用一个 API 密钥时,密钥必须具有全局权限和当前组织范围的 org.createorg_admin 绑定。这是必需的,因为目标组织尚未存在,因此无法使用正常的组织范围RBAC检查它。 org_super_admin 当请求成功时,__CAPGO_KEEP_0__ 将自动将同一个 __CAPGO_KEEP_1__ 密钥 assignments 到新组织上。

When the request succeeds, Capgo automatically assigns the same API key as org_super_admin POST

标题:请求体

复制到剪贴板
interface OrganizationCreate {
name: string
email?: string
estimatedMau?: number
website?: string
}

标题:示例请求

终端窗口
Terminal window
curl -X POST \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "New Organization",
"email": "admin@example.com",
"website": "https://example.com"
}' \
https://api.capgo.app/organization/
{
"id": "org_456"
}

如果 API 键不存在 org.create则 API 返回:

{
"error": "permission_denied"
}

https://api.capgo.app/organization/

更新现有组织。需要在目标组织上拥有管理员角色。

interface OrganizationUpdate {
orgId: string
logo?: string
name?: string
management_email?: string
}
终端窗口
curl -X PUT \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"orgId": "org_123",
"name": "New Company Name",
"management_email": "newemail@example.com"
}' \
https://api.capgo.app/organization/
{
"status": "Organization updated",
"data": {
"id": "org_123",
"name": "New Company Name",
"management_email": "newemail@example.com"
}
}

https://api.capgo.app/organization/

删除一个现有的组织。需要在目标组织上删除权限,通常通过 org_super_admin 角色。这个动作是不可逆的,会移除所有相关的应用、捆绑包(版本)和资源。

全局权限不允许删除组织。 org.create Query Parameters

Section titled “Query Parameters”

: 组织ID
  • orgIdExample Request

Section titled “Example Request”

终端窗口
复制到剪贴板
curl -X DELETE \
-H "x-api-key: YOUR_API_KEY" \
https://api.capgo.app/organization/?orgId=org_123
{
"status": "ok"
}

常见错误场景及其响应:

// Invalid API key
{
"error": "Invalid API key",
"status": "KO"
}
// Missing required field
{
"error": "Name is required",
"status": "KO"
}
// Insufficient permissions
{
"error": "Admin role required",
"status": "KO"
}
  1. 命名: 给组织使用清晰、描述性的名称
  2. : 为团队成员分配适当的角色角色
  3. 邮箱: 使用一个群组邮箱来管理 management_email 以避免因个人邮箱变更而产生的问题
  4. Logo: 将Logo托管在可靠的CDN上并使用HTTPS URL

组织 来规划仪表盘和 __CAPGO_KEEP_0__ 操作,连接它与 API 概述 为了在 API 概述中获取实施细节 for the implementation detail in API Overview, 继续从组织 为Introduction中的实现细节 API Keys 为API Keys中的实现细节 设备 为设备中的实现细节 为包中的实现细节