they commonly fall into a trap — that of building too much with no early adopters.
It’s very tempting, especially if the vendor solves the exact problem you want to solve, to straight up expose their API to users you’re building the platform for since it’s a quick way to deliver some value.
Instead, provide your version of that API. This should take the form of a lightweight wrapper that encapsulates this vendor API.
That way, you retain the ability to change the vendor without forcing users to migrate, because you retain the degrees of freedom you need to do it without requiring users to change their code.
This is also a good way to simplify the experience of using a vendor API too, as you can lower your users’ cognitive burden by making common decisions on their behalf,
Don’t build for every user equally. Let sophisticated users fend for themselves until it’s proven that you should invest your time for them.
Think about an opinionated higher level API layer.