You need to enable JavaScript to run this app.
导航
签名鉴权方式
最近更新时间:2025.01.09 16:56:45首次发布时间:2024.07.10 15:12:25

火山方舟API分为模型调用的API,以及其他管理推理接入点等管控面相关的其他API。他们支持的鉴权方式有所不同,下面介绍方舟相关的API鉴权方式。

模型/智能体调用API鉴权

API Key 签名鉴权

前提条件

您已获取到API Key。如需创建/查看API Key,请参见1.获取并配置 API Key
您已创建推理接入点。如选创建/查看推理接入点ID,请参见2.创建在线推理接入点(Endpoint)

签名构造

API Key 签名鉴权方式要求在 HTTP 请求 header 中按如下方式添加 Authorization header:

Authorization: Bearer <ARK_API_KEY>

API 调用示例

curl https://ark.cn-beijing.volces.com/api/v3/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <ARK_API_KEY>" \
  -d '{
    "model": "<YOUR_ENDPOINT_ID>",
    "messages": [
        {
            "role": "system",
            "content": "You are a helpful assistant."
        },
        {
            "role": "user",
            "content": "Hello!"
        }
    ]
  }'

Access Key 签名鉴权

前提条件

您已获取到Access Key。如需创建/查看Access Key,请参见API访问密钥管理

由于主账号的Access Key拥有较大权限,建议您创建IAM用户并授予方舟等权限,然后使用IAM用户的Access Key来进行操作,具体请参见使用IAM进行访问控制教程

调用模型/调用智能体

您可以使用下面方式来间接完成 Access Key 签名鉴权。

  1. 获取临时 API Key:使用 Access Key 调用 GetApiKey - 获取临时API Key 接口,获取指定资源(推理接入点/智能体)的临时 API Key。
  2. 使用临时 API Key,来鉴权模型/智能体调用,方式同上,见API Key 签名鉴权

说明

方舟已经提供了SDK,可以直接使用 Access Key 完成接口的鉴权,无需自行实现签名。

其他API鉴权

管控面的API,如管理API Key、管理推理接入点等接口。

Access Key 签名鉴权

前提条件

您已获取到Access Key。如需创建/查看Access Key,请参见API访问密钥管理

由于主账号的Access Key拥有较大权限,建议您创建IAM用户并授予方舟等权限,然后使用IAM用户的Access Key来进行操作,具体请参见使用IAM进行访问控制教程

使用步骤

  1. 使用 Access Key 构造签名。具体方法请参见签名方法

签名用到的方舟相关字段信息:

  • Service:ark
  • Region:cn-beijing
  1. 使用cURL发起请求,请求示例如下:
curl -X POST \
  'https://open.volcengineapi.com/?Action=ListEndpoints&Version=2024-01-01' \
  -H 'Authorization: HMAC-SHA256 Credential=AKLTM2MyNzJhMGExZmFhNDI5YTgzMTI****************/20240710/cn-beijing/ark/request, SignedHeaders=host;x-content-sha256;x-date, Signature=a7a01ad627bcb9ef03bd708bf0f680873d99fa99c45fe8b4****************' \
  -H 'Content-Type: application/json' \
  -H 'Host: open.volcengineapi.com' \
  -H 'X-Content-Sha256: 44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e83****************' \
  -H 'X-Date: 20240710T042925Z' \
  -d '{}'