REST Resource: projects.locations.changeRequests

Resource: ChangeRequest

Represents a proposed change to a metadata resource.

JSON representation
{
  "name": string,
  "uid": string,
  "createTime": string,
  "updateTime": string,
  "justification": string,
  "labels": {
    string: string,
    ...
  },
  "author": string,
  "state": enum (State),
  "resource": string,
  "changeType": enum (ChangeType),
  "rejectionComment": string,
  "approver": string,
  "etag": string,

  // Union field change_payload can be only one of the following:
  "createEntry": {
    object (CreateEntryRequest)
  },
  "updateEntry": {
    object (UpdateEntryRequest)
  },
  "deleteEntry": {
    object (DeleteEntryRequest)
  },
  "createEntryLink": {
    object (CreateEntryLinkRequest)
  },
  "deleteEntryLink": {
    object (DeleteEntryLinkRequest)
  },
  "createGlossary": {
    object (CreateGlossaryRequest)
  },
  "updateGlossary": {
    object (UpdateGlossaryRequest)
  },
  "deleteGlossary": {
    object (DeleteGlossaryRequest)
  },
  "createGlossaryCategory": {
    object (CreateGlossaryCategoryRequest)
  },
  "updateGlossaryCategory": {
    object (UpdateGlossaryCategoryRequest)
  },
  "deleteGlossaryCategory": {
    object (DeleteGlossaryCategoryRequest)
  },
  "createGlossaryTerm": {
    object (CreateGlossaryTermRequest)
  },
  "updateGlossaryTerm": {
    object (UpdateGlossaryTermRequest)
  },
  "deleteGlossaryTerm": {
    object (DeleteGlossaryTermRequest)
  },
  "dataProductAccessRequest": {
    object (DataProductAccessRequest)
  }
  // End of list of possible types for union field change_payload.
}
Fields
name

string

Identifier. The relative resource name of the ChangeRequest, of the form: projects/{projectNumber}/locations/{locationId}/changeRequests/{change_request_id}

uid

string

Output only. System generated globally unique ID for the ChangeRequest.

createTime

string (Timestamp format)

Output only. The time when the ChangeRequest was created.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

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

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

justification

string

Optional. Justification of the ChangeRequest. This should explain why the change is needed or why it should be approved.

labels

map (key: string, value: string)

Optional. User-defined labels for the ChangeRequest.

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

author

string

Output only. The email address of the user who created the ChangeRequest.

state

enum (State)

Output only. The current state of the ChangeRequest.

resource

string

Output only. The full resource name of the target resource to be modified. Example: //dataplex.googleapis.com/projects/my-project/locations/us-central1/entryGroups/my-group/entries/my-entry

changeType

enum (ChangeType)

Output only. The type of change represented by the change_payload. This field is derived from the populated field in the change_payload oneof.

rejectionComment

string

Output only. The reason provided for rejecting the ChangeRequest.

approver

string

Output only. The email address of the user who approved/rejected the ChangeRequest.

etag

string

Optional. This checksum is computed by the service. It can be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.

Union field change_payload. Detailed specification of the change, embedding the original request. change_payload can be only one of the following:
createEntry

object (CreateEntryRequest)

Payload for creating an Entry.

updateEntry

object (UpdateEntryRequest)

Payload for updating an Entry.

deleteEntry

object (DeleteEntryRequest)

Payload for deleting an Entry.

createEntryLink

object (CreateEntryLinkRequest)

Payload for creating an EntryLink.

deleteEntryLink

object (DeleteEntryLinkRequest)

Payload for deleting an EntryLink.

createGlossary

object (CreateGlossaryRequest)

Payload for creating a Glossary.

updateGlossary

object (UpdateGlossaryRequest)

Payload for updating a Glossary.

deleteGlossary

object (DeleteGlossaryRequest)

Payload for deleting a Glossary.

createGlossaryCategory

object (CreateGlossaryCategoryRequest)

Payload for creating a GlossaryCategory.

updateGlossaryCategory

object (UpdateGlossaryCategoryRequest)

Payload for updating a GlossaryCategory.

deleteGlossaryCategory

object (DeleteGlossaryCategoryRequest)

Payload for deleting a GlossaryCategory.

createGlossaryTerm

object (CreateGlossaryTermRequest)

Payload for creating a GlossaryTerm.

updateGlossaryTerm

object (UpdateGlossaryTermRequest)

Payload for updating a GlossaryTerm.

deleteGlossaryTerm

object (DeleteGlossaryTermRequest)

Payload for deleting a GlossaryTerm.

dataProductAccessRequest

object (DataProductAccessRequest)

Payload for Data Product access request.

State

Possible states of a ChangeRequest.

Enums
STATE_UNSPECIFIED State unspecified.
NEW The change is proposed and new.
APPROVED The change has been approved.
REJECTED The change has been rejected.

CreateEntryRequest

Create Entry request.

