글 작성자: 택시 운전사
반응형

API

들어가며

티스토리에 글을 어떻게 작성할 수 있을까요? 에디터에 들어가서 글을 작성하는게 일반적일 것입니다. 하지만 티스토리에서 제공하는 API를 이용하면 에디터를 통하지 않고도 글을 작성할 수 있습니다. 앞으로의 글을 통해서 파이썬(Python)에서 티스토리(Tistory) API를 이용하여 티스토리에 글을 작성하는 방법에 대해 알아보도록하겠습니다. 이번 글에서는 파이썬은 전혀 사용하지 않고 브라우저와 티스토리 API만을 이용하여 내 블로그의 글 목록을 가져오는 작업을 해보겠습니다.

티스토리 API 사용을 위한 앱 등록

우선 처음 단계는 티스토리 API 사용을 위한 나의 앱을 등록하는 과정입니다. 티스토리 API는 앱(App)이라는 단위로 관리되며, 앱에는 해당 앱이 사용되는 서비스의 정보들이 포함되게 됩니다. 또한 앱을 단위로 토큰이 생성되고 각 앱에 따라 사용량이 정해져있기 때문에 앱 등록은 중요한 과정이라 볼 수 있습니다. 우선 티스토리 계정에 로그인을 하고 아래의 페이지로 들어갑니다.

 

https://www.tistory.com/guide/api/manage/register

 

TISTORY

나를 표현하는 블로그를 만들어보세요.

www.tistory.com

해당 페이지에 들어가게 되면 바로, 앱 등록을 위한 화면이 나오게됩니다.

티스토리 API 앱 등록

앱 등록에 들어가게 되면, 중요하게 사용되는 값들도 있고, 관리를 위해 사용되는 값들도 있습니다. 필요한 내용들만 적기위해 위 사진의 빨간색으로 테두리 쳐져 있는 중요한 값에만 내용을 채워넣도록합시다. 각 항목 별로 넣어야하는 값은 다음과 같습니다.

  • 서비스명 : API를 사용하고자하는 블로그 명
  • 서비스 URL : 블로그 전체 주소
  • 서비스 형태 : 서비스를 만들고자하는 건 아니기 때문에 아무거나 체크해도 되지만, 가장 무난한 웹서비스를 체크
  • 서비스 권한 : API를 이용한 글 작성이 목적이니 읽기, 쓰기 권한을 체크
  • CallBack : 서비스 URL과 동일하게 입력

값을 다 넣었다면 등록을 눌러줍니다. 등록이 완료 되었다면 앱 관리 탭을 선택해서 등록된 앱을 확인해봅시다.

티스토리 API 앱 관리

등록이 잘 된 것을 확인했으면 이제 인증관리 아래 설정을 눌러봅시다. 그럼 다음과 같은 페이지가 보일 것입니다.

다른 영역은 앱 등록시 입력한 앱 정보가 보이고 우리에게 중요한 정보는 앱 아이디/키의 정보들입니다. 이제 이 정보들을 이용해서 Access Token을 받아봅시다.

접근 권한 허용

우선 특정 티스토리 블로그에 해당 앱의 접근을 권한을 허용해주어야합니다. 이를 위해 아래의 주소로 접속해봅시다. 각 쿼리에는 다음의 내용을 채워넣읍시다.

  • client_id : 위의 앱 관리에 있던 App ID를 넣습니다.
  • redirect_rul : 사용하고자하는 블로그의 주소를 넣습니다.

https://www.tistory.com/oauth/authorize?client_id=${App ID}&redirect_uri=${블로그 주소}&response_type=code

https://www.tistory.com/oauth/authorize?client_id=${App ID}&redirect_uri=${블로그 주소}&response_type=code

해당 주소를 입력해서 이동하게 되면, 아래와 같은 페이지로 가게됩니다. 

허가하기를 눌러주면 사용하고자하는 블로그 페이지에 code 쿼리가 추가된 URL로 리다이렉트 해줍니다. 여기에서 code에 해당하는 값을 사용하게 됩니다.

Access Token 발급

이제 받았던 App ID, Secret Code, Code 등의 값들을 이용해서 Access Token을 받을 차례입니다. 이번에도 역시 값들을 조합해서 URL을 만들어서 들어가도록 합니다.

 

https://www.tistory.com/oauth/access_token?client_id=${App ID}&client_secret=${Secret Code}&redirect_uri=${티스토리 주소}&code=${Code}&grant_type=authorization_code

 

https://www.tistory.com/oauth/access_token?client_id=${App ID}&client_secret=${Secret Code}&redirect_uri=${티스토리 주소}&code=${Code}&grant_type=authorization_code

Access Token 요청의 경우에 원래는 서버를 이용해서 요청을 보내야하지만, 브라우저만 사용할 수 있는 좀 더 쉬운 방법으로 알려드리겠습니다. 우선 개발자도구를 키기위해 F12를 눌릅니다. 그리고 나온 개발자 도구의 탭 중에 Network를 클릭합니다.

이 상태에서 위의 URL로 이동해봅시다.

그럼 왼쪽 화면에는 랜더링할 페이지가 없다는 오류가 나오지만 오른쪽에는 요청으로 인한 값이 온것을 확인할 수 있습니다. 여기에서 Preview 탭을 클릭하면 발급된 access_token의 값을 확인할 수 있습니다. 이제 해당 토큰을 이용해서 내 블로그의 글을 조회하거나 작성할 수 있게 되었습니다. 이번 글에서는 코드는 사용하지 않고 브라우저를 이용한 요청으로만 확인해볼 예정이니 글 조회에 대한 요청을 해봅시다.

글 목록 API

아래 페이지는 티스토리에서 제공하는 API에 대한 스펙 문서입니다 글 목록과 관련된 API 쪽을 확인해봅시다.

 

https://tistory.github.io/document-tistory-apis/apis/v1/post/list.html

 

글 목록 · GitBook

No results matching ""

tistory.github.io

티스토리 글 목록 API

위와 같이 요청하면 내 블로그의 글 목록에 대한 값을 받아올 수 있습니다. 각 값에 대한 설명은 다음과 같습니다.

  • access-token : 위에서 발급받은 Access Token을 이용합니다.
  • output : 기본 값은 xml이고, json 요청도 가능합니다. 가독성을 위해 json으로 요청합니다.
  • blogName : 내 티스토리 주소에서 앞에 부분에 해당되는 값입니다.
  • page : 불러올 페이지 번호입니다. 기본적으로 10개씩 받아오며 페이지 번호는 개발자답지 않게 1부터 시작합니다.

blogName

이제 해당 URL로 요청을 보내면 다음과 같이 보여집니다.

티스토리 글 목록 API 요청 결과

저는 JSON Formatter 같은 확장프로그램을 깔아서 더 깔끔하게 나왔는데, 데이터는 비슷하게 나오는 것을 확인할 수 있을 겁니다.

 

지금까지 티스토리 API를 이용하기위해 앱 등록부터 Access Token 발급에 간단한 글 목록을 가져오는 작업까지 브라우저에서 작업해보았는데요, 다음 글에서는 티스토리 글 작성 및 좀 더 개발자적 접근을 위해 파이썬(Python)을 이용하여 티스토리 API를 사용하는 방법을 알려드리겠습니다.

반응형