Do you use the API or do you provide a CSV file for your feeds to Google Merchant Center? Are there any advantages or disadvantages to either approach?
Great question, let's first start with a quick overview of the different methods for structuring your feed and then how you can manage your feed. Fortunately, most e-commerce platforms have some way of directly submitting your feed to Google Merchant Center or there are cost effective 3rd party solutions for getting a feed to Google, GoDataFeed being a popular choice I've worked with before.
Google supports two types of file formats for uploading a feed to Google Merchant center. They support both a delimited text file or an XML file. For detailed product feed specifications, check out the Product Feed Specification in Googles Merchant Center Help.
Once you've figured out how you are going to structure your feed, then you need to figure out how you are going to manage getting your initial feed to Google and how you'll maintain the feed. All products expire after 30 days so you need to regularly update the status of your products so they are not removed from Google Merchant Center and therefore not available for search within Google Shopping.
For most e-commerce companies you can either upload your feed to Google or you can have Google fetch a feed from a specific location. Another alternative is to use the Content API for Shopping, which let's you programmatically manage your product data and is typically intended for people integrating applications within Google Shopping.
Once upon a time, there was a very good reason to use the API--feeds took a long time to process. Then, if you pushed a feed every hour, you could very easily have feed uploads trip over each other, and your products would be a "pending" purgatory. From what I've seen, feeds are much faster now, so unless you have a particularly huge (hundreds of thousands of products) catalog, you can get along very well with the feed engine to this today. If you have the resources (and are using a language that Google published a library for) to do the API integration, then you'll be even more nimble, but that won't be worth the effort for most folks.
Have questions? Drop me a line via the Contact form--I love to talk shop.
Up and to the right!