多账户专用转化 API 网关控制平面 API:参考文档

账户管理

创建账户

创建多账户专用网关,根据输入的数据,该网关可以由合作伙伴或广告主来进行管理。

结构

POST https://{capig_domain}/hub/graphql/ 
_________________________________________________________________________________________________________________
      
mutation CreateTenantMutation(
        $input: CreateTenantInput!
      ) {
        tenantMutations {
          createTenant(input: $input) {
            tenant {
              id
              name
              status
              canPartnerManage
              users {
                id
                email
                roles {
                    name
                    displayName
                }
                tenants {
                    id
                    name
                    status
                    canPartnerManage
                    availableRoles {
                        name
                        displayName
                    }
                }
                isSelf
                canBeDeleted
                defaultTenantId
              }
              availableRoles {
                name
                displayName
              }
              tenantUsage {
                  totalActivePixels
                  totalInactivePixels
                  totalPixels
                  tenantUsageByTraffic {
                    totalEventsReceived
                    totalPixelsWithTraffic
                    publishError
                    durationInHours,
                    lastUpdatedAt
                 }
              }
              canEditTenantSettingsInUI
              canViewTenantInUI
              canEditTenantSettingsInUI
            }
          }
        }
      }
 _________________________________________________________________________________________________________    
input CreateTenantInput {
    name: String!
    canPartnerManage: Boolean!
    adminEmail: String
    eventEnrichment: Boolean!
}
     

字段

CreateTenantInput

字段描述

name
字符串

必要

账户的名称

canPartnerManage
布尔值

必要
布尔值表示某个合作伙伴能否管理此账户

adminEmail
字符串

可选
管理员的邮箱(此字段在 canPartnerManage 设为 false 时是必要项)

eventEnrichment
布尔值

必要
利用高级匹配数据提升事件质量


返回

CreateTenantResult

字段描述

tenant
租户

新创建的租户


错误代码

代码描述

400

提供的输入无效

401

未获授权,无法创建账户

500

内部服务器错误


请求示例

更改

 mutation CreateTenantMutation(
        $input: CreateTenantInput!
      ) {
        tenantMutations {
          createTenant(input: $input) {
            tenant {
              id
              name
              status
              canPartnerManage
            }
          }
        }
      }

     

变量

{
   "input": {
       "name": "TestAdvertiserViaAPI",
       "canPartnerManage": true,
       "eventEnrichment": true
       }
}
     

响应示例

{
   "data": {
       "tenantMutations": {
           "createTenant": {
               "tenant": {
                   "id": "hU2koC34",
                   "name": "TestAdvertiserViaAPI",
                   "status": 0,
                   "canPartnerManage": true
               }
           }
       }
   }
}
     

删除账户

删除一个广告主账户。

结构

POST https://{capig_domain}/hub/graphql/ 
_________________________________________________________________________________________________________________
      
    mutation DeleteTenant($tenantId: String!) {
      tenantMutations {
        deleteTenant(tenantId: $tenantId)
      }
    }

 _________________________________________________________________________________________________________    
tenantId: String!
     

字段

字段描述

tenantId
字符串

必要

待删除账户的唯一标识符。


返回

布尔值

表示租户是否已成功删除。


错误代码

代码描述

400

提供的输入无效

401

未获授权,无法删除账户

500

内部服务器错误


请求示例

更改

 mutation DeleteTenant($tenantId: String!) {
   tenantMutations {
   deleteTenant(tenantId: $tenantId)
   }
}
     

变量

{
   "tenantId": "Tse53QtW"
}
     

响应示例

{
   "data": {
       "tenantMutations": {
           "deleteTenant": true
       }
   }
}
     

更新账户

通过加入新名称、状态和权限来更新账户,使某个合作伙伴可以管理此账户。

结构

POST https://{capig_domain}/hub/graphql/ 
_________________________________________________________________________________________________________________
      
 mutation TenantEditNameModalMutation(
  $input: UpdateTenantInput!
) {
  tenantMutations {
    updateTenant(input: $input) {
        tenant {
            id
            name
            status
            canPartnerManage
            users {
                id
                email
                roles {
                    name
                    displayName
                }
                tenants {
                    id
                    name
                    status
                    canPartnerManage
                    availableRoles {
                        name
                        displayName
                    }
                }
                isSelf
                canBeDeleted
                defaultTenantId
            }
            availableRoles {
                name
                displayName
            }
            tenantUsage {
                totalActivePixels
                totalInactivePixels
                totalPixels
                tenantUsageByTraffic {
                   totalEventsReceived
                   totalPixelsWithTraffic
                   publishError
                   durationInHours,
                   lastUpdatedAt
               }
            }
            canEditTenantSettingsInUI
            canViewTenantInUI
            canEditTenantSettingsInUI
        }
    }
  }
}
      
