REST Resource: labels

리소스: 라벨

라벨은 항목을 정리하고 검색하기 위해 Drive 항목에 적용할 수 있는 분류를 정의합니다. 라벨은 간단한 문자열일 수도 있고 Drive 항목을 정리하고 검색하는 데 추가로 사용할 수 있는 추가 메타데이터를 설명하는 필드를 포함할 수도 있습니다.

JSON 표현
{
  "name": string,
  "id": string,
  "revisionId": string,
  "labelType": enum (LabelType),
  "creator": {
    object (UserInfo)
  },
  "createTime": string,
  "revisionCreator": {
    object (UserInfo)
  },
  "revisionCreateTime": string,
  "publisher": {
    object (UserInfo)
  },
  "publishTime": string,
  "disabler": {
    object (UserInfo)
  },
  "disableTime": string,
  "customer": string,
  "properties": {
    object (Properties)
  },
  "lifecycle": {
    object (Lifecycle)
  },
  "displayHints": {
    object (DisplayHints)
  },
  "appliedCapabilities": {
    object (AppliedCapabilities)
  },
  "schemaCapabilities": {
    object (SchemaCapabilities)
  },
  "appliedLabelPolicy": {
    object (AppliedLabelPolicy)
  },
  "fields": [
    {
      object (Field)
    }
  ],
  "learnMoreUri": string,
  "lockStatus": {
    object (LockStatus)
  }
}
필드
name

string

출력 전용입니다. 라벨의 리소스 이름입니다. 요청에 따라 labels/{id} 또는 labels/{id}@{revisionId} 형식으로 표시됩니다. 아래의 idrevisionId를 참고하세요.

id

string

출력 전용입니다. 이 라벨의 전역 고유 식별자입니다. ID는 name 라벨의 일부를 구성하지만 name와 달리 ID는 버전 간에 일관됩니다. 다음 정규식과 일치합니다. ([a-zA-Z0-9])+

revisionId

string

출력 전용입니다. 라벨의 버전 ID입니다. 버전 ID는 발행된 요청에 따라 name 라벨의 일부일 수 있습니다. 라벨의 버전 속성이 변경될 때마다 새 버전이 생성됩니다. 다음 정규식과 일치합니다. ([a-zA-Z0-9])+

labelType

enum (LabelType)

필수 항목입니다. 라벨 유형입니다.

creator

object (UserInfo)

출력 전용입니다. 이 라벨을 만든 사용자입니다.

createTime

string (Timestamp format)

출력 전용입니다. 이 라벨이 생성된 시간입니다.

revisionCreator

object (UserInfo)

출력 전용입니다. 이 라벨 버전을 만든 사용자입니다.

revisionCreateTime

string (Timestamp format)

출력 전용입니다. 이 라벨 버전이 생성된 시간입니다.

publisher

object (UserInfo)

출력 전용입니다. 이 라벨을 게시한 사용자입니다. 라벨이 게시되지 않으면 이 값은 의미가 없습니다.

publishTime

string (Timestamp format)

출력 전용입니다. 이 라벨이 게시된 시간입니다. 라벨이 게시되지 않으면 이 값은 의미가 없습니다.

disabler

object (UserInfo)

출력 전용입니다. 이 라벨을 사용 중지한 사용자입니다. 라벨이 사용 중지되지 않은 경우 이 값은 의미가 없습니다.

disableTime

string (Timestamp format)

출력 전용입니다. 이 라벨이 사용 중지된 시간입니다. 라벨이 사용 중지되지 않은 경우 이 값은 의미가 없습니다.

customer

string

출력 전용입니다. 이 라벨이 속한 고객입니다. 예: 'customers/123abc789'

properties

object (Properties)

필수 항목입니다. 라벨의 기본 속성입니다.

lifecycle

object (Lifecycle)

출력 전용입니다. 게시, 지원 중단, 초안 변경 여부를 포함한 라벨의 수명 주기 상태입니다.

displayHints

object (DisplayHints)

출력 전용입니다. 라벨 렌더링을 위한 UI 표시 힌트

appliedCapabilities

object (AppliedCapabilities)

출력 전용입니다. 적용된 메타데이터에서 이 라벨과 관련된 기능입니다.

schemaCapabilities

object (SchemaCapabilities)

출력 전용입니다. 사용자가 이 라벨에 대해 수행할 수 있는 기능입니다.

appliedLabelPolicy

object (AppliedLabelPolicy)

출력 전용입니다. 이 라벨이 Drive 항목에 적용될 때의 동작입니다.

fields[]

object (Field)

