NueForm

身份验证

了解如何使用 API 密钥进行 NueForm API 身份验证,包括密钥生成、使用示例和安全最佳实践。

所有 NueForm API 请求都需要通过 API 密钥进行身份验证。本指南介绍如何生成密钥、在请求中使用密钥以及保障密钥安全。

API 密钥管理
设置中的开发者选项卡,展示 API 密钥管理。

API 访问适用于 Pro 计划及以上。如果您使用的是 Entrepreneur(免费)计划,则需要先升级才能生成 API 密钥或发起 API 请求。

生成 API 密钥

创建 API 密钥的步骤:

  1. 登录您的 NueForm 账户。
  2. 导航至 个人资料 并打开 开发者 选项卡。
  3. 点击 创建 API 密钥
  4. 为您的密钥取一个描述性名称(例如"生产后端"或"CI 管道")。
  5. 立即复制密钥 --- 它只会显示一次。

您的完整 API 密钥仅在创建时显示。NueForm 内部存储的是哈希版本,无法检索原始密钥。如果您丢失了密钥,请撤销该密钥并创建一个新的。

API 密钥格式

NueForm API 密钥遵循统一格式:

text
nf_<64 个十六进制字符>

每个密钥以前缀 nf_ 开头,后跟 64 个十六进制字符(32 个随机字节)。例如:

text
nf_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2

在控制面板中,密钥通过前缀(前 11 个字符,如 nf_a1b2c3d4)来区分,无需暴露完整值。

使用您的 API 密钥

在每个请求的 Authorization 头中包含您的 API 密钥,使用 Bearer 方案:

text
Authorization: Bearer nf_your_api_key_here

cURL

curl
curl -X GET https://app.nueform.com/api/v1/forms \
  -H "Authorization: Bearer nf_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2" \
  -H "Content-Type: application/json"

JavaScript (fetch)

javascript
const NUEFORM_API_KEY = process.env.NUEFORM_API_KEY;

const response = await fetch("https://app.nueform.com/api/v1/forms", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${NUEFORM_API_KEY}`,
    "Content-Type": "application/json",
  },
});

const { data } = await response.json();
console.log(data);

Python (requests)

python
import os
import requests

api_key = os.environ["NUEFORM_API_KEY"]

response = requests.get(
    "https://app.nueform.com/api/v1/forms",
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
)

data = response.json()["data"]
print(data)

身份验证错误

如果身份验证失败,API 将返回 401 Unauthorized 响应,并附带描述性消息:

场景错误消息
缺少 AuthorizationMissing Authorization header. Use: Authorization: Bearer nf_...
头格式错误Invalid Authorization header format. Use: Authorization: Bearer nf_...
密钥不以 nf_ 开头Invalid API key format. Keys must start with "nf_".
密钥已撤销、过期或无效Invalid or expired API key.
账户已停用Account deactivated.
计划不包含 API 访问API access is not available on your current plan.

错误响应示例:

json
{
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Invalid or expired API key.",
    "status": 401
  }
}

密钥管理

数量限制

每个 NueForm 账户最多可拥有 10 个活跃 API 密钥。如果需要创建新密钥但已达到上限,请先撤销一个已有密钥。

撤销密钥

您可以随时在个人资料的 开发者 选项卡中撤销 API 密钥。撤销立即生效 --- 使用已撤销密钥的任何请求都将收到 401 Unauthorized 响应。

撤销密钥的步骤:

  1. 前往 个人资料 > 开发者
  2. 找到要撤销的密钥(通过名称和前缀识别)。
  3. 点击 撤销
  4. 确认操作。

撤销密钥的操作无法撤消。使用该密钥的任何服务或集成将立即失去访问权限。请确保在撤销旧密钥之前,使用新密钥更新您的应用程序。

最后使用跟踪

NueForm 会跟踪每个 API 密钥的最后使用时间。查看 开发者 选项卡,了解哪些密钥正在使用中,哪些可以安全撤销。

计划要求

API 访问是一项需要付费计划的功能:

计划API 访问速率限制
Entrepreneur(免费)---
Pro($29/月)100 请求/分钟
Enterprise($99/月)500 请求/分钟

如果您尝试在不包含 API 访问的计划账户上使用 API 密钥,将收到 403 Forbidden 响应:

json
{
  "error": {
    "code": "FORBIDDEN",
    "message": "API access is not available on your current plan.",
    "status": 403
  }
}

安全最佳实践

遵循以下准则保障您的 API 密钥安全:

切勿将密钥提交到版本控制

将密钥文件添加到 .gitignore 并使用环境变量代替。如果密钥被意外提交,请立即撤销并生成新密钥。

bash
# .env(将 .env 添加到您的 .gitignore)
NUEFORM_API_KEY=nf_your_api_key_here

使用环境变量

在每个环境中(本地开发、预发布和生产)都将 API 密钥存储在环境变量中。切勿将密钥硬编码到应用程序源代码中。

javascript
// 正确做法
const apiKey = process.env.NUEFORM_API_KEY;

// 错误做法 --- 切勿这样做
const apiKey = "nf_a1b2c3d4...";

为每个环境使用不同密钥

为开发、预发布和生产环境创建不同的 API 密钥。这样可以在密钥泄露时限制影响范围,并且方便撤销单个环境的访问权限。

定期轮换密钥

定期创建新密钥并逐步淘汰旧密钥。NueForm 允许最多 10 个活跃密钥,因此您可以创建新密钥、更新服务、验证一切正常后再撤销旧密钥。

仅限服务器端使用

API 密钥只应在服务器端代码中使用。切勿在客户端 JavaScript、移动应用或任何在用户浏览器中运行的代码中暴露您的 API 密钥。

切勿在前端代码、公开仓库或客户端请求中包含您的 API 密钥。泄露的密钥将允许对您的账户进行完全 API 访问。如果您怀疑密钥已泄露,请立即撤销。

最后更新:2026年4月6日