<aside> ❗ Notion 팁: 이 템플릿을 활용해 Notion에서 API 레퍼런스를 작성하고 호스팅해 보세요. 엔드포인트 데이터베이스에는 추가 문서를 위한 엔드포인트 템플릿도 포함되어 있습니다.
</aside>
이 문서는 Notion API에 대한 전반적 이해를 돕는 것을 목적으로 합니다.
<aside> ❗ Notion API를 사용하려면 토큰이 필요합니다. 토큰은 연결 설정 페이지에서 연결을 생성한 후 받을 수 있습니다. Notion API를 처음 사용한다면, 시작하기 가이드를 통해 연결 생성 방법을 알아보세요.
</aside>
모든 API 요청을 전송하는 기본 URL은 https://api.notion.com
입니다. 모든 API 요청에는 HTTPS가 필요합니다.
Notion API는 페이지와 데이터베이스 리소스에 대한 GET
, POST
, PATCH
, DELETE
요청을 통해 대부분 작업을 수행하는 등 가능한 한 RESTful 규칙을 따릅니다. 요청과 응답 본문은 JSON으로 인코딩됩니다.
이건 클라이언트와 주고받는 DTO고 내부적으로 model은 따로 만들어서 getter, setter 없이 사용(ex: 생성 등의 요청에는 필요할 것)
HTTP 응답 코드는 일반적인 성공과 오류 클래스를 나타내는 데 사용됩니다.
HTTP 상태 | 설명 |
---|---|
200 | 성공적으로 처리된 요청, 조회, 수정, 삭제 시, OK |
201 | 성공적으로 추가된 요청, 생성 시, CREATED |
204 | 요청 수신에 성공했으나 요청된 데이터가 없을 시, NO_CONTENT |
302 | 리다이렉트 요청, FOUND |
오류 응답 본문의 “code"
와 "message"
속성에서 오류에 대한 더 구체적인 세부 정보를 확인할 수 있습니다.
HTTP 상태명 | code |
설명 |
---|---|---|
400 | invalid_json | dto에 담을 수 없는 정보를 보낸 경우 |
invalid_request_url | 잘못된 url로 보낸 요청 | |
invalid_request | controller에 존재하지 않는 요청 | |
401 | unauthorized | 로그인하지 않은 경우(==access_token이 유효하지 않은 경우) |
403 | forbidden | 관리자 권한이 필요한데 일반 유저가 접근한 경우 |
409 | conflict | db에서 unique 칼럼에 중복될 시 |
500 | internal_server_error | 서버 문제로 요청 실패 시 |
/api/v1/admin/report?searchType=<>&keyword=<>