Chapter 1. AdministrationEventService 1.1. ListAdministrationEvents GET /v1/administration/events ListAdministrationEvents returns the list of events after filtered by requested fields. 1.1.1. Description 1.1.2. Parameters 1.1.2.1. Query Parameters Name Description Required Default Pattern pagination.limit - null pagination.offset - null pagination.sortOption.field - null pagination.sortOption.reversed - null pagination.sortOption.aggregateBy.aggrFunc - UNSET pagination.sortOption.aggregateBy.distinct - null filter.from Matches events with last_occurred_at after a specific timestamp, i.e. the lower boundary. - null filter.until Matches events with last_occurred_at before a specific timestamp, i.e. the upper boundary. - null filter.domain Matches events from a specific domain. String - null filter.resourceType Matches events associated with a specific resource type. String - null filter.type Matches events based on their type. String - null filter.level Matches events based on their level. String - null 1.1.3. Return Type V1ListAdministrationEventsResponse 1.1.4. Content Type application/json 1.1.5. Responses Table 1.1. HTTP Response Codes Code Message Datatype 200 A successful response. V1ListAdministrationEventsResponse 0 An unexpected error response. GooglerpcStatus 1.1.6. Samples 1.1.7. Common object reference 1.1.7.1. GooglerpcStatus Field Name Required Nullable Type Description Format code Integer int32 message String details List of ProtobufAny 1.1.7.2. ProtobufAny Any contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message. Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type. Example 1: Pack and unpack a message in C++. Example 2: Pack and unpack a message in Java. The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z". 1.1.7.2.1. JSON representation The JSON representation of an Any value uses the regular representation of the deserialized, embedded message, with an additional field @type which contains the type URL. Example: If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field value which holds the custom JSON in addition to the @type field. Example (for message [google.protobuf.Duration][]): Field Name Required Nullable Type Description Format @type String A URL/resource name that uniquely identifies the type of the serialized protocol buffer message. This string must contain at least one \"/\" character. The last segment of the URL's path must represent the fully qualified name of the type (as in path/google.protobuf.Duration ). The name should be in a canonical form (e.g., leading \".\" is not accepted). In practice, teams usually precompile into the binary all types that they expect it to use in the context of Any. However, for URLs which use the scheme http , https , or no scheme, one can optionally set up a type server that maps type URLs to message definitions as follows: * If no scheme is provided, https is assumed. * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.) Note: this functionality is not currently available in the official protobuf release, and it is not used for type URLs beginning with type.googleapis.com. As of May 2023, there are no widely used type server implementations and no plans to implement one. Schemes other than http , https (or the empty scheme) might be used with implementation specific semantics. 1.1.7.3. V1AdministrationEvent AdministrationEvents are administrative events emitted by Central. They are used to create transparency for users for asynchronous, background tasks. Events are part of Central's system health view. Field Name Required Nullable Type Description Format id String UUID of the event. type V1AdministrationEventType ADMINISTRATION_EVENT_TYPE_UNKNOWN, ADMINISTRATION_EVENT_TYPE_GENERIC, ADMINISTRATION_EVENT_TYPE_LOG_MESSAGE, level V1AdministrationEventLevel ADMINISTRATION_EVENT_LEVEL_UNKNOWN, ADMINISTRATION_EVENT_LEVEL_INFO, ADMINISTRATION_EVENT_LEVEL_SUCCESS, ADMINISTRATION_EVENT_LEVEL_WARNING, ADMINISTRATION_EVENT_LEVEL_ERROR, message String Message associated with the event. The message may include detailed information for this particular event. hint String Hint associated with the event. The hint may include different information based on the type of event. It can include instructions to resolve an event, or informational hints. domain String Domain associated with the event. An event's domain outlines the feature domain where the event was created from. As an example, this might be \"Image Scanning\". In case of events that cannot be tied to a specific domain, this will be \"General\". resource V1AdministrationEventResource numOccurrences String Occurrences associated with the event. When events may occur multiple times, the occurrences track the amount. int64 lastOccurredAt Date Specifies the time when the event has last occurred. date-time createdAt Date Specifies the time when the event has been created. date-time 1.1.7.4. V1AdministrationEventLevel AdministrationEventLevel exposes the different levels of events. Enum Values ADMINISTRATION_EVENT_LEVEL_UNKNOWN ADMINISTRATION_EVENT_LEVEL_INFO ADMINISTRATION_EVENT_LEVEL_SUCCESS ADMINISTRATION_EVENT_LEVEL_WARNING ADMINISTRATION_EVENT_LEVEL_ERROR 1.1.7.5. V1AdministrationEventResource Resource holds all information about the resource associated with the event. Field Name Required Nullable Type Description Format type String Resource type associated with the event. An event may refer to an underlying resource such as a particular image. In that case, the resource type will be filled here. id String Resource ID associated with the event. If an event refers to an underlying resource, the resource ID identifies the underlying resource. The resource ID is not guaranteed to be set, depending on the context of the administration event. name String Resource name associated with the event. If an event refers to an underlying resource, the resource name identifies the underlying resource. The resource name is not guaranteed to be set, depending on the context of the administration event. 1.1.7.6. V1AdministrationEventType AdministrationEventType exposes the different types of events. Enum Values ADMINISTRATION_EVENT_TYPE_UNKNOWN ADMINISTRATION_EVENT_TYPE_GENERIC ADMINISTRATION_EVENT_TYPE_LOG_MESSAGE 1.1.7.7. V1ListAdministrationEventsResponse Field Name Required Nullable Type Description Format events List of V1AdministrationEvent 1.2. GetAdministrationEvent GET /v1/administration/events/{id} GetAdministrationEvent retrieves an event by ID. 1.2.1. Description 1.2.2. Parameters 1.2.2.1. Path Parameters Name Description Required Default Pattern id X null 1.2.3. Return Type V1GetAdministrationEventResponse 1.2.4. Content Type application/json 1.2.5. Responses Table 1.2. HTTP Response Codes Code Message Datatype 200 A successful response. V1GetAdministrationEventResponse 0 An unexpected error response. GooglerpcStatus 1.2.6. Samples 1.2.7. Common object reference 1.2.7.1. GooglerpcStatus Field Name Required Nullable Type Description Format code Integer int32 message String details List of ProtobufAny 1.2.7.2. ProtobufAny Any contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message. Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type. Example 1: Pack and unpack a message in C++. Example 2: Pack and unpack a message in Java. The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z". 1.2.7.2.1. JSON representation The JSON representation of an Any value uses the regular representation of the deserialized, embedded message, with an additional field @type which contains the type URL. Example: If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field value which holds the custom JSON in addition to the @type field. Example (for message [google.protobuf.Duration][]): Field Name Required Nullable Type Description Format @type String A URL/resource name that uniquely identifies the type of the serialized protocol buffer message. This string must contain at least one \"/\" character. The last segment of the URL's path must represent the fully qualified name of the type (as in path/google.protobuf.Duration ). The name should be in a canonical form (e.g., leading \".\" is not accepted). In practice, teams usually precompile into the binary all types that they expect it to use in the context of Any. However, for URLs which use the scheme http , https , or no scheme, one can optionally set up a type server that maps type URLs to message definitions as follows: * If no scheme is provided, https is assumed. * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.) Note: this functionality is not currently available in the official protobuf release, and it is not used for type URLs beginning with type.googleapis.com. As of May 2023, there are no widely used type server implementations and no plans to implement one. Schemes other than http , https (or the empty scheme) might be used with implementation specific semantics. 1.2.7.3. V1AdministrationEvent AdministrationEvents are administrative events emitted by Central. They are used to create transparency for users for asynchronous, background tasks. Events are part of Central's system health view. Field Name Required Nullable Type Description Format id String UUID of the event. type V1AdministrationEventType ADMINISTRATION_EVENT_TYPE_UNKNOWN, ADMINISTRATION_EVENT_TYPE_GENERIC, ADMINISTRATION_EVENT_TYPE_LOG_MESSAGE, level V1AdministrationEventLevel ADMINISTRATION_EVENT_LEVEL_UNKNOWN, ADMINISTRATION_EVENT_LEVEL_INFO, ADMINISTRATION_EVENT_LEVEL_SUCCESS, ADMINISTRATION_EVENT_LEVEL_WARNING, ADMINISTRATION_EVENT_LEVEL_ERROR, message String Message associated with the event. The message may include detailed information for this particular event. hint String Hint associated with the event. The hint may include different information based on the type of event. It can include instructions to resolve an event, or informational hints. domain String Domain associated with the event. An event's domain outlines the feature domain where the event was created from. As an example, this might be \"Image Scanning\". In case of events that cannot be tied to a specific domain, this will be \"General\". resource V1AdministrationEventResource numOccurrences String Occurrences associated with the event. When events may occur multiple times, the occurrences track the amount. int64 lastOccurredAt Date Specifies the time when the event has last occurred. date-time createdAt Date Specifies the time when the event has been created. date-time 1.2.7.4. V1AdministrationEventLevel AdministrationEventLevel exposes the different levels of events. Enum Values ADMINISTRATION_EVENT_LEVEL_UNKNOWN ADMINISTRATION_EVENT_LEVEL_INFO ADMINISTRATION_EVENT_LEVEL_SUCCESS ADMINISTRATION_EVENT_LEVEL_WARNING ADMINISTRATION_EVENT_LEVEL_ERROR 1.2.7.5. V1AdministrationEventResource Resource holds all information about the resource associated with the event. Field Name Required Nullable Type Description Format type String Resource type associated with the event. An event may refer to an underlying resource such as a particular image. In that case, the resource type will be filled here. id String Resource ID associated with the event. If an event refers to an underlying resource, the resource ID identifies the underlying resource. The resource ID is not guaranteed to be set, depending on the context of the administration event. name String Resource name associated with the event. If an event refers to an underlying resource, the resource name identifies the underlying resource. The resource name is not guaranteed to be set, depending on the context of the administration event. 1.2.7.6. V1AdministrationEventType AdministrationEventType exposes the different types of events. Enum Values ADMINISTRATION_EVENT_TYPE_UNKNOWN ADMINISTRATION_EVENT_TYPE_GENERIC ADMINISTRATION_EVENT_TYPE_LOG_MESSAGE 1.2.7.7. V1GetAdministrationEventResponse Field Name Required Nullable Type Description Format event V1AdministrationEvent 1.3. CountAdministrationEvents GET /v1/count/administration/events CountAdministrationEvents returns the number of events after filtering by requested fields. 1.3.1. Description 1.3.2. Parameters 1.3.2.1. Query Parameters Name Description Required Default Pattern filter.from Matches events with last_occurred_at after a specific timestamp, i.e. the lower boundary. - null filter.until Matches events with last_occurred_at before a specific timestamp, i.e. the upper boundary. - null filter.domain Matches events from a specific domain. String - null filter.resourceType Matches events associated with a specific resource type. String - null filter.type Matches events based on their type. String - null filter.level Matches events based on their level. String - null 1.3.3. Return Type V1CountAdministrationEventsResponse 1.3.4. Content Type application/json 1.3.5. Responses Table 1.3. HTTP Response Codes Code Message Datatype 200 A successful response. V1CountAdministrationEventsResponse 0 An unexpected error response. GooglerpcStatus 1.3.6. Samples 1.3.7. Common object reference 1.3.7.1. GooglerpcStatus Field Name Required Nullable Type Description Format code Integer int32 message String details List of ProtobufAny 1.3.7.2. ProtobufAny Any contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message. Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type. Example 1: Pack and unpack a message in C++. Example 2: Pack and unpack a message in Java. The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z". 1.3.7.2.1. JSON representation The JSON representation of an Any value uses the regular representation of the deserialized, embedded message, with an additional field @type which contains the type URL. Example: If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field value which holds the custom JSON in addition to the @type field. Example (for message [google.protobuf.Duration][]): Field Name Required Nullable Type Description Format @type String A URL/resource name that uniquely identifies the type of the serialized protocol buffer message. This string must contain at least one \"/\" character. The last segment of the URL's path must represent the fully qualified name of the type (as in path/google.protobuf.Duration ). The name should be in a canonical form (e.g., leading \".\" is not accepted). In practice, teams usually precompile into the binary all types that they expect it to use in the context of Any. However, for URLs which use the scheme http , https , or no scheme, one can optionally set up a type server that maps type URLs to message definitions as follows: * If no scheme is provided, https is assumed. * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.) Note: this functionality is not currently available in the official protobuf release, and it is not used for type URLs beginning with type.googleapis.com. As of May 2023, there are no widely used type server implementations and no plans to implement one. Schemes other than http , https (or the empty scheme) might be used with implementation specific semantics. 1.3.7.3. V1CountAdministrationEventsResponse Field Name Required Nullable Type Description Format count Integer The total number of events after filtering and deduplication. int32