우선순위 내림차순으로 필드 목록입니다.

learnMoreUri

string

사용자가 이 라벨과 사용 방법에 관해 자세히 알아볼 수 있도록 사용자에게 표시되는 맞춤 URL입니다.

lockStatus

object (LockStatus)

출력 전용입니다. 이 라벨의 LockStatus입니다.

LabelType

이 라벨의 유형입니다.

열거형
LABEL_TYPE_UNSPECIFIED 알 수 없는 라벨 유형입니다.
SHARED Drive 항목에 적용하기 위해 공유 라벨을 사용자와 공유할 수 있습니다.
ADMIN 관리자 소유 라벨입니다. 관리자만 만들고 수정할 수 있습니다. 일부 관리자 전용 추가 기능을 지원합니다.

사용자 정보

사용자에 관한 정보입니다.

JSON 표현
{
  "person": string
}
필드
person

string

추가 정보를 얻기 위해 People API와 함께 사용할 수 있는 사용자의 식별자입니다. 예: people/12345678

속성

라벨의 기본 속성입니다.

JSON 표현
{
  "title": string,
  "description": string
}
필드
title

string

필수 항목입니다. 라벨 제목입니다.

description

string

라벨의 설명입니다.

Lifecycle

라벨, 필드, 선택 등 객체의 수명 주기 상태입니다. 수명 주기는 다음과 같은 전환을 적용합니다.

  • UNPUBLISHED_DRAFT (시작 상태)
  • UNPUBLISHED_DRAFT -> PUBLISHED
  • UNPUBLISHED_DRAFT -> (삭제됨)
  • PUBLISHED -> DISABLED
  • DISABLED -> PUBLISHED
  • DISABLED -> (삭제됨)

게시됨 상태와 비활성화됨 상태에는 몇 가지 뚜렷한 특징이 있습니다.

  • 게시됨: 이 상태의 객체에 일부 변경사항이 있을 수 있으며 이 경우 hasUnpublishedChanges은 true입니다. 또한, 일부 유형의 변경은 허용되지 않습니다. 일반적으로 라벨과 관련된 기존 메타데이터를 무효화하거나 새로운 제한사항을 야기하는 모든 변경사항은 거부됩니다.
  • 사용 안함: 사용 중지하면 구성된 DisabledPolicy가 적용됩니다.
JSON 표현
{
  "state": enum (State),
  "hasUnpublishedChanges": boolean,
  "disabledPolicy": {
    object (DisabledPolicy)
  }
}
필드
state

enum (State)

출력 전용입니다. 이 수명 주기와 연결된 객체의 상태입니다.

hasUnpublishedChanges

boolean

출력 전용입니다. 이 수명 주기와 연결된 객체에 게시되지 않은 변경사항이 있는지 여부입니다.

disabledPolicy

object (DisabledPolicy)

사용 중지된 라벨, 필드 또는 선택 항목을 표시하는 방법을 제어하는 정책입니다.

이 수명 주기와 연결된 객체의 상태입니다.

열거형
STATE_UNSPECIFIED 알 수 없는 상태입니다.
UNPUBLISHED_DRAFT 객체의 초기 상태입니다. 게시된 후에는 객체가 이 상태로 되돌릴 수 없습니다. 객체가 게시되면 특정 유형의 변경은 더 이상 허용되지 않습니다.
PUBLISHED 객체가 게시되었습니다. hasUnpublishedChanges에 표시된 대로 객체에 게시되지 않은 초안 변경사항이 있을 수 있습니다.
DISABLED 객체가 게시되었으며 이후 사용 중지되었습니다. hasUnpublishedChanges에 표시된 대로 객체에 게시되지 않은 초안 변경사항이 있을 수 있습니다.
DELETED 객체가 삭제되었습니다.

DisabledPolicy

다양한 컨텍스트에서 사용 중지된 라벨, 필드 또는 선택 항목을 처리하는 방법을 제어하는 정책입니다.

JSON 표현
{
  "hideInSearch": boolean,
  "showInApply": boolean
}
필드
showInApply

boolean

Drive 항목의 적용 메뉴에 이 사용 중지된 객체를 표시할지 여부입니다.

  • true인 경우 객체는 일반적으로 UI에 사용 중지된 것으로 표시되며 선택이 불가능합니다.
  • false인 경우 객체는 일반적으로 UI에서 숨겨집니다.

DisplayHints

라벨 렌더링을 위한 UI 표시 힌트

JSON 표현
{
  "disabled": boolean,
  "hiddenInSearch": boolean,
  "shownInApply": boolean,
  "priority": string
}
필드
disabled

