etc./Notion

노션 API Beta 오픈! 노션에 API 연동하기 (Notion API 가이드 따라 노션 표에 페이지 추가하기)

FrontEnd 김평범님 2021. 5. 15. 20:51
반응형

노션 API 베타 공개

노션을 간단하게  메모 어플로만 사용하는 분들도 많았지만,

회사에서 프로젝트 관리툴로 이용하던 분들은 노션 API를 기다리고 있었다.

드디어 노션  API Beta버전에 관련된 공지가 떴다!

노션 베타 서비스

 

📕노션 API 가이드 

노션 API 베타 관련된 소식이 뜨면서 가이드 페이지가 생성되었다.

해당 내용에서는 노션API를 활용해서 우리가 사용하는 또 다른 툴을 노션과 연결할 수 있다는 내용이 담겨있다.

https://www.notion.so/guides/connect-tools-to-notion-api

 

Connect your tools to Notion with the API

Learn what Notion’s API can do and how your team can build integrations to create custom workflows.

www.notion.so

 

 

🎉노션 Developer Beta 서비스 오픈

노션 API를 시작하기 위해서는 Notion Developer 사이트를 이용해야 한다.

해당 사이트에서 가이드, API 샘플 예시,  API 사용하는 방법에 대해서 설명이 나와있다.

https://developers.notion.com/

 

Notion API

Connect Notion pages and databases to the tools you use every day, creating powerful workflows.

developers.notion.com

 

💎Notion API 사용 전 기본 설정하기

1. 관리자 권한이 있는 Workspace 만들기

Notion  API를 사용하려면 먼저 Workspace를 하나 만들어야 한다.

Notion  API를 사용하려면 해당 Workspace의 관리자 계정으로 시작해야 한다고 하니,

Noiton API Workspace를 개설했다.

Notion API Workspace 만들기

 

2. cURL 설치하기

cURL이란?

cURL은 다양한 통신 프로토콜을 지원하는 무료 웹 개발 오픈소스라고 한다.

서버와 통신할 수 있는 커맨드 명령어 툴로 많이 사용한다고 한다.

파일을 저장/업로드,  서버  Request를 보내던지, 통신상  HTTP 정보를 받아오는 기능을 해준다.

 

cURL 설치하기

만약 macOS를 사용 중이라면 cURL 이 설치되어있고, 리눅스 환경도 대부분 이미 설치되어있다고 한다.

Window OS 사용하는 사람이라면 먼저 설치가 필요하다.

아래 링크에서 설치를 진행하자.

https://curl.se/windows/

 

Notion API 토큰 발급하기

Notion 나의 통합목록 : https://www.notion.so/my-integrations

Notion Developers Beta API 연결을 위한 나의 통합목록

API 사용을 위한 기본 세팅을 완료했다면,

이제 노션 API를 만들기 위한 나의 통합목록 페이지에 접속해서토큰을 발급받아보자.

 

먼저 나의 통합목록 페이지에 처음 접속하면 아무것도 없기 때문에 무언가를 만들어야 할 것 같다.

새로운 통합 만들기를 클릭한다.

 

 

노션 API를 위한 새로운 통합 만들기 

먼저 새로운 통합만들기를 클릭하면, 기본정보를 입력할 수 있는  Form이 나타난다.

이름, 로고, Notion API를 이용할 나의 노션 워크스페이스를 선택한 뒤 제출을 클릭한다.

 

노션 API 새로운 통합 정보 생성

완료하면 시크릿이라고 해서 API에 사용할 내부 통합 토큰이 생성이 된 것을 확인할 수 있다.

내용을 보면 해당 토큰은 워크스페이스에 종속되므로, 

다양한 워크 스페이스를 가지고 있는 분이라면 워크스페이스 별로 토큰을 발급받아야 한다.

 

 

📔Notion API를 이용해서 Notion 표에  Data 넣기

1. 노션 API 테스트할 표 생성하기

이제  Notion API를 실제로 호출해서 직접 노션 DataBase에 행을 추가해보자.

먼저 Data를 넣어줄 표를  Notion 페이지에 생성한다.

아까 만들어준 Notion API Workspace 안에 API TEST라는 표를 생성해줬다.

Notion API 테스트 표 추가하기

 

2. 노션 API 편집 권한 설정하기

Notion API 통합페이지 초대

표를 생성했으면 해당 페이지에 내가 만든 위 통합 API 접근할 수 있게  권한을 줘야 한다.

우측 상단에 공유 버튼을 누른 뒤 초대를 누르면 내가 만든 통합 페이지가 표시된다. 클릭한 뒤 추가해준다.

Notion API TEST

 추가를 하면 해당 페이지에 Notion API 가 편집이 허용된 것을 확인할 수 있다.

 

3. 노션 API 호출 시 필요한 표 Database ID 확인하기

생성한 표의 링크를 복사해보면, Notion에서 내 표에 지정한 Database ID를 확인할 수 있다.

Notion API에 해당 표에 데이터를 넣어줄 것이므로 ID를 반드시 확인해야 한다.

 

Notion 데이터 베이스 ID 확인하기

? v= 전부터  www.notion.so/   뒤에 있는 복잡한 숫자가 데이터 베이스 ID이다.

노션 데이터 베이스 ID 확인하기

 

4. curl로 노션 표에 페이지 추가하는 명령어 호출하기

이제 확인한 데이터 베이스에 아까 설치한 curl 명령어를 이용해

Notion api를 호출해서 해당 데이터 베이스에 항목을 입력해보겠다.

Notion  docs에서 제공해준 코드를 그대로 이용해보려고 한다.

curl -X POST https://api.notion.com/v1/pages \
  -H "Authorization: Bearer {MY_NOTION_TOKEN}" \
  -H "Content-Type: application/json" \
  -H "Notion-Version: 2021-05-13" \
  --data '{
    "parent": { "database_id": "{DATABASE_ID}" },
    "properties": {
      "Name": {
        "title": [
          {
            "text": {
              "content": "Notion API TEST!!!!"
            }
          }
        ]
      }
    }
  }'

위 코드에서 {MY_NOTION_TOKEN}에는 통합 페이지에서 확인한 토큰 값을 넣어주고

{DATABASE_ID}에는 링크 복사로 확인한 데이터 베이스 ID를 넣어준다.

 

🤣cmd창 오류발생

window cmd 창에서 실행해 보니 status:400 에러가 뜨면서 오류가 난다. 

Notion API Error Parsing JSON body

JSON 형식은 맞는 것 같은데 안돼서 삽질하다가

git bash에서 실행을 다시 해보니 정상적으로 데이터가 들어가는 것을 확인했다.

Notion API 테스트

 

현재는 git bash에서 테스트를 했지만,

Javascript로 해당  설정으로 호출하면 내 프로그램에서도  Notion에 정보를 넣는 것도 가능할 것 같다🙆‍♀️

반응형