ラベルの無効化、有効化、削除

このページでは、ラベルに関連する次のタスクを行う方法について説明します。

  • ラベルを無効にする
  • ラベルを有効にする
  • ラベルを削除する

ラベルを無効にする

ラベルを無効にすると、現在の公開リビジョンに基づいて、新しい無効な公開リビジョンが作成されます。下書きリビジョンがある場合は、最新の下書きリビジョンに基づいて、新しい無効な下書きリビジョンが作成されます。古いドラフト リビジョンは削除されます。詳細については、ラベルのライフサイクルをご覧ください。

無効にしても、ユーザーは API を使用してこのラベルを適用できます。すでに適用されている場所と検索結果には引き続き表示されます。無効にしたラベルは削除できます。

公開済みのラベルを無効にするには、labels コレクションで disable メソッドを使用します。

また、以下も指定する必要があります。

  • すべてのラベルを表すラベルリソース。リソース NameID が含まれます。これは、ラベルのグローバルに一意の識別子です。

  • useAdminAccess は、ユーザーの管理者認証情報を使用する場合は true です。サーバーは、アクセスを許可する前に、ユーザーがラベルの管理者であることを確認します。

この例では、ID を使用して正しいラベルを無効にします。

Python

service.labels().disable(
name='labels/ID',
body={
  'use_admin_access': True
}).execute()

Node.js

service.labels.disable({
  'resource': {
    'use_admin_access': true
},
'name': 'labels/ID'
}, (err, res) => {
  if (err) return console.error('The API returned an error: ' + err);
  console.log(res);
});

ラベルには DISABLEDState があり、ラベルのリビジョン ID はインクリメントされます。ユーザーは API を使用してラベルを適用できます。ただし、無効なラベルは、disabledPolicy メソッドの showInApply プロパティが構成されていない限り、UI に表示されません。

ラベルを有効にする

無効にしたラベルを有効にすると、公開状態に戻ります。これにより、現在無効になっている公開リビジョンに基づいて、新しい公開リビジョンが作成されます。無効になっている既存の下書きリビジョンがある場合は、その下書きに基づいて新しいリビジョンが作成され、有効になります。詳細については、ラベルのライフサイクルをご覧ください。

無効になっているラベルを有効にするには、enable メソッドを使用します。

また、以下も指定する必要があります。

  • すべてのラベルを表すラベルリソース。リソース NameID が含まれます。これは、ラベルのグローバルに一意の識別子です。

  • useAdminAccess は、ユーザーの管理者認証情報を使用する場合は true です。サーバーは、アクセスを許可する前に、ユーザーがラベルの管理者であることを確認します。

この例では、ID を使用して正しいラベルを有効にしています。

Python

service.labels().enable(
name='labels/ID',
body={
  'use_admin_access': True
}).execute()

Node.js

service.labels.enable({
  'resource': {
    'use_admin_access': true
},
'name': 'labels/ID'
}, (err, res) => {
  if (err) return console.error('The API returned an error: ' + err);
  console.log(res);
});

ラベルには PUBLISHEDState があり、ラベルのリビジョン ID はインクリメントされます。ユーザーは API を使用してラベルを表示し、ファイルに適用できます。

ラベルを削除する

削除できるのは、未公開のラベルと無効なラベルのみです。ラベルを削除すると、そのラベルが適用されていたすべてのインスタンス(ユーザーが入力した、対応する項目値を含む)が完全に削除され、ドライブ ファイルから消去されます。

ラベルを削除するには、まずラベルを無効にしてから、delete メソッドを使用する必要があります。

また、以下も指定する必要があります。

  • すべてのラベルを表すラベルリソース。リソース NameID が含まれます。これは、ラベルのグローバルに一意の識別子です。

  • useAdminAccess は、ユーザーの管理者認証情報を使用する場合は true です。サーバーは、アクセスを許可する前に、ユーザーがラベルの管理者であることを確認します。

この例では、ID を使用して正しいラベルを削除します。

Python

response = service.labels().delete(
  name='labels/ID',
  useAdminAccess=True).execute()

Node.js

service.labels.delete({
  'name': 'labels/ID',
  'use_admin_access': true
}, (err, res) => {
  if (err) return console.error('The API returned an error: ' + err);
  console.log(res);
});

ラベルには DELETEDState があり、ラベルのリビジョン ID はインクリメントされます。ラベルは適用できず、削除されたラベルは最終的にパージされます。詳細については、ラベルのライフサイクルをご覧ください。