Blogger JSON API: API 사용

중요: 2024년 9월 30일부터 v2.0 JSON API에 대한 지원이 중단됩니다. 기능을 계속 사용하려면 v2.0 JSON API를 사용하는 애플리케이션을 최신 API 버전으로 업데이트하세요. 최신 버전의 경우 왼쪽 탐색 메뉴의 링크를 사용하세요.

이 문서에서는 RESTful 호출 스타일을 사용하여 Blogger JSON API의 공통 기능을 사용하는 방법을 설명합니다.

목차

소개

이 문서는 Blogger JSON API와 상호작용할 수 있습니다. Blogger는 사람들이 자신의 생각을 온라인 콘텐츠에 지속적으로 게시할 수 있는 기반으로 합니다

Blogger 개념에 익숙하지 않은 경우 코딩을 시작하기 전에 시작하기를 읽어야 합니다.

요청 승인 및 애플리케이션 식별

애플리케이션에서 Blogger JSON API로 전송하는 모든 요청은 Google에 애플리케이션을 식별할 수 있습니다 광고 수익을 식별하는 방법에는 OAuth 2.0 토큰( 도 요청을 승인) 및/또는 애플리케이션의 API 키를 사용합니다. 이 옵션 중 무엇을 사용해야 할지를 결정하는 방법은 다음과 같습니다. 사용:

  • 요청에 승인이 필요한 경우(예: 개인의 비공개 데이터 요청) 애플리케이션은 OAuth 2.0 토큰을 요청과 함께 제공해야 합니다. 애플리케이션은 API 키를 제공할 수도 있지만 그럴 필요는 없습니다.
  • 요청에 승인이 필요하지 않은 경우(예: 공개 데이터 요청) 애플리케이션은 API 키 또는 OAuth 2.0 토큰 중 하나 또는 둘 다를 편의에 따라 제공해야 합니다.

승인 프로토콜 정보

요청을 승인하려면 애플리케이션에서 OAuth 2.0을 사용해야 합니다. 다른 승인 프로토콜은 지원되지 않습니다.

참고: Blogger JSON API는 현재 로깅을 지원하지 않습니다. 데이터 액세스 (하이브리드) 또는 도메인 전체 요청과 동시에 권한 위임 (2LO).

OAuth 2.0으로 요청 승인

Blogger JSON API에 대한 비공개 사용자 데이터 요청은 승인되어야 합니다. 확인할 수 있습니다

승인 절차의 세부정보 또는 '흐름' OAuth 2.0의 경우 서로 다릅니다. 작성 중인 응용 프로그램의 종류에 따라 약간 다를 수 있습니다 다음 일반적인 프로세스는 모든 애플리케이션 유형에 적용됩니다.

  1. 애플리케이션을 만들 때 Google에 등록합니다. Google 이렇게 하면 나중에 필요한 정보(예: 클라이언트 ID, 보안 비밀.
  2. Google API 콘솔의 서비스 창에서 Blogger JSON API를 활성화합니다. 콘솔에 표시되지 않으면 이 단계를 건너뛰세요.
  3. 애플리케이션에서 사용자 데이터에 액세스해야 하는 경우 Google에 특정 액세스 범위를 요청합니다.
  4. Google에서 사용자에게 애플리케이션이 일부 데이터를 요청하도록 승인할 것인지 물어보는 OAuth 대화상자를 표시합니다.
  5. 사용자가 승인하면 Google에서 애플리케이션에 제한 시간이 있는 액세스 토큰을 제공합니다.
  6. 애플리케이션에서 액세스 토큰을 첨부하여 사용자 데이터를 요청합니다.
  7. Google에서 요청과 토큰이 유효하다고 판단하면 요청된 데이터를 반환합니다.

일부 흐름에는 새 액세스 토큰을 얻기 위해 갱신 토큰을 사용하는 등의 추가 단계가 포함됩니다. 자세한 내용은 OAuth 2.0 문서를 참조하세요.

다음은 Blogger JSON API의 OAuth 2.0 범위 정보입니다.

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

OAuth 2.0을 사용하여 액세스를 요청하려면 애플리케이션에 범위 정보와 함께 애플리케이션 등록 시 Google에서 제공하는 정보(예: 클라이언트 ID, 클라이언트 비밀번호)가 필요합니다.

도움말: Google API 클라이언트 라이브러리는 일부 승인 과정을 대신 처리할 수 있습니다. 이러한 라이브러리는 다양한 프로그래밍 언어로 제공됩니다. 자세한 내용은 라이브러리 및 샘플 페이지를 참고하세요.

API 키 획득 및 사용

Blogger JSON API에 대한 공개 데이터 요청에는 식별자가 함께 제공되어야 합니다. 식별자는 API 키 또는 인증 토큰일 수 있습니다.

API 키를 얻으려면 API 콘솔을 방문하세요. 서비스 창에서 [api_name]을 활성화합니다. 서비스 약관이 표시되면 약관을 읽고 동의합니다.

그런 다음 API 액세스 창으로 이동합니다. API 키는 창 하단 근처에 있습니다. '간단한 API 액세스'라는 제목의 API를 사용할 수 있습니다

API 키가 있으면 애플리케이션은 쿼리 매개변수를 추가할 수 있습니다. 모든 요청에 대해 key=yourAPIKey URL을 클릭합니다.

API 키는 URL에 포함하기에 안전합니다. 인코딩이 전혀 필요하지 않습니다.

블로그 관리하기

블로그 검색

블로그의 URI에 HTTP GET 요청을 전송하여 특정 블로그 리소스에 대한 정보를 가져올 수 있습니다. 블로그 리소스의 URI 형식은 다음과 같습니다.

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

요청

예를 들면 다음과 같습니다.

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

사용자가 공개 블로그를 검색하기 위해 인증할 필요가 없으므로 이 GET 요청에 Authorization HTTP 헤더를 제공할 필요가 없습니다. 하지만 이 헤더를 제공하지 않으면 API 키를 제공해야 합니다.

또한 Blogger에는 있습니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드와 블로그 데이터를 응답으로 반환합니다.

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": ""
  }
}