boolean

라벨을 UI에 사용 중지로 표시해야 하는지 여부입니다.

shownInApply

boolean

이 라벨은 Drive 항목에 값을 적용할 때 적용 메뉴에 표시되어야 합니다.

priority

string (int64 format)

목록에 라벨을 표시할 순서입니다.

AppliedCapabilities

이 라벨의 적용된 메타데이터에서 사용자가 가진 기능입니다.

JSON 표현
{
  "canRead": boolean,
  "canApply": boolean,
  "canRemove": boolean
}
필드
canRead

boolean

사용자가 이 라벨과 관련된 적용된 메타데이터를 읽을 수 있는지 여부입니다.

canApply

boolean

사용자가 이 라벨을 항목에 적용할 수 있는지 여부입니다.

canRemove

boolean

사용자가 항목에서 이 라벨을 삭제할 수 있는지 여부입니다.

SchemaCapabilities

라벨을 수정할 때 이 라벨과 관련된 기능입니다.

JSON 표현
{
  "canUpdate": boolean,
  "canDelete": boolean,
  "canDisable": boolean,
  "canEnable": boolean
}
필드
canUpdate

boolean

사용자가 이 라벨을 변경할 수 있는지 여부입니다.

canDelete

boolean

사용자가 이 라벨을 삭제할 수 있는지 여부입니다. 사용자에게 권한이 있어야 하며 라벨은 사용 중지되어야 합니다.

canDisable

boolean

사용자가 이 라벨을 사용 중지할 수 있는지 여부입니다. 사용자에게 권한이 있어야 하며 이 라벨이 이미 사용 중지된 상태여서는 안 됩니다.

canEnable

boolean

사용자가 이 라벨을 사용 설정할 수 있는지 여부입니다. 사용자에게 권한이 있어야 하며 이 라벨을 사용 중지해야 합니다.

AppliedLabelPolicy

이 라벨이 Drive 항목에 적용될 때의 동작입니다.

JSON 표현
{
  "copyMode": enum (CopyMode)
}
필드
copyMode

enum (CopyMode)

Drive 항목을 복사할 때 적용된 라벨 및 필드 값을 복사하는 방법을 나타냅니다.

CopyMode

Drive 항목을 복사할 때 적용된 라벨 및 필드 값을 복사하는 방법을 나타냅니다.

열거형
COPY_MODE_UNSPECIFIED 복사 모드가 지정되지 않았습니다.
DO_NOT_COPY 적용된 라벨 및 필드 값은 라벨이 적용되는 Drive 항목을 복사할 때 기본적으로 복사되지 않습니다.
ALWAYS_COPY 적용된 라벨 및 필드 값은 라벨이 적용되는 Drive 항목을 복사할 때 항상 복사됩니다. 관리자만 이 모드를 사용할 수 있습니다.
COPY_APPLIABLE 복사하는 사용자가 라벨을 적용할 수 있는 경우 적용된 라벨 및 필드 값이 복사됩니다.

필드

표시 이름, 데이터 유형, 기타 구성 옵션이 있는 필드를 정의합니다. 이 필드는 Drive 항목에 설정할 수 있는 메타데이터의 종류를 정의합니다.

JSON 표현
{
  "id": string,
  "queryKey": string,
  "properties": {
    object (Properties)
  },
  "lifecycle": {
    object (Lifecycle)
  },
  "displayHints": {
    object (DisplayHints)
  },
  "schemaCapabilities": {
    object (SchemaCapabilities)
  },
  "appliedCapabilities": {
    object (AppliedCapabilities)
  },
  "creator": {
    object (UserInfo)
  },
  "createTime": string,
  "updater": {
    object (UserInfo)
  },
  "updateTime": string,
  "publisher": {
    object (UserInfo)
  },
  "disabler": {
    object (UserInfo)
  },
  "disableTime": string,
  "lockStatus": {
    object (LockStatus)
  },

  // Union field type can be only one of the following:
  "textOptions": {
    object (TextOptions)
  },
  "integerOptions": {
    object (IntegerOptions)
  },
  "dateOptions": {
    object (DateOptions)
  },
  "selectionOptions": {
    object (SelectionOptions)
  },
  "userOptions": {
    object (UserOptions)
  }
  // End of list of possible types for union field type.
}
필드
id

string

출력 전용입니다. 라벨 또는 라이브러리 내에서 고유한 필드의 키입니다.

이 값은 자동 생성됩니다. 다음 정규식과 일치합니다. ([a-zA-Z0-9])+

queryKey

