Notion 공식문서에 있는 NotionAPI 연동 Demo 프로그램을 실행시켜보자.
Notion API Overview
Discover how to leverage Notion's Public API to build integrations.
developers.notion.com
여러 데모가 있는데 그중 web-form-with-express 서버를 실행해보려 한다.
web-form-with-express의 README를 보고 따라해보겠다.
notion-sdk-js/examples/web-form-with-express at main · makenotion/notion-sdk-js
Official Notion JavaScript Client. Contribute to makenotion/notion-sdk-js development by creating an account on GitHub.
github.com
우선 노션API 연동전 API를 연동시킬 노션 계정에 로그인이 되어있어야 하고, 테스트를 진행할 노션 페이지를 생성해두어야 한다.
또한 Git과 Node.js가 설치되어 있어야 한다.
우선 프로젝트 코드를 다운받기 위해 git clone을 진행한다.
터미널을 켜 아래 명령어를 실행한다
cd <프로젝트를 생성할 경로>
git clone https://github.com/makenotion/notion-sdk-js.git
우리는 examples 디렉토리 안에 있는 demo들 중 web-form-with-express 데모를 실행해볼 것이다.
실행시킬 demo 프로젝트로 이동 후 NPM 라이브러리를 install을 한다.
cd notion-sdk-js/examples/web-form-with-express/
npm install
examples/web-form-with-express 하위에 .env.example 파일이 존재한다.
해당 파일명을 .env로 바꾼 후 api키와 pageid를 작성하여야 한다.
Your connected workspace for wiki, docs & projects | Notion
A new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team.
www.notion.com
위에 사이트에 접속 후 연동할 워크스페이스를 선택한다.
나는 테스트로 진행하는거라 유형을 프라이빗으로 선택했다.
API 통합 설정 구성 페이지로 이동하여
프라이빗 API 통합 시크릿 키를 복사하면 된다.
그리고 만약 댓글 기능을 사용하고자 하면 댓글 읽기/삽입을 활성화하여야 한다.
pageId는 내가 연결하고자하는 페이지에 웹으로 접속한 후 url에서 notion.so/ 뒷부분의 '페이지명-'을 제외한 값이다.
아래와 같이 .env를 작성하며 된다. (따옴표, 꺽쇠 없이 등호(=) 뒤에 문자열만 입력하면 된다)
NOTION_KEY=<API integration 시크릿KEY>
NOTION_PAGE_ID=<url에서 복사한 값>
노션 페이지 설정 > 연결 > 내가 만든 Integration 선택하여 페이지에 API Integration을 연결할 수 있다.
아래 명령어를 통해 express 서버를 실행시킨다.
node server.js
성공적으로 실행되면 로그에 찍힌 port번호로 접속한다.
생성할 데이터베이스명을 입력한 후 제출버튼을 누르면 연결된 페이지에 데이터베이스가 생성된다
방금 만든 데이터베이스에 페이지를 추가한다.
데이터베이스를 생성할 때 반환받은 ID를 Parent DB ID에 입력하면 된다.
방금 만든 페이지에 content를 추가한다.
페이지에 comment를 추가한다.
integration 설정에서 댓글 삽입이 활성화되어 있어야 가능하다.
web-form-with-express 데모에 구현된 모든 기능을 사용해보았다.
Notion API는 노션을 잘 사용하는 사람들이 간단한 서버를 사용해 불필요한 일들을 자동화하는데 사용할 수 있을 것 같다.
Clerk으로 10분만에 로그인/회원가입 적용하기 | NextJS 15, 소셜로그인 구현 (0) | 2025.06.10 |
---|---|
노션 API 연동 데모 코드 분석하기 | Express.js, Notion API (1) | 2025.05.28 |
백업테이블에서 변경사항 추출하여 UPDATE문 생성하는 쿼리(feat. GPT4) (0) | 2025.03.28 |
[datatables.js] 주요 특징과 기능, 사용법, ajax 연동 (0) | 2025.01.13 |
인텔리제이 단축키 모음 (0) | 2024.12.23 |