API maintenance becomes expensive when the contract hides state transitions or couples every client to the same internal representation. Resource modeling, pagination, error semantics, and explicit versioning choices are what keep the surface stable.