string

출력 전용입니다. 파일에서 이 필드에 정의된 값을 기반으로 파일을 찾기 위해 Drive 검색어를 구성할 때 사용하는 키입니다. 예: '{queryKey} > 2001-01-01').

properties

object (Properties)

필드의 기본 속성입니다.

lifecycle

object (Lifecycle)

출력 전용입니다. 이 필드의 수명 주기입니다.

displayHints

object (DisplayHints)

출력 전용입니다. 필드 렌더링을 위한 UI 표시 힌트

schemaCapabilities

object (SchemaCapabilities)

출력 전용입니다. 이 필드를 수정할 때 이 사용자가 가질 수 있는 권한입니다.

appliedCapabilities

object (AppliedCapabilities)

출력 전용입니다. 이 필드에서 사용자가 보유한 권한 및 Drive 항목에 라벨이 적용되었을 때의 값입니다.

creator

object (UserInfo)

출력 전용입니다. 이 필드를 만든 사용자입니다.

createTime

string (Timestamp format)

출력 전용입니다. 이 필드가 만들어진 시간입니다.

updater

object (UserInfo)

출력 전용입니다. 이 필드를 수정한 사용자입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 이 필드가 업데이트된 시간입니다.

publisher

object (UserInfo)

출력 전용입니다. 이 필드를 게시한 사용자입니다. 필드가 게시되지 않으면 이 값은 의미가 없습니다.

disabler

object (UserInfo)

출력 전용입니다. 이 필드를 사용 중지한 사용자입니다. 필드가 사용 중지되지 않은 경우 이 값은 의미가 없습니다.

disableTime

string (Timestamp format)

출력 전용입니다. 이 필드가 사용 중지된 시간입니다. 필드가 사용 중지되지 않은 경우 이 값은 의미가 없습니다.

lockStatus

object (LockStatus)

출력 전용입니다. 이 필드의 LockStatus입니다.

통합 필드 type. 이 필드의 데이터 유형 및 옵션입니다. 게시된 후에는 데이터 유형을 변경할 수 없습니다. type은 다음 중 하나여야 합니다.
textOptions

object (TextOptions)

텍스트 필드 옵션입니다.

integerOptions

object (IntegerOptions)

정수 필드 옵션입니다.

dateOptions

object (DateOptions)

날짜 필드 옵션입니다.

selectionOptions

object (SelectionOptions)

선택 필드 옵션입니다.

userOptions

object (UserOptions)

사용자 필드 옵션입니다.

TextOptions

텍스트 필드 유형의 옵션입니다.

JSON 표현
{
  "minLength": integer,
  "maxLength": integer
}
필드
minLength

integer

출력 전용입니다. 텍스트 필드 값의 최소 유효 길이입니다.

maxLength

integer

출력 전용입니다. 텍스트 필드 값의 최대 유효 길이입니다.

IntegerOptions

정수 필드 유형의 옵션입니다.

JSON 표현
{
  "minValue": string,
  "maxValue": string
}
필드
minValue

string (int64 format)

출력 전용입니다. 정수 필드의 최소 유효값입니다.

maxValue

string (int64 format)

출력 전용입니다. 정수 필드의 최대 유효 값입니다.

DateOptions

날짜 필드 유형의 옵션입니다.

JSON 표현
{
  "dateFormatType": enum (DateFormat),
  "dateFormat": string,
  "minValue": {
    object (Date)
  },
  "maxValue": {
    object (Date)
  }
}
필드
dateFormatType

enum (DateFormat)

현지화된 날짜 형식 옵션 필드 값은 언어에 따라 이 형식으로 렌더링됩니다.

dateFormat

string

출력 전용입니다. ICU 날짜 형식입니다.

minValue

object (Date)

출력 전용입니다. 최소 유효 값 (연, 월, 일)

maxValue

object (Date)

출력 전용입니다. 최대 유효 값 (연, 월, 일)

DateFormat

현지화된 날짜 형식 옵션입니다.

열거형
DATE_FORMAT_UNSPECIFIED 날짜 형식이 지정되지 않았습니다.
LONG_DATE 전체 월 이름을 포함합니다. 예: 1999년 1월 12일 (MMMM d, y)
SHORT_DATE 짧은, 숫자, 표현. 예: 12/13/99 (M/d/yy)

날짜

