Guia do desenvolvedor: protocolo

Importante: esta é uma versão antiga desta página. Para usar a versão mais recente, use os links na barra de navegação à esquerda.

A API Data do Blogger permite que os aplicativos clientes acessem e atualizem o conteúdo do Blogger na forma de feeds da API Data do Google.

O aplicativo cliente pode usar a API Blogger Data para criar novas postagens do blog, editar ou excluir postagens existentes e consultar postagens que correspondem a critérios específicos.

Além de fornecer alguns antecedentes sobre os recursos da API Data do Blogger, este documento apresenta exemplos de interações básicas da API Data usando XML bruto e HTTP. Depois de ler este documento, você pode aprender mais sobre como interagir com a API usando nossas bibliotecas de cliente lendo as seções específicas da linguagem de programação deste guia para desenvolvedores.

Conteúdo

Público-alvo

Este documento é destinado a programadores que querem criar aplicativos clientes que possam interagir com o Blogger usando XML e HTTP.

Este documento pressupõe que você entenda as ideias gerais por trás do protocolo das APIs Data do Google.

Se você estiver usando um sistema UNIX e quiser testar os exemplos deste documento sem escrever nenhum código, os utilitários de linha de comando UNIX curl ou wget podem ser úteis. Para mais informações, consulte as páginas de manual desses utilitários.

Para informações de referência da API Data do Blogger, consulte o guia de referência do protocolo.

Primeiros passos

Como criar uma conta do Blogger

Talvez seja melhor criar uma conta do Blogger para fins de teste. O Blogger usa Contas do Google. Se você já tem uma, está tudo pronto.

Como fazer a autenticação no serviço do Blogger

É possível acessar feeds públicos e privados usando a API Data do Blogger. Os feeds públicos não exigem autenticação, mas são somente leitura. Se você quer modificar blogs, seu cliente precisa se autenticar antes de solicitar feeds privados. Ele pode ser autenticado usando uma destas duas abordagens: autenticação de proxy AuthSub ou autenticação de nome de usuário/senha ClientLogin.

Para mais informações sobre a autenticação com as APIs de dados do Google em geral, consulte a documentação de autenticação.

A maioria dos exemplos nas seções seguintes deste documento pressupõe que você forneça a autenticação adequada.

Autenticação via proxy do AuthSub

A autenticação de proxy AuthSub é usada por aplicativos da Web que precisam autenticar os usuários nas Contas do Google. O operador do site e o código do cliente não têm acesso ao nome de usuário e à senha do usuário do Blogger. Em vez disso, o cliente recebe tokens AuthSub especiais que permitem que ele aja em nome de um usuário específico. Para mais informações, consulte a documentação do AuthSub.

Quando um usuário visita seu aplicativo pela primeira vez, ele ainda não foi autenticado. Nesse caso, você precisa mostrar algumas informações e um link direcionando o usuário a uma página do Google para autenticar sua solicitação de acesso aos blogs.

Os seguintes parâmetros de consulta são incluídos no URL da AuthSubRequest:

próxima
O URL da página para a qual o Google vai redirecionar o usuário após a autenticação.
escopo
Indica que o aplicativo está solicitando um token para acessar os feeds do Blogger. A string de escopo a ser usada é http://www.blogger.com/feeds/ (codificada por URL, é claro).
seguro
Indica se o cliente está solicitando um token seguro.
sessão
Indica se o token retornado pode ser trocado por um token de uso múltiplo (sessão).

O URL da AuthSubRequest pode ter esta aparência:

https://www.google.com/accounts/AuthSubRequest?scope=http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F&session=1&secure=0&next=http%3A%2F%2Fwww.example.com%2Fwelcome.html

O usuário segue o link para o site do Google e faz a autenticação na Conta do Google.

Depois que o usuário é autenticado, o sistema AuthSub redireciona ele para o URL especificado no parâmetro de consulta next do URL AuthSubRequest. O sistema AuthSub anexa um token de autenticação a esse URL como o valor do parâmetro de consulta token. Exemplo:

http://www.example.com/welcome.html?token=yourAuthToken

Esse valor de token representa um token AuthSub de um único uso. Neste exemplo, como session=1 foi especificado, esse token pode ser trocado por um token de sessão do AuthSub chamando o serviço AuthSubSessionToken com o token de uso único em um cabeçalho de autorização, conforme mostrado abaixo:

GET /accounts/AuthSubSessionToken HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Authorization: AuthSub token="yourAuthToken"
User-Agent: Java/1.5.0_06
Host: www.google.com
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive

A resposta do serviço AuthSubSessionToken inclui um cabeçalho Token que contém o token de sessão e um cabeçalho Expiration que indica por quanto tempo o token vai permanecer válido.

Seu aplicativo pode usar o valor do token de sessão no cabeçalho Authorization de interações subsequentes com o Blogger.

Confira um exemplo de solicitação HTTP, contendo um token não seguro, que pode ser enviado ao Blogger:

GET /feeds/blogID/blogs/posts/defaults HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Authorization: AuthSub token="yourSessionToken"
User-Agent: Java/1.5.0_06
Host: www.blogger.com
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive

Autenticação por nome de usuário/senha do ClientLogin

Use a autenticação ClientLogin se o cliente for um cliente "instalado" independente para um único usuário, como um aplicativo de computador. Para solicitar um token de autenticação usando o mecanismo ClientLogin, envie uma solicitação POST para o seguinte URL:

https://www.google.com/accounts/ClientLogin

O corpo da POST precisa conter um conjunto de parâmetros de consulta que se pareçam com os parâmetros transmitidos por um formulário HTML, usando o tipo de conteúdo application/x-www-form-urlencoded. Esses parâmetros são:

E-mail
O endereço de e-mail do usuário.
Passwd
A senha do usuário.
serviço
O nome do serviço do Blogger é blogger. Para outros nomes de serviço, consulte a lista de nomes de serviço.
accountType
Sempre defina como GOOGLE ao usar a API Blogger. Se esse parâmetro não for definido, o acesso de usuários que também têm uma conta do G Suite será bloqueado.
source
Identifica seu aplicativo cliente. Deve ter o formato companyName-applicationName-versionID. Os exemplos usam o nome exampleCo-exampleApp-1.

Para mais informações sobre os parâmetros, consulte o documento Autenticação para aplicativos instalados.

Se a solicitação de autenticação falhar, o servidor retornará um código de status HTTP 403 Forbidden.

Se for bem-sucedido, o servidor retornará um código de status HTTP 200 OK e três códigos alfanuméricos longos no corpo da resposta: SID, LSID e Auth. O valor de autenticação é o token de autorização que você vai enviar ao Blogger com cada uma das solicitações subsequentes. Portanto, mantenha uma cópia desse valor. É possível ignorar os valores SID e LSID.

Como todas as solicitações para feeds privados exigem autenticação, é necessário definir o cabeçalho de autorização em todas as interações subsequentes com o Blogger usando o seguinte formato:

Authorization: GoogleLogin auth=yourAuthToken

Em que yourAuthToken é a string de autenticação retornada pela solicitação ClientLogin.

Para mais informações sobre a autenticação do ClientLogin, incluindo solicitações e respostas de exemplo, consulte a documentação Autenticação para aplicativos instalados.

Observação: use o mesmo token para todas as solicitações em uma determinada sessão. Não adquira um novo token para cada solicitação do Blogger.

Observação: conforme descrito na documentação do ClientLogin, a solicitação de autenticação pode falhar e solicitar um desafio do CAPTCHA. Se você quiser que o Google emita e processe o desafio do CAPTCHA, envie o usuário para https://www.google.com/accounts/DisplayUnlockCaptcha?service=blogger (em vez do URL de processamento do CAPTCHA fornecido na documentação do ClientLogin).

Como extrair uma lista de blogs

A API Data do Blogger fornece um feed que lista os blogs de um usuário específico. Esse feed é conhecido como "metafeed".

Envie um GET HTTP para o seguinte URL para recuperar a lista de blogs:

http://www.blogger.com/feeds/userID/blogs

Observação: também é possível substituir default pelo ID do usuário, o que instrui o Blogger a retornar a lista de blogs do usuário que tem as credenciais que acompanham a solicitação.

Uma entrada no metafeed pode ter esta aparência:

