控制台 OpenAPI 接口的调用,是通过向指定服务地址发送请求,并需满足签名信息和具体接口的业务信息来完成的。OpenAPI 的请求主要包含请求 URL、请求 Header 和请求 Body。
请求方法详见各个接口具体的需求,选择GET或POST方式发起请求。
支持通过HTTPS方式进行请求通信。
请求及返回结果使用 UTF-8 的字符集进行编码。
您在调用 API 时,Region信息需要与实例所在地域的 ID 保持一致。其对应关系如下表所示。
地域 | ID |
|---|---|
华北2(北京) | cn-beijing |
华东2(上海) | cn-shanghai |
您可以通过发送 HTTPS 请求来调用大模型应用防火墙的 API。发起 API 请求的 URL 由多个参数组成,有固定的请求结构。请求及返回结果均使用 UTF-8 的字符集进行编码。
HTTPS 请求 URL 格式示例如下:
POST https://{Host}?Action={Action name}&Version={Registered version}
POST表示控制台的 OpenAPI 支持的请求方法。Host指定了服务接入地址(Endpoint),当前接入地址为{region}.sdk.access.llm-shield.omini-shield.com。Action={Action name}指定了要调用的 API。Version={Registered version}指定了要调用的 API 的版本。请求头(Header)中需要指定Content-Type和请求鉴权信息等公共参数,用于标识用户和接口签名。若非必要,每个单独的接口文档中不再对这些参数进行说明,但每次请求均需要携带这些参数,才能正常发起请求。
其中,Content-Type指定了请求消息体的结构化格式,大模型应用防火墙的Content-Type固定为application/json。若请求时未指定Content-Type的值,默认为application/json格式。详细的参数列表及说明请参见公共参数。
请求 Header 格式示例如下:
X-Date: 20250904T124957Z Authorization: HMAC-SHA256 Credential=AKLTYjVlMGIxZWVlOTlkNDUwNmJhMjRkNzlkNz********/20250904/cn-beijing/llmshield/request, SignedHeaders=host;x-date;x-content-sha256;content-type, Signature=3d51784baf1a1c600b9fcaf14bc0f1340f3db98b02fb3be8615c9c65********
X-Date指签名使用时间,使用 UTC 时间,精确到秒。格式为YYYYMMDD'T'HHMMSS'Z',例如: 20230711T035055Z。Authorization指授权信息。格式为HMAC-SHA256 Credential={AccessKeyId}/{ShortDate}/{Region}/{Service}/request, SignedHeaders={SignedHeaders}, Signature={Signature}AKLTNGU0OGEyMT***。YYYYMMDD,例如:20230711。cn-beijing。说明
Region信息需要与实例所在地域的 ID 保持一致。具体请参见地域信息。
llmshield。host;x-date;x-content-sha256;content-type。3d51784baf1a1c600b9fcaf14bc0f1340f3db98b02fb3be8615c9c65********。说明
推荐您使用火山引擎 SDK,免去签名过程,相关示例可参考签名生成代码示例。
请求 Body,即请求消息体,主要传递业务相关的请求参数。若请求消息体中参数支持中文,则中文字符必须为 UTF-8 编码。
每个接口的请求消息体内容不同,也并非每个接口都需要有请求消息体(即消息体为空)。调用接口时,请参考具体 API 接口文档构建请求消息体。
例如,判别大模型提示词是否合规的请求 Body 格式示例如下:
{ "Message": { "Role": "user", "Content": "北京今天天气怎么样?", "ContentType": 1 }, "MsgID": "", "UseStream": 0, "Scene": "app-d2ql7d4jslssiv08****", "History": [ { "Role": "system", "Content": "你是一个智能问答助手。你的任务是根据用户的问题,生成符合要求的回答。", "ContentType": 1 }, { "Role": "assistant", "Content": "好的,我们来看一下今天北京的天气情况。", "ContentType": 1 } ] }
您可以使用curl、Postman或直接编写代码等方式发送请求调用 API。
例如,判别大模型提示词是否合规的请求示例如下:
POST /v2/moderate?Action=Moderate&Version=2025-08-31 HTTP/1.1 Host: cn-beijing.sdk.access.llm-shield.omini-shield.com Authorization: HMAC-SHA256 Credential=AKLTYjVlMGIxZWVlOTlkNDUwNmJhMjRkNzlkNz********/20250904/cn-beijing/llmshield/request, SignedHeaders=host;x-date;x-content-sha256;content-type, Signature=3d51784baf1a1c600b9fcaf14bc0f1340f3db98b02fb3be8615c9c65******** Content-Type: application/json X-Content-Sha256: 904037c4d0cd16e0918291d33c3acfc9b6f871c0459644b571bdbc5******** X-Date: 20250904T124957Z { "Message": { "Role": "user", "Content": "北京今天天气怎么样?", "ContentType": 1 }, "MsgID": "", "UseStream": 0, "Scene": "app-d2ql7d4jslssiv08****", "History": [ { "Role": "system", "Content": "你是一个智能问答助手。你的任务是根据用户的问题,生成符合要求的回答。", "ContentType": 1 }, { "Role": "assistant", "Content": "好的,我们来看一下今天北京的天气情况。", "ContentType": 1 } ] }