So can someone explain to me why one would use amex over stripe or braintree? Or why would one use mastercard's API or Visa's? They all have similar APIs right?
The biggest reason would be price. I don't know the amex payment pricing or how it differs from stripe/braintree, but cutting out the middle man has got to be cheaper.
I run a small business using stripe and cc processing fees are a big hit. The service and support is amazing and it's so easy to use, but it's not cheap. They charge the same for every card type when the card providers charge in-person merchants much different (and lower) rates.
Are you doing card-not-present? That's going to be a fee hit over card-present regardless of processor.
If you're doing card-present, look into traditional acquirers and also chip-and-PIN. You'll pay considerably more up front, but less over time due to the fee difference, and you'll also no longer need to sweat being on the wrong end of the EMV liability shift.
AMEX is closed loop network. The advantage possibly would be huge troves of data about customer spending habits, if they expose those in future(obviously without PII)