该技能提供在 laneweaverTMS 中构建外部 API 集成的统一模式,可跨 QuickBooks、MyCarrierPackets、Slack 及未来 API 复用。适用时机包括:实现 OAuth2 认证、设计令牌刷新与存储、在 Webhook 与轮询间选择数据同步方式、实现限流与退避、统一处理 API 错误、设计多租户令牌隔离、保护 Webhook 端点,以及为外部 API 编写集成测试。
OAuth2 令牌生命周期区分访问令牌(1-3 小时,存内存或加密数据库)、刷新令牌(30-100 天,仅存加密数据库)和 ID 令牌(1-24 小时,存会话或内存);令牌存于加密数据库列,不存 JWT 或本地存储,并按 account_id 做多租户隔离。采用主动刷新策略:令牌寿命达 80% 时触发刷新,刷新时加锁并二次检查以避免并发重复刷新,失败则清除令牌并要求重新认证。
退避重试使用带抖动的指数退避,默认基准 1 秒、上限 60 秒、最多 5 次、抖动比例 0.2,仅对可重试错误(如 429、5xx)执行;可与熔断器结合以防级联失败。同步策略上,实时性要求高、事件频率低、提供方 Webhook 可靠时用 Webhook,否则用轮询,推荐 Webhook 为主、轮询为备的混合方案。限流方面可解析 X-RateLimit-Limit、X-RateLimit-Remaining、X-RateLimit-Reset 及 Retry-After 头,并用令牌桶做客户端限流。错误处理按 HTTP 状态分类:400/403/404/422 通常不重试,401 刷新令牌后重试一次,429 及 5xx 退避重试,并统一为 APIError 类型。具体集成细节、测试与部署方式资料未完整提供。