사용자 블로그 검색

블로그 모음 URI에 HTTP GET 요청을 전송하여 사용자의 블로그 목록을 가져올 수 있습니다.

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

요청

다음은 GET 요청을 보여주는 예입니다. 사용자 블로그:

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

참고: 사용자는 반드시 자신의 블로그를 나열하므로 Authorization HTTP 헤더를 GET 요청으로 대체합니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드 및 사용자 목록의 전체 표현식 블로그:

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": ""
      }
    }
  ]
}

게시물 관리하기

블로그에서 게시물 가져오기

특정 블로그에서 게시물 목록을 검색하려면 게시물 컬렉션 URI에 대한 GET 요청입니다. 게시물의 URI 컬렉션의 형식은 다음과 같습니다.

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

요청

예를 들면 다음과 같습니다.

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

공개 블로그에서 게시물을 검색하기 위해 사용자를 인증할 필요가 없으므로 다음과 함께 Authorization HTTP 헤더를 제공할 필요가 없습니다. GET 요청; 이 헤더를 제공하지 않으면 API 키를 제공해야 합니다.

또한 Blogger에는 있습니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드 및 게시물 목록:

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
    }
  ]
}

특정 게시물 검색

블로그에서 특정 게시물을 검색하려면 Posts 리소스 URI에 대한 GET 요청입니다. 게시물 리소스의 URI 형식은 다음과 같습니다.

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

요청

예를 들면 다음과 같습니다.

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

공개 블로그에서 게시물을 검색하기 위해 사용자를 인증할 필요가 없으므로 다음과 함께 Authorization HTTP 헤더를 제공할 필요가 없습니다. GET 요청; 이 헤더를 제공하지 않으면 API 키를 제공해야 합니다.

또한 Blogger에는 있습니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드 및 게시물의 콘텐츠:

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"
  }
}

댓글 활용하기

게시물의 댓글 가져오기

게시물의 댓글 목록을 검색하려면 댓글 컬렉션 URI에 대한 GET 요청입니다. 댓글 모음의 URI 형식은 다음과 같습니다.

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

요청

예를 들면 다음과 같습니다.

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

사용자가 공개 블로그에서 댓글을 가져오기 위해 인증할 필요가 없으므로 이 GET 요청에 Authorization HTTP 헤더를 제공할 필요가 없습니다. 하지만 이 헤더를 제공하지 않으면 API 키를 제공해야 합니다.

Blogger에는 인증이 필요한 비공개 블로그도 있습니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드 및 댓글 목록:

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
    }
  ]
}

특정 댓글 검색

게시물에서 특정 댓글을 검색하려면 Comments 리소스 URI에 대한 GET 요청입니다. 댓글 리소스의 URI 형식은 다음과 같습니다.

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

요청

예를 들면 다음과 같습니다.

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

사용자가 공개 블로그에서 댓글을 가져오기 위해 인증할 필요가 없으므로 이 GET 요청에 Authorization HTTP 헤더를 제공할 필요가 없습니다. 하지만 이 헤더를 제공하지 않으면 API 키를 제공해야 합니다.

Blogger에는 인증이 필요한 비공개 블로그도 있습니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드와 주석 데이터를 응답으로 반환합니다.

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"
    }
  }
}

페이지 작업

블로그에 사용할 페이지 검색

페이지 컬렉션 URI에 GET 요청을 전송하여 블로그의 페이지 목록을 검색할 수 있습니다. 페이지 모음의 URI 형식은 다음과 같습니다.

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

요청

예를 들면 다음과 같습니다.

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

공개 블로그에서 페이지를 검색하기 위해 사용자를 인증할 필요가 없으므로 Authorization HTTP 헤더를 이 헤더와 함께 GET 요청; 이 헤더를 제공하지 않으면 API 키를 제공해야 합니다.

또한 Blogger에는 있습니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드와 페이지 목록을 응답으로 반환합니다.

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"
        }
      }
    }
  ]
}

특정 페이지 검색

페이지 리소스 URI에 GET 요청을 전송하여 블로그에서 특정 페이지를 검색할 수 있습니다. 페이지 리소스의 URI 형식은 다음과 같습니다.

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

요청

예를 들면 다음과 같습니다.

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

공개 블로그에서 페이지를 검색하기 위해 사용자를 인증할 필요가 없으므로 Authorization HTTP 헤더를 이 헤더와 함께 GET 요청; 이 헤더를 제공하지 않으면 API 키를 제공해야 합니다.

또한 Blogger에는 있습니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드 및 페이지 데이터:

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"
    }
  }
}

사용자 작업

사용자 검색

HTTP GET 요청을 전송하여 사용자 정보를 검색할 수 있습니다. Users 리소스 URI에 추가합니다.

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

요청

다음은 GET 요청을 보여주는 예입니다. 사용자 블로그:

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

참고: 사용자는 반드시 자체 정보를 나열하므로 Authorization HTTP를 제공해야 합니다. 헤더를 GET 요청으로 대체합니다.

응답

요청이 성공하면 서버는 HTTP 200 OK 상태 코드와 사용자 블로그 목록 링크를 응답으로 반환합니다.

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"
  }
}

표준 쿼리 매개변수

다음 쿼리 매개변수는 Blogger API의 모든 메서드 및 모든 리소스와 함께 사용할 수 있습니다.

모든 Blogger API 작업에 적용되는 쿼리 매개변수는 시스템 매개변수에 설명되어 있습니다.