방송 메시지 API

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

방송 메시지 API는 방송 메시지에서 작동합니다.

GET 요청은 인증이 필요하지 않습니다. 모든 다른 방송 메시지 API 엔드포인트는 관리자를 통해서만 접근할 수 있습니다. 비 GET 요청에 대한:

  • 게스트는 401 Unauthorized를 반환합니다.
  • 일반 사용자는 403 Forbidden을 반환합니다.

모든 방송 메시지 가져오기

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

모든 방송 메시지를 나열합니다.

GET /broadcast_messages  

예시 요청:

curl "https://gitlab.example.com/api/v4/broadcast_messages"  

예시 응답:

[  
    {  
        "message":"예시 방송 메시지",  
        "starts_at":"2016-08-24T23:21:16.078Z",  
        "ends_at":"2016-08-26T23:21:16.080Z",  
        "font":"#FFFFFF",  
        "id":1,  
        "active": false,  
        "target_access_levels": [10,30],  
        "target_path": "*/welcome",  
        "broadcast_type": "banner",  
        "dismissable": false  
    }  
]  

특정 방송 메시지 가져오기

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

특정 방송 메시지를 가져옵니다.

GET /broadcast_messages/:id  

매개변수:

속성 유형 필수 설명
id 정수 검색할 방송 메시지의 ID.

예시 요청:

curl "https://gitlab.example.com/api/v4/broadcast_messages/1"  

예시 응답:

{  
    "message":"배포 진행 중",  
    "starts_at":"2016-08-24T23:21:16.078Z",  
    "ends_at":"2016-08-26T23:21:16.080Z",  
    "font":"#FFFFFF",  
    "id":1,  
    "active":false,  
    "target_access_levels": [10,30],  
    "target_path": "*/welcome",  
    "broadcast_type": "banner",  
    "dismissable": false  
}  

방송 메시지 생성

새로운 방송 메시지를 생성합니다.

POST /broadcast_messages  

매개변수:

속성 유형 필수 설명
message 문자열 표시할 메시지.
starts_at 날짜시간 아니오 시작 시간 (기본값: 현재 UTC 시간). ISO 8601 형식으로 예상 (2019-03-15T08:00:00Z)
ends_at 날짜시간 아니오 종료 시간 (기본값: 현재 시간에서 1시간 후 UTC). ISO 8601 형식으로 예상 (2019-03-15T08:00:00Z)
font 문자열 아니오 전경 색상 헥스 코드.
target_access_levels 정수 배열 아니오 방송 메시지의 대상 접근 수준(역할).
target_path 문자열 아니오 방송 메시지의 대상 경로.
broadcast_type 문자열 아니오 표시 유형 (기본값: 배너)
dismissable 부울 아니오 사용자가 메시지를 닫을 수 있습니까?

target_access_levelsGitlab::Access 모듈에서 정의됩니다.
다음 수준이 유효합니다:

  • 게스트 (10)
  • 리포터 (20)
  • 개발자 (30)
  • 유지 관리 (40)
  • 소유자 (50)

예시 요청:

curl --data "message=배포 진행 중&target_access_levels[]=10&target_access_levels[]=30" \  
     --header "PRIVATE-TOKEN: <your_access_token>" \  
     "https://gitlab.example.com/api/v4/broadcast_messages"  

예시 응답:

{  
    "message":"배포 진행 중",  
    "starts_at":"2016-08-26T00:41:35.060Z",  
    "ends_at":"2016-08-26T01:41:35.060Z",  
    "font":"#FFFFFF",  
    "id":1,  
    "active": true,  
    "target_access_levels": [10,30],  
    "target_path": "*/welcome",  
    "broadcast_type": "notification",  
    "dismissable": false  
}  

방송 메시지 업데이트

기존 방송 메시지를 업데이트합니다.

PUT /broadcast_messages/:id

매개변수:

속성 유형 필수 설명
id 정수 업데이트할 방송 메시지의 ID입니다.
message 문자열 아니오 표시할 메시지입니다.
starts_at 날짜 및 시간 아니오 시작 시간(UTC). ISO 8601 형식으로 예상됩니다(2019-03-15T08:00:00Z)
ends_at 날짜 및 시간 아니오 종료 시간(UTC). ISO 8601 형식으로 예상됩니다(2019-03-15T08:00:00Z)
font 문자열 아니오 전경색 헥스 코드입니다.
target_access_levels 정수 배열 아니오 방송 메시지의 대상 접근 수준(역할)입니다.
target_path 문자열 아니오 방송 메시지의 대상 경로입니다.
broadcast_type 문자열 아니오 모양 유형(기본값은 배너)
dismissable 부울 아니오 사용자가 메시지를 닫을 수 있습니까?

target_access_levelsGitlab::Access 모듈에 정의되어 있습니다.

유효한 접근 수준은 다음과 같습니다:

  • 게스트(10)
  • 리포터(20)
  • 개발자(30)
  • 유지 관리자(40)
  • 소유자(50)

예시 요청:

curl --request PUT --data "message=Update message" \
     --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/broadcast_messages/1"

예시 응답:

{
    "message":"Update message",
    "starts_at":"2016-08-26T00:41:35.060Z",
    "ends_at":"2016-08-26T01:41:35.060Z",
    "font":"#FFFFFF",
    "id":1,
    "active": true,
    "target_access_levels": [10,30],
    "target_path": "*/welcome",
    "broadcast_type": "notification",
    "dismissable": false
}

방송 메시지 삭제

방송 메시지를 삭제합니다.

DELETE /broadcast_messages/:id

매개변수:

속성 유형 필수 설명
id 정수 삭제할 방송 메시지의 ID입니다.

예시 요청:

curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/broadcast_messages/1"