REST Resource: customers.policySchemas

資源:PolicySchema

代表政策結構定義的資源。

JSON 表示法
{
  "name": string,
  "policyDescription": string,
  "additionalTargetKeyNames": [
    {
      object (AdditionalTargetKeyName)
    }
  ],
  "definition": {
    object (FileDescriptorProto)
  },
  "fieldDescriptions": [
    {
      object (PolicySchemaFieldDescription)
    }
  ],
  "accessRestrictions": [
    string
  ],
  "notices": [
    {
      object (PolicySchemaNoticeDescription)
    }
  ],
  "supportUri": string,
  "schemaName": string,
  "validTargetResources": [
    enum (TargetResource)
  ],
  "policyApiLifecycle": {
    object (PolicyApiLifecycle)
  },
  "categoryTitle": string
}
欄位
name

string

格式:name=customers/{customer}/policySchemas/{schema_namespace}

policyDescription

string

僅供輸出。使用者用量政策結構定義的說明。

additionalTargetKeyNames[]

object (AdditionalTargetKeyName)

僅供輸出。要用來識別政策值目標的其他鍵名。指定 policyTargetKey 時,此處指定的每個額外鍵都必須包含在 additionalTargetKeys 對應中。

definition

object (FileDescriptorProto)

使用 proto 描述元定義結構定義。

fieldDescriptions[]

object (PolicySchemaFieldDescription)

僅供輸出。屬於結構定義的每個欄位的詳細說明。

accessRestrictions[]

string

僅供輸出。與這項政策相關的特定存取權限制。

notices[]

object (PolicySchemaNoticeDescription)

僅供輸出。特別通知訊息,與在結構定義中的某些欄位設定特定值有關。

supportUri

string

僅供輸出。這個結構定義相關支援文章的 URI。

schemaName

string

僅供輸出。政策架構的完整名稱。在呼叫 orgunits.batchInherit orgunits.batchModify groups.batchModifygroups.batchDelete 時,這個值是用來填入 PolicyValue 中的 policySchema 欄位。

validTargetResources[]

enum (TargetResource)

僅供輸出。政策適用目標資源的相關資訊。

policyApiLifecycle

object (PolicyApiLifecycle)

僅供輸出。當前生命週期資訊。

categoryTitle

string

設定所屬類別的標題。

AdditionalTargetKeyName

要用來識別政策值目標的其他鍵名。

JSON 表示法
{
  "key": string,
  "keyDescription": string
}
欄位
key

string

金鑰名稱。

keyDescription

string

金鑰說明。

FileDescriptorProto

說明完整的 .proto 檔案。

JSON 表示法
{
  "name": string,
  "package": string,
  "messageType": [
    {
      object (DescriptorProto)
    }
  ],
  "enumType": [
    {
      object (EnumDescriptorProto)
    }
  ],
  "syntax": string
}
欄位
name

string

檔案名稱 (相對於來源樹狀結構根目錄)

package

string

例如「foo」、「foo.bar」等

messageType[]

object (DescriptorProto)

這個檔案中的所有頂層定義。

enumType[]

object (EnumDescriptorProto)

syntax

string

proto 檔案的語法。支援的值為「proto2」、「proto3」和「editions」。

如有 edition,這個值必須是「editions」。

DescriptorProto

說明訊息類型。

JSON 表示法
{
  "name": string,
  "field": [
    {
      object (FieldDescriptorProto)
    }
  ],
  "nestedType": [
    {
      object (DescriptorProto)
    }
  ],
  "enumType": [
    {
      object (EnumDescriptorProto)
    }
  ],
  "oneofDecl": [
    {
      object (OneofDescriptorProto)
    }
  ]
}
欄位
name

string

field[]

object (FieldDescriptorProto)

nestedType[]

object (DescriptorProto)

enumType[]

object (EnumDescriptorProto)

oneofDecl[]

object (OneofDescriptorProto)

FieldDescriptorProto

說明訊息中的欄位。

JSON 表示法
{
  "name": string,
  "number": integer,
  "label": enum (Label),
  "type": enum (Type),
  "typeName": string,
  "defaultValue": string,
  "oneofIndex": integer,
  "jsonName": string,
  "proto3Optional": boolean
}
欄位
name

string

number

integer

label

enum (Label)

type

enum (Type)

