Blogger: unofficial feed FAQ
Sunday, July 06, 2008Here's a guide to some fundamental feeds info for bloggers who use Blogger / Blogspot.com blogs or just people who read Blogger/Blogspot blogs, with some explanation for beginners in the middle, a few tips and tricks on using query parameters, and a quick reference guide at the end.
You can use this info not only in relation to your own blog, if you're a Blogger user, but also in order to view the feeds of other Blogger blogs that you read, in a way that better suits you - e.g., knowing the tricks I'll show you, you can -
- read the last 100 posts on the Googleblog on one page, even though they're no longer in their default feed and the default feed only shows 25 posts
- check the 10 most recently updated posts on a particular Blogger blog (as opposed to the 10 most recently published posts)
- view, in summary or excerpts format only, all posts with a particular label from a particular Blogger blog
- (UPDATE:) submit sitemaps of your entire Blogger blog, including all your old posts, to the search engines to make sure they index your blog comprehensively
- ensure Feedburner always shows to your feed subscribers just your most recently published posts, not old posts you've recently updated.
I start with some exposition for beginners.
What are feeds, news feeds or newsfeeds, web feeds, RSS feeds etc?
Same difference, mostly. See my introductory tutorial guides on What are feeds (including Atom vs RSS); How to publish and publicise a feed, for bloggers; How to use Feedburner; Quick start guide to using feeds with Feedburner for the impatient; and Podcasting.Blogger feed basics
Blogspot, custom domain, ftp. You can publish via Blogger in 2 different ways. What can be done with your Blogger feed will, for some things, depend on which method you use:- Blogspot. Host your blog on Blogger's own Blogspot.com - i.e.you have:
- a blogspot.com URL or web address such as http://phydeaux3.blogspot.com - most people use this method - or
- a custom domain (so that your blog's URL doesn't have blogspot.com at the end) which is hosted on Blogspot behind the scenes, e.g. this blog, or
- FTP. Host your blog elsewhere, i.e. store the blog files on your own servers or a third party host (instead of on Blogspot), and publish via Blogger using FTP publishing.
Feed content. Blogger users can have separate feeds for posts, comments, and per post comments (i.e. a feed containing all comments made on one particular post only). You can even have feeds for labels.
Feed length/type. You can set your feeds to either Full, Short (summary), or None. (More on full vs. short i.e. partial/excerpts/summary feeds.) This can be done separately with the posts feed, the comments feed and also the per-post comment feeds.
The basic Blogger feed address URL formats are summarised in the Blogger Help.
Posts feed address
Whichever way you publish (blogspot, custom domain or ftp), your feed will always be accessible at:- Atom feed
http://www.blogger.com/feeds/BLOGID/posts/default - RSS feed
http://www.blogger.com/feeds/BLOGID/posts/default?alt=rss
This URL works even if the blog's feed has been burned through Feedburner.
Example - Kirk's blog feed is at http://www.blogger.com/feeds/20460175/posts/default; and this blog's feed can be found at
Note and tip. If you publish via ftp, the above URLs are for a separate copy of your feed which is stored on Blogger's servers, not the URL for feed files stored on your own server, of course. So an FTP-published blog has an accessible feed on blogger.com (as long as it's not a private blog) as well as its own posts feed on its own domain/servers (uploaded by Blogger when publishing, as full or summary depending on the blog owner's settings).
Feed length or type. The "default" in the URL is essential (if you try just http://www.blogger.com/feeds/20460175/posts/ for instance, you'll get an error message). What's it for? The "default" simply means, show this feed in whatever version has been set as the default on that Blogger blog's feed settings - if the blog owner has set it to output a full feed, the http://www.blogger.com/feeds/20460175/posts/default URL will show the full feed; but if the owner has set it for a short feed only, "default" shows a feed with only excerpts.
So here's the first trick. If the blog owner has set their default feed as "full", but you only want to see an excerpts feed or partial feed, you can get it by tweaking the URL.
Examples
This blog is set to output a full feed by default so http://www.consumingexperience.com/feeds/posts/default gets you a full feed. To get a short feed instead, use http://www.consumingexperience.com/feeds/posts/summary.
To get my summary feed in RSS format, you'd use http://www.blogger.com/feeds/8849059/posts/summary?alt=rss (note that http://www.consumingexperience.com/feeds/posts/summary?alt=RSS doesn't work. Note that if trying these tricks using the custom domain of a Blogger blog doesn't get you anywhere, the Blogger.com version using the blog ID in the URL will always work, as should the blogspot.com version of the custom domain blog, if any.)
This tip lets you get a summary feed from a full feed, but not vice versa. If you try to get a full feed from a blog which has been set to output only a short feed, you'll only see an error message like "The feed specified by [url] is not enabled". You can cut down, but not expand beyond, what the blog owner has chosen to allow.
Posts feed address - Blogspot or custom domain alternative feed address
If your blog files are hosted on Blogspot, i.e. it's a blogspot.com or custom domain blog, your feed's web address will also always be at:- Atom feed
http://BLOGNAME.blogspot.com/feeds/posts/default
or
http://CUSTOMDOMAIN.com/feeds/posts/default - RSS feed
http://BLOGNAME.blogspot.com/feeds/posts/default?alt=rss
or
http://CUSTOMDOMAIN.com/feeds/posts/default?alt=rss
(Alternatively you can think of it as adding "/feeds/posts/default/index.html" etc after the end of your usual blog URL).
Note. Even if you use a custom domain, you're still hosting your blog files on Blogger/Blogspot behind the scenes, so the blogspot.com feed addresses will also work. If you changed to a custom domain and kept your old blogspot.com address, you can use that. (Can't remember your old blogspot.com address? In the Blogger dashboard, Settings, Publishing, click Switch to: blogspot.com to see your Blog*spot address; but do not Save Settings, just close or back out of that page!)
Note. For backward compatibility with Old Blogger, for non-FTP blogs you can also get a feed at
http://BLOGNAME.blogspot.com/atom.xml
or
http://CUSTOMDOMAIN.com/atom.xml
(or the RSS equivalent if you change "/2008/07/atom.xml" to "/2008/07/rss.xml"). However you should move to using the above URLs, going forward.
Examples
ACE's RSS feed can be found at several URLs:
http://www.consumingexperience.com/feeds/posts/default?alt=rss
http://consumingexperience.blogspot.com/feeds/posts/default?alt=rss and
http://www.blogger.com/feeds/8849059/posts/default?alt=rss
While for Kirk's default Atom feed, you can use any of these URLs:
http://www.blogger.com/feeds/20460175/posts/default
http://phydeaux3.blogspot.com/feeds/posts/default
http://phydeaux3.blogspot.com/feeds/posts/summary
(Since his feed is set to "short" in his Blogger settings, the "default" URL will go to his summary feeds, and no full feed will be available.)
Or
http://phydeaux3.blogspot.com/atom.xml
http://phydeaux3.blogspot.com/rss.xml
(available, but you should transition to the new feed URL formats.)
Comments feed address
As with posts, the blog comment feed (a feed for all comments made on all posts) for a particular Blogger blog can be set to Full, Short or None, and you can only access the comment feed of a blog if it isn't a private blog.To work out the URL for the comments feed of a Blogger blog, it's exactly the same as for posts feeds, including the ability to get full or summary comments feed - except you just change "posts" to "comments" i.e.
http://www.blogger.com/feeds/BLOGID/comments/TYPE
and, for non-FTP blogs only, alternative additional URLs at
http://YOURBLOG.blogspot.com/feeds/comments/TYPE or
http://CUSTOMDOMAIN.com/feeds/comments/TYPE
- where of course you should first change BLOGID, YOURBLOG or CUSTOMDOMAIN to the one for the blog you want, and change TYPE to the length of feed you want to get i.e. default, summary or full.
Note: for FTP blogs, the only way to access the comments feed is through the blogger.com address - currently, no comments feed is uploaded to an FTP blog's own servers, only the posts feed is uploaded.
Examples
The summary Atom feed for all comments made on my blog can be reached via:
http://www.consumingexperience.com/feeds/comments/summary
http://consumingexperience.blogspot.com/feeds/comments/summary or
http://www.blogger.com/feeds/8849059/comments/summary
The full feed for all comments on this blog:
http://www.consumingexperience.com/feeds/comments/full
http://consumingexperience.blogspot.com/feeds/comments/full or
http://www.blogger.com/feeds/8849059/comments/full
(or changing "full" to "default" would also work as this blog outputs a full feed as default.)
And one way to get the RSS feed for all comments in summary form only:
http://www.consumingexperience.com/feeds/comments/summary?alt=rss
Per post comment feeds
Per-post comment feeds, i.e. a feed of all comments made on one particular post only, are again available only if the blog owner has turned on per-post comment feeds (I turned mine off, for instance), and it's not a private blog.To get the URL of a per-post comment feed, use the URL as for the main comment feed, but add the ID of that post after "/feeds/" e.g.:
http://YOURBLOG.blogspot.com/feeds/POSTID/comments/TYPE
Two ways to find out the post ID:
- as mentioned in the Blogger Help, if the blog owner is logged in to the Blogger Dashboard, in the Edit Posts view (making sure Published or All is selected if necessary), just mouseover the 'Edit' link next to a particular post, and its postId will be displayed in the browser's status bar as the number just after the "postID=" bit - or
- if you're not the owner of a Blogger blog but want to find out a post ID, and they've enabled "Email this post to a friend" or similar (the envelope icon , usually at the end of the post - Dashboard>Settings>Basic>Show Email Post links set to Yes), just hover over that link. Again the postId will be the number after "postID=". (If there's no such link because it's not been enabled, I'm not sure how you'd find out the post ID.)
To get the feed for all comments on Frivolous Fragments' post on heroic materialism (whose post ID is 3253976247961230387), I'd use one of these URLs:
http://frivolousfragments.blogspot.com/feeds/3253976247961230387/comments/default or
http://www.blogger.com/feeds/5281402533658280011/3253976247961230387/comments/default (as I can tell the blog ID from viewing source on that blog).
Label feeds
Feeds for labels are available as well (if the posts feed has been enabled on the blog and it's not a private blog).Unlike comments and per-post comments feeds, you can't set feeds for labels separately. Labels are a subset of posts, and as such take on the same settings enabled for posts (full or short).
You access a label feed by taking the post feed URL, adding "/-/index.html" and then "/labelname/index.html". Again, with ftp blogs you can only access the label feed at the blogger.com URL.
Example
Here's 2 ways to access the feed for the label "Blogger" on Kirk's blog:
http://www.blogger.com/feeds/20460175/posts/default/-/Blogger
http://phydeaux3.blogspot.com/feeds/posts/default/-/Blogger
Or to get all posts labelled "consumer" on this blog, in summary format only (not the full post):
http://www.consumingexperience.com/feeds/posts/summary/-/consumer
Note. Label names are case sensitive (so to find all posts labelled "food" don't use "Food"), and label names should also be URL encoded for any special characters. In other words to get a feed for a label whose name includes a special character like "bits&bobs", you need to make it "bits%26bobs". So look up the % substitute or use a converter for any special characters which appear in the label name, namely: ! * ' ( ) ; : @ & = + $ , / ? % # [ ]
Multiple labels ("and" label search). You can even query for multiple labels by adding the additional label name with a slash ("AND" operation ), e.g.
http://phydeaux3.blogspot.com/feeds/posts/default/-/Blogger/Google
will return posts labeled both Blogger and Google but not posts that have only been labelled "Blogger", or only labelled "Google".
Labels do not currently support an OR operation - although the base Google Data APIs do, so it may become available on Blogger one day. (If it does it most likely will be done with a | character (URL encoded to %7C) between the label names.)
Query parameters - tips & tricks, the fun stuff!
Blogger feeds on blogspot and at blogger.com both now support a wide range of useful query parameters. Most won't be that useful to the basic blogger, but some are. And many will be useful if you like to play with your feeds."Query parameters" may sound like gobbledygook if you're a non-geek but bear with me until the examples at the end (just ignore the developer-y bits) and you'll see that it's quite straightforward and potentially very handy to know how to use them.
To use a query parameter, you first append a question mark (?) to the end of the feed URL you are requesting (make sure there is no slash \ immediately before the ?), and then add the appropiate query in a name=value format. You can use multiple query parameters, separating them with an ampersand (&). It doesn't really matter in what order the query parameters are added.
I'll just list all of these in a table, and I'll give some working examples at the end. The first column is the parameter name, the second is valid values with defaults and notes about their usage.
Note. Again, query paraments will only work with the blogger.com URL, for FTP blogs (whereas for custom domain or blogspot.com blogs they'll just work). Also note query parameters won't work with atom.xml or rss.xml feed URLs.
Name | Value | ||||||||
alt |
| ||||||||
callback |
| ||||||||
orderby |
| ||||||||
start-index |
| ||||||||
max-results |
| ||||||||
published-min published-max |
| ||||||||
updated-min, updated-max |
|
Examples
To see the 10 posts in this Blogger blog which have been most recently updated (not the 10 most recently published posts), use e.g.:
http://www.consumingexperience.com/feeds/posts/default?orderby=updated
(You'll see that this is quite different from the posts I most recently published
http://www.consumingexperience.com/feeds/posts/default?orderby=published)
To view the last 30 posts from the Google Public Policy blog, even though it only has 12 posts on the main page and the default number of posts output in a Blogger feed is 25, try:
http://googlepublicpolicy.blogspot.com/feeds/posts/default?max-results=30
If I've been offline for a few months and want to see just the posts published on Kent's blog since 18 January 2008, I'd use:
http://www.blogger.com/feeds/5523094/posts/default?published-min=2008-01-18T00%3A00%3A00&orderby=published
(to view posts published between 2 dates, I'd add "&published-max=" for the upper bound).
To view a Blogger blog's feed starting at the 5th entry in the feed (i.e. not the latest post in that blog, but the 5th latest post), and return just the next 5 results, in a JSON object with a callback function named outputFeed, the URL would be
http://phydeaux3.blogspot.com/feeds/posts/default?alt=json-in-script&callback=outputFeed
&start-index=5&max-results=5
Even more information (non-geeks can ignore)
OpenSearch elements
Blogger feeds return 3 OpenSearch (Wikipedia) elements in the feed header (location varies depending on format type)openSearch:totalResults
- the total number of results in the query (not necessarily the number returned in that feed)openSearch:startIndex -
the index number of the first search result returned in the queryopenSearch:itemsPerPage -
the number of entries returned from the query
Rel links
Blogger feeds also return several link elements with rel attributes in the feed header.- self - <link rel="self" type=" ..." href="..."> Link pointing to the query returned. Type and href will depend on the query requested
- next - <link rel="next" type="..." href="..."> Link pointing to the next set of results if the results are chunked (more results than the max-results set)
- previous - <link rel="previous" type="..." href="..."> Link pointing to the previous set of results from a chunked query result
Secret feature - post feeds are podcast enabled
The API now also supports adding enclosures to a post (a link element with the rel="enclosure" set and a valid URL with mime-type and optionally a content length set). This can only be done via the API as of now, but support in the Blogger posting interface should come at some point. In other words, unless you know how to post via the API you can't use it yet, but it's there waiting for the Blogger interface to use and feeds can start returning them attached to each post entry now.
REFERENCE GUIDE to Blogger feeds and feed URLs
Basic structure of feed URLs -http://www.blogger.com/[POSTID/]feeds/BLOGID/CONTENT/TYPE[/-/LABELNAME1[/LABELNAME2]][?alt=&orderby=&max-results=&...]
plus alternative additional URLs for non-ftp blogs only -
http://BLOGNAME.blogspot.com/feeds/[POSTID/]CONTENT/TYPE[/-/LABELNAME1[/LABELNAME2]][?alt=&orderby=&max-results=&...] or
http://CUSTOMDOMAIN.com/feeds/[POSTID/]CONTENT/TYPE[/-/LABELNAME1[/LABELNAME2]][?alt=&orderby=&max-results=&...]
where:
CONTENT is posts or feeds
TYPE is full or summary or (is full or summary depending on how the blog owner has set it) default
POSTID is optional and only used for per-post feeds, in which case CONTENT must be comments for it to work of course
(Update: forgot to add info for label feeds before, sorry) /-/LABELNAME1 is optional, add it only when you want to get the feed for a particular label called LABELNAME1 (NB case-sensitive), in which case CONTENT must be posts for it to work. If you add /LABELNAME2 it will find only posts that have both labels
and optional parameters at the end:
alt=rss for the RSS feed (default is Atom)
orderby=updated (default is published)
max-results=number (default is 25, maximum seems to be 500)
Other query parameters are possible, as mentioned above.
Posts feed
Atom feeds
http://www.blogger.com/feeds/BLOGID/posts/TYPEand alternative additional URLs for non-ftp blogs only -
http://BLOGNAME.blogspot.com/feeds/posts/TYPE or
http://CUSTOMDOMAIN.com/feeds/posts/TYPE or
historical only - ideally don't use -
http://CUSTOMDOMAIN.com/atom.xml or
http://BLOGNAME.blogspot.com/atom.xml
- where TYPE (which is non-optional) can be default, summary or (if full feed has been enabled by the blog owner) full. (How to find out a Blogger blog's blog ID)
RSS feeds
Just add "?alt=rss" at the end of the above URLs e.g.http://www.blogger.com/feeds/BLOGID/posts/TYPE?alt=rss
or change "/2008/07/atom.xml" to "/2008/07/rss.xml" in the above examples e.g.
http://BLOGNAME.blogspot.com/rss.xml
Comments feed
As above, but change "posts" to "comments" (and add ?alt=rss at the end if you want an RSS feed) i.e.http://www.blogger.com/feeds/BLOGID/comments/TYPE
and alternative additional URLs for non-ftp blogs only -
http://YOURBLOG.blogspot.com/feeds/comments/TYPE
http://CUSTOMDOMAIN.com/feeds/comments/TYPE
Per-post comment feeds
As for comments, but add "/postID/index.html" before "/comments/index.html" where postID is the ID of that particular post (and add ?alt=rss at the end if you want an RSS feed) e.g.http://www.blogger.com/feeds/BLOGID/POSTID/comments/TYPE
Label feeds
As for posts, but add "/-/labelname/index.html" at the end - NB lTHE abel name is case-sensitive, you can't have summary postshttp://www.blogger.com/feeds/BLOGID/posts/TYPE/-/LABELNAME
and alternative additional URLs for non-ftp blogs only -
http://BLOGNAME.blogspot.com/feeds/posts/TYPE/-/LABELNAME or
http://CUSTOMDOMAIN.com/feeds/posts/TYPE/-/LABELNAME or
To find only posts that have been labelled both with X and with Y (but not posts labelled with X but not Y or vice versa):
http://www.blogger.com/feeds/BLOGID/posts/TYPE/-/X/Y
and alternative additional URLs for non-ftp blogs only -
http://BLOGNAME.blogspot.com/feeds/posts/TYPE/-/X/Y or
http://CUSTOMDOMAIN.com/feeds/posts/TYPE/-/X/Y or
(It's not possible to find posts with label X or label Y, yet)
Query parameters
The most useful parameters for most people are these (stick a ? at the end of the base URL and & in between queries):orderby=updated (the default is published) - to show feed with most recently updated posts (not most recently published ones)
max-results=figure (up to 500 currently, the default is 25) - to get a Blogger feed with more than 25 posts e.g. if the figure is 50 it'll show 50 posts in the feed
published-min=date-time1 in RFC 3339 format e.g. 2007-05-03T23:59:59-05:00, but URL encoded e.g. 2007-05-03T23%3A59%3A59-05%3A00 (changing each colon to %3A) - for posts published after date-time1; can be combined with &published-max=date2 for posts published before (but not including) date-time2
updated-min, updated-max - similar, but for posts updated after the dates stated.
Example for the official Blogger blog Buzz, whose blog ID is 2399953 - to see the last 50 posts most-recently updated posts from Buzz, in summary form i.e. only the first few characters of each post:
http://www.blogger.com/feeds/2399953/posts/summary?orderby=updated&max-results=50
Note: doesn't work for FTP blogs unless you use the blogger.com URL. If something doesn't work with the custom domain or blogspot.com domain URL, it will work with the blogger.com one.
Resources
Blogger HelpBlogger Buzz
Blogger Data API
Google Data API in particular query requests
Blogger Data API Group
JSON Inspector
Acknowledgements
This post wouldn't have been possible without the sterling work of Kirk, on whose draft I based it. Though I've made it a whole lot longer... Thanks, as always, Kap'n Kirk!Tags:
« Home | Previous Post »
Links to this post on:
Create link here by posting on Blogger
2 Comment(s):
Hi there... question for you: I contribute to a private blog with multiple authors and would like to be able to subscribe to it. (So that when other blog authors post, I know it without having to check manually.)
Do you know of any way that the authors of a private Blogger blog can subsribe to the feed?
(By mel, at Thursday, August 07, 2008 6:59:00 PM) Edit Comment
Wow...this has been the most resourceful blog I have come across for my FTP blogger site. I had one question however. I'm using only a few labels i.e Music, Blog, News, Images etc. I have 59 blog posts and I want to limit the number of results when you click on it.
my URL is www.daveandersononline.com/labels/blog.html if i put the max results query after it, the page loads, but doesn't limit the number of posts.
Hope you can help!
Dave
(By Dave Anderson, at Monday, August 18, 2008 12:23:00 PM) Edit Comment
Post a Comment | Subscribe to all comments on all posts