API 入门

标准本地部署

开始使用 watsonx Orchestrate API。

验证应用程序接口

要使用 watsonx Orchestrate API,您必须先向服务器进行身份验证。 watsonx Orchestrate 的每个版本都采用不同的方法向服务器进行身份验证。

1. 生成 API 密钥

对于所有产品,第一步都是生成一个 API 密钥:

2. 生成认证令牌

获得 API 密钥后,用它生成一个身份验证令牌。

IBM Cloud 使用 IAM 访问令牌对 watsonx Orchestrate 进行身份验证。 您必须使用 API 密钥生成它。

AWS 服务使用 JSON Web Token(JWT)在 watsonx Orchestrate API 中对您进行身份验证。 您必须使用 API 密钥生成它。

  • 本地

本地部署版本使用您在上一步骤中获取的 Zen API 密钥。 您不需要获取另一个令牌。

调用服务器端点

获得身份验证令牌后,就可以使用它们调用 API 端点了。

要获取 API 端点,请参阅 “获取 API 端点 ”。

以上是如何使用适当的授权令牌调用 API 端点的几个示例:

IBM Cloud

卷曲

curl -X GET "https://api.REGION_CODE.watson.cloud.ibm.com/instances/MY_INSTANCE_ID/v1/orchestrate/digital-employees/allskills" \
     -H "Authorization: Bearer MY_IAM_TOKEN" \
     -H "Accept: application/json"

Python

import http.client

region_code = "REGION_CODE"
iam_token = "MY_IAM_TOKEN"
instance_id = "MY_INSTANCE_ID"

conn = http.client.HTTPSConnection(f"api.{region_code}.watson-orchestrate.ibm.com")

headers = {
    'Authorization': f"Bearer {iam_token}",\
    'accept': "application/json"
}

conn.request("GET", f"/instances/{instance_id}/v1/orchestrate/digital-employees/allskills", headers=headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))

AWS

卷曲

curl -X GET "https://api.REGION_CODE.watson-orchestrate.ibm.com/instances/MY_INSTANCE_ID/v1/orchestrate/digital-employees/allskills" \
     -H "Authorization: Bearer MY_JWT_TOKEN" \
     -H "Accept: application/json"

Python

import http.client

region_code = "REGION_CODE"
jwt_token = "MY_JWT_TOKEN"
instance_id = "MY_INSTANCE_ID"

conn = http.client.HTTPSConnection(f"{region_code}.dl.watson-orchestrate.ibm.com")

headers = {
    'Authorization': f"Bearer {jwt_token}",\
    'accept': "application/json"
}

conn.request("GET", f"/instances/{instance_id}/v1/orchestrate/digital-employees/allskills", headers=headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))

本地

卷曲

curl -X GET "https://MYHOST:PORT//orchestrate/MY_NAMESPACE/instances/MY_INSTANCE_ID/v1/orchestrate/digital-employees/allskills" \
     -H "Authorization: ZenApiKey MY_ZEN_API_KEY" \
     -H "Accept: application/json"

Python

import http.client
import base64


region_code = f"https://MYHOST:PORT/"
api_key = "MY_API_KEY"
username = "MY_USER_NAME"
api_key_bytes = f"{username}:{api_key}".encode(encoding="utf-8")
zen_api_key = base64.encodebytes(api_key_bytes).decode(encoding="utf-8")
namespace = "MY_NAMESPACE"
instance_id = "MY_INSTANCE_ID"
endpoint = "/orchestrate/{namespace}/instances/{instanceid}/v1/orchestrate/digital-employees/allskills/"

conn = http.client.HTTPSConnection(f"{myhost}")

headers = {
    'Authorization': f"ZenApiKey {zen_api_key}",\
    'accept': "application/json"
}

conn.request("GET", endpoint, headers=headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))