Commands:
Foo foo = ...; Any any; any.PackFrom(foo); if (any.UnpackTo(&foo)) { }
Foo foo = ...; Any any = Any.pack(foo); if (any.is(Foo.class)) { foo = any.unpack(Foo.class); } // or if (any.isSameTypeAs(Foo.getDefaultInstance())) { foo = any.unpack(Foo.getDefaultInstance()); }
Example 3: Pack and unpack a message in Python.
foo = Foo(...) any = Any() any.Pack(foo) if any.Is(Foo.DESCRIPTOR): any.Unpack(foo)
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { } foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { }
package google.profile; message Person { string first_name = 1; string last_name = 2; }
{ "@type": "type.googleapis.com/google.profile.Person", "firstName": <string>, "lastName": <string> }
@type: type.googleapis.com/google.protobuf.Duration
value: 1.212s
Foo foo = ...; Any any; any.PackFrom(foo); if (any.UnpackTo(&foo)) { }
Foo foo = ...; Any any = Any.pack(foo); if (any.is(Foo.class)) { foo = any.unpack(Foo.class); } // or if (any.isSameTypeAs(Foo.getDefaultInstance())) { foo = any.unpack(Foo.getDefaultInstance()); }
Example 3: Pack and unpack a message in Python.
foo = Foo(...) any = Any() any.Pack(foo) if any.Is(Foo.DESCRIPTOR): any.Unpack(foo)
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { } foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { }
package google.profile; message Person { string first_name = 1; string last_name = 2; }
{ "@type": "type.googleapis.com/google.profile.Person", "firstName": <string>, "lastName": <string> }
@type: type.googleapis.com/google.protobuf.Duration
value: 1.212s
Foo foo = ...; Any any; any.PackFrom(foo); if (any.UnpackTo(&foo)) { }
Foo foo = ...; Any any = Any.pack(foo); if (any.is(Foo.class)) { foo = any.unpack(Foo.class); } // or if (any.isSameTypeAs(Foo.getDefaultInstance())) { foo = any.unpack(Foo.getDefaultInstance()); }
Example 3: Pack and unpack a message in Python.
foo = Foo(...) any = Any() any.Pack(foo) if any.Is(Foo.DESCRIPTOR): any.Unpack(foo)
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { } foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { }
package google.profile; message Person { string first_name = 1; string last_name = 2; }
{ "@type": "type.googleapis.com/google.profile.Person", "firstName": <string>, "lastName": <string> }
@type: type.googleapis.com/google.protobuf.Duration
value: 1.212s