_________________________________________________________________________________________________________    
input UpdateTenantInput {
    tenantId: String!
    name: String
    status: Int
    canPartnerManage: Boolean
}
     

字段

UpdateTenantInput

字段描述

tenantId
字符串

必要

账户的唯一标识符

name
字符串

可选

账户的名称

status
整数

可选

账户状态(参见租户对象)

canPartnerManage
布尔值

可选

表示该合作伙伴能否管理此账户


返回

TenantMutationResponse

字段描述

tenant
租户

已更新的租户


错误代码

代码描述

400

提供的输入无效

401

未获授权,无法更新租户

500

内部服务器错误


请求示例

更改

mutation TenantEditNameModalMutation(
 $input: UpdateTenantInput!
) {
 tenantMutations {
   updateTenant(input: $input) {
     tenant {
       id
       name
       status
       canPartnerManage
     }
   }
 }
}
     

变量

{
   "input":{
       "tenantId":"IaoreXfj",
       "name":"Test Account Name Update",
       "status":0,
       "canPartnerManage":true
   }
}
     

响应示例

{
   "data": {
       "tenantMutations": {
           "updateTenant": {
               "tenant": {
                   "id": "IaoreXfj",
                   "name": "Test Account Name Update",
                   "status": 0,
                   "canPartnerManage": true
               }
           }
       }
   }
}
     

获取账户

获取与输入的某个唯一标识符对应的广告主账户。

结构

POST https://{capig_domain}/hub/graphql/ 
_________________________________________________________________________________________________________________
      
query TenantAccountUsersViewQuery(
  $tenantId: String!
) {
  tenant(tenantId: $tenantId)  {
        id
        name
        status
        canPartnerManage
        users {
            id
            email
            roles {
                name
                displayName
            }
            tenants {
                id
                name
                status
                canPartnerManage
                availableRoles {
                    name
                    displayName
                }
            }
            isSelf
            canBeDeleted
            defaultTenantId
        }
        availableRoles {
            name
            displayName
        }
        tenantUsage {
            totalActivePixels
            totalInactivePixels
            totalPixels
            tenantUsageByTraffic {
               totalEventsReceived
               totalPixelsWithTraffic
               publishError
               durationInHours,
               lastUpdatedAt
            }
        }
        canEditTenantSettingsInUI
        canViewTenantInUI
        canEditTenantSettingsInUI
    }
}
_________________________________________________________________________________________________________    
tenantId: String!
     

字段

字段描述

tenantId
字符串

必要

待获取账户的唯一标识符


返回

字段描述

tenant
租户

已获取账户详情


错误代码

代码描述

401

未获授权,无法查看账户

500

内部服务器错误


请求示例

查询

query TenantAccountUsersViewQuery(
 $tenantId: String!
) {
 tenant(tenantId: $tenantId) {
   id
   name
   users {
     id
     email
     roles {
         name
         displayName
     }
   }
 }
}
     

变量

{
   "tenantId":"wW58k7FQ"
}
     

响应示例

{
   "data": {
       "tenant": {
           "id": "wW58k7FQ",
           "name": "Test Account",
           "users": [
               {
                   "id": "992bc489-a799-4374-8933-0109eed60e3d",
                   "email": "tempuser@test.com",
                   "roles": [
                       {
                           "name": "advertiser-manage-wW58k7FQ",
                           "displayName": "manage"
                       }
                   ]
               }
           ]
       }
   }
}
     

账户使用情况

获取与此账户某个唯一标识符对应的已工作和未工作的 Pixel 像素代码各自的账户使用情况。此外,系统还将返回一段时间内的流量使用情况统计数据

结构

POST https://{capig_domain}/hub/graphql/ 
_________________________________________________________________________________________________________________
      
query TenantUsageQuery(
  $tenantId: String!
) {
    tenantUsage(tenantId: $tenantId) {
        totalActivePixels
        totalInactivePixels
        totalPixels
        tenantUsageByTraffic {
           totalEventsReceived
           totalPixelsWithTraffic
           publishError
           durationInHours,
           lastUpdatedAt
       }
    }
}

_________________________________________________________________________________________________________    
tenantId: String!
     

字段

字段描述

tenantId
字符串

必要

账户的唯一标识符


返回

字段描述

TenantUsage
租户使用情况

租户的使用情况


错误代码

代码描述

401

未获授权,无法查看账户使用情况

500

内部服务器错误


请求示例

查询

query {
   tenantUsage(tenantId: "IaoreXfj"){
       totalActivePixels
       totalInactivePixels
       totalPixels
   }
}
     

响应示例

{
   "data": {
       "tenantUsage": {
           "totalActivePixels": 3,
           "totalInactivePixels": 1,
           "totalPixels": 4
       }
   }
}