核心问题

边界两侧如何稳定协作?

API 不是函数签名,而是团队之间的条约。

它承诺输入、输出、错误、幂等性、版本、延迟、废弃策略和兼容边界。

工程映射

一个好的 API 契约要说明:

  • 成功返回什么
  • 失败有哪些 code
  • 是否幂等
  • 是否向后兼容
  • 如何 deprecate
  • 谁是 owner
  • 调用方如何测试

例如:

POST /orders/:orderId/refund

需要承诺重复请求是否安全、退款后访问权何时撤销、错误码如何表达。

小结

改 API 不是改一段代码,而是在修改两个团队之间的信任。