The promise construct has been around since the late 70‘s, and iOS has had libraries for promises since at least 2015. Still, it seems like Swift has been slower to adopt promises than other languages. Promises can make tangled networking code more readable and can simplify complicated API business. Let’s take a look at how a tangle of calls to separate API’s, some using information dependent on previous calls, can be simplified into a series of promises fulfilled or rejected. We’ll investigate the pros and cons of various promise frameworks for Swift and of the promise pattern itself.