생일과 같은 전체 또는 부분 달력 날짜를 나타냅니다. 시간과 시간대는 아무 곳으로 지정되거나 중요하지 않습니다. 날짜는 그레고리력을 기준으로 합니다. 이는 다음 중 하나를 나타낼 수 있습니다.

  • 연도, 월, 일 값이 0이 아닌 전체 날짜
  • 월과 일, 연도는 0(예: 기념일)
  • 연도만, 월과 일은 0
  • 연도와 월, 일은 0(예: 신용카드 만료일)

관련 유형:

JSON 표현
{
  "year": integer,
  "month": integer,
  "day": integer
}
필드
year

integer

날짜의 연도입니다. 1~9999 사이여야 하며, 연도 없이 날짜를 지정하려면 0이어야 합니다.

month

integer

연도의 월입니다. 1~12 사이여야 하며, 월과 일 없이 연도를 지정하려면 0이어야 합니다.

day

integer

월의 일입니다. 1~31 사이여야 하고 해당 연도 및 월에 유효해야 합니다. 또는 연도만 지정하거나 일이 중요하지 않아 연도와 월을 지정하려면 0이어야 합니다.

SelectionOptions

선택 필드 유형의 옵션입니다.

JSON 표현
{
  "listOptions": {
    object (ListOptions)
  },
  "choices": [
    {
      object (Choice)
    }
  ]
}
필드
listOptions

object (ListOptions)

지정된 경우 이 필드가 값 목록을 지원함을 나타냅니다. 필드가 게시된 후에는 변경할 수 없습니다.

choices[]

object (Choice)

이 선택 필드에 사용할 수 있는 옵션입니다. 목록 순서는 일관되며 insertBeforeChoice로 수정됩니다.

ListOptions

연결된 필드 유형의 다중 값 변형에 대한 옵션입니다.

JSON 표현
{
  "maxEntries": integer
}
필드
maxEntries

integer

허용되는 최대 항목 수입니다.

선택

선택 필드 선택

JSON 표현
{
  "id": string,
  "properties": {
    object (Properties)
  },
  "lifecycle": {
    object (Lifecycle)
  },
  "displayHints": {
    object (DisplayHints)
  },
  "schemaCapabilities": {
    object (SchemaCapabilities)
  },
  "appliedCapabilities": {
    object (AppliedCapabilities)
  },
  "creator": {
    object (UserInfo)
  },
  "createTime": string,
  "updater": {
    object (UserInfo)
  },
  "updateTime": string,
  "publisher": {
    object (UserInfo)
  },
  "publishTime": string,
  "disabler": {
    object (UserInfo)
  },
  "disableTime": string,
  "lockStatus": {
    object (LockStatus)
  }
}
필드
id

string

선택의 고유한 값입니다. 자동 생성된 ID입니다. 다음 정규식과 일치합니다(([a-zA-Z0-9_])+).

properties

object (Properties)

선택의 기본 속성입니다.

lifecycle

object (Lifecycle)

출력 전용입니다. 서비스 선택의 수명 주기입니다.

displayHints

object (DisplayHints)

출력 전용입니다. 선택 렌더링을 위한 UI 표시 힌트

schemaCapabilities

object (SchemaCapabilities)

출력 전용입니다. 옵션을 수정할 때 이 옵션과 관련된 기능입니다.

appliedCapabilities

object (AppliedCapabilities)

출력 전용입니다. 적용된 메타데이터에서 이 선택사항과 관련된 기능입니다.

creator

object (UserInfo)

출력 전용입니다. 이 옵션을 만든 사용자입니다.

createTime

string (Timestamp format)

출력 전용입니다. 이 선택사항이 생성된 시간입니다.

updater

object (UserInfo)

출력 전용입니다. 이 옵션을 마지막으로 업데이트한 사용자입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 이 선택사항이 마지막으로 업데이트된 시간입니다.

publisher

object (UserInfo)

출력 전용입니다. 이 옵션을 게시한 사용자입니다. 선택 사항이 게시되지 않으면 이 값은 의미가 없습니다.

publishTime

string (Timestamp format)

출력 전용입니다. 이 선택사항이 게시된 시간입니다. 선택 사항이 게시되지 않으면 이 값은 의미가 없습니다.

disabler

object (UserInfo)

출력 전용입니다. 이 선택을 사용 중지한 사용자입니다. 옵션이 사용 중지되어 있지 않으면 이 값은 의미가 없습니다.

disableTime

string (Timestamp format)

출력 전용입니다. 이 선택이 사용 중지된 시간입니다. 선택이 비활성화되어 있지 않으면 이 값은 의미가 없습니다.

lockStatus

object (LockStatus)

출력 전용입니다. 이 선택의 LockStatus입니다.

속성

선택의 기본 속성입니다.

