API JSON Blogger: utilisation de l'API

Ce document explique comment utiliser les fonctionnalités courantes de l'API JSON de Blogger avec le style d'appel RESTful.

Contenus

Introduction

Ce document est destiné aux développeurs qui souhaitent créer des applications capables d'interagir avec l'API JSON de Blogger. Blogger est un outil permettant de créer des sites Web qui permettent aux internautes de publier leurs pensées de manière continue.

Si vous ne connaissez pas les concepts de Blogger, consultez la page Premiers pas avant de commencer à coder.

Autoriser les requêtes et identifier votre application

Chaque requête envoyée à l'API JSON de Blogger doit permettre à Google d'identifier votre application. Il existe deux façons d'identifier votre application: à l'aide d'un jeton OAuth 2.0 (qui autorise également la requête) et/ou de la clé API de l'application. Voici comment déterminer les options à utiliser:

  • Si la requête nécessite une autorisation (par exemple, une requête concernant des données privées), l'application doit fournir un jeton OAuth 2.0. L'application peut également fournir la clé API, mais ce n'est pas obligatoire.
  • Si la requête ne nécessite pas d'autorisation (telle qu'une requête de données publiques), l'application doit fournir la clé API ou un jeton OAuth 2.0, ou les deux, selon l'option qui vous convient le mieux.

À propos des protocoles d'autorisation

Votre application doit utiliser OAuth 2.0 pour autoriser les requêtes. Les autres protocoles d'autorisation ne sont pas acceptés.

Remarque : L'API JSON de Blogger ne permet pas de se connecter en même temps pour une demande d'accès aux données (hybride) ou de délégation d'autorité à l'échelle du domaine (2LO).

Autoriser les requêtes avec OAuth 2.0

Les requêtes adressées à l'API JSON de Blogger pour des données utilisateur non publiques doivent être autorisées par un utilisateur authentifié.

Les détails de la procédure d'autorisation (ou de "flux") pour OAuth 2.0 varient légèrement selon le type d'application que vous écrivez. Le processus général suivant s'applique à tous les types d'applications:

  1. Lorsque vous créez votre application, vous l'enregistrez auprès de Google. Google fournit ensuite les informations dont vous avez besoin, par exemple un ID client et un code secret du client.
  2. Activez l'API JSON de Blogger dans le volet "Services" de la console des API Google. Si elle n'est pas répertoriée dans la console, ignorez cette étape.
  3. Lorsque votre application a besoin d'accéder aux données utilisateur, elle demande à Google un champ d'application d'accès particulier.
  4. Google affiche alors une boîte de dialogue OAuth invitant l'utilisateur à autoriser votre application à demander certaines de ses données.
  5. Si l'utilisateur accepte, Google attribue à votre application un jeton d'accès de courte durée.
  6. Votre application demande les données utilisateur, en associant le jeton d'accès à la requête.
  7. Si Google détermine que votre requête et le jeton sont valides, les données demandées sont renvoyées.

Certains flux comportent des étapes supplémentaires, comme l'utilisation de jetons d'actualisation pour acquérir de nouveaux jetons d'accès. Pour en savoir plus sur les flux pour divers types d'applications, consultez la documentation OAuth 2.0 de Google.

Voici les informations relatives au champ d'application OAuth 2.0 pour l'API JSON de Blogger:

https://www.googleapis.com/auth/blogger

