REST Resource: projects.locations.aspectTypes

Resource: AspectType

AspectType is a template for creating Aspects, and represents the JSON-schema for a given Entry, for example, BigQuery Table Schema.

JSON representation
{
  "name": string,
  "uid": string,
  "createTime": string,
  "updateTime": string,
  "description": string,
  "displayName": string,
  "labels": {
    string: string,
    ...
  },
  "etag": string,
  "authorization": {
    object (Authorization)
  },
  "metadataTemplate": {
    object (MetadataTemplate)
  },
  "transferStatus": enum (TransferStatus)
}
Fields
name

string

Output only. The relative resource name of the AspectType, of the form: projects/{project_number}/locations/{locationId}/aspectTypes/{aspectTypeId}.

uid

string

Output only. System generated globally unique ID for the AspectType. If you delete and recreate the AspectType with the same name, then this ID will be different.

createTime

string (Timestamp format)

Output only. The time when the AspectType was created.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Output only. The time when the AspectType was last updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

description

string

Optional. Description of the AspectType.

displayName

string

Optional. User friendly display name.

labels

map (key: string, value: string)

Optional. User-defined labels for the AspectType.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

etag

string

The service computes this checksum. The client may send it on update and delete requests to ensure it has an up-to-date value before proceeding.

authorization

object (Authorization)

Immutable. Defines the Authorization for this type.

metadataTemplate

object (MetadataTemplate)

Required. MetadataTemplate of the aspect.

transferStatus

enum (TransferStatus)

Output only. Denotes the transfer status of the Aspect Type. It is unspecified for Aspect Types created from Dataplex API.

Authorization

Autorization for an AspectType.

JSON representation
{
  "alternateUsePermission": string
}
Fields
alternateUsePermission

string

Immutable. The IAM permission grantable on the EntryGroup to allow access to instantiate Aspects of Dataplex owned AspectTypes, only settable for Dataplex owned Types.

MetadataTemplate

MetadataTemplate definition for an AspectType.

JSON representation
{
  "index": integer,
  "name": string,
  "type": string,
  "recordFields": [
    {
      object (MetadataTemplate)
    }
  ],
  "enumValues": [
    {
      object (EnumValue)
    }
  ],
  "mapItems": {
    object (MetadataTemplate)
  },
  "arrayItems": {
    object (MetadataTemplate)
  },
  "typeId": string,
  "typeRef": string,
  "constraints": {
    object (Constraints)
  },
  "annotations": {
    object (Annotations)
  }
}
Fields
index

integer

Optional. Index is used to encode Template messages. The value of index can range between 1 and 2,147,483,647. Index must be unique within all fields in a Template. (Nested Templates can reuse indexes). Once a Template is defined, the index cannot be changed, because it identifies the field in the actual storage format. Index is a mandatory field, but it is optional for top level fields, and map/array "values" definitions.

name

string

Required. The name of the field.

type

string

Required. The datatype of this field. The following values are supported:

Primitive types:

  • string
  • integer
  • boolean
  • double
  • datetime. Must be of the format RFC3339 UTC "Zulu" (Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z").

Complex types:

  • enum
  • array
  • map
  • record
recordFields[]

object (MetadataTemplate)

Optional. Field definition. You must specify it if the type is record. It defines the nested fields.

enumValues[]

object (EnumValue)

Optional. The list of values for an enum type. You must define it if the type is enum.

mapItems

object (MetadataTemplate)

Optional. If the type is map, set mapItems. mapItems can refer to a primitive field or a complex (record only) field. To specify a primitive field, you only need to set name and type in the nested MetadataTemplate. The recommended value for the name field is item, as this isn't used in the actual payload.

arrayItems

object (MetadataTemplate)

Optional. If the type is array, set arrayItems. arrayItems can refer to a primitive field or a complex (record only) field. To specify a primitive field, you only need to set name and type in the nested MetadataTemplate. The recommended value for the name field is item, as this isn't used in the actual payload.

typeId

string

Optional. You can use type id if this definition of the field needs to be reused later. The type id must be unique across the entire template. You can only specify it if the field type is record.

typeRef

string

Optional. A reference to another field definition (not an inline definition). The value must be equal to the value of an id field defined elsewhere in the MetadataTemplate. Only fields with record type can refer to other fields.

constraints

object (Constraints)

Optional. Specifies the constraints on this field.

annotations

object (Annotations)

Optional. Specifies annotations on this field.

EnumValue

Definition of Enumvalue, to be used for enum fields.

JSON representation
{
  "index": integer,
  "name": string,
  "deprecated": string
}
Fields
index

integer

Required. Index for the enum value. It can't be modified.

name

string

Required. Name of the enumvalue. This is the actual value that the aspect can contain.

deprecated

string

Optional. You can set this message if you need to deprecate an enum value.

Constraints

Definition of the constraints of a field.

JSON representation
{
  "required": boolean
}
Fields
required

boolean

Optional. Marks this field as optional or required.

Annotations

Definition of the annotations of a field.

JSON representation
{
  "deprecated": string,
  "displayName": string,
  "description": string,
  "displayOrder": integer,
  "stringType": string,
  "stringValues": [
    string
  ]
}
Fields
deprecated

string

Optional. Marks a field as deprecated. You can include a deprecation message.

displayName

string

Optional. Display name for a field.

description

string

Optional. Description for a field.

displayOrder

integer

Optional. Display order for a field. You can use this to reorder where a field is rendered.

stringType

string

Optional. You can use String Type annotations to specify special meaning to string fields. The following values are supported:

  • richText: The field must be interpreted as a rich text field.
  • url: A fully qualified URL link.
  • resource: A service qualified resource reference.
stringValues[]

string

Optional. Suggested hints for string fields. You can use them to suggest values to users through console.

Methods

create

Creates an AspectType.

delete

Deletes an AspectType.

get

Gets an AspectType.

getIamPolicy

Gets the access control policy for a resource.

list

Lists AspectType resources in a project and location.

patch

Updates an AspectType.

setIamPolicy

Sets the access control policy on the specified resource.

testIamPermissions

Returns permissions that a caller has on the specified resource.