I'm going to assume some things about this question.
- When you say API, you mean an API based on a Web Service (HTTP/SOAP/Etc).
- When you say CMS, you are referring to a CMS for a website, and that it has it's own API.
The nice thing about having an API, is that it can give you can get and send data (JSON/XML/Etc) from the service in a language agnostic way. Any system in which you can view webpages, means that it has the capability of consuming an HTTP API, which is nearly any language or framework.
This means that your android/ios/web app basically only have two concerns, UX and communication with your web service. Making sure that your service is doing the heavy lifting means that your interface projects can be generally "dumb". This way helps prevent duplicated code between all projects (DRY).
I'm willing to doubt that the API included in the CMS is going to cover all of your needs, so I would recommend implementing your own as well for logic specific to your business logic.
This is only highlighting the benefit of why you may want to do this approach. Weather or not these techniques seem useful for your specific project is up to you.