<entry>
  <id>tag:blogger.com,1999:blog-blogID.post-postID</id>
  <published>2006-08-02T18:44:43.089-07:00</published>
  <updated>2006-11-08T18:10:23.020-08:00</updated>
  <title type='text'>Lizzy's Diary</title>
  <summary type='html'>Being the journal of Elizabeth Bennet</summary>
  <link rel='alternate' type='text/html'
    href='http://blogName.blogspot.com/'>
  </link>
  <link rel='http://schemas.google.com/g/2005#feed'
    type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/posts/default'>
  </link>
  <link rel='http://schemas.google.com/g/2005#post'
    type='application/atom+xml'
    href='http://www.blogger.com/feeds/blogID/posts/default'>
  </link>
  <link rel='self' type='application/atom+xml'
    href='http://www.blogger.com/feeds/userID/blogs/blogID'>
  </link>
  <link rel='edit' type='application/atom+xml'
      href='http://www.blogger.com/feeds/userID/blogs/blogID'>
  </link>
  <author>
    <name>Elizabeth Bennet</name>
    <email>noreply@blogger.com</email>
    <uri>http://www.blogger.com/profile/profileID</uri>
  </author>
</entry>

Para saber o que cada um desses elementos significa, consulte o documento Referência do protocolo das APIs de dados do Google ou a especificação Atom 1.0.

Se a solicitação falhar por algum motivo, o Blogger poderá retornar um código de status diferente. Mais informações sobre os códigos de status HTTP também estão disponíveis no documento Referência de protocolo das APIs de dados do Google.

Como criar postagens

A API Data do Blogger permite criar e publicar novas entradas de blog, além de criar rascunhos de entradas.

Publicar uma postagem do blog

Depois de fazer a autenticação, você poderá publicar novas entradas no blog.

Primeiro, crie uma representação XML da postagem a ser publicada. Esse XML precisa estar na forma de um elemento <entry> do Atom, que pode ser parecido com este:

<entry xmlns='http://www.w3.org/2005/Atom'>
  <title type='text'>Marriage!</title>
  <content type='xhtml'>
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p>Mr. Darcy has <em>proposed marriage</em> to me!</p>
      <p>He is the last man on earth I would ever desire to marry.</p>
      <p>Whatever shall I do?</p>
    </div>
  </content>
  <category scheme="http://www.blogger.com/atom/ns#" term="marriage" />
  <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" />
</entry>

Observação: no momento, não é possível definir um autor personalizado para as postagens. Todas as novas postagens vão aparecer como se tivessem sido criadas pelo usuário autenticado no momento.

Para publicar essa entrada, envie-a para o URL da postagem do blog da seguinte maneira. Primeiro, coloque o elemento <entry> do Atom no corpo de uma nova solicitação POST, usando o tipo de conteúdo application/atom+xml. Em seguida, encontre o URL da postagem do blog no metafeed localizando o elemento <link> em que o atributo rel termina com #post. O URL da postagem do blog é fornecido como o atributo href do elemento, que está neste formato:

http://www.blogger.com/feeds/blogID/posts/default

Observação: esse URL é o mesmo que o URL na tag <link rel="service.post"> que aparece na seção <head> da versão legível por humanos do blog.

O Blogger cria uma postagem usando a entrada que você enviou e retorna um código de status HTTP 201 CREATED, junto com uma cópia da nova postagem na forma de um elemento <entry>. A entrada retornada é a mesma que você enviou, mas também contém vários elementos adicionados pelo Blogger, como um elemento <id>.

Se a solicitação falhar por algum motivo, o Blogger poderá retornar um código de status diferente. Para informações sobre os códigos de status, consulte o documento de referência do protocolo da API Google Data.

Criar um rascunho de postagem do blog

As postagens de rascunho são criadas da mesma forma que as postagens públicas, mas com um elemento <app:control> adicionado à entrada indicando que a postagem ainda não pode ser publicada.

Esse elemento <app:control> precisa conter um único elemento <app:draft> como filho:

<app:control xmlns:app='http://purl.org/atom/app#'>
  <app:draft>yes</app:draft>
</app:control>

Os dados contidos no elemento <app:draft> precisam ser a string yes para que a postagem seja reconhecida como rascunho.

Para transformar um rascunho de postagem do blog em uma postagem publicada, recupere o rascunho, defina os dados do elemento <app:draft> como a string no e atualize a postagem. A recuperação e a atualização de posts são abordadas nas próximas duas seções.

Observação: para mais informações sobre o protocolo de publicação do Atom, incluindo os namespaces <app:control> e <app:draft>, consulte o RFC 5023.

Como recuperar postagens

