views:

232

answers:

3

I've used the Blogger Data API and I know WordPress has an API of their own, but is there any standard in the works? Hypothetically, if you were starting your own blog-style CMS that you wanted to make available via a web service, what API would you choose?

+1  A: 

I don't know about a W3C-style standard, but I've used the metaWebLog API on several occaisions, and it's fairly well-suppported; WordPress's implementation of XML-RPC is (or was, last I checked) compatible with it, and it's supposed to be an enhancement of the Blogger API.

cori
+4  A: 

There is the Atom Publishing protocol - RFC 5023. I know of one open source project on Codeplex that is developing a blog engine around that - BlogSvc.NET

Steven Murawski
A: 

I know there are some who really like Atom Pub (see Steven's link above), but I would cast a vote for a combination of MetaWeblog, MovableType and the WordPress API. This way your clients can use Windows Live Writer and have support for the full range of features available from WLW, like hierarchical categories, the ability to add categories, hierarchical pages and the ability to create pages and assign a parent page and a page order to your new page, support for slugs and support for summaries and extended entries, just to name a few.

If you would like to start with an open source platform and you're a .NET developer, then I would highly recommend DotNetNuke (http://www.dotnetnuke.com) as a starting point. If you go this route, then you may be interested to check out a free product our company created called metaPost Community Edition. Basically, we've designed a bridge between DotNetNuke modules and offline clients like WLW, with WLW being the main client we focused on because of it's ability to implement multiple publishing APIs simultaneously through the use of an XML manifest that allows you to specify which specific methods from the different APIs your blog software supports. See our site for more information. http://www.itcrossing.com.

HTH,

Don

Don Worthley