JSON 표현
{
  "displayName": string,
  "description": string,
  "badgeConfig": {
    object (BadgeConfig)
  },
  "insertBeforeChoice": string
}
필드
displayName

string

필수 항목입니다. 이 필드를 식별하는 UI에 표시할 표시 텍스트입니다.

description

string

이 라벨의 설명입니다.

badgeConfig

object (BadgeConfig)

이 선택의 배지 구성입니다. 설정되면 이 선택사항을 소유하는 라벨은 '배지가 있는 라벨'로 간주됩니다.

insertBeforeChoice

string

입력 전용입니다. 표시된 선택 항목 앞에 이 선택 항목을 삽입하거나 이동합니다. 비어 있으면 선택사항이 목록의 끝에 배치됩니다.

BadgeConfig

라벨의 배지 상태입니다.

JSON 표현
{
  "color": {
    object (Color)
  },
  "priorityOverride": string
}
필드
color

object (Color)

배지의 색상입니다. 지정하지 않으면 배지가 렌더링되지 않습니다. 여기에 설정된 배경, 전경, 단독 (밝은 모드, 어두운 모드) 색상은 Drive UI에서 지원되는 가장 가까운 색상으로 변경됩니다.

priorityOverride

string (int64 format)

이 배지의 기본 전체 우선순위를 재정의합니다. 0으로 설정하면 기본 우선순위 휴리스틱이 사용됩니다.

색상

RGBA 색상 공간의 색상을 나타냅니다. 이 표현은 간결성을 통해 다양한 언어에서 색상 표현과 색상 표현 간에 간단히 변환할 수 있도록 설계되었습니다. 예를 들어 이 표현의 필드는 Java에서 java.awt.Color의 생성자에 쉽게 제공될 수 있습니다. iOS에서 UIColor의 +colorWithRed:green:blue:alpha 메서드에 쉽게 제공될 수도 있습니다. 그리고 약간의 작업만 하면 JavaScript에서 CSS rgba() 문자열로 쉽게 형식을 지정할 수 있습니다.

이 참조 페이지에는 RGB 값(예: sRGB, Adobe RGB, DCI-P3, BT.2020)을 해석하는 데 사용해야 하는 절대 색공간에 대한 정보가 없습니다. 기본적으로 애플리케이션은 sRGB 색공간을 가정해야 합니다.

색상 동등성을 결정해야 하는 경우 달리 문서화되지 않는 한 구현에서는 모든 빨간색, 녹색, 파란색, 알파 값이 각각 최대 1e-5만큼 차이가 나는 경우 두 색상을 동일한 것으로 취급합니다.

예시(자바):

 import com.google.type.Color;

 // ...
 public static java.awt.Color fromProto(Color protocolor) {
   float alpha = protocolor.hasAlpha()
       ? protocolor.getAlpha().getValue()
       : 1.0;

   return new java.awt.Color(
       protocolor.getRed(),
       protocolor.getGreen(),
       protocolor.getBlue(),
       alpha);
 }

 public static Color toProto(java.awt.Color color) {
   float red = (float) color.getRed();
   float green = (float) color.getGreen();
   float blue = (float) color.getBlue();
   float denominator = 255.0;
   Color.Builder resultBuilder =
       Color
           .newBuilder()
           .setRed(red / denominator)
           .setGreen(green / denominator)
           .setBlue(blue / denominator);
   int alpha = color.getAlpha();
   if (alpha != 255) {
     result.setAlpha(
         FloatValue
             .newBuilder()
             .setValue(((float) alpha) / denominator)
             .build());
   }
   return resultBuilder.build();
 }
 // ...

예시(iOS / obj-C):

 // ...
 static UIColor* fromProto(Color* protocolor) {
    float red = [protocolor red];
    float green = [protocolor green];
    float blue = [protocolor blue];
    FloatValue* alpha_wrapper = [protocolor alpha];
    float alpha = 1.0;
    if (alpha_wrapper != nil) {
      alpha = [alpha_wrapper value];
    }
    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
 }

 static Color* toProto(UIColor* color) {
     CGFloat red, green, blue, alpha;
     if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
       return nil;
     }
     Color* result = [[Color alloc] init];
     [result setRed:red];
     [result setGreen:green];
     [result setBlue:blue];
     if (alpha <= 0.9999) {
       [result setAlpha:floatWrapperWithValue(alpha)];
     }
     [result autorelease];
     return result;
}
// ...

예시(자바스크립트):

// ...

