외관 API

Tier: Free, Premium, Ultimate
Offering: Self-Managed, GitLab Dedicated

GitLab 외관 API를 사용하면 /admin/appearance의 GitLab UI를 사용하는 것과 동일한 외관을 유지할 수 있습니다. 이 API를 사용하려면 관리자 권한이 필요합니다.

현재 외관 구성 가져오기

GitLab 인스턴스의 현재 외관 구성을 나열합니다.

GET /application/appearance
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/application/appearance"

응답 예시:

{
  "title": "GitLab Test Instance",
  "description": "gitlab-test.example.com",
  "pwa_name": "GitLab PWA",
  "pwa_short_name": "GitLab",
  "pwa_description": "GitLab as PWA",
  "pwa_icon": "/uploads/-/system/appearance/pwa_icon/1/pwa_logo.png",
  "logo": "/uploads/-/system/appearance/logo/1/logo.png",
  "header_logo": "/uploads/-/system/appearance/header_logo/1/header.png",
  "favicon": "/uploads/-/system/appearance/favicon/1/favicon.png",
  "member_guidelines": "Custom member guidelines",
  "new_project_guidelines": "Please read the FAQs for help.",
  "profile_image_guidelines": "Custom profile image guidelines",
  "header_message": "",
  "footer_message": "",
  "message_background_color": "#e75e40",
  "message_font_color": "#ffffff",
  "email_header_and_footer_enabled": false
}

외관 구성 변경

API 호출을 사용하여 GitLab 인스턴스의 외관 구성을 수정합니다.

PUT /application/appearance
속성 유형 필수 설명
title string no 로그인/가입 페이지의 인스턴스 제목
description string no 로그인/가입 페이지에 표시되는 마크다운 텍스트
pwa_name string no Progressive Web App의 전체 이름. manifest.json의 속성 name에 사용됨. 소개됨 in GitLab 15.8.
pwa_short_name string no Progressive Web App의 약식 이름. 소개됨 in GitLab 15.8.
pwa_description string no Progressive Web App의 설명. manifest.json의 속성 description에 사용됨. 소개됨 in GitLab 15.8.
pwa_icon mixed no Progressive Web App에 사용되는 아이콘. 로고 변경 참조
logo mixed no 로그인/가입 페이지에서 사용하는 인스턴스 이미지. 로고 변경 참조
header_logo mixed no 주 탐색 모음에 사용되는 인스턴스 이미지
favicon mixed no .ico 또는 .png 형식의 인스턴스 파비콘
member_guidelines string no 사용자가 멤버를 변경할 수 있는 그룹 또는 프로젝트 멤버 페이지에 표시되는 마크다운 텍스트
new_project_guidelines string no 새 프로젝트 페이지에 표시되는 마크다운 텍스트
profile_image_guidelines string no Public Avatar 아래 프로필 페이지에 표시되는 마크다운 텍스트
header_message string no 시스템 헤더 막대의 메시지
footer_message string no 시스템 하단 막대의 메시지
message_background_color string no 시스템 헤더/하단 막대의 배경색
message_font_color string no 시스템 헤더/하단 막대의 글꼴 색상
email_header_and_footer_enabled boolean no 활성화되면 모든 발신 이메일에 헤더 및 바닥글이 추가됨
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/application/appearance?email_header_and_footer_enabled=true&header_message=test"

응답 예시:

{
  "title": "GitLab Test Instance",
  "description": "gitlab-test.example.com",
  "pwa_name": "GitLab PWA",
  "pwa_short_name": "GitLab",
  "pwa_description": "GitLab as PWA",
  "pwa_icon": "/uploads/-/system/appearance/pwa_icon/1/pwa_logo.png",
  "logo": "/uploads/-/system/appearance/logo/1/logo.png",
  "header_logo": "/uploads/-/system/appearance/header_logo/1/header.png",
  "favicon": "/uploads/-/system/appearance/favicon/1/favicon.png",
  "member_guidelines": "Custom member guidelines",
  "new_project_guidelines": "Please read the FAQs for help.",
  "profile_image_guidelines": "Custom profile image guidelines",
  "header_message": "test",
  "footer_message": "",
  "message_background_color": "#e75e40",
  "message_font_color": "#ffffff",
  "email_header_and_footer_enabled": true
}

로고 변경

GitLab 인스턴스에 로고를 업로드합니다.

파일 시스템에서 아바타를 업로드하려면 --form 인수를 사용하십시오. 이렇게 하면 cURL이 Content-Type: multipart/form-data 헤더를 사용하여 데이터를 게시하게 됩니다. file = 매개변수는 파일 시스템의 이미지 파일을 가리켜야 하며@로 시작해야 합니다.

PUT /application/appearance
속성 유형 필수 설명
logo mixed 업로드할 파일
pwa_icon mixed 업로드할 파일. GitLab 15.8에서 소개됨.

예시 요청:

curl --location --request PUT "https://gitlab.example.com/api/v4/application/appearance?data=image/png" \
--header "Content-Type: multipart/form-data" \
--header "PRIVATE-TOKEN: <your_access_token>" \
--form "logo=@/path/to/logo.png"

반환된 객체:

{
   "logo":"/uploads/-/system/appearance/logo/1/logo.png"
}