노트 API
이 API를 사용하여 GitLab 콘텐츠에 첨부된 댓글 및 시스템 레코드를 관리합니다. 일부 시스템 생성 노트는 별도의 리소스 이벤트로 추적됩니다: API 결과가 페이지네이션되므로, GET 요청은 기본적으로 한 번에 20개의 결과를 반환합니다.
이 API를 사용하여 GitLab 콘텐츠에 첨부된 댓글 및 시스템 레코드를 관리합니다. 다음 작업을 수행할 수 있습니다:
- 이슈, 머지 리퀘스트, 에픽, 스니펫, 커밋에 대한 댓글을 생성하고 수정합니다.
- 오브젝트 변경에 관한 시스템 생성 노트를 조회합니다.
- 결과를 정렬하고 페이지네이션합니다.
- 기밀 및 내부 플래그로 가시성을 제어합니다.
- 속도 제한으로 남용을 방지합니다.
일부 시스템 생성 노트는 별도의 리소스 이벤트로 추적됩니다:
API 결과가 페이지네이션되므로, GET 요청은 기본적으로 한 번에 20개의 결과를 반환합니다. 자세한 내용은 페이지네이션을 참조하세요.
리소스 이벤트#
일부 시스템 노트는 이 API에 포함되지 않고 별도의 이벤트로 기록됩니다:
노트 페이지네이션#
API 결과가 페이지네이션되므로, GET 요청은 기본적으로 한 번에 20개의 결과를 반환합니다.
페이지네이션에 대해 자세히 알아보세요.
속도 제한#
남용을 방지하기 위해 사용자의 분당 Create 요청 수를 특정 수로 제한할 수 있습니다. 자세한 내용은 노트 생성 속도 제한을 참조하세요.
이슈#
모든 이슈 노트 목록 조회#
지정된 이슈의 모든 노트를 반환합니다.
GET /projects/:id/issues/:issue_iid/notes
GET /projects/:id/issues/:issue_iid/notes?sort=asc&order_by=updated_at
GET /projects/:id/issues/:issue_iid/notes?activity_filter=only_comments
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
issue_iid |
정수 | 예 | 이슈의 IID |
activity_filter |
문자열 | 아니요 | 활동 유형으로 노트 필터. 유효한 값: all_notes, only_comments, only_activity. 기본값 all_notes |
sort |
문자열 | 아니요 | 이슈 노트를 asc 또는 desc 순서로 반환. 기본값 desc |
order_by |
문자열 | 아니요 | created_at 또는 updated_at 필드로 이슈 노트 정렬. 기본값 created_at |
[
{
"id": 302,
"body": "closed",
"author": {
"id": 1,
"username": "pipin",
"email": "admin@example.com",
"name": "Pip",
"state": "active",
"created_at": "2013-09-30T13:46:01Z"
},
"created_at": "2013-10-02T09:22:45Z",
"updated_at": "2013-10-02T10:22:45Z",
"system": true,
"noteable_id": 377,
"noteable_type": "Issue",
"project_id": 5,
"noteable_iid": 377,
"resolvable": false,
"confidential": false,
"internal": false,
"imported": false,
"imported_from": "none"
},
{
"id": 305,
"body": "Text of the comment\r\n",
"author": {
"id": 1,
"username": "pipin",
"email": "admin@example.com",
"name": "Pip",
"state": "active",
"created_at": "2013-09-30T13:46:01Z"
},
"created_at": "2013-10-02T09:56:03Z",
"updated_at": "2013-10-02T09:56:03Z",
"system": true,
"noteable_id": 121,
"noteable_type": "Issue",
"project_id": 5,
"noteable_iid": 121,
"resolvable": false,
"confidential": true,
"internal": true,
"imported": false,
"imported_from": "none"
}
]
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/issues/11/notes"
이슈 노트 조회#
프로젝트 이슈의 지정된 노트를 반환합니다.
GET /projects/:id/issues/:issue_iid/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
issue_iid |
정수 | 예 | 프로젝트 이슈의 IID |
note_id |
정수 | 예 | 이슈 노트의 ID |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/issues/11/notes/1"
이슈 노트 생성#
지정된 프로젝트 이슈의 노트를 생성합니다.
POST /projects/:id/issues/:issue_iid/notes
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로. |
issue_iid |
정수 | 예 | 이슈의 IID. |
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
confidential |
불리언 | 아니요 | 더 이상 사용되지 않음: GitLab 16.0에서 제거 예정이며 internal로 이름이 변경됨. 노트의 기밀 플래그. 기본값 false. |
internal |
불리언 | 아니요 | 노트의 내부 플래그. 두 파라미터가 모두 제출된 경우 confidential을 덮어씀. 기본값 false. |
created_at |
문자열 | 아니요 | 날짜 시간 문자열, ISO 8601 형식. 1970-01-01 이후여야 함. 예: 2016-03-11T03:45:40Z (관리자 또는 프로젝트/그룹 소유자 권한 필요) |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/issues/11/notes?body=note"
이슈 노트 업데이트#
이슈의 지정된 노트를 업데이트합니다.
PUT /projects/:id/issues/:issue_iid/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로. |
issue_iid |
정수 | 예 | 이슈의 IID. |
note_id |
정수 | 예 | 노트의 ID. |
body |
문자열 | 아니요 | 노트 내용. 최대 1,000,000자. |
confidential |
불리언 | 아니요 | 더 이상 사용되지 않음: GitLab 16.0에서 제거 예정. 노트의 기밀 플래그. 기본값 false. |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/issues/11/notes/636?body=note"
이슈 노트 삭제#
이슈의 기존 노트를 삭제합니다.
DELETE /projects/:id/issues/:issue_iid/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
issue_iid |
정수 | 예 | 이슈의 IID |
note_id |
정수 | 예 | 노트의 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/issues/11/notes/636"
스니펫#
스니펫 노트 API는 개인 스니펫이 아닌 프로젝트 수준 스니펫을 위한 것입니다.
모든 스니펫 노트 목록 조회#
지정된 스니펫의 모든 노트를 반환합니다. 스니펫 노트는 사용자가 스니펫에 작성할 수 있는 댓글입니다.
GET /projects/:id/snippets/:snippet_id/notes
GET /projects/:id/snippets/:snippet_id/notes?sort=asc&order_by=updated_at
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
snippet_id |
정수 | 예 | 프로젝트 스니펫의 ID |
sort |
문자열 | 아니요 | 스니펫 노트를 asc 또는 desc 순서로 반환. 기본값 desc |
order_by |
문자열 | 아니요 | created_at 또는 updated_at 필드로 스니펫 노트 정렬. 기본값 created_at |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/snippets/11/notes"
스니펫 노트 조회#
스니펫의 지정된 노트를 반환합니다.
GET /projects/:id/snippets/:snippet_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
snippet_id |
정수 | 예 | 프로젝트 스니펫의 ID |
note_id |
정수 | 예 | 스니펫 노트의 ID |
{
"id": 302,
"body": "closed",
"author": {
"id": 1,
"username": "pipin",
"email": "admin@example.com",
"name": "Pip",
"state": "active",
"created_at": "2013-09-30T13:46:01Z"
},
"created_at": "2013-10-02T09:22:45Z",
"updated_at": "2013-10-02T10:22:45Z",
"system": true,
"noteable_id": 377,
"noteable_type": "Issue",
"project_id": 5,
"noteable_iid": 377,
"resolvable": false,
"confidential": false,
"internal": false,
"imported": false,
"imported_from": "none"
}
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/snippets/11/notes/11"
스니펫 노트 생성#
지정된 스니펫의 새 노트를 생성합니다. 스니펫 노트는 스니펫에 대한 사용자 댓글입니다. 본문에 이모지 반응만 포함하는 노트를 생성하면 GitLab은 이 오브젝트를 반환합니다.
POST /projects/:id/snippets/:snippet_id/notes
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
snippet_id |
정수 | 예 | 스니펫의 ID |
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
created_at |
문자열 | 아니요 | 날짜 시간 문자열, ISO 8601 형식. 예: 2016-03-11T03:45:40Z (관리자 또는 프로젝트/그룹 소유자 권한 필요) |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/snippet/11/notes?body=note"
스니펫 노트 업데이트#
스니펫의 지정된 노트를 업데이트합니다.
PUT /projects/:id/snippets/:snippet_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
snippet_id |
정수 | 예 | 스니펫의 ID |
note_id |
정수 | 예 | 스니펫 노트의 ID |
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/snippets/11/notes/1659?body=note"
스니펫 노트 삭제#
스니펫의 기존 노트를 삭제합니다.
DELETE /projects/:id/snippets/:snippet_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
snippet_id |
정수 | 예 | 스니펫의 ID |
note_id |
정수 | 예 | 노트의 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/snippets/52/notes/1659"
머지 리퀘스트#
모든 머지 리퀘스트 노트 목록 조회#
지정된 머지 리퀘스트의 모든 노트를 반환합니다.
GET /projects/:id/merge_requests/:merge_request_iid/notes
GET /projects/:id/merge_requests/:merge_request_iid/notes?sort=asc&order_by=updated_at
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
merge_request_iid |
정수 | 예 | 프로젝트 머지 리퀘스트의 IID |
sort |
문자열 | 아니요 | 머지 리퀘스트 노트를 asc 또는 desc 순서로 반환. 기본값 desc |
order_by |
문자열 | 아니요 | created_at 또는 updated_at 필드로 머지 리퀘스트 노트 정렬. 기본값 created_at |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/merge_requests/11/notes"
머지 리퀘스트 노트 조회#
머지 리퀘스트의 지정된 노트를 반환합니다.
GET /projects/:id/merge_requests/:merge_request_iid/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
merge_request_iid |
정수 | 예 | 프로젝트 머지 리퀘스트의 IID |
note_id |
정수 | 예 | 머지 리퀘스트 노트의 ID |
{
"id": 301,
"body": "Comment for MR",
"author": {
"id": 1,
"username": "pipin",
"email": "admin@example.com",
"name": "Pip",
"state": "active",
"created_at": "2013-09-30T13:46:01Z"
},
"created_at": "2013-10-02T08:57:14Z",
"updated_at": "2013-10-02T08:57:14Z",
"system": false,
"noteable_id": 2,
"noteable_type": "MergeRequest",
"project_id": 5,
"noteable_iid": 2,
"resolvable": false,
"confidential": false,
"internal": false
}
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/merge_requests/11/notes/1"
머지 리퀘스트 노트 생성#
지정된 머지 리퀘스트의 노트를 생성합니다. 노트는 머지 리퀘스트의 특정 라인에 첨부되지 않습니다. 보다 세밀한 제어를 위한 다른 방법은 커밋 API의 커밋에 댓글 달기와 토론 API의 머지 리퀘스트 diff에 새 스레드 생성을 참조하세요.
본문에 이모지 반응만 포함하는 노트를 생성하면 GitLab은 이 오브젝트를 반환합니다.
POST /projects/:id/merge_requests/:merge_request_iid/notes
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
merge_request_iid |
정수 | 예 | 프로젝트 머지 리퀘스트의 IID |
created_at |
문자열 | 아니요 | 날짜 시간 문자열, ISO 8601 형식. 예: 2016-03-11T03:45:40Z (관리자 또는 프로젝트/그룹 소유자 권한 필요) |
internal |
불리언 | 아니요 | 노트의 내부 플래그. 기본값 false. |
merge_request_diff_head_sha |
문자열 | 아니요 | /merge 빠른 액션에 필요. HEAD 커밋의 SHA로, API 요청 전송 후 머지 리퀘스트가 업데이트되지 않았는지 확인합니다. |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/merge_requests/11/notes?body=note"
머지 리퀘스트 노트 업데이트#
머지 리퀘스트의 지정된 노트를 업데이트합니다.
PUT /projects/:id/merge_requests/:merge_request_iid/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
merge_request_iid |
정수 | 예 | 프로젝트 머지 리퀘스트의 IID |
note_id |
정수 | 아니요 | 노트의 ID |
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
confidential |
불리언 | 아니요 | 더 이상 사용되지 않음: GitLab 16.0에서 제거 예정. 노트의 기밀 플래그. 기본값 false. |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/merge_requests/11/notes/1?body=note"
머지 리퀘스트 노트 삭제#
머지 리퀘스트의 기존 노트를 삭제합니다.
DELETE /projects/:id/merge_requests/:merge_request_iid/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
merge_request_iid |
정수 | 예 | 머지 리퀘스트의 IID |
note_id |
정수 | 예 | 노트의 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/merge_requests/7/notes/1602"
에픽#
에픽 REST API는 GitLab 17.0에서 더 이상 사용되지 않으며 API v5에서 제거될 예정입니다. GitLab 17.4부터 18.0까지 에픽의 새로운 모습이 활성화된 경우, GitLab 18.1 이후에는 Work Items API를 대신 사용하세요. 자세한 내용은 에픽 API를 work items로 마이그레이션을 참조하세요. 이 변경은 주요 변경 사항입니다.
모든 에픽 노트 목록 조회#
지정된 에픽의 모든 노트를 반환합니다. 에픽 노트는 사용자가 에픽에 작성할 수 있는 댓글입니다.
에픽 노트 API는 에픽 IID 대신 에픽 ID를 사용합니다. 에픽의 IID를 사용하면 GitLab이 404 오류를 반환하거나 잘못된 에픽의 노트를 반환합니다. 이슈 노트 API 및 머지 리퀘스트 노트 API와 다릅니다.
GET /groups/:id/epics/:epic_id/notes
GET /groups/:id/epics/:epic_id/notes?sort=asc&order_by=updated_at
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
epic_id |
정수 | 예 | 그룹 에픽의 ID |
sort |
문자열 | 아니요 | 에픽 노트를 asc 또는 desc 순서로 반환. 기본값 desc |
order_by |
문자열 | 아니요 | created_at 또는 updated_at 필드로 에픽 노트 정렬. 기본값 created_at |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/epics/11/notes"
에픽 노트 조회#
에픽의 지정된 노트를 반환합니다.
GET /groups/:id/epics/:epic_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
epic_id |
정수 | 예 | 에픽의 ID |
note_id |
정수 | 예 | 노트의 ID |
{
"id": 302,
"body": "Epic note",
"author": {
"id": 1,
"username": "pipin",
"email": "admin@example.com",
"name": "Pip",
"state": "active",
"created_at": "2013-09-30T13:46:01Z"
},
"created_at": "2013-10-02T09:22:45Z",
"updated_at": "2013-10-02T10:22:45Z",
"system": true,
"noteable_id": 11,
"noteable_type": "Epic",
"project_id": 5,
"noteable_iid": 11,
"resolvable": false,
"confidential": false,
"internal": false,
"imported": false,
"imported_from": "none"
}
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/epics/11/notes/1"
에픽 노트 생성#
지정된 에픽의 노트를 생성합니다. 에픽 노트는 사용자가 에픽에 작성할 수 있는 댓글입니다. 본문에 이모지 반응만 포함하는 노트를 생성하면 GitLab은 이 오브젝트를 반환합니다.
POST /groups/:id/epics/:epic_id/notes
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
epic_id |
정수 | 예 | 에픽의 ID |
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
confidential |
불리언 | 아니요 | 더 이상 사용되지 않음: GitLab 16.0에서 제거 예정이며 internal로 이름이 변경됨. 노트의 기밀 플래그. 기본값 false. |
internal |
불리언 | 아니요 | 노트의 내부 플래그. 두 파라미터가 모두 제출된 경우 confidential을 덮어씀. 기본값 false. |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/epics/11/notes?body=note"
에픽 노트 업데이트#
에픽의 지정된 노트를 업데이트합니다.
PUT /groups/:id/epics/:epic_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
epic_id |
정수 | 예 | 에픽의 ID |
note_id |
정수 | 예 | 노트의 ID |
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
confidential |
불리언 | 아니요 | 더 이상 사용되지 않음: GitLab 16.0에서 제거 예정. 노트의 기밀 플래그. 기본값 false. |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/epics/11/notes/1?body=note"
에픽 노트 삭제#
에픽의 기존 노트를 삭제합니다.
DELETE /groups/:id/epics/:epic_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
epic_id |
정수 | 예 | 에픽의 ID |
note_id |
정수 | 예 | 노트의 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/epics/52/notes/1659"
프로젝트 위키#
모든 프로젝트 위키 노트 목록 조회#
지정된 프로젝트 위키 페이지의 모든 노트를 반환합니다. 프로젝트 위키 노트는 사용자가 위키 페이지에 작성할 수 있는 댓글입니다.
위키 페이지 노트 API는 위키 페이지 슬러그 대신 위키 페이지 메타 ID를 사용합니다. 페이지의 슬러그를 사용하면 GitLab이 404 오류를 반환합니다. 프로젝트 위키 API에서 메타 ID를 조회할 수 있습니다.
GET /projects/:id/wiki_pages/:wiki_page_meta_id/notes
GET /projects/:id/wiki_pages/:wiki_page_meta_id/notes?sort=asc&order_by=updated_at
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
sort |
문자열 | 아니요 | 위키 페이지 노트를 asc 또는 desc 순서로 반환. 기본값 desc |
order_by |
문자열 | 아니요 | created_at 또는 updated_at 필드로 위키 페이지 노트 정렬. 기본값 created_at |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/wiki_pages/35/notes"
위키 페이지 노트 조회#
지정된 위키 페이지의 단일 노트를 반환합니다.
GET /projects/:id/wiki_pages/:wiki_page_meta_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
note_id |
정수 | 예 | 노트의 ID |
{
"author": {
"id": 1,
"username": "pipin",
"email": "admin@example.com",
"name": "Pip",
"state": "active",
"created_at": "2013-09-30T13:46:01Z"
},
"body": "foobar",
"commands_changes": {},
"confidential": false,
"created_at": "2025-03-11T11:36:32.222Z",
"id": 1218,
"imported": false,
"imported_from": "none",
"internal": false,
"noteable_id": 35,
"noteable_iid": null,
"noteable_type": "WikiPage::Meta",
"project_id": 5,
"resolvable": false,
"system": false,
"type": null,
"updated_at": "2025-03-11T11:36:32.222Z"
}
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/wiki_pages/35/notes/1218"
위키 페이지 노트 생성#
단일 위키 페이지의 새 노트를 생성합니다. 위키 페이지 노트는 사용자가 위키 페이지에 작성할 수 있는 댓글입니다.
POST /projects/:id/wiki_pages/:wiki_page_meta_id/notes
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/wiki_pages/35/notes?body=note"
위키 페이지 노트 업데이트#
위키 페이지의 기존 노트를 업데이트합니다.
PUT /projects/:id/wiki_pages/:wiki_page_meta_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
note_id |
정수 | 예 | 노트의 ID |
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/wiki_pages/35/notes/1218?body=note"
위키 페이지 노트 삭제#
위키 페이지에서 노트를 삭제합니다.
DELETE /projects/:id/wiki_pages/:wiki_page_meta_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 프로젝트의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
note_id |
정수 | 예 | 노트의 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/wiki_pages/35/notes/1218"
그룹 위키#
그룹 위키 노트 목록 조회#
지정된 그룹 위키 페이지의 모든 노트를 반환합니다. 그룹 위키 노트는 사용자가 위키 페이지에 작성할 수 있는 댓글입니다.
위키 페이지 노트 API는 위키 페이지 슬러그 대신 위키 페이지 메타 ID를 사용합니다. 페이지의 슬러그를 사용하면 GitLab이 404 오류를 반환합니다. 그룹 위키 API에서 메타 ID를 조회할 수 있습니다.
GET /groups/:id/wiki_pages/:wiki_page_meta_id/notes
GET /groups/:id/wiki_pages/:wiki_page_meta_id/notes?sort=asc&order_by=updated_at
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
sort |
문자열 | 아니요 | 위키 페이지 노트를 asc 또는 desc 순서로 반환. 기본값 desc |
order_by |
문자열 | 아니요 | created_at 또는 updated_at 필드로 위키 페이지 노트 정렬. 기본값 created_at |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/wiki_pages/35/notes"
위키 페이지 노트 조회#
위키 페이지의 지정된 노트를 반환합니다.
GET /groups/:id/wiki_pages/:wiki_page_meta_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
note_id |
정수 | 예 | 노트의 ID |
{
"author": {
"id": 1,
"username": "pipin",
"email": "admin@example.com",
"name": "Pip",
"state": "active",
"created_at": "2013-09-30T13:46:01Z"
},
"body": "foobar",
"commands_changes": {},
"confidential": false,
"created_at": "2025-03-11T11:36:32.222Z",
"id": 1218,
"imported": false,
"imported_from": "none",
"internal": false,
"noteable_id": 35,
"noteable_iid": null,
"noteable_type": "WikiPage::Meta",
"project_id": null,
"resolvable": false,
"system": false,
"type": null,
"updated_at": "2025-03-11T11:36:32.222Z"
}
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/wiki_pages/35/notes/1218"
위키 페이지 노트 생성#
지정된 위키 페이지의 노트를 생성합니다. 위키 페이지 노트는 사용자가 위키 페이지에 작성할 수 있는 댓글입니다.
POST /groups/:id/wiki_pages/:wiki_page_meta_id/notes
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/wiki_pages/35/notes?body=note"
위키 페이지 노트 업데이트#
위키 페이지의 지정된 노트를 업데이트합니다.
PUT /groups/:id/wiki_pages/:wiki_page_meta_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
note_id |
정수 | 예 | 노트의 ID |
body |
문자열 | 예 | 노트 내용. 최대 1,000,000자. |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/wiki_pages/35/notes/1218?body=note"
위키 페이지 노트 삭제#
위키 페이지에서 노트를 삭제합니다.
DELETE /groups/:id/wiki_pages/:wiki_page_meta_id/notes/:note_id
파라미터:
| 속성 | 유형 | 필수 여부 | 설명 |
|---|---|---|---|
id |
정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
wiki_page_meta_id |
정수 | 예 | 위키 페이지 메타의 ID |
note_id |
정수 | 예 | 노트의 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/wiki_pages/35/notes/1218"