As seções a seguir descrevem como recuperar uma lista de postagens do blog, com e sem parâmetros de consulta.

É possível consultar um feed público do Blogger sem autenticação. Portanto, não é necessário definir o parâmetro de autorização ao extrair postagens de um blog público.

Recuperação de todas as postagens do blog

Para recuperar as postagens do usuário, envie uma solicitação HTTP GET para o URL do feed do blog. O Blogger retorna um feed contendo as entradas de blog adequadas. Por exemplo, para receber uma lista de postagens do blog para liz@gmail.com, envie a seguinte solicitação HTTP para o Blogger (com o valor apropriado no lugar de blogID, é claro):

GET http://www.blogger.com/feeds/blogID/posts/default

O Blogger retorna um código de status HTTP 200 OK e um feed Atom 1.0 padrão contendo as postagens do blog.

Confira a seguir um exemplo de feed de um blog com apenas uma postagem. Perceba que editamos um pouco esse exemplo para que ele fique um pouco mais legível para humanos. Um feed real do Blogger contém IDs e URLs reais.

<feed xmlns='http://www.w3.org/2005/Atom'>
  <id>tag:blogger.com,1999:blog-blogID</id>
  <updated>2006-11-08T18:10:23.020-08:00</updated>
  <title type='text'>Lizzy's Diary</title>
  <link rel='alternate' type='text/html'
    href='http://blogName.blogspot.com/index.html'>
  </link>
  <link rel='http://schemas.google.com/g/2005#feed'
    type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/posts/default'>
  </link>
  <link rel='self' type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/posts/default'>
  </link>
  <author>
    <name>Elizabeth Bennet</name>
    <email>noreply@blogger.com</email>
    <uri>http://www.blogger.com/profile/profileID</uri>
  </author>
  <generator version='7.00' uri='http://www2.blogger.com'>Blogger</generator>
  <entry>
    <id>tag:blogger.com,1999:blog-blogID.post-postID</id>
    <published>2006-11-08T18:10:00.000-08:00</published>
    <updated>2006-11-08T18:10:14.954-08:00</updated>
    <title type='text'>Quite disagreeable</title>
    <content type='html'>&lt;p&gt;I met Mr. Bingley's friend Mr. Darcy
      this evening. I found him quite disagreeable.&lt;/p&gt;</content>
    <link rel='alternate' type='text/html'
      href='http://blogName.blogspot.com/2006/11/quite-disagreeable.html'>
    </link>
    <link rel='self' type='application/atom+xml'
      href='http://blogName.blogspot.com/feeds/posts/default/postID'>
    </link>
    <link rel='edit' type='application/atom+xml'
      href='http://www.blogger.com/feeds/blogID/posts/default/postID'>
    </link>
    <author>
      <name>Elizabeth Bennet</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/profileID</uri>
    </author>
  </entry>
</feed>

Como recuperar postagens usando parâmetros de consulta

A API Blogger Data permite solicitar um conjunto de entradas que correspondem a critérios especificados, como solicitar postagens do blog publicadas ou atualizadas em um determinado período.

Por exemplo, para enviar uma consulta de período, adicione os parâmetros published-min e published-max ao URL da solicitação. Para receber todas as entradas do blog criadas entre 16 de março de 2008 e 24 de março de 2008, envie uma solicitação HTTP para o URL do feed do blog:

GET http://www.blogger.com/feeds/blogID/posts/default?published-min=2008-03-16T00:00:00&published-max=2008-03-24T23:59:59

Quando você envia essa solicitação GET, o Blogger retorna um código de status HTTP 200 OK e um feed contendo as postagens do blog que foram criadas no período especificado.

Os parâmetros updated-min e updated-max também podem ser usados para atualizar todas as entradas do blog em um determinado intervalo. No entanto, esses parâmetros são ignorados, a menos que o parâmetro orderby também seja definido como updated.

A API Data do Blogger é compatível com os seguintes parâmetros de consulta:

alt
O tipo de feed a ser retornado, como atom (padrão) ou rss.
/category
Especifica categorias (também conhecidas como rótulos) para filtrar os resultados do feed. Por exemplo, http://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie retorna entradas com os rótulos Fritz e Laurie.
max-results
O número máximo de entradas a serem retornadas.
orderby
A ordem em que as entradas serão retornadas, como lastmodified (padrão), starttime ou updated.
published-min, published-max
Os limites das datas de publicação da entrada.
start-index
O índice com base em 1 do primeiro resultado a ser recuperado (para paginação).
updated-min, updated-max
Os limites nas datas de atualização da entrada. Esses parâmetros de consulta são ignorados, a menos que o parâmetro orderby seja definido como updated.

