我们详细说明 Marketo 中这些 API 相关信息是如何创建和配置的,步骤如下:
1. Authorized User(授权用户)
- 目的:这是一个能够调用 API 的用户,通常与 API 集成相关联,需要分配足够的权限以确保 API 调用能正常进行。
- 创建步骤:
- 登录到 Marketo Admin 界面。
- 在左侧导航栏中,点击 Users & Roles(用户和角色)。
- 创建一个新用户,确保给该用户分配 API 权限。具体步骤如下:
- 点击 Invite New User(邀请新用户)。
- 填写用户的电子邮件地址(在这个例子中是
marketoapi@test.com
),设置用户名等信息。 - 为该用户分配 API Only Role(仅限 API 角色) 或者为该用户分配足够权限的自定义角色。
- 完成后,点击 Invite(邀请)。
- 该用户将被添加到 API 用户列表中,可以调用 API。
2. Client ID(客户端 ID)
- 目的:这是由 Marketo 为每个 API Integration(集成)生成的唯一标识符,外部系统需要用它来识别自己并进行 API 调用。
- 创建步骤:
- 在 Admin 中,选择 LaunchPoint(位于左侧导航菜单)。
- 点击 New Service(新建服务)。
- 在弹出窗口中:
- Display Name:输入集成的显示名称,例如“Marketo API Integration”。
- Service:选择 Custom(自定义)。
- API Only User:选择上一步创建的授权用户(如
marketoapi@test.com
)。 - Description:填写一个简单的描述,例如“Integration for syncing data between systems”。
- 创建服务后,Marketo 将自动生成一个 Client ID 和 Client Secret,可以在 LaunchPoint 服务列表中点击该服务查看这些信息。
3. Client Secret(客户端密钥)
- 目的:与客户端 ID 配对的密码,用于验证 API 调用的安全性。每次创建 API Integration 时,都会生成这个唯一密钥。
- 创建步骤:
- 生成客户端密钥的过程与生成 Client ID 相同。创建 API 服务时,Marketo 会自动生成 Client Secret。你可以通过在 Admin > LaunchPoint 中点击刚刚创建的服务来查看和复制 Client Secret。
4. Token(令牌)
- 目的:令牌是 API 调用时使用的临时凭证。通过 Client ID 和 Client Secret 进行身份验证后,可以生成令牌来进行 API 操作。
- 获取步骤:
- 通过发起 POST 请求到 Marketo 的身份验证端点(通常以
/identity/oauth/token
结尾),例如:https://123-HII-456.mktorest.com/identity/oauth/token
- 发送包含 Client ID 和 Client Secret 的请求来获取令牌:
https://123-HII-456.mktorest.com/identity/oauth/token?grant_type=client_credentials&client_id=80ffbfa3-8124-4b62-a7fc-290174510d1e&client_secret=x1qgETgmB2nem6HC4f03R0LFf07yGQ9P
- 响应会返回一个 JSON 对象,其中包含一个
access_token
(令牌):{ "access_token": "7eee2784-994c-4d27-9c6d-91ff97aa8453", "token_type": "bearer", "expires_in": 3600 }
- 使用获取的
access_token
来发起接下来的 API 请求。令牌有有效期(通常是1小时),到期后需要重新生成。
- 通过发起 POST 请求到 Marketo 的身份验证端点(通常以
5. Endpoint(端点)
- 目的:这是 API 请求的基础 URL,所有对 Marketo 的 API 调用都指向这个端点。
- 查看位置:
- 在 Admin 页面,点击 Web Services。
- 在 REST API 部分,找到 Endpoint URL,它是类似于以下的链接:
https://123-HII-456.mktorest.com
- 这个 URL 是你的 Marketo 实例的 API 基础 URL,所有 API 请求都需要以此为基础。
常见问题:
- 无法获取访问令牌:检查 Client ID、Client Secret 是否正确,以及授权用户是否分配了正确的权限。
- 无效的端点:确保你使用的是 Marketo 实例正确的 API 端点,可以通过 Web Services 中的 Endpoint URL 确认。
- API 调用返回 401 未授权错误:可能是因为令牌已过期,需要重新获取令牌或验证 Client ID、Client Secret 是否正确。
希望这个更加详细的说明对你有所帮助!