身份验证
身份验证
身份验证方案的配置在 api.yml 文件中进行。所有 Fern 生成的 SDK 都支持直接配置和环境变量来配置身份验证凭据。
要添加身份验证方案,请在 auth-schemes 部分下指定身份验证方法。
要在所有端点中应用身份验证方案,请在 api.yml 文件的 auth 部分中引用 auth-scheme。
Bearer 身份验证
首先在 api.yml 中定义一个 Bearer 身份验证方案:
这将生成一个 SDK,用户需要提供一个名为 token 的必需参数。
如果你想控制变量命名和要扫描的环境变量,请使用以下配置:
生成的 SDK 会是这样:
基本身份验证
首先在 api.yml 中定义一个 Basic 身份验证方案:
这将生成一个 SDK,用户需要提供名为 username 和 password 的必需参数。
如果你想控制变量命名和要扫描的环境变量,请使用以下配置:
生成的 SDK 会是这样:
自定义头部(例如 API 密钥)
你也可以使用自定义头部创建自己的身份验证方案。
这将生成一个 SDK,用户需要提供一个名为 apiKey 的必需参数。
如果你想控制变量命名和要扫描的环境变量,请使用以下配置:
生成的 SDK 会是这样:
OAuth 客户端凭据
团队版、专业版和企业版功能
此功能仅适用于团队版(文档)、专业版(SDK)和企业版计划。要开始使用,请联系 support@buildwithfern.com。
如果你的 API 使用 OAuth,你可以在 api.yml 中指定 oauth 方案,并在单独的 auth.yml 文件中定义令牌检索端点(示例)。
request-properties 和 response-properties 将 OAuth 标准参数映射到在 auth.yml 中定义的实际端点的请求和响应字段名称。
如果设置了 expires-in 属性,生成的 OAuth 令牌提供程序将在令牌过期时自动刷新令牌。否则,假设访问令牌永久有效。
相应的 auth.yml 文件(示例)定义了令牌端点:
有了这些,所有的 OAuth 逻辑都会在生成的 SDK 中自动处理。只要你配置了这些设置,你的客户端将自动检索访问令牌并根据需要刷新它。
在使用文档 playground 时,可以选择设置 token-header 和 token-prefix 来自定义头部键名和头部值前缀,以匹配 API 身份验证方案的预期格式。
例如,以下配置将产生头部 Fern-Authorization: Fern-Bearer <token>: