Yep, you can access this information via the API but you will need to build your own iteration process and also be wary of the API Limits - which unless checked / catered for with large amounts of data you will burn through very quickly. Every customer of Marketo has a total limit of 10,000 API calls per day that are shared between all applications that use the Marketo APIs.
The amount of API calls your process makes to Marketo depends on the amount of data in your Marketo account. Here is an example of data from Marketo and the amount of API calls that are used by a simple process when importing:
Number of Rows
Total API Calls