InfoGrab Docs

그룹 위키 API

요약

이 API를 사용하여 그룹 위키를 관리합니다. 위키 페이지의 코멘트를 notes라고 합니다. 지정된 그룹의 모든 위키 페이지를 나열합니다. 지정된 그룹의 위키 페이지를 조회합니다. 주어진 제목, 슬러그 및 콘텐츠로 특정 프로젝트의 위키 페이지를 생성합니다.

이 API를 사용하여 그룹 위키를 관리합니다. 프로젝트 위키를 위한 API도 있습니다.

위키 페이지의 코멘트를 notes라고 합니다. 코멘트와 상호작용하려면 노트 API를 사용합니다.

위키 페이지 목록 조회#

지정된 그룹의 모든 위키 페이지를 나열합니다.

GET /groups/:id/wikis
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
with_content 불리언 아니요 페이지 콘텐츠 포함.
curl \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis?with_content=1"

응답 예시:

[
  {
    "content" : "Here is an instruction how to deploy this project.",
    "format" : "markdown",
    "slug" : "deploy",
    "title" : "deploy",
    "encoding": "UTF-8"
  },
  {
    "content" : "Our development process is described here.",
    "format" : "markdown",
    "slug" : "development",
    "title" : "development",
    "encoding": "UTF-8"
  },{
    "content" : "*  [Deploy](deploy)\n*  [Development](development)",
    "format" : "markdown",
    "slug" : "home",
    "title" : "home",
    "encoding": "UTF-8"
  }
]

위키 페이지 조회#

지정된 그룹의 위키 페이지를 조회합니다.

GET /groups/:id/wikis/:slug
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
slug 문자열 위키 페이지의 URL 인코딩된 슬러그(고유 문자열)(예: dir%2Fpage_name).
render_html 불리언 아니요 위키 페이지의 렌더링된 HTML을 반환합니다.
version 문자열 아니요 위키 페이지 버전 SHA.
curl \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/home"

응답 예시:

{
  "content" : "home page",
  "format" : "markdown",
  "slug" : "home",
  "title" : "home",
  "encoding": "UTF-8"
}

위키 페이지 생성#

주어진 제목, 슬러그 및 콘텐츠로 특정 프로젝트의 위키 페이지를 생성합니다.

POST /projects/:id/wikis
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
content 문자열 위키 페이지의 콘텐츠.
title 문자열 위키 페이지의 제목.
format 문자열 아니요 위키 페이지의 형식. 사용 가능한 형식: markdown(기본값), rdoc, asciidoc, org.
curl --request POST \
     --data "format=rdoc&title=Hello&content=Hello world" \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/groups/1/wikis"

응답 예시:

{
  "content" : "Hello world",
  "format" : "markdown",
  "slug" : "Hello",
  "title" : "Hello",
  "encoding": "UTF-8"
}

위키 페이지 업데이트#

위키 페이지를 업데이트합니다. 위키 페이지를 업데이트하려면 최소 하나의 매개변수가 필요합니다.

PUT /groups/:id/wikis/:slug
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
content 문자열 title이 제공되지 않으면 예 위키 페이지의 콘텐츠.
title 문자열 content가 제공되지 않으면 예 위키 페이지의 제목.
format 문자열 아니요 위키 페이지의 형식. 사용 가능한 형식: markdown(기본값), rdoc, asciidoc, org.
slug 문자열 위키 페이지의 URL 인코딩된 슬러그(고유 문자열)(예: dir%2Fpage_name).
curl --request PUT \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/foo" \
  --data "format=rdoc" \
  --data "title=Docs" \
  --data "content=documentation"

응답 예시:

{
  "content" : "documentation",
  "format" : "markdown",
  "slug" : "Docs",
  "title" : "Docs",
  "encoding": "UTF-8"
}

위키 페이지 삭제#

지정된 슬러그를 가진 특정 프로젝트의 위키 페이지를 삭제합니다.

DELETE /groups/:id/wikis/:slug
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
slug 문자열 위키 페이지의 URL 인코딩된 슬러그(고유 문자열)(예: dir%2Fpage_name).
curl --request DELETE \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/foo"

성공하면 빈 본문의 204 No Content HTTP 응답이 반환됩니다.

위키 저장소에 첨부 파일 업로드#

특정 프로젝트의 위키 저장소 내 첨부 파일 폴더에 파일을 업로드합니다. 첨부 파일 폴더는 uploads 폴더입니다.

POST /groups/:id/wikis/attachments
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
file 문자열 업로드할 첨부 파일.
branch 문자열 아니요 브랜치의 이름. 기본값은 위키 저장소의 기본 브랜치.

파일 시스템에서 파일을 업로드하려면 --form 인수를 사용합니다. 이렇게 하면 cURL이 Content-Type: multipart/form-data 헤더를 사용하여 데이터를 POST합니다. file= 매개변수는 파일 시스템의 파일을 가리켜야 하며 @가 앞에 와야 합니다. 예를 들면:

curl --request POST \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/attachments" \
  --form "file=@dk.png"

응답 예시:

{
  "file_name" : "dk.png",
  "file_path" : "uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png",
  "branch" : "main",
  "link" : {
    "url" : "uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png",
    "markdown" : "![dk](uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png)"
  }
}

그룹 위키 API

Tier: Premium, Ultimate
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
원문 보기
요약

