본문 바로가기

Notion

Notion - 2. Database - 데이터 조회

내가 Notion API를 통해 활용하고자 한건 딱 두가지였다. 

 

1. Notion의 지정한 Database 내 데이터 모두 조회 해오기  >> Get

2. 지정한 Database 에 원하는 데이터 업데이트 하기  >> Post

 

그래서 이번엔 데이터 조회에 대해 먼저 써보고자 한다. 

 

노션의 URL 구조는 아래처럼 작성 되어 있으며 이중 database_id를 사용해서 http 호출을 한다 

https://www.notion.so/{workspace_name}/{database_id}?v={view_id}

 

Notion API 에서 한번에 호출 가능한 결과수는 최대 100개 이다.

때문에 pagenation 쿼리가 존재하는데 start_cursor 와 page_size 를 속성으로 사용 한다. 

https://developers.notion.com/reference/pagination

 

쿼리 호출 시 최하단 next_cursor 값이 비어 있을 경우 전체 데이터가 모두 호출 된 경우이며,  

next_cursor가 비어있지 않아서 다음 컨텐츠가 있는 경우

 

next_cursor가 존재할 경우 다음 시작 커서를 알려주기에 해당 id 값을 start_cursor 로 사용하면 된다

{
    "page_size":100,
    "start_cursor" : "[넥스트 커서값사용]"
}

그렇게 호출하면 next_cursor값 부터 start 되어 호출되게 된다. 

 

CURL

curl --location --request POST 'https://api.notion.com/v1/databases/$NOTION_DATABASE_ID/query' \
--header 'Authorization: Bearer $NOTION_API_KEY' \
--header 'Notion-Version: 2022-06-28' \
--header 'Content-Type: application/json' \
--data-raw '{
    "page_size":10,
    "start_cursor" : "$NOTION_NEXT_CURSOR"
}

 

 

노션의 Database는 내부의 item으로 page를 사용한다.

때문에 page를 위한 다양한 API 및 속성설명이 존재하지만, 내 경우 Database 전체의 데이터가 필요하기에 요 부분은 다음 기회에! 

 

참고 사이트 

https://developers.notion.com/docs/working-with-databases

 

Working with databases

Learn about database schemas, querying databases, and more.

developers.notion.com

'Notion' 카테고리의 다른 글

Notion - 1. Integration & Setting  (0) 2023.02.02