JSON representation
{
  "parent": string,
  "entryId": string,
  "entry": {
    object (Entry)
  }
}
Fields
parent

string

Required. The resource name of the parent Entry Group: projects/{project}/locations/{location}/entryGroups/{entryGroup}.

entryId

string

Required. Entry identifier. It has to be unique within an Entry Group.

Entries corresponding to Google Cloud resources use an Entry ID format based on full resource names. The format is a full resource name of the resource without the prefix double slashes in the API service name part of the full resource name. This allows retrieval of entries using their associated resource name.

For example, if the full resource name of a resource is //library.googleapis.com/shelves/shelf1/books/book2, then the suggested entryId is library.googleapis.com/shelves/shelf1/books/book2.

It is also suggested to follow the same convention for entries corresponding to resources from providers or systems other than Google Cloud.

The maximum size of the field is 4000 characters.

entry

object (Entry)

Required. Entry resource.

UpdateEntryRequest

Update Entry request.

JSON representation
{
  "entry": {
    object (Entry)
  },
  "updateMask": string,
  "allowMissing": boolean,
  "deleteMissingAspects": boolean,
  "aspectKeys": [
    string
  ]
}
Fields
entry

object (Entry)

Required. Entry resource.

updateMask

string (FieldMask format)

Optional. Mask of fields to update. To update Aspects, the updateMask must contain the value "aspects".

If the updateMask is empty, the service will update all modifiable fields present in the request.

This is a comma-separated list of fully qualified names of fields. Example: "user.displayName,photo".

allowMissing

boolean

Optional. If set to true and the entry doesn't exist, the service will create it.

deleteMissingAspects

boolean

Optional. If set to true and the aspectKeys specify aspect ranges, the service deletes any existing aspects from that range that weren't provided in the request.

aspectKeys[]

string

Optional. The map keys of the Aspects which the service should modify. It supports the following syntaxes:

  • <aspect_type_reference> - matches an aspect of the given type and empty path.
  • <aspect_type_reference>@path - matches an aspect of the given type and specified path. For example, to attach an aspect to a field that is specified by the schema aspect, the path should have the format Schema.<field_name>.
  • <aspect_type_reference>@* - matches aspects of the given type for all paths.
  • *@path - matches aspects of all types on the given path.

The service will not remove existing aspects matching the syntax unless deleteMissingAspects is set to true.

If this field is left empty, the service treats it as specifying exactly those Aspects present in the request.

DeleteEntryRequest

Delete Entry request.

JSON representation
{
  "name": string
}
Fields
name

string

Required. The resource name of the Entry: projects/{project}/locations/{location}/entryGroups/{entryGroup}/entries/{entry}.

CreateEntryLinkRequest

Request message for entryLinks.create.

JSON representation
{
  "parent": string,
  "entryLinkId": string,
  "entryLink": {
    object (EntryLink)
  }
}
Fields
parent

string

Required. The resource name of the parent Entry Group: projects/{project_id_or_number}/locations/{locationId}/entryGroups/{entryGroupId}.

DeleteEntryLinkRequest

Request message for entryLinks.delete.

JSON representation
{
  "name": string
}
Fields
name

string

Required. The resource name of the Entry Link: projects/{project_id_or_number}/locations/{locationId}/entryGroups/{entryGroupId}/entryLinks/{entryLinkId}.

CreateGlossaryRequest

Create Glossary Request

JSON representation
{
  "parent": string,
  "glossaryId": string,
  "glossary": {
    object (Glossary)
  },
  "validateOnly": boolean
}
Fields
parent

string

Required. The parent resource where this Glossary will be created. Format: projects/{project_id_or_number}/locations/{locationId} where locationId refers to a Google Cloud region.

glossaryId

string

Required. Glossary ID: Glossary identifier.

glossary

object (Glossary)

Required. The Glossary to create.

validateOnly

boolean

Optional. Validates the request without actually creating the Glossary. Default: false.

UpdateGlossaryRequest

Update Glossary Request

JSON representation
{
  "glossary": {
    object (Glossary)
  },
  "updateMask": string,
  "validateOnly": boolean
}
Fields
glossary

object (Glossary)

Required. The Glossary to update. The Glossary's name field is used to identify the Glossary to update. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId}

updateMask

string (FieldMask format)

Required. The list of fields to update.

This is a comma-separated list of fully qualified names of fields. Example: "user.displayName,photo".

validateOnly

boolean

Optional. Validates the request without actually updating the Glossary. Default: false.

DeleteGlossaryRequest

Delete Glossary Request

JSON representation
{
  "name": string,
  "etag": string
}
Fields
name

string

Required. The name of the Glossary to delete. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId}

etag

string

Optional. The etag of the Glossary. If this is provided, it must match the server's etag. If the etag is provided and does not match the server-computed etag, the request must fail with a ABORTED error code.

CreateGlossaryCategoryRequest

