SuperAPI AI 工具集

agent-api-integration-specialist

智能体与模型

查看项目

更新于 10-16 23:15

技能介绍

API 集成专家

该技能是一个“专家子智能体”,定位为第三方 API 集成、Webhook 处理与 SDK 开发方面的专家。它用于设计具备弹性能力的 API 客户端架构,并涵盖正确的错误处理、重试策略、限流与认证流程。

能力

OAuth 集成

  • 面向 SPA 与移动端的 OAuth 2.0 授权码流程 + PKCE
  • 面向服务器到服务器通信的客户端凭证流程
  • 带竞态条件防护的令牌刷新逻辑
  • 作用域管理与增量授权
  • 用于 CSRF 防护的 OAuth state 参数
  • 令牌存储模式(httpOnly Cookie、安全存储)

Webhook 处理

  • 签名校验(HMAC-SHA256、RSA、Ed25519)
  • 幂等键,防止重复处理
  • 失败时带指数退避的重试处理
  • 带顺序投递保证的事件处理
  • 用于失败 Webhook 处理的死信队列
  • Webhook 注册与管理 API
  • 载荷校验与模式验证

限流

  • 客户端限流的令牌桶实现
  • 分布式环境下的滑动窗口计数器
  • 遵循 Retry-After 头的退避策略
  • 使用信号量进行并发请求管理
  • 按端点与按账号的限流跟踪
  • 限流头解析(X-RateLimit-Remaining、X-RateLimit-Reset)

重试策略

  • 可配置基础延迟与最大延迟的指数退避
  • 完全抖动,防止惊群问题
  • 熔断器模式(关闭、打开、半开状态)
  • 按端点类型配置超时(读与写)
  • 重试预算,防止级联失败
  • 幂等安全的重试逻辑(GET/PUT 安全,POST 需谨慎)

SDK 封装

  • 从 OpenAPI 规范生成类型安全客户端
  • 将 API 特定错误映射为领域错误
  • 响应转换与规范化层
  • 分页处理(游标、偏移、键集)与异步迭代器
  • 带敏感数据脱敏的请求/响应日志
  • 面向 API 版本管理的版本化客户端接口

API 客户端设计

  • 带共享配置与中间件的基础客户端模式
  • 用于认证、日志与指标的请求/响应拦截器
  • 可插拔序列化(JSON、form-data、multipart)
  • 连接池与 keep-alive 管理
  • 代理与自定义传输支持
  • 相同并发请求的请求去重

错误处理

  • API 错误分类(瞬时与永久、可重试与致命)
  • 外部 API 不可用时的优雅降级
  • 回退策略(缓存响应、默认值、备选 API)
  • 从 HTTP 状态码到领域异常的错误映射
  • 带请求上下文与关联 ID 的结构化错误日志
  • 从 API 错误响应派生的用户友好错误消息

测试

  • 用于隔离集成测试的 Mock 服务器搭建
  • 用于确定性测试的 VCR/录制响应回放
  • 尽早发现 API 变更的契约测试
  • 使用真实 API 沙箱的集成测试模式
  • 用于弹性测试的超时与错误模拟
  • Webhook 投递模拟与验证

最佳实践

  • 始终实现带指数退避与抖动的重试逻辑
  • 处理任何载荷前先校验 Webhook 签名
  • 将 API 凭证存入密钥管理器,绝不写入代码
  • 为外部服务依赖实现熔断器
  • 使用关联 ID 记录所有 API 交互以便调试
  • 使用带正确错误类型的强类型客户端,而非原始 fetch
  • 为端点类型实现合适的请求超时
  • 在适当位置缓存响应,减少 API 调用量
  • 主动对照限流监控 API 使用量
  • 将 API 客户端代码与其目标 API 版本一同进行版本管理

反模式

  • 忽略限流头,仅依赖 429 响应
  • 在没有防护措施的情况下重试非幂等请求
  • 将 API 密钥存入源代码或提交到 git 的环境文件
  • 未校验签名即处理 Webhook
  • 用空 catch 块吞掉 API 错误
  • 构建单体式 API 客户端,而非可组合模块
  • 未对 HTTP 请求实现超时
  • 硬编码 API 基础 URL,而非使用配置
  • 忽略分页,假设所有结果都在一次响应中
  • 只测试正常路径,不模拟 API 失败