이 API를 사용하여 그룹 위키를 관리합니다. 위키 페이지의 코멘트를 notes라고 합니다. 지정된 그룹의 모든 위키 페이지를 나열합니다. 지정된 그룹의 위키 페이지를 조회합니다. 주어진 제목, 슬러그 및 콘텐츠로 특정 프로젝트의 위키 페이지를 생성합니다.

이 API를 사용하여 그룹 위키를 관리합니다. 프로젝트 위키를 위한 API도 있습니다.

위키 페이지의 코멘트를 notes라고 합니다. 코멘트와 상호작용하려면 노트 API를 사용합니다.

위키 페이지 목록 조회#

지정된 그룹의 모든 위키 페이지를 나열합니다.

GET /groups/:id/wikis
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
with_content 불리언 아니요 페이지 콘텐츠 포함.
curl \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis?with_content=1"

응답 예시:

[
  {
    "content" : "Here is an instruction how to deploy this project.",
    "format" : "markdown",
    "slug" : "deploy",
    "title" : "deploy",
    "encoding": "UTF-8"
  },
  {
    "content" : "Our development process is described here.",
    "format" : "markdown",
    "slug" : "development",
    "title" : "development",
    "encoding": "UTF-8"
  },{
    "content" : "*  [Deploy](deploy)\n*  [Development](development)",
    "format" : "markdown",
    "slug" : "home",
    "title" : "home",
    "encoding": "UTF-8"
  }
]

위키 페이지 조회#

지정된 그룹의 위키 페이지를 조회합니다.

GET /groups/:id/wikis/:slug
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
slug 문자열 위키 페이지의 URL 인코딩된 슬러그(고유 문자열)(예: dir%2Fpage_name).
render_html 불리언 아니요 위키 페이지의 렌더링된 HTML을 반환합니다.
version 문자열 아니요 위키 페이지 버전 SHA.
curl \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/home"

응답 예시:

{
  "content" : "home page",
  "format" : "markdown",
  "slug" : "home",
  "title" : "home",
  "encoding": "UTF-8"
}

위키 페이지 생성#

주어진 제목, 슬러그 및 콘텐츠로 특정 프로젝트의 위키 페이지를 생성합니다.

POST /projects/:id/wikis
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
content 문자열 위키 페이지의 콘텐츠.
title 문자열 위키 페이지의 제목.
format 문자열 아니요 위키 페이지의 형식. 사용 가능한 형식: markdown(기본값), rdoc, asciidoc, org.
curl --request POST \
     --data "format=rdoc&title=Hello&content=Hello world" \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --url "https://gitlab.example.com/api/v4/groups/1/wikis"

응답 예시:

{
  "content" : "Hello world",
  "format" : "markdown",
  "slug" : "Hello",
  "title" : "Hello",
  "encoding": "UTF-8"
}

위키 페이지 업데이트#

위키 페이지를 업데이트합니다. 위키 페이지를 업데이트하려면 최소 하나의 매개변수가 필요합니다.

PUT /groups/:id/wikis/:slug
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
content 문자열 title이 제공되지 않으면 예 위키 페이지의 콘텐츠.
title 문자열 content가 제공되지 않으면 예 위키 페이지의 제목.
format 문자열 아니요 위키 페이지의 형식. 사용 가능한 형식: markdown(기본값), rdoc, asciidoc, org.
slug 문자열 위키 페이지의 URL 인코딩된 슬러그(고유 문자열)(예: dir%2Fpage_name).
curl --request PUT \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/foo" \
  --data "format=rdoc" \
  --data "title=Docs" \
  --data "content=documentation"

응답 예시:

{
  "content" : "documentation",
  "format" : "markdown",
  "slug" : "Docs",
  "title" : "Docs",
  "encoding": "UTF-8"
}

위키 페이지 삭제#

지정된 슬러그를 가진 특정 프로젝트의 위키 페이지를 삭제합니다.

DELETE /groups/:id/wikis/:slug
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
slug 문자열 위키 페이지의 URL 인코딩된 슬러그(고유 문자열)(예: dir%2Fpage_name).
curl --request DELETE \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/foo"

성공하면 빈 본문의 204 No Content HTTP 응답이 반환됩니다.

위키 저장소에 첨부 파일 업로드#

특정 프로젝트의 위키 저장소 내 첨부 파일 폴더에 파일을 업로드합니다. 첨부 파일 폴더는 uploads 폴더입니다.

POST /groups/:id/wikis/attachments
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL 인코딩된 경로.
file 문자열 업로드할 첨부 파일.
branch 문자열 아니요 브랜치의 이름. 기본값은 위키 저장소의 기본 브랜치.

파일 시스템에서 파일을 업로드하려면 --form 인수를 사용합니다. 이렇게 하면 cURL이 Content-Type: multipart/form-data 헤더를 사용하여 데이터를 POST합니다. file= 매개변수는 파일 시스템의 파일을 가리켜야 하며 @가 앞에 와야 합니다. 예를 들면:

curl --request POST \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/groups/1/wikis/attachments" \
  --form "file=@dk.png"

응답 예시:

{
  "file_name" : "dk.png",
  "file_path" : "uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png",
  "branch" : "main",
  "link" : {
    "url" : "uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png",
    "markdown" : "![dk](uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png)"
  }
}