Creates a new GlossaryCategory under the specified Glossary.

JSON representation
{
  "parent": string,
  "categoryId": string,
  "category": {
    object (GlossaryCategory)
  }
}
Fields
parent

string

Required. The parent resource where this GlossaryCategory will be created. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId} where locationId refers to a Google Cloud region.

categoryId

string

Required. GlossaryCategory identifier.

category

object (GlossaryCategory)

Required. The GlossaryCategory to create.

UpdateGlossaryCategoryRequest

Update GlossaryCategory Request

JSON representation
{
  "category": {
    object (GlossaryCategory)
  },
  "updateMask": string
}
Fields
category

object (GlossaryCategory)

Required. The GlossaryCategory to update. The GlossaryCategory's name field is used to identify the GlossaryCategory to update. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId}/categories/{categoryId}

updateMask

string (FieldMask format)

Required. The list of fields to update.

This is a comma-separated list of fully qualified names of fields. Example: "user.displayName,photo".

DeleteGlossaryCategoryRequest

Delete GlossaryCategory Request

JSON representation
{
  "name": string
}
Fields
name

string

Required. The name of the GlossaryCategory to delete. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId}/categories/{categoryId}

CreateGlossaryTermRequest

Creates a new GlossaryTerm under the specified Glossary.

JSON representation
{
  "parent": string,
  "termId": string,
  "term": {
    object (GlossaryTerm)
  }
}
Fields
parent

string

Required. The parent resource where the GlossaryTerm will be created. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId} where locationId refers to a Google Cloud region.

termId

string

Required. GlossaryTerm identifier.

term

object (GlossaryTerm)

Required. The GlossaryTerm to create.

UpdateGlossaryTermRequest

Update GlossaryTerm Request

JSON representation
{
  "term": {
    object (GlossaryTerm)
  },
  "updateMask": string
}
Fields
term

object (GlossaryTerm)

Required. The GlossaryTerm to update. The GlossaryTerm's name field is used to identify the GlossaryTerm to update. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId}/terms/{termId}

updateMask

string (FieldMask format)

Required. The list of fields to update.

This is a comma-separated list of fully qualified names of fields. Example: "user.displayName,photo".

DeleteGlossaryTermRequest

Delete GlossaryTerm Request

JSON representation
{
  "name": string
}
Fields
name

string

Required. The name of the GlossaryTerm to delete. Format: projects/{project_id_or_number}/locations/{locationId}/glossaries/{glossaryId}/terms/{termId}

DataProductAccessRequest

Message for requesting access to a Data Product. This will be used to create a ChangeRequest of type REQUEST_DATA_PRODUCT_ACCESS.

JSON representation
{
  "parent": string,
  "accessGroupId": string,
  "accessGroupDisplayName": string,
  "requestedPrincipal": string
}
Fields
parent

string

Required. The resource name of the data product. Format: projects/{projectNumber}/locations/{locationId}/dataProducts/{dataProductId}

accessGroupId

string

Required. The ID of the access group for which access is being requested. This corresponds to the unique identifier of the AccessGroup defined in the Data Product.

accessGroupDisplayName

string

Output only. The display name of the access group defined in the Data Product for which access is being requested.

requestedPrincipal

string

Optional. The principal for which access is being requested in IAM format. If not specified, the requestor's principal will be used. Example: serviceAccount:my-sa@my-project.iam.gserviceaccount.com. Only service account principals are currently supported. https://cloud.google.com/iam/docs/principal-identifiers

ChangeType

Enum representing the type of change in the payload.

Enums
CHANGE_TYPE_UNSPECIFIED State unspecified.
CREATE_ENTRY Request to create an Entry.
UPDATE_ENTRY Request to update an Entry.
DELETE_ENTRY Request to delete an Entry.
CREATE_ENTRY_LINK Request to create an EntryLink.
DELETE_ENTRY_LINK Request to delete an EntryLink.
CREATE_GLOSSARY Request to create a Glossary.
UPDATE_GLOSSARY Request to update a Glossary.
DELETE_GLOSSARY Request to delete a Glossary.
CREATE_GLOSSARY_CATEGORY Request to create a GlossaryCategory.
UPDATE_GLOSSARY_CATEGORY Request to update a GlossaryCategory.
DELETE_GLOSSARY_CATEGORY Request to delete a GlossaryCategory.
CREATE_GLOSSARY_TERM Request to create a GlossaryTerm.
UPDATE_GLOSSARY_TERM Request to update a GlossaryTerm.
DELETE_GLOSSARY_TERM Request to delete a GlossaryTerm.
REQUEST_DATA_PRODUCT_ACCESS Request to request Data Product access.

Methods

approve

Approves a ChangeRequest.

delete

Deletes a ChangeRequest.

get

Gets a ChangeRequest.

list

Lists ChangeRequests.

patch

Updates a ChangeRequest.

reject

Rejects a ChangeRequest.