Para mais informações sobre parâmetros de consulta, consulte o Guia de referência da API Data do Blogger e o Guia de referência das APIs Data do Google.

Como atualizar postagens

Para atualizar uma postagem de blog, primeiro recupere a entrada que você quer atualizar, modifique-a e envie uma solicitação PUT com a entrada atualizada no corpo da mensagem para o URL de edição da postagem. Verifique se o valor de <id> na entrada PUT corresponde exatamente ao <id> da entrada existente.

O URL de edição está destacado na seguinte entrada:

<entry>
  <id>tag:blogger.com,1999:blog-blogID.post-postID</id>
  <published>2006-11-08T18:10:00.000-08:00</published>
  <updated>2006-11-08T18:10:14.954-08:00</updated>
  <title type='text'>Quite disagreeable</title>
  <content type='html'>&lt;p&gt;I met Mr. Bingley's friend Mr. Darcy
    this evening. I found him quite disagreeable.&lt;/p&gt;</content>
  <link rel='alternate' type='text/html'
    href='http://blogName.blogspot.com/2006/11/quite-disagreeable.html'>
  </link>
  <link rel='self' type='application/atom+xml'
    href='http://blogName.blogspot.com/feeds/posts/default/postID'>
  </link>
  <link rel='edit' type='application/atom+xml'
    href='http://www.blogger.com/feeds/blogID/posts/default/postID'>
  </link>
  <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Bingley" />
  <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" />
  <author>
    <name>Elizabeth Bennet</name>
    <email>noreply@blogger.com</email>
    <uri>http://www.blogger.com/profile/profileID</uri>
  </author>
</entry>

IMPORTANTE: para garantir a compatibilidade futura, ao PUT uma entrada atualizada, preserve todos os XMLs que estavam presentes quando você extraiu a entrada do Blogger. Caso contrário, quando implementarmos novos recursos e incluirmos elementos <new-awesome-feature> no feed, o cliente não os retornará e os usuários não vão conseguir aproveitar. As bibliotecas de cliente da API Data do Google lidam com isso corretamente. Se você estiver usando uma delas, está tudo certo.

Observação: no momento, não é possível modificar os dados do autor associados às postagens.

Dica de solução de problemas: alguns firewalls bloqueiam mensagens PUT HTTP. Para contornar esse problema, inclua um cabeçalho X-HTTP-Method-Override: PUT em uma solicitação POST. Para mais detalhes, consulte o documento Noções básicas do protocolo da API Google Data.

Como excluir postagens

Para excluir uma postagem, envie uma solicitação DELETE para o URL de edição dela. Esse é o mesmo URL usado para atualizar as postagens.

Dica de solução de problemas: alguns firewalls bloqueiam mensagens HTTP DELETE. Para contornar esse problema, inclua um cabeçalho X-HTTP-Method-Override: DELETE em uma solicitação POST. Para mais detalhes, consulte o documento Noções básicas do protocolo da API Google Data.

Comentários

A API Data do Blogger permite criar, recuperar e excluir comentários. Não é possível atualizar comentários nem usar esse recurso na interface da Web.

Como criar comentários

Para postar um comentário, crie um elemento <entry> do Atom, como este:

  <entry xmlns='http://www.w3.org/2005/Atom'>
    <title type="text">This is my first comment</title>
    <content type="html">This is my first comment</content>
  </entry>

Para publicar esse comentário, coloque seu elemento <entry> do Atom no corpo de uma nova solicitação POST usando o tipo de conteúdo application/atom+xml. Em seguida, envie a solicitação POST para o URL do Blogger apropriado:

POST http://www.blogger.com/feeds/blogID/postID/comments/default

Observação: no momento, só é possível postar comentários em um blog que pertence ao usuário autenticado.

Observação: no momento, não é possível definir um autor personalizado para comentários. Todos os novos comentários vão aparecer como se tivessem sido criados pelo usuário autenticado no momento.

Como recuperar comentários

