datai/datai-scenes/datai-scene-salesforce/docs/api-docs/partner-api/PartnerDescribeController/001-describe-global.md

143 lines
3.8 KiB
Markdown
Raw Normal View History

# API 文档 - 描述所有可用对象
## 元数据
- 需求编号001
- 子需求编号001-01
- 接口编号001
- 创建时间2026-02-02
- 创建人AI Assistant
- 状态:已完成
## 接口概述
获取 Salesforce 中所有可用的对象列表。
## 基本信息
- **功能描述**:获取 Salesforce 中所有可用的对象列表
- **请求方式**GET
- **请求路径**`/partner/describe/global`
- **权限要求**`@PreAuthorize("@ss.hasPermi('partner:describe:global')")`
## 请求参数
## 响应参数
| 参数名 | 类型 | 说明 |
|--------|------|------|
| code | Integer | 状态码200 成功,其他失败) |
| msg | String | 提示信息 |
| data | Object | 响应数据 |
| data.sObjects | Array | 对象描述列表 |
| data.sObjects[].name | String | 对象名称 |
| data.sObjects[].label | String | 对象标签 |
| data.sObjects[].keyPrefix | String | 对象键前缀 |
| data.sObjects[].custom | Boolean | 是否为自定义对象 |
| data.sObjects[].createable | Boolean | 是否可创建 |
| data.sObjects[].updateable | Boolean | 是否可更新 |
| data.sObjects[].deletable | Boolean | 是否可删除 |
| data.sObjects[].queryable | Boolean | 是否可查询 |
| data.sObjects[].replicateable | Boolean | 是否可复制 |
| data.sObjects[].retrieveable | Boolean | 是否可检索 |
| data.sObjects[].undeletable | Boolean | 是否可恢复 |
| data.sObjects[].triggerable | Boolean | 是否可触发 |
| data.maxBatchSize | Integer | 最大批次大小 |
| data.success | Boolean | 是否成功 |
| data.errors | Array | 错误信息列表 |
### 成功响应示例
```json
{
"code": 200,
"msg": "操作成功",
"data": {
"sObjects": [
{
"name": "Account",
"label": "Account",
"keyPrefix": "001",
"custom": false,
"createable": true,
"updateable": true,
"deletable": true,
"queryable": true,
"replicateable": true,
"retrieveable": true,
"undeletable": true,
"triggerable": true
},
{
"name": "Contact",
"label": "Contact",
"keyPrefix": "003",
"custom": false,
"createable": true,
"updateable": true,
"deletable": true,
"queryable": true,
"replicateable": true,
"retrieveable": true,
"undeletable": true,
"triggerable": true
}
],
"maxBatchSize": 200,
"success": true,
"errors": null
}
}
```
### 失败响应示例
```json
{
"code": 500,
"msg": "描述所有可用对象失败",
"data": {
"sObjects": null,
"maxBatchSize": null,
"success": false,
"errors": [
{
"statusCode": "UNKNOWN_EXCEPTION",
"message": "Failed to retrieve object descriptions"
}
]
}
}
```
## 错误码
| 错误码 | 说明 | 处理建议 |
|--------|------|----------|
| 200 | 操作成功 | - |
| 401 | 未登录或登录已过期 | 请重新登录 |
| 403 | 无权限访问 | 请检查用户权限 |
| 500 | 服务器内部错误 | 请联系管理员或稍后重试 |
## 注意事项
1. 返回的对象列表包含当前用户有权限访问的所有对象
2. 自定义对象的 custom 字段为 true
3. keyPrefix 可用于识别记录 ID 的对象类型
4. maxBatchSize 表示批量操作的最大记录数
5. 某些对象可能因为权限限制不可访问
6. 对象列表可能很大,建议缓存结果
## 使用场景
- 获取所有可用对象列表
- 动态生成对象选择器
- 验证对象是否存在
- 构建元数据浏览器
- 权限检查和验证
## 相关文档
- [需求文档](../../requirements/2026-01-28-001-PartnerAPI源org实现.md)
- [设计文档](../../design/2026-01-29-001-01-认证和会话管理-设计.md)
- [决策记录](../../decisions/2026-01-29-001-01-ADR-认证和会话管理技术选型.md)