Pour demander l'accès via OAuth 2.0, votre application a besoin du champ d'application ainsi que des informations fournies par Google lors de son inscription (l'ID client et/ou le code secret du client, par exemple).

Conseil:Les bibliothèques clientes des API Google peuvent gérer une partie de la procédure d'autorisation. Elles sont disponibles pour de nombreux langages de programmation. Pour en savoir plus, consultez la page Bibliothèques et exemples.

Obtenir et utiliser une clé API

Les requêtes adressées à l'API JSON de Blogger pour des données publiques doivent être accompagnées d'un identifiant, qui peut être une clé API ou un jeton d'authentification.

Pour obtenir une clé API, accédez à la console des API. Dans le volet "Services", activez [api_name]. Si les conditions d'utilisation s'affichent, lisez-les et acceptez-les.

Ensuite, accédez au volet Accès à l'API. La clé API se trouve vers le bas de ce volet, dans la section intitulée "Accès API simple".

Une fois que vous disposez d'une clé API, votre application peut ajouter le paramètre de requête key=yourAPIKey à toutes les URL de requête.

La clé API peut s'intégrer aux URL en toute sécurité et ne nécessite pas d'encodage.

Utilisation des blogs

Récupérer un blog

Vous pouvez récupérer les informations d'une ressource de blogs en envoyant une requête HTTP GET à l'URI du blog. L'URI d'une ressource Blogs a le format suivant:

https://www.googleapis.com/blogger/v2/blogs/blogId

Demande

Par exemple :

GET https://www.googleapis.com/blogger/v2/blogs/2399953&key=YOUR-API-KEY

Étant donné qu'un utilisateur n'a pas besoin d'être authentifié pour récupérer un blog public, vous n'avez pas besoin de fournir l'en-tête HTTP Authorization avec cette requête GET. Toutefois, si vous ne fournissez pas cet en-tête, vous devez fournir une clé API.

Blogger dispose également de blogs privés qui nécessitent une authentification.

Réponse

Si la requête aboutit, le serveur répond avec un code d'état HTTP 200 OK et les données de blog:

200 OK

{
  "kind": "blogger#blog",
  "id": "2399953",
  "name": "Blogger Buzz",
  "description": "The Official Buzz from Blogger at Google",
  "published": "2007-04-23T22:17:29.261Z",
  "updated": "2011-08-02T06:01:15.941Z",
  "url": "http://buzz.blogger.com/",
  "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953",
  "posts": {
    "totalItems": 494,
    "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts"
  },
  "pages": {
    "totalItems": 2,
    "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/pages"
  },
  "locale": {
    "language": "en",
    "country": "",
    "variant": ""
  }
}

Récupérer les blogs d'un utilisateur

Vous pouvez récupérer la liste des blogs d'un utilisateur en envoyant une requête HTTP GET à l'URI de la collection de blogs:

https://www.googleapis.com/blogger/v2/users/userId/blogs

Demande

Voici un exemple de requête GET qui répertorie les blogs d'un utilisateur:

GET https://www.googleapis.com/blogger/v2/users/self/blogs
Authorization: /* OAuth 2.0 token here */

Remarque : L'utilisateur doit être authentifié pour lister ses propres blogs. Vous devez donc fournir l'en-tête HTTP Authorization avec la requête GET.

Réponse

Si la requête aboutit, le serveur renvoie un code d'état HTTP 200 OK et la représentation complète de la liste des blogs de l'utilisateur:

200 OK

{
  "kind": "blogger#blogList",
  "items": [
    {
      "kind": "blogger#blog",
      "id": "4967929378133675647",
      "name": "Brett's Test Blawg",
      "description": "",
      "published": "2010-10-06T23:33:31.662Z",
      "updated": "2011-08-08T06:50:02.005Z",
      "url": "http://brettmorgan-test-blawg.blogspot.com/",
      "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647",
      "posts": {
        "totalItems": 13,
        "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/posts"
      },
      "pages": {
        "totalItems": 1,
        "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages"
      },
      "locale": {
        "language": "en",
        "country": "",
        "variant": ""
      }
    }
  ]
}

Utiliser les posts

Récupérer les articles d'un blog

Vous pouvez récupérer la liste des articles d'un blog donné en envoyant une requête GET à l'URI de la collection d'articles. L'URI d'une collection d'articles a le format suivant:

https://www.googleapis.com/blogger/v2/blogs/blogId/posts

Demande

Par exemple :

GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts&key=YOUR-API-KEY

Étant donné qu'un utilisateur n'a pas besoin d'être authentifié pour récupérer les articles d'un blog public, vous n'avez pas besoin de fournir l'en-tête HTTP Authorization avec cette requête GET. Toutefois, si vous ne fournissez pas cet en-tête, vous devez fournir une clé API.

Blogger dispose également de blogs privés qui nécessitent une authentification.

Réponse

Si la requête aboutit, le serveur répond avec un code d'état HTTP 200 OK et la liste des posts:

200 OK

{
  "kind": "blogger#postList",
  "nextPageToken": "CgkIChiAkceVjiYQ0b2SAQ",
  "prevPageToken": "CgkIChDBwrK3mCYQ0b2SAQ",
  "items": [
    {
      "kind": "blogger#post",
      "id": "7706273476706534553",
      "blog": {
        "id": "2399953"
      },
      "published": "2011-08-01T19:58:00.000Z",
      "updated": "2011-08-01T19:58:51.947Z",
      "url": "http://buzz.blogger.com/2011/08/latest-updates-august-1st.html",
      "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553",
      "title": "Latest updates, August 1st",
      "content": "elided for readability",
      "author": {
        "id": "401465483996",
        "displayName": "Brett Wiltshire",
        "url": "http://www.blogger.com/profile/01430672582309320414",
        "image": {
          "url": "http://4.bp.blogspot.com/_YA50adQ-7vQ/S1gfR_6ufpI/AAAAAAAAAAk/1ErJGgRWZDg/S45/brett.png"
         }
      },
      "replies": {
        "totalItems": "0",
        "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553/comments"
      }
    },
    {
      "kind": "blogger#post",
      "id": "6069922188027612413",
      elided for readability
    }
  ]
}

Récupérer un post spécifique

Vous pouvez récupérer un article spécifique d'un blog en envoyant une requête GET à l'URI de la ressource Posts. L'URI d'une ressource Posts est au format suivant:

https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId

Demande

Par exemple :

GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553&key=YOUR-API-KEY

Étant donné qu'un utilisateur n'a pas besoin d'être authentifié pour récupérer les articles d'un blog public, vous n'avez pas besoin de fournir l'en-tête HTTP Authorization avec cette requête GET. Toutefois, si vous ne fournissez pas cet en-tête, vous devez fournir une clé API.

Blogger dispose également de blogs privés qui nécessitent une authentification.

Réponse

Si la requête aboutit, le serveur renvoie un code d'état HTTP 200 OK et le contenu du post:

200 OK

{
  "kind": "blogger#post",
  "id": "7706273476706534553",
  "blog": {
    "id": "2399953"
  },
  "published": "2011-08-01T19:58:00.000Z",
  "updated": "2011-08-01T19:58:51.947Z",
  "url": "http://buzz.blogger.com/2011/08/latest-updates-august-1st.html",
  "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553",
  "title": "Latest updates, August 1st",
  "content": "elided for readability",
  "author": {
    "id": "401465483996",
    "displayName": "Brett Wiltshire",
    "url": "http://www.blogger.com/profile/01430672582309320414",
    "image": {
      "url": "http://4.bp.blogspot.com/_YA50adQ-7vQ/S1gfR_6ufpI/AAAAAAAAAAk/1ErJGgRWZDg/S45/brett.png"
    }
  },
  "replies": {
    "totalItems": "0",
    "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553/comments"
  }
}

Utiliser les commentaires

Récupération des commentaires d'un post

Vous pouvez récupérer la liste des commentaires d'un post en envoyant une requête GET à l'URI de collecte des commentaires. L'URI d'une collection de commentaires a le format suivant:

https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments

Demande

Par exemple :

GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments&key=YOUR-API-KEY

Étant donné qu'un utilisateur n'a pas besoin d'être authentifié pour récupérer les commentaires d'un blog public, vous n'avez pas besoin de fournir l'en-tête HTTP Authorization avec cette requête GET. Toutefois, si vous ne fournissez pas cet en-tête, vous devez fournir une clé API.

Blogger dispose également de blogs privés qui nécessitent une authentification.

Réponse

Si la requête aboutit, le serveur répond avec un code d'état HTTP 200 OK et la liste des commentaires:

200 OK

{
  "kind": "blogger#commentList",
  "nextPageToken": "CgkIFBDwjvDXlyYQ0b2SARj9mZe9n8KsnlQ",
  "prevPageToken": "CgkIFBisvMGRlyYQ0b2SARj9mZe9n8KsnlQ",
  "items": [
    {
       "kind": "blogger#comment",
       "id": "9200761938824362519",
       "post": {
         "id": "6069922188027612413"
       },
       "blog": {
         "id": "2399953"
       },
       "published": "2011-07-28T19:19:57.740Z",
       "updated": "2011-07-28T21:29:42.015Z",
       "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519",
       "content": "elided",
       "author": {
         "id": "530579030283",
         "displayName": "elided",
         "url": "elided",
         "image": {
           "url": "elided"
         }
       }
    },
    {
      "kind": "blogger#comment",
      "id": "400101178920857170",
      elided for readability
    }
  ]
}

Récupérer un commentaire spécifique

Vous pouvez récupérer un commentaire spécifique d'un post en envoyant une requête GET à l'URI de la ressource Commentaires. L'URI d'une ressource Commentaires a le format suivant:

https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments/commentId

Demande

Par exemple :

GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519&key=YOUR-API-KEY

Étant donné qu'un utilisateur n'a pas besoin d'être authentifié pour récupérer les commentaires d'un blog public, vous n'avez pas besoin de fournir l'en-tête HTTP Authorization avec cette requête GET. Toutefois, si vous ne fournissez pas cet en-tête, vous devez fournir une clé API.

Blogger dispose également de blogs privés qui nécessitent une authentification.

Réponse

Si la requête aboutit, le serveur répond avec un code d'état HTTP 200 OK et les données de commentaire:

200 OK

{
  "kind": "blogger#comment",
  "id": "9200761938824362519",
  "post": {
    "id": "6069922188027612413"
  },
  "blog": {
    "id": "2399953"
  },
  "published": "2011-07-28T19:19:57.740Z",
  "updated": "2011-07-28T21:29:42.015Z",
  "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519",
  "content": "elided",
  "author": {
    "id": "530579030283",
    "displayName": "elided",
    "url": "elided",
    "image": {
      "url": "elided"
    }
  }
}

Utiliser des pages

Récupérer des pages pour un blog

Vous pouvez récupérer la liste des pages d'un blog en envoyant une requête GET à l'URI de la collection de pages. L'URI d'une collection de pages se présente comme suit:

https://www.googleapis.com/blogger/v2/blogs/blogId/pages

Demande

Par exemple :

GET https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages&key=YOUR-API-KEY

Étant donné qu'un utilisateur n'a pas besoin d'être authentifié pour récupérer les pages à partir d'un blog public, vous n'avez pas besoin de fournir l'en-tête HTTP Authorization avec cette requête GET. Toutefois, si vous ne fournissez pas cet en-tête, vous devez fournir une clé API.

Blogger dispose également de blogs privés qui nécessitent une authentification.

Réponse

Si la requête aboutit, le serveur renvoie un code d'état HTTP 200 OK et la liste des pages:

200 OK

{
  "kind": "blogger#pageList",
  "items": [
    {
      "kind": "blogger#page",
      "id": "273541696466681878",
      "blog": {
        "id": "4967929378133675647"
      },
      "published": "2011-07-14T16:16:00.000Z",
      "updated": "2011-07-14T16:16:23.602Z",
      "url": "http://brettmorgan-test-blawg.blogspot.com/p/static-content.html",
      "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878",
      "title": "Static Content",
      "content": "elided for readability",
      "author": {
        "id": "901569848744",
        "displayName": "brett",
        "url": "http://www.blogger.com/profile/16258312240222542576",
        "image": {
          "url": "https://resources.blogblog.com/img/b16-rounded.gif"
        }
      }
    }
  ]
}

Récupérer une page spécifique

Vous pouvez récupérer une page spécifique d'un blog en envoyant une requête GET à l'URI de la ressource Pages. L'URI d'une ressource Pages est au format suivant:

https://www.googleapis.com/blogger/v2/blogs/blogId/pages/pageId

Demande

Par exemple :

GET https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878&key=YOUR-API-KEY

Étant donné qu'un utilisateur n'a pas besoin d'être authentifié pour récupérer les pages à partir d'un blog public, vous n'avez pas besoin de fournir l'en-tête HTTP Authorization avec cette requête GET. Toutefois, si vous ne fournissez pas cet en-tête, vous devez fournir une clé API.

Blogger dispose également de blogs privés qui nécessitent une authentification.

Réponse

Si la requête aboutit, le serveur renvoie un code d'état HTTP 200 OK et les données de la page:

200 OK

{
  "kind": "blogger#page",
  "id": "273541696466681878",
  "blog": {
    "id": "4967929378133675647"
  },
  "published": "2011-07-14T16:16:00.000Z",
  "updated": "2011-07-14T16:16:23.602Z",
  "url": "http://brettmorgan-test-blawg.blogspot.com/p/static-content.html",
  "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878",
  "title": "Static Content",
  "content": "elided for readability",
  "author": {
    "id": "901569848744",
    "displayName": "brett",
    "url": "http://www.blogger.com/profile/16258312240222542576",
    "image": {
      "url": "https://resources.blogblog.com/img/b16-rounded.gif"
    }
  }
}

Travailler avec les utilisateurs

Récupérer un utilisateur

Vous pouvez récupérer les informations d'un utilisateur en envoyant une requête HTTP GET à l'URI de la ressource Utilisateurs:

https://www.googleapis.com/blogger/v2/users/userId

Demande

Voici un exemple de requête GET qui répertorie les blogs d'un utilisateur:

GET https://www.googleapis.com/blogger/v2/users/self
Authorization: /* OAuth 2.0 token here */

Remarque: L'utilisateur doit être authentifié pour lister ses propres informations. Vous devez donc fournir l'en-tête HTTP Authorization avec la requête GET.

Réponse

Si la requête aboutit, le serveur répond avec un code d'état HTTP 200 OK et un lien vers la liste des blogs de l'utilisateur:

200 OK

{
  "kind": "blogger#user",
  "id": "901569848744",
  "selfLink": "https://www.googleapis.com/blogger/v2/users/901569848744",
  "blogs": {
    "selfLink": "https://www.googleapis.com/blogger/v2/users/901569848744/blogs"
  }
}

Paramètres de requête standards

Les paramètres de requête suivants peuvent être utilisés avec toutes les méthodes et toutes les ressources des API Blogger.

Les paramètres de requête qui s'appliquent à toutes les opérations des API de Blogger sont indiqués sur la page Paramètres système.