Hey just a quick heads up to folks working on support for the authoring api. We hit a bug, and are working on it now. Until it’s fixed you may see some errors. I’ll update the blog when we’re back up.
Update 13:50 PDT: We’re back up.
Hey just a quick heads up to folks working on support for the authoring api. We hit a bug, and are working on it now. Until it’s fixed you may see some errors. I’ll update the blog when we’re back up.
Update 13:50 PDT: We’re back up.
Benjamen Walker on the canonization of Philip K Dick.
C.C. Chapman on the goodness of Kevin Smith.
It’s a big day today on developer.podshow.com. We’ve posted a draft of the Authoring API. Its purpose is to allow third-party tools to upload content into the network. It’s based on the metaWeblog API, a standard from the blogging world that a number of pre-existing tools already implement. The API has been live in production for a few months, with members of the PodShow network posting their content through CastBlaster. We’ve also tested the API against one blog tool, Ecto, with success. I suspect and hope that the API will work out of the box with other tools we haven’t checked yet (please do let me know!).
Now we’d like to invite tool developers in to review the documentation and provide feedback, help us find and fix passages that are unclear, let us know about other tools that work with the API, and provide general feedback. Are we missing any key calls? Did we goof up the arguments somewhere? Etc etc.
I’d also like to say a big thanks to Dave Winer, the author of the metaWeblog API, for reviewing a draft of the documentation and uncovering a couple of bugs, now fixed, in our implementation.
Please use the comment thread on this post for feedback. Thanks!!!
This document describes an API for authoring and publishing podcasts on Mevio. Comment here.
The authoring API is a special case of the metaWeblog API wherein podcast files are uploaded via newMediaObject and routed to the enclosure element of a newly created RSS item.
The authoring API is implemented as XMLRC (XMLRPC info). The API access URL is:
http://www.mevio.com/xmlrpc/pdn
To display a list of shows that the user can edit make the following XMLRPC call:
blogger.getUsersBlogs(appkey, username, password)
Docs: http://www.blogger.com/developers/api/1_docs/xmlrpc_getUsersBlogs.html.
Episode media, e.g. mp3 files, are uploaded by making the following XMLRPC call:
metaWeblog.newMediaObject (blogid, username, password, struct)
Docs: http://www.xmlrpc.com/metaWeblogApi#basicEntrypoints
http://www.xmlrpc.com/metaWeblogApi#metaweblognewmediaobject
The authoring API also accepts the following optional struct fields to permit episode creation and publishing with a single call to newMediaObject:
| title | The podcast episode name. (string) |
| subtitle | The podcast episode subtitle. (string) |
| pubDate | The publish date for the podcast episode. May be in the future. (RFC822 date) |
| isExplicit | Whether the episode contains explicit language. (boolean, true or false) |
| summary | A short version of what the episode is about. (string) |
| description | Shownotes. (string) |
| tags | Comma-separated list of tags for the episode. (string) |
The string fields should be plaintext with the exception of description, which should contain entity-encoded HTML.
If the struct contains the optional title field, the PDN will assume that the client is performing a single call, and publish the episode. If not, the PDN will not publish the episode, in anticipation of a follow-on call to metaWeblog.newPost.
Standard blog authoring tools may use metaWeblog.newPost to annotate and publish a media file that was uploaded with metaWeblog.newMediaObject.
metaWeblog.newPost (blogid, username, password, struct, publish)
The PDN will search for the media file’s url in three places, in the following order:
The URL returned by newMediaObject must be present in one of these places in order for this method to work correctly.
Docs: http://www.xmlrpc.com/metaWeblogApi#basicEntrypoints
http://www.xmlrpc.com/metaWeblogApi#theStruct
In addition to the standard title, link and description, the PDN accepts a number of optional struct elements: subtitle, isExplicit, summary, tags. When using newPost and editPost, these fields should be transmitted in the following namespace:
http://developer.podshow.com/apis/pdn/authoring
Docs: http://www.xmlrpc.com/metaWeblogApi#transmittingElementsFromNamespaces
For compatibility with existing metaWeblog tools, the authoring API supports inline transmission of the optional elements embedded in the standard description field. These are specified in the description by enclosing them between pipe (|) symbols and demarcating the field names with colons:
Here is an example of how to embed extra fields in a description.
|SUMMARY: Example of extra field embedding.|SUBTITLE: For tool devs.|EXPLICIT: true|TAGS: metaWeblog,authoring,api|
Episodes are edited via metaWeblog.editPost, using the postid returned by newMediaObject or newPost.
metaWeblog.editPost (postid, username, password, struct, publish)
Docs: http://www.xmlrpc.com/metaWeblogApi#basicEntrypoints
http://www.xmlrpc.com/metaWeblogApi#theStruct
Episodes are deleted via blogger.deletePost, using the postid returned by newMediaObject or newPost.
blogger.deletePost (appkey, postid, username, password, publish)
Any tool that supports the metaWeblog API and in particular the newMediaObject call should work with the PDN. That includes blogging tools that pre-date podcasting, such as Ecto. Please help us grow the list!
by Andrew Grumet on 3 Apr 2006
Posted for public comment on 21 Jul 2006
API Last Updated on 4 Jul 2006
All right WordPress gurus, I have a new spec to post for feedback, and I want it to be a “page” so that it’ll get the same pretty html templates as the rest of this site, but I also want it to live at a real URL (not /?page_id=12). How do I do this? Yes, I know about WordPress permalink options, but I don’t want to kill off all my old URLs. Ideally I wouldn’t have to fiddle around with .htaccess either.
Shadow Falls creator Mark Yoshimoto Nemcoff explains how subscriptions work on PodShow Plus. Call me crazy, but I’ve listened to that clip at least ten times today, and haven’t gotten tired of it yet.
Podshow’s first original drama series, SHADOW FALLS, has made its debut today on the network with episode 1. Congratu-freakin-lations to Mark and PodShow L.A.!
You know you’re a nerd when you can say stuff like this: “Aha, I found it! My code isn’t properly handling little-endian UTF-16!” ;)
Regarding channel feeds and statistics, there’s a well-understood solution.
Argh, have to update the comment settings for this blog. Sorry if yours has been sitting the moderation queue.