찬찬의 Notion API 정복기 15 - API 집중분석 - Retrieve a block & Retrieve block children

소찬 (Chan)·2022년 10월 24일
0
post-thumbnail

Reference API URL : Retrieve a block, Retrieve block children

page를 알아보았으니 이제는 block에 대해 알아보겠습니다.
Retrieve a block 보니까 parameterblock_id 가 떡하니 있는데 block_id를 어디서 조회해와야 되나요?
Retrieve block children 기능을 이용해서 조회해 오시면 됩니다.
block 묶음이 page,
page 묶음이 database
그리고 page_idblock_id와 혼용이 가능합니다. page_id를 부모 id 로 여기고 blocks.children.list 로 호출하면 block_id 정보를 확인하실 수 있습니다.

page_id = '1f217cc1-225f-4580-8e22-cd7eb8db3c5e'
blocks = notion.blocks.children.list(block_id=page_id)

불러온 정보의 일부는 다음과 같습니다.

{...
 'results': [{'archived': False,
              ...
              'has_children': False,
              'id': '27b0ad2f-5698-4f7c-ab07-00f174042264',
              ...
              },
             {'archived': False,
              ...
              'has_children': False,
              'id': 'fc98ddff-fd10-4705-b22e-e4f259cc2ce4',
              ...
              }],
 'type': 'block'}

여기서 results의 리스트에서 block 정보 값중에 idblock_id 입니다.
첫번째 블록 정보를 가져오시려면 [0]번째, 두번째 블록 정보를 가져오시려면 [1]번째로 입력

target_block_id = blocks['results'][0]['id']

block 정보를 retrieve 하는 코드는 다음과 같습니다.

notion.blocks.retrieve(block_id=target_block_id)
pprint(target_block)

다음은 blocks.children.list(Retrieve block children) 호출 시 사용할 수 있는 옵션입니다.

  • page_size (int32)
    For paginated properties. The max number of property item objects on a page. The default size is 100
    property item 묶음을 1개만 볼지 최대 100개까지 볼지 정할 수 있습니다.

  • start_cursor (string)
    For paginated properties.
    has_more : True 로 넘어오는 경우는, next_cursor 값도 같이 응답해줍니다.

 'has_more': True,
 'next_cursor': 'fc98ddff-fd10-4705-b22e-e4f259cc2ce4',
 'object': 'list',
 'results': [{'archived': False, ...

start_cursornext_cursor 값을 넣어서 retrieve를 다시 호출해주시면, 이어서 조회가 가능합니다.

profile
QA Specialist

0개의 댓글