var protoToCssColor = function(rgb_color) {
   var redFrac = rgb_color.red || 0.0;
   var greenFrac = rgb_color.green || 0.0;
   var blueFrac = rgb_color.blue || 0.0;
   var red = Math.floor(redFrac * 255);
   var green = Math.floor(greenFrac * 255);
   var blue = Math.floor(blueFrac * 255);

   if (!('alpha' in rgb_color)) {
      return rgbToCssColor(red, green, blue);
   }

   var alphaFrac = rgb_color.alpha.value || 0.0;
   var rgbParams = [red, green, blue].join(',');
   return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};

var rgbToCssColor = function(red, green, blue) {
  var rgbNumber = new Number((red << 16) | (green << 8) | blue);
  var hexString = rgbNumber.toString(16);
  var missingZeros = 6 - hexString.length;
  var resultBuilder = ['#'];
  for (var i = 0; i < missingZeros; i++) {
     resultBuilder.push('0');
  }
  resultBuilder.push(hexString);
  return resultBuilder.join('');
};

// ...
JSON 표현
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
필드
red

number

[0, 1] 간격의 값으로 표시되는 색상의 빨간색 양입니다.

green

number

[0, 1] 간격의 값으로 표시되는 색상의 녹색 양입니다.

blue

number

[0, 1] 간격의 값으로 표시되는 색상의 파란색 양입니다.

alpha

number

픽셀에 적용해야 하는 이 색상의 비율입니다. 즉, 최종 픽셀 색상은 등식으로 정의됩니다.

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

즉, 1.0 값은 단색에 해당하는 반면 0.0 값은 완전히 투명한 색상에 해당합니다. 이 옵션은 단순한 부동 소수점 스칼라 대신 래퍼 메시지를 사용하므로 기본값과 설정되지 않은 값을 구분할 수 있습니다. 생략하면 이 색상 객체가 단색으로 렌더링됩니다 (알파 값에 1.0 값이 명시적으로 지정된 것처럼).

DisplayHints

옵션 렌더링을 위한 UI 표시 힌트

JSON 표현
{
  "disabled": boolean,
  "hiddenInSearch": boolean,
  "shownInApply": boolean,
  "badgeColors": {
    object (BadgeColors)
  },
  "darkBadgeColors": {
    object (BadgeColors)
  },
  "badgePriority": string
}
필드
disabled

boolean

옵션을 UI에 사용 중지로 표시할지 여부입니다.

shownInApply

boolean

Drive 항목에 값을 적용할 때 적용 메뉴에 이 옵션이 표시되어야 합니다.

badgeColors

object (BadgeColors)

배지에 사용할 색상입니다. 선택한 properties.badge_config.color에 따라 Google Material 색상으로 변경되었습니다.

darkBadgeColors

object (BadgeColors)

배지에 사용할 어두운 모드 색상입니다. 선택한 properties.badge_config.color에 따라 Google Material 색상으로 변경되었습니다.

badgePriority

string (int64 format)

이 배지의 우선순위입니다. 여러 배지를 비교하고 정렬하는 데 사용됩니다. 숫자가 낮을수록 배지가 먼저 표시되어야 합니다. 배지 구성이 없으면 0이 됩니다. 그렇지 않으면 라벨 생성 날짜와 필드 및 옵션 우선순위를 선호하는 BadgeConfig.priority_override 또는 기본 휴리스틱으로 설정됩니다.

BadgeColors

BadgeConfig에서 파생되고 지원되는 가장 가까운 색상으로 변경된 색상입니다.

JSON 표현
{
  "backgroundColor": {
    object (Color)
  },
  "foregroundColor": {
    object (Color)
  },
  "soloColor": {
    object (Color)
  }
}
필드
backgroundColor

object (Color)

출력 전용입니다. 전경과 쌍을 이루는 배지 배경

foregroundColor

object (Color)

출력 전용입니다. 배경과 쌍을 이루는 배지 전경

soloColor

object (Color)

출력 전용입니다. 배경이 없는 텍스트에 사용할 수 있는 색상입니다.

SchemaCapabilities

선택 항목을 수정할 때 이 선택과 관련된 기능입니다.

JSON 표현
{
  "canUpdate": boolean,
  "canDelete": boolean,
  "canDisable": boolean,
  "canEnable": boolean
}
필드
canUpdate

boolean

사용자가 이 선택사항을 업데이트할 수 있는지 여부입니다.

canDelete

boolean

사용자가 이 선택사항을 삭제할 수 있는지 여부입니다.

canDisable

boolean

사용자가 이 선택을 사용 중지할 수 있는지 여부입니다.

canEnable

boolean

사용자가 이 옵션을 사용 설정할 수 있는지 여부입니다.

