이 페이지에서는 라벨을 만들고 게시하는 방법을 설명합니다.
라벨 만들기
라벨을 만들려면 labels
컬렉션에서 create
메서드를 사용합니다. 라벨은 선택적으로 하나 이상의 Fields
를 포함할 수 있습니다.
다음도 지정해야 합니다.
property
메서드를 통한 라벨title
useAdminAccess
는 사용자의 관리자 사용자 인증 정보를 사용하는true
입니다. 서버는 액세스를 허용하기 전에 사용자가 '라벨 관리' 권한이 있는 관리자인지 확인합니다.
이 예에서는 지정된 제목과 2개의 Choices
가 있는 SelectionOptions
Field
1개가 있는 표준 관리자 라벨을 만듭니다.
Python
label_body = {
'label_type': 'ADMIN',
'properties': {
'title': 'TITLE'
},
'fields': [{
'properties': {
'display_name': 'DISPLAY_NAME'
},
'selection_options': {
'list_options': {},
'choices': [{
'properties': {
'display_name': 'CHOICE_1'
}
}, {
'properties': {
'display_name': 'CHOICE_2'
}
}]
}
}]
}
response = service.labels().create(
body=label_body, useAdminAccess=True).execute()
Node.js
var label = {
'label_type': 'ADMIN',
'properties': {
'title': 'TITLE'
},
'fields': [{
'properties': {
'display_name': 'DISPLAY_NAME'
},
'selection_options': {
'list_options': {},
'choices': [{
'properties': {
'display_name': 'CHOICE_1'
}
}, {
'properties': {
'display_name': 'CHOICE_2'
}
}]
}
}]
};
service.labels.create({
'resource': label,
'use_admin_access': true
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
라벨은 UNPUBLISHED_DRAFT
State
에서 생성됩니다. 파일에 사용하고 사용자에게 표시하려면 PUBLISHED
여야 합니다. 자세한 내용은 라벨 수명 주기를 참고하세요.
라벨 한도
라벨을 만들고 적용할 때 다음과 같은 한도가 적용됩니다.
- 표준 라벨: 150개
- 라벨당 필드: 10개
- 파일당 사용자가 적용한 라벨: 5개
라벨에서 필드 사용하기
Field Type |
사용자가 할 수 있는 작업 | 형식 고려사항 및 한도 |
---|---|---|
SelectionOptions |
목록에서 옵션을 하나 이상 선택합니다. | 지원되는 최대 옵션 수는 200개입니다.ListOptions 에서 구성된 대로 파일의 최대 선택 항목 수는 10개입니다. |
IntegerOptions |
숫자 값 입력 | 숫자만 지원됩니다. |
DateOptions |
캘린더 날짜 선택 | (선택사항) Date format 를 '긴 형식: Month DD, YYYY' 또는 '짧은 형식: MM/DD/YY'로 설정할 수 있습니다. |
TextOptions |
텍스트 상자에 텍스트 입력 | 지원되는 최대 글자 수는 100자(영문 기준)입니다. |
UserOptions |
Google Workspace 연락처에서 사용자를 한 명 이상 선택합니다. | 파일의 최대 사용자 항목 수는 ListOptions 에서 구성된 대로 10개입니다. |
라벨 게시하기
Labels API를 사용하면 초안 라벨이 완성되면 게시할 수 있습니다.
라벨을 게시하려면 publish
메서드를 사용하고 다음을 지정합니다.
모든 라벨을 나타내는 라벨 리소스입니다. 리소스
Name
및ID
(라벨의 전역 고유 식별자)가 포함됩니다.useAdminAccess
는 사용자의 관리자 사용자 인증 정보를 사용하는true
입니다. 서버는 액세스를 허용하기 전에 사용자가 '라벨 관리' 권한이 있는 관리자인지 확인합니다.
이 예에서는 ID
를 사용하여 올바른 라벨을 식별하고 게시합니다.
Python
service.labels().publish(
name='labels/ID',
body={
'use_admin_access': True
}).execute()
Node.js
service.labels.publish({
'resource': {
'use_admin_access': true
},
'name': 'labels/ID'
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
라벨이 게시되면 라벨이 PUBLISHED
State
로 이동하고 라벨의 버전 ID가 증가합니다. 그러면 라벨이 사용자에게 표시되고 파일에 적용할 수 있습니다. 자세한 내용은 라벨 수명 주기를 참고하세요.
라벨 게시 시 제약조건
라벨이 게시되면 원래의 초안 상태로 되돌릴 수 없습니다. 자세한 내용은 라벨 수명 주기를 참고하세요.
라벨을 게시하면 새로 게시된 버전이 생성됩니다. 이전의 모든 초안 수정사항이 삭제됩니다. 이전에 게시된 버전은 유지되지만 필요에 따라 자동으로 삭제될 수 있습니다.
게시된 후에는 일부 변경사항이 더 이상 허용되지 않습니다. 일반적으로 이는 라벨과 관련된 기존 메타데이터의 유효성을 무효화하거나 새로운 제한을 트리거하는 모든 변경사항이 거부된다는 것을 의미합니다. 예를 들어 라벨이 게시된 후에는 다음과 같은 라벨 변경사항이 허용되지 않습니다.
- 라벨이 직접 삭제됩니다. 먼저 사용 중지한 다음 삭제해야 합니다.
Field.FieldType
가 변경됩니다.- 필드 유효성 검사 옵션 업데이트로 인해 이전에 허용된 항목이 거부됩니다.
- 최대 항목 수가 감소합니다.