Atom Publishing Protocol 1.0
The Atom Publishing Protocol (AtomPub for short) is an Internet standard for publishing online programmatically.
This document currently contains an overview of how to access official AtomPub support for Movable Type.
Accessing the AtomPub API Endpoint
The AtomPub endpoint for your Movable Type installation will vary from server to server. If the URL to your Movable Type admin UI is as follows:
http://www.somedomain.com/cgi-bin/mt/mt.cgi
Then your AtomPub endpoint will be:
http://www.somedomain.com/cgi-bin/mt/mt-atom.cgi/1.0
Introspection
Making a request directly to the AtomPub endpoint will result an introspection document. Below is a sample introspection document.
Sample
<?xml version="1.0" encoding="utf-8"?>
<service xmlns="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom">
<workspace>
<atom:title>My First Blog</atom:title>
<collection href="http://mpaschal2.dev.sixapart.com/mt/release-41/mt-atom.cgi/1.0/blog_id=1">
<atom:title>My First Blog: Entries</atom:title>
<categories href="http://mpaschal2.dev.sixapart.com/mt/release-41/mt-atom.cgi/1.0/blog_id=1/svc=categories"/>
</collection>
</workspace>
<workspace>
<atom:title>Some other blog</atom:title>
<collection href="http://mpaschal2.dev.sixapart.com/mt/release-41/mt-atom.cgi/1.0/blog_id=2">
<atom:title>Some other blog: Entries</atom:title>
<categories href="http://mpaschal2.dev.sixapart.com/mt/release-41/mt-atom.cgi/1.0/blog_id=2/svc=categories"/>
</collection>
</workspace>
</service>
Collections
Within the introspection document you will find various “workspaces,” one for each blog in your installation. Each workspace contains a collection that refers to the blog specific endpoint for AtomPub transactions for that blog. To retrieve a list of entries for example, one would make a simple request to any of the collections found in the introspection document.
Here is an example response when conducting just such a request:
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:default="http://www.w3.org/1999/xhtml" xmlns:default1="http://www.w3.org/2007/app">
<link xmlns="http://www.w3.org/2005/Atom" rel="alternate" href="http://mpaschal2.dev.sixapart.com/my_first_blog/" type="text/html"/>
<link xmlns="http://www.w3.org/2005/Atom" rel="self" href="http://mpaschal2.dev.sixapart.com/mt/release-41/mt-atom.cgi/1.0/blog_id=1" type="application/atom+xml"/>
<title xmlns="http://www.w3.org/2005/Atom">My First Blog</title>
<id xmlns="http://www.w3.org/2005/Atom">tag:mpaschal2.dev.sixapart.com,2008-07-18:/my_first_blog//1</id>
<updated xmlns="http://www.w3.org/2005/Atom">2008-07-18T15:16:29-07:00</updated>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:default="http://www.w3.org/1999/xhtml" xmlns:default1="http://www.w3.org/2007/app">
<title xmlns="http://www.w3.org/2005/Atom">I just finished installing Movable Type 4!</title>
<summary xmlns="http://www.w3.org/2005/Atom"></summary>
<content xmlns="http://www.w3.org/2005/Atom" xmlns:default="http://www.w3.org/1999/xhtml" type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">Welcome to my new blog powered by Movable Type. This is the first post on my blog and was created for me automatically when I finished the installation process. But that is ok, because I will soon be creating posts of my own!</div>
</content>
<author xmlns="http://www.w3.org/2005/Atom">
<name xmlns="http://www.w3.org/2005/Atom">Melody Nelson</name>
<email xmlns="http://www.w3.org/2005/Atom">markp+melody@sixapart.com</email>
</author>
<published xmlns="http://www.w3.org/2005/Atom">2008-07-18T15:16:29-07:00</published>
<updated xmlns="http://www.w3.org/2005/Atom">2008-07-18T15:16:29-07:00</updated>
<link xmlns="http://www.w3.org/2005/Atom" rel="alternate" href="http://mpaschal2.dev.sixapart.com/my_first_blog/" type="text/html"/>
<id xmlns="http://www.w3.org/2005/Atom">tag:mpaschal2.dev.sixapart.com,2008:/my_first_blog//1.1</id>
<edited xmlns="http://www.w3.org/2007/app">2008-07-18T15:16:29-07:00</edited>
<link xmlns="http://www.w3.org/2005/Atom" rel="edit" href="http://mpaschal2.dev.sixapart.com/mt/release-41/mt-atom.cgi/1.0/blog_id=1/entry_id=1" title="I just finished installing Movable Type 4!" type="application/atom+xml"/>
<link xmlns="http://www.w3.org/2005/Atom" rel="replies" href="http://mpaschal2.dev.sixapart.com/mt/release-41/mt-atom.cgi/comments/blog_id=1/entry_id=1" type="application/atom+xml"/>
</entry>
</feed>