Of course it isn't that simple- most of the additional challenges you mentioned are business problems, though, not technical, and are generally orthogonal to the actual design of the API.
The biggest hurdle to opening up your API is usually needing to move from a single tenant to a multi-tenant architecture in your database.
Some tenants will have regulatory burdens you need to meet, and your early adopters will likely have a slew of requests that you'll need to decide on- do you risk tailoring your application to their needs with features future clients won't want?
To these last points, I think RESTful architecture helps, rather than hinders, but YMMV.
The biggest hurdle to opening up your API is usually needing to move from a single tenant to a multi-tenant architecture in your database.
Some tenants will have regulatory burdens you need to meet, and your early adopters will likely have a slew of requests that you'll need to decide on- do you risk tailoring your application to their needs with features future clients won't want?
To these last points, I think RESTful architecture helps, rather than hinders, but YMMV.