Para recuperar os comentários de uma postagem específica, envie um GET para o URL do feed de comentários dela:

GET http://www.blogger.com/feeds/blogID/postID/comments/default

Ou você pode receber os comentários de todas as postagens usando o URL do feed de comentários do blog:

GET http://www.blogger.com/feeds/blogID/comments/default

Essas solicitações retornam um feed de comentários como este:

<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/"
         xmlns:thr="http://purl.org/syndication/thread/1.0">
  <id>tag:blogger.com,1999:blog-blogID.post-postID.comment-commentID</id>
  <updated>2007-04-04T21:56:29.803-07:00</updated>
  <title type="text">My Blog : Time to relax</title>
  <link rel="alternate" type="text/html" href="http://blogName.blogspot.com/2007/04/first-post.html"/>
  <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blogName.blogspot.com/feeds/postID/comments/default"/>
  <link rel="self" type="application/atom+xml" href="http://blogName.blogspot.com/feeds/postID/comments/default"/>
  <author>
    <name>Blog Author name</name>
  </author>
  <generator version="7.00" uri="http://www2.blogger.com">Blogger</generator>
  <openSearch:totalResults>1</openSearch:totalResults>
  <openSearch:startIndex>1</openSearch:startIndex>
  <entry>
    <id>tag:blogger.com,1999:blog-blogID.post-commentID</id>
    <published>2007-04-04T21:56:00.000-07:00</published>
    <updated>2007-04-04T21:56:29.803-07:00</updated>
    <title type="text">This is my first comment</title>
    <content type="html">This is my first comment</content>
    <link rel="alternate" type="text/html" href="http://blogName.blogspot.com/2007/04/first-post.html#commentID"/>
    <link rel="self" type="application/atom+xml" href="http://blogName.blogspot.com/feeds/postID/comments/default/commentID"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/blogID/postID/comments/default/commentID"/>
    <thr:in-reply-to href="http://blogName.blogspot.com/2007/04/first-post.html" 
                     ref="tag:blogger.com,1999:blog-blogID.post-postID" 
                     source="http://www.blogger.com/feeds/posts/default/blogID"
                     type="text/html"/>
    <author>
      <name>Blog Author name</name>
      <email>blog_author@gmail.com</email>
      <uri>http://www.blogger.com/profile/userID</uri>
    </author>
    <thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' 
         href='http://blogName.blogspot.com/2007/04/first-post.html' 
         ref='tag:blogger.com,1999:blog-blogID.post-postID' 
         source='http://blogName.blogspot.com/feeds/posts/default/postID'
         type='text/html' />
  </entry>
</feed>

Excluir comentários

Para excluir um comentário, envie uma solicitação DELETE para o URL de edição do comentário. Esse URL está destacado no feed de comentários acima.

Formato de exportação

O Blogger permite que os usuários exportem e importem os blogs usando um arquivo de exportação do Blogger. Esse arquivo de exportação contém todas as postagens e comentários de um blog. O formato do arquivo exportado é exatamente o mesmo formato Atom descrito nas seções sobre como recuperar postagens e comentários. Esse arquivo de exportação vai conter o conteúdo do feed de postagens e do feed de comentários combinados em um documento.

Para exportar ou importar dados do blog usando o formato de exportação, acesse a página Configurações do blog. Para recuperar o arquivo de exportação de um blog usando a API Data, use o seguinte URL:

GET http://www.blogger.com/feeds/blogID/archive

Para importar o arquivo exportado, crie uma solicitação POST para o URL abaixo com o conteúdo do arquivo exportado como dados de solicitação e application/atom+xml como o tipo de conteúdo:

POST http://www.blogger.com/feeds/blogID/archive/full

Nenhum dos URLs acima oferece suporte a parâmetros de consulta. Ambas as solicitações também precisam conter informações de autenticação, e apenas os administradores do blog poderão importar/exportar o blog usando esses URLs de feed.

Observação: se você estiver criando seu próprio arquivo de exportação do Blogger, há uma restrição em relação à ordem das entradas de postagens e comentários. O arquivo de exportação do Blogger vai listar todas as postagens primeiro e depois todos os comentários. É permitido intercalar postagens e comentários, desde que a entrada do comentário seja posterior à postagem.

Para mais informações sobre como o Blogger usa o formato Atom no arquivo de exportação, consulte o guia de referência do protocolo.

Voltar ao início