AppliedCapabilities

적용된 메타데이터에서 이 선택사항과 관련된 기능입니다.

JSON 표현
{
  "canRead": boolean,
  "canSearch": boolean,
  "canSelect": boolean
}
필드
canRead

boolean

사용자가 항목에 적용된 관련 메타데이터를 읽을 수 있는지 여부입니다.

canSelect

boolean

사용자가 항목에서 이 옵션을 선택할 수 있는지 여부입니다.

LockStatus

라벨 구성요소를 잠긴 것으로 간주해야 하는지에 대한 정보가 포함되어 있습니다.

JSON 표현
{
  "locked": boolean
}
필드
locked

boolean

출력 전용입니다. 이 라벨 구성요소가 LabelLock의 (직접) 대상인지를 나타냅니다. 라벨 구성요소는 LabelLock의 직접 대상이 아니더라도 암시적으로 잠길 수 있으며, 이 경우 이 필드는 false로 설정됩니다.

UserOptions

사용자 필드 유형의 옵션입니다.

JSON 표현
{
  "listOptions": {
    object (ListOptions)
  }
}
필드
listOptions

object (ListOptions)

지정된 경우 이 필드가 값 목록을 지원함을 나타냅니다. 필드가 게시된 후에는 변경할 수 없습니다.

속성

필드의 기본 속성입니다.

JSON 표현
{
  "displayName": string,
  "required": boolean,
  "insertBeforeField": string
}
필드
displayName

string

필수 항목입니다. 이 필드를 식별하는 UI에 표시할 표시 텍스트입니다.

required

boolean

필드가 필수로 표시되어야 하는지 여부입니다.

insertBeforeField

string

입력 전용입니다. 표시된 필드 앞에 이 필드를 삽입하거나 이동합니다. 비어 있으면 필드가 목록의 끝에 배치됩니다.

DisplayHints

필드 렌더링을 위한 UI 표시 힌트

JSON 표현
{
  "required": boolean,
  "disabled": boolean,
  "hiddenInSearch": boolean,
  "shownInApply": boolean
}
필드
required

boolean

필드가 UI에 필요에 따라 표시되어야 하는지 여부입니다.

disabled

boolean

필드가 사용 중지로 UI에 표시되어야 하는지 여부입니다.

shownInApply

boolean

이 필드는 Drive 항목에 값을 적용할 때 적용 메뉴에 표시되어야 합니다.

SchemaCapabilities

필드를 수정할 때 이 필드와 관련된 기능입니다.

JSON 표현
{
  "canUpdate": boolean,
  "canDelete": boolean,
  "canDisable": boolean,
  "canEnable": boolean
}
필드
canUpdate

boolean

사용자가 이 필드를 변경할 수 있는지 여부입니다.

canDelete

boolean

사용자가 이 필드를 삭제할 수 있는지 여부입니다. 사용자에게 권한이 있어야 하며 필드는 지원 중단되어야 합니다.

canDisable

boolean

사용자가 이 필드를 사용 중지할 수 있는지 여부입니다. 사용자에게 권한이 있어야 하며 이 필드가 이미 사용 중지되어 있으면 안 됩니다.

canEnable

boolean

사용자가 이 필드를 사용 설정할 수 있는지 여부입니다. 사용자에게 권한이 있어야 하며 이 필드는 사용 중지해야 합니다.

AppliedCapabilities

적용된 메타데이터에서 이 필드와 관련된 기능입니다.

JSON 표현
{
  "canRead": boolean,
  "canSearch": boolean,
  "canWrite": boolean
}
필드
canRead

boolean

사용자가 항목에 적용된 관련 메타데이터를 읽을 수 있는지 여부입니다.

canWrite

boolean

사용자가 Drive 항목에서 이 필드를 설정할 수 있는지 여부입니다.

메서드

create

새 라벨을 만듭니다.

delete

Drive 항목에서 라벨 및 관련 메타데이터를 영구 삭제합니다.

delta

일련의 업데이트 요청을 적용하여 새로운 초안 버전을 생성함으로써 단일 라벨을 업데이트합니다.

disable

게시된 라벨을 사용 중지합니다.

enable

사용 중지된 라벨을 사용 설정하고 게시된 상태로 복원합니다.

get

리소스 이름으로 라벨을 가져옵니다.

list

라벨을 나열합니다.

publish

모든 초안 변경사항을 라벨에 게시합니다.

updateLabelCopyMode

라벨의 CopyMode를 업데이트합니다.

updatePermissions

라벨의 권한을 업데이트합니다.