启用自定义 API 调用

了解如何为你的 Piece 启用自定义 API 调用

自定义 API 调用允许用户在没有实现相应动作的情况下,向特定端点发送请求。

这将在 Piece 的动作列表中显示为”自定义 API 调用”。要为一个 Piece 启用此动作,你需要在 actions 数组中调用 createCustomApiCallAction

基本示例

下面的示例为 OpenAI Piece 实现了该动作。OpenAI Piece 使用 Bearer token 授权头来标识发送请求的用户。

actions: [
  ...yourActions,
  createCustomApiCallAction({
    // Piece 中定义的 auth 对象
    auth: openaiAuth,
    // API 的基础 URL
    baseUrl: () => {
      'https://api.openai.com/v1'
    },
    // 将 auth 对象映射到所需的授权头
    authMapping: async (auth) => {
      return {
        'Authorization': `Bearer ${auth}`
      }
    }
  })
]

动态基础 URL 和基本认证示例

下面的示例为 Jira Cloud Piece 实现了该动作。Jira Cloud Piece 为其动作使用动态基础 URL,基础 URL 根据用户认证时使用的值而变化。我们还将实现基本认证头。

actions: [
  ...yourActions,
  createCustomApiCallAction({
    baseUrl: (auth) => {
      return `${(auth as JiraAuth).instanceUrl}/rest/api/3`
    },
    auth: jiraCloudAuth,
    authMapping: async (auth) => {
      const typedAuth = auth  as JiraAuth
      return {
        'Authorization': `Basic ${typedAuth.email}:${typedAuth.apiToken}`
      }
    }
  })
]