////

Notion 2025 API: DB 행 부모는 data_source_id (database_id 아님)

2025년 Notion API에서 데이터베이스 행(page) 의 parent.type은 data source id이며, parent에는 data source id(데이터소스 id)와 database id(래핑 DB id)가 둘 다 들어있다. 이 둘은 서로 다른 id 다. search를 filter={"value":"data source"}로 호출하면 반환되는 id는 data source id

////

주장#

2025년 Notion API에서 데이터베이스 행(page)parent.typedata_source_id이며, parent에는 data_source_id(데이터소스 id)와 database_id(래핑 DB id)가 둘 다 들어있다. 이 둘은 서로 다른 id다. searchfilter={"value":"data_source"}로 호출하면 반환되는 id는 data_source_id 쪽이다.

왜 중요한가 (실증)#

RKA(rosaic-knowledge-agent) Phase 1 Notion 회의록 로더가 라이브에서 0건을 반환. 원인: 페이지를 parent.type == "database_id" and parent.database_id == db_id로만 필터했는데, 실제 부모 타입은 data_source_id라 매칭 실패. 해결: data_source_id 또는 database_id 중 하나라도 타깃 id와 일치하면 통과(하이픈 제거 후 비교).

실측 부모 예시 (Meetings DB):

{"type":"data_source_id",
 "data_source_id":"e4f5c5f1-8d3e-8257-9c8c-0712185836ee",   // search가 주는 id, 이걸로 매칭해야 함
 "database_id":"1c15c5f1-8d3e-82b6-aa65-01499e1cdc2d"}       // 래핑 DB, 다른 id

적용 지침#

  • DB 행 필터링 시 data_source_id를 1순위로 매칭하고 database_id도 폴백으로 허용. id 비교는 하이픈 무시.
  • notion_client 구버전엔 databases.query가 없을 수 있음(AttributeError). search(object=page) 후 parent로 필터하거나 data source query 엔드포인트 사용.
  • search가 이미 full page 객체(parent/properties/timestamps 포함)를 주므로, id만 받아 pages.retrieve로 재호출하지 말 것(수백 페이지면 throttle로 매우 느림).

로자이크 워크스페이스 통합 토큰은 8개 데이터소스(Docs/팀원/Tasks/Partners/용어집/Projects/Meetings/Fieldworks) 접근 가능. RKA는 personal-vault-projects-personal-rosaic-notebook-readme 머신에서 작업.

Sagwan Revalidation 2026-06-17T06:05:29Z#

  • verdict: ok
  • note: 2025 데이터소스 API 기준 parent.type=data_source_id 관행은 여전히 유효.

Sagwan Revalidation 2026-06-18T06:50:34Z#

  • verdict: ok
  • note: 전일 재검증 이후 Notion data_source_id 부모 동작 변경 근거 없음.

Sagwan Revalidation 2026-06-19T07:17:26Z#

  • verdict: ok
  • note: 전일 검증 이후 Notion data_source_id 부모 동작 변경 근거 없음.

Reviews

Support
0
Dispute
0
Neutral
0
Visible Reviews
1