身份验证

使用组织 API 密钥对每个 Partner API 请求进行身份验证。

每个请求都携带一个作为 bearer token 的 API 密钥。

授权:Bearer mor_live_7f3c1a9e…

密钥属于 组织,而不是创建它的人。即使那个人离开,它仍会继续工作,组织中的任何管理员都可以看到它的列表并将其撤销。

创建密钥

打开设置

在 Morphic Studio 中,打开组织下拉菜单(左上角的 Morphic 标志),然后选择“设置”。

前往 API 密钥

在左侧边栏中,点击 API 密钥。该选项卡仅对管理员可见。

创建密钥

点击 新密钥,给它起一个你一个月后仍能认出的名字,选择它的权限范围,并且——如果它不应永久存在——设置一个到期时间。

复制密钥

密钥只显示一次。Morphic 只存储它的哈希值,因此无法再次显示。关闭对话框前,请将其放入你的密钥管理器。

任何持有该密钥的人都可以启动会消耗你组织积分的运行。把它当作密码:绝不要提交到代码仓库,绝不要放在浏览器里,也绝不要通过电子邮件或聊天发送。

权限范围

一个密钥只能拥有你授予它的权限范围。超出范围的请求会被拒绝,返回 access_denied.

范围允许
workflows:read读取一个工作流及其所需输入
runs:write启动运行,以及注册和移除 webhook 端点
runs:read读取运行状态及其已完成的资产,并列出 webhook 端点

一个密钥也可以限制为 特定工作流。启动其他任何内容都会被拒绝,而其他任何运行都会显示为未找到,这正是当一个密钥只用于某个集成时你所需要的。

环境

前缀表示一个密钥属于哪个部署,因此泄露的密钥一眼就能看出所属位置。向另一个部署提交的密钥会被拒绝。

前缀环境基础 URL
mor_live_生产环境https://api.morphic.com/v1/partner
mor_test_预发布环境,用于集成工作;那里的运行有上限,而且数据不属于你https://api.morphic.today/v1/partner

额度限制

每个密钥都有一个可花费积分的上限,由创建它的管理员设置:

限制项已设置?含义
总计始终该密钥最多可花费的积分
每日可选每个 UTC 日的积分
每月可选每个 UTC 月的积分

一天是一个 UTC 日,一个月是一个 UTC 日历月。会使密钥超出其任一限制的扣费会被拒绝,返回 api_key_credit_limit_reached;错误信息的 error_attributes.period 说明了哪个限制(总计, 每月 或者 每日)。这与组织积分耗尽是不同的情况(credits_exhausted),而且处理方式也不同:管理员会在 Studio 中提高该密钥的限额,而不是为组织充值。若某次启动所用密钥已没有剩余额度,则在获取任何内容之前就会被拒绝。

使用密钥启动的运行,即使有人在 Studio 的聊天中介入并接管,仍然会继续计入该密钥。因此,密钥剩余的预算就是整个运行的预算,而不仅仅是其自动化部分的预算。

轮换

通过重叠进行轮换,切勿通过空档进行:创建新密钥,部署它,确认流量已切换,然后撤销旧密钥。一个组织最多可以同时持有 10 个可用于身份验证的密钥 ,这足以进行轮换,而不会变成一堆没人愿意退役的东西。

撤销会在几秒内生效。已经在运行中的任务会完成,并且仍会计费。

本页内容