如果已設定 typeName,則無需設定此類型。如果同時設定了 this 和 typeName,則必須是 TYPE_ENUM、TYPE_MESSAGE 或 TYPE_GROUP。

typeName

string

如果是訊息和列舉類型,這是類型的名稱。如果名稱開頭為「.」,表示為完整名稱。否則,系統會使用 C++ 類似的範圍規則來尋找類型 (例如:先搜尋這個訊息中的巢狀結構類型,然後搜尋該訊息內的巢狀類型,再到根命名空間為止)。

defaultValue

string

如果是數字類型,包含值的原始文字表示法。如果是布林值,則為「true」或「false」。如為字串,則包含預設文字內容 (未以任何方式逸出)。如果是位元組,包含 C 逸出值。所有 >= 128 的位元組都會逸出。

oneofIndex

integer

設定後,請為包含類型的 oneofDecl 清單提供其中一個索引。這個欄位是該欄位的成員。

jsonName

string

這個欄位的 JSON 名稱。這個值是由通訊協定編譯器設定。如果使用者已在這個欄位中設定「jsonName」選項,系統就會使用該選項的值。否則,這些資料是從欄位名稱轉換為駝峰式大小寫。

proto3Optional

boolean

如果為 true,則這是 proto3「選用」。如果 proto3 為選用欄位,則無論欄位類型為何,都會追蹤是否存在。

如果 proto3Optional 為 true,這個欄位必須屬於其中之一,才能向舊 proto3 用戶端指出這個欄位已追蹤到這個欄位。這會被稱為「合成」之一,而這個欄位必須是唯一的成員 (每個 proto3 選用欄位都會取得專屬的合成選項)。合成項目之一隻在描述元中提供,不會產生任何 API。合成其中一個必須按照「真實」的句子排序。

對於訊息欄位,proto3Optional 不會建立任何語意變更,因為非重複的訊息欄位一律會追蹤在家狀態。不過,狀態仍能指出使用者是否「選用」的語意詳細資料。這對於往返 .proto 檔案來說非常實用。為保持一致性,我們會為訊息欄位提供其中一種合成資訊,即使對方不需要追蹤在家狀態也一樣。這個方式尤其重要,因為剖析器無法辨別欄位是訊息還是列舉,所以一律必須建立綜合項目。

Proto2 選用欄位已利用 LABEL_OPTIONAL 表示選填欄位,因此不會設定這個標記。

標籤

列舉
LABEL_OPTIONAL 0 為錯誤保留天數
LABEL_REQUIRED
LABEL_REPEATED

類型

列舉
TYPE_DOUBLE 0 代表錯誤。基於歷史因素,訂單未正常運作。
TYPE_FLOAT
TYPE_INT64 未採用 ZigZag 編碼。負數需要 10 個位元組。如果可能發生負值,請使用 TYPE_SINT64。
TYPE_UINT64
TYPE_INT32 未採用 ZigZag 編碼。負數需要 10 個位元組。如果可能發生負值,請使用 TYPE_SINT32。
TYPE_FIXED64
TYPE_FIXED32
TYPE_BOOL
TYPE_STRING
TYPE_GROUP 代碼分隔匯總。群組類型已淘汰,且 proto3 不支援。不過,Proto3 實作仍應能剖析群組傳輸格式,並將群組欄位視為不明欄位。
TYPE_MESSAGE 長度分隔的匯總。
TYPE_BYTES 第 2 版的新功能。
TYPE_UINT32
TYPE_ENUM
TYPE_SFIXED32
TYPE_SFIXED64
TYPE_SINT32 使用 ZigZag 編碼。
TYPE_SINT64 使用 ZigZag 編碼。

EnumDescriptorProto

說明列舉類型。

JSON 表示法
{
  "name": string,
  "value": [
    {
      object (EnumValueDescriptorProto)
    }
  ]
}
欄位
name

string

value[]

object (EnumValueDescriptorProto)

EnumValueDescriptorProto

說明列舉中的值。

JSON 表示法
{
  "name": string,
  "number": integer
}
欄位
name

string

number

integer

OneofDescriptorProto

用於說明其中一種。

JSON 表示法
{
  "name": string
}
欄位
name

string

PolicySchemaFieldDescription

提供 PolicySchema 中特定欄位的詳細資訊。

JSON 表示法
{
  "field": string,
  "description": string,
  "inputConstraint": string,
  "knownValueDescriptions": [
    {
      object (PolicySchemaFieldKnownValueDescription)
    }
  ],
  "nestedFieldDescriptions": [
    {
      object (PolicySchemaFieldDescription)
    }
  ],
  "fieldDependencies": [
    {
      object (PolicySchemaFieldDependencies)
    }
  ],
  "requiredItems": [
    {
      object (PolicySchemaRequiredItems)
    }
  ],
  "defaultValue": value,
  "name": string,
  "fieldDescription": string,
  "fieldConstraints": {
    object (FieldConstraints)
  }
}
欄位
field

string

僅供輸出。與說明相關聯的欄位名稱。

description
(deprecated)

string

已淘汰,請改用 name 和 fieldDescription。欄位的說明。

inputConstraint

string

僅供輸出。與欄位值相關聯的任何輸入限制。

knownValueDescriptions[]

object (PolicySchemaFieldKnownValueDescription)

僅供輸出。如果該欄位有一組已知的值,這個欄位將會提供這些值的說明。

nestedFieldDescriptions[]

object (PolicySchemaFieldDescription)

僅供輸出。如果欄位是定義多個欄位的訊息類型,請在這個欄位提供巢狀欄位的說明。

fieldDependencies[]

object (PolicySchemaFieldDependencies)

僅供輸出。提供欄位和值的清單。至少有一個欄位必須具備對應的值,才能設定這個欄位。

requiredItems[]

object (PolicySchemaRequiredItems)

僅供輸出。提供當這個欄位有特定值時,必須設定的欄位清單。

defaultValue

value (Value format)

僅供輸出。如果不設定這項政策,則為用戶端預設值。

name

string

僅供輸出。欄位名稱。

fieldDescription

string

僅供輸出。欄位的說明。

fieldConstraints

object (FieldConstraints)

僅供輸出。與欄位值相關聯的任何輸入限制相關資訊。

PolicySchemaFieldKnownValueDescription

針對 PolicySchema 中特定欄位允許的已知值提供詳細資訊。

JSON 表示法
{
  "value": string,
  "description": string
}
欄位
value

string

僅供輸出。該欄位可設定的值的重新解析字串。

description

string

僅供輸出。這個值的其他說明。

PolicySchemaFieldDependencies

必須將某個欄位及其值設為允許設定其他欄位的值。

JSON 表示法
{
  "sourceField": string,
  "sourceFieldValue": string
}
欄位
sourceField

string

這個欄位所依賴的來源欄位。

sourceFieldValue

string

這個欄位必須包含來源欄位的值,系統才會允許設定。

PolicySchemaRequiredItems

根據這個欄位的值,必須加入的欄位。

JSON 表示法
{
  "fieldConditions": [
    string
  ],
  "requiredFields": [
    string
  ]
}
欄位
fieldConditions[]

string

叫用必填欄位強制執行作業的欄位值。如果 fieldCondition 為空白,表示指派給這個欄位的任何值都會叫用必填欄位。

requiredFields[]

string

因欄位條件而需要的欄位。

FieldConstraints

任何範圍限制的相關資訊。

JSON 表示法
{
  "numericRangeConstraint": {
    object (NumericRangeConstraint)
  },
  "uploadedFileConstraints": {
    object (UploadedFileConstraints)
  }
}
欄位
numericRangeConstraint

object (NumericRangeConstraint)

數值欄位的允許範圍。

uploadedFileConstraints

object (UploadedFileConstraints)

檔案政策上傳檔案的限制。如果存在這項政策,必須透過上傳符合此 proto 所指定限制的檔案來擷取網址。

NumericRangeConstraint

上限和/或下限,已設定至少一個限制。

JSON 表示法
{
  "minimum": string,
  "maximum": string
}
欄位
minimum

string (int64 format)

最小值。

maximum

string (int64 format)

最大值。

UploadedFileConstraints

檔案政策上傳檔案的限制。

JSON 表示法
{
  "supportedContentTypes": [
    enum (ContentType)
  ],
  "sizeLimitBytes": string
}
欄位
supportedContentTypes[]

enum (ContentType)

可上傳至設定的檔案類型。

sizeLimitBytes

string (int64 format)

設定中上傳檔案的大小上限,以位元組為單位。

ContentType

可上傳至設定的檔案類型。

列舉
CONTENT_TYPE_UNSPECIFIED 未指定的內容類型。
CONTENT_TYPE_PLAIN_TEXT 純文字。
CONTENT_TYPE_HTML
CONTENT_TYPE_IMAGE_JPEG JPEG。
CONTENT_TYPE_IMAGE_GIF GIF。
CONTENT_TYPE_IMAGE_PNG .PNG 的格式上傳圖片。
CONTENT_TYPE_JSON JSON。
CONTENT_TYPE_ZIP ZIP 檔案。
CONTENT_TYPE_GZIP GZIP.
CONTENT_TYPE_CSV CSV。
CONTENT_TYPE_YAML YAML 格式
CONTENT_TYPE_IMAGE_WEBP WEBP。

PolicySchemaNoticeDescription

針對屬於 PolicySchema 的欄位中,提供與特定值相關的特殊通知訊息。

JSON 表示法
{
  "field": string,
  "noticeValue": string,
  "noticeMessage": string,
  "acknowledgementRequired": boolean
}
欄位
field

string

僅供輸出。與通知相關聯的欄位名稱。

noticeValue

string

僅供輸出。發出通知的欄位值。將這個欄位設為這個值時,可能需要使用者確認通知訊息,才能設定值。

noticeMessage

string

僅供輸出。通知訊息會與欄位值相關聯。

acknowledgementRequired

boolean

僅供輸出。指定是否要讓使用者先確認通知訊息。

TargetResource

目標資源類型

列舉
TARGET_RESOURCE_UNSPECIFIED 未指定的目標資源。
ORG_UNIT 機構單位目標資源。
GROUP 群組目標資源。

PolicyApiLifecycle

JSON 表示法
{
  "policyApiLifecycleStage": enum (PolicyApiLifecycleEnum),
  "description": string,
  "endSupport": {
    object (Date)
  },
  "deprecatedInFavorOf": [
    string
  ]
}
欄位
policyApiLifecycleStage

enum (PolicyApiLifecycleEnum)

指出政策 API 目前的生命週期階段。

description

string

目前生命週期的說明。

endSupport

object (Date)

目前政策的支援日期。

deprecatedInFavorOf[]

string

如果這項政策已基於其他政策而淘汰,則新政策的完整命名空間會顯示在 PolicyAPI 中。

PolicyApiLifecycleEnum

列舉
API_UNSPECIFIED 未指定。
API_PREVIEW 政策尚未生效,但請開發人員留意影片格式。這個階段可以轉移至 API_DEVELOPEMNT 或 API_CURRENT。
API_DEVELOPMENT 政策可能會以回溯不相容的方式變更格式 (破壞性變更)。這個階段可轉移至 API_CURRENT 或 API_DEPRECATED。這可以用於僅針對 TT 推出的政策,或是向所選客戶啟動且符合緊急狀況的政策。
API_CURRENT 官方格式的政策。政策可能會以回溯相容的方式變更格式 (非破壞性變更)。例如:當正確使用欄位遮罩時,這項政策可引進新的欄位,這屬於非破壞性變更。這個階段可轉移至 API_DEPRECATED。
API_DEPRECATED 請停止使用這項政策。這項政策已淘汰,未來可能會遭到移除。很有可能是為了取代這項政策而推出新政策。

日期

代表完整或部分日曆的日期,例如生日。您可在其他位置指定日期和時間,或沒有其他選擇。日期以公曆為相對於公曆。可能代表下列其中一種:

  • 完整日期,具有非零的年、月和日值。
  • 月和日,出現零年 (例如週年紀念日)。
  • 一個自己的年,分別為 0 個月和 0 天。
  • 年份和月份,數字為零 (例如信用卡到期日)。

相關類型:

JSON 表示法
{
  "year": integer,
  "month": integer,
  "day": integer
}
欄位
year

integer

日期的年份。必須為 1 到 9999,或是 0 才能指定不含年份的日期。

month

integer

一年中的月份。必須為 1 到 12 或 0,才能指定不含月份和日的年份。

day

integer

一個月中的第幾天。值必須介於 1 到 31 之間,且為該年和月份計算而得;設為 0 可以只指定年份,也可以只指定年份和月份,但日期可不算。

方法

get

依客戶資源名稱取得客戶的特定政策結構定義。

list

取得與客戶指定篩選器值相符的政策結構定義清單。