# 绑定广告账户

标准 URL： https://sosoapi.ai/zh-hans/docs/mcp/ads-accounts-bind

`sosoapi_ads_accounts_bind`

将一个经平台证实的广告账户绑定至此工作空间及确切主体授权。需要管理能力；不会修改平台或产生广告支出。

## 配置与传输方式

配置：full

传输方式：stdio、http

选择 core 或 full 以控制客户端显示的工具；这不会变更权限。本地文件上传需要 stdio，无法通过 HTTP 使用。设置 SOSOAPI_OUTPUT_SCHEMAS=1 可在探索结果加入输出schema。无论是否启用此设置，工具皆会返回结构化结果。

## 权限与副作用

注解帮助客户端描述工具。每次调用仍会检查用户身份验证、角色、资源访问和能力授权。

```json
{
  "readOnlyHint": false,
  "destructiveHint": false,
  "idempotentHint": false,
  "openWorldHint": true
}
```

`/advertising-api/accounts/bind` — agent:advertising_manage；synchronous_http_response

## 输入字段

```json
{
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid"
    },
    "grant_id": {
      "type": "string",
      "format": "uuid"
    },
    "provider_account_id": {
      "type": "string",
      "pattern": "^[1-9]\\d{1,24}$"
    }
  },
  "required": [
    "workspace_id",
    "grant_id",
    "provider_account_id"
  ],
  "additionalProperties": false
}
```

## 结构化输出

此 schema 描述成功工具结果中的 structuredContent。MCP 响应也包含 content，并可能在调用失败时设置 isError。对于发布，请读取帖子的最终结果，不要把获接受的请求或文字响应当作确认。链接的 API 操作说明了权限和重试规则。

```json
{
  "type": "object",
  "properties": {
    "contract_version": {
      "type": "string",
      "const": "advertising/v1"
    },
    "account": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid"
        },
        "workspace_id": {
          "type": "string",
          "format": "uuid"
        },
        "grant_id": {
          "type": "string",
          "format": "uuid"
        },
        "provider_account_id": {
          "type": "string",
          "pattern": "^[1-9]\\d{1,24}$"
        },
        "provider_app_id": {
          "type": "string",
          "pattern": "^[1-9]\\d{1,24}$"
        },
        "provider_principal_id": {
          "type": "string",
          "pattern": "^[1-9]\\d{1,24}$"
        },
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 200
        },
        "currency": {
          "type": "string",
          "pattern": "^[A-Z]{3}$"
        },
        "timezone": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "account_status": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "tasks": {
          "maxItems": 50,
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 100
          }
        },
        "granted_permissions": {
          "maxItems": 100,
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 100
          }
        },
        "access_mode": {
          "type": "string",
          "enum": [
            "read",
            "manage"
          ]
        },
        "state": {
          "type": "string",
          "enum": [
            "ready",
            "action_required",
            "disconnected"
          ]
        },
        "generation": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        "observed_at": {
          "type": "string",
          "format": "date-time",
          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
        }
      },
      "required": [
        "id",
        "workspace_id",
        "grant_id",
        "provider_account_id",
        "provider_app_id",
        "provider_principal_id",
        "name",
        "currency",
        "timezone",
        "account_status",
        "tasks",
        "granted_permissions",
        "access_mode",
        "state",
        "generation",
        "observed_at"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "contract_version",
    "account"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
```

## 工具调用示例

这些示例使用已依schema检查的虚构值。请将 ID 替换为你有权使用的 ID、将媒体替换为已就绪素材，并将日期替换为已确认的发布时间。提交写入前，请检查账号资格。本页不会发送 API 请求。

```json
{
  "name": "sosoapi_ads_accounts_bind",
  "arguments": {
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "grant_id": "11111111-1111-4111-8111-111111111111",
    "provider_account_id": "12345"
  }
}
```

structuredContent

```json
{
  "contract_version": "advertising/v1",
  "account": {
    "id": "11111111-1111-4111-8111-111111111111",
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "grant_id": "11111111-1111-4111-8111-111111111111",
    "provider_account_id": "12345",
    "provider_app_id": "12345",
    "provider_principal_id": "12345",
    "name": "example",
    "currency": "USD",
    "timezone": "UTC",
    "account_status": 0,
    "tasks": [],
    "granted_permissions": [],
    "access_mode": "read",
    "state": "ready",
    "generation": 1,
    "observed_at": "2099-01-15T09:00:00Z"
  }
}
```

## 底层 API 操作

- [/advertising-api/accounts/bind](https://sosoapi.ai/zh-hans/docs/api/advertising-api-accounts-bind)
