diff --git a/api_names_out.yaml b/api_names_out.yaml index 9432dbc325b..fd6a46204e6 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -396350,12 +396350,151 @@ "/workloadmanager:v1/workloadmanager.projects.locations.workloadProfiles.list/pageSize": page_size "/workloadmanager:v1/workloadmanager.projects.locations.workloadProfiles.list/pageToken": page_token "/workloadmanager:v1/workloadmanager.projects.locations.workloadProfiles.list/parent": parent +"/workspaceevents:v1/APIKeySecurityScheme": api_key_security_scheme +"/workspaceevents:v1/APIKeySecurityScheme/description": description +"/workspaceevents:v1/APIKeySecurityScheme/location": location +"/workspaceevents:v1/APIKeySecurityScheme/name": name +"/workspaceevents:v1/AgentCapabilities": agent_capabilities +"/workspaceevents:v1/AgentCapabilities/extensions": extensions +"/workspaceevents:v1/AgentCapabilities/extensions/extension": extension +"/workspaceevents:v1/AgentCapabilities/pushNotifications": push_notifications +"/workspaceevents:v1/AgentCapabilities/streaming": streaming +"/workspaceevents:v1/AgentCard": agent_card +"/workspaceevents:v1/AgentCard/additionalInterfaces": additional_interfaces +"/workspaceevents:v1/AgentCard/additionalInterfaces/additional_interface": additional_interface +"/workspaceevents:v1/AgentCard/capabilities": capabilities +"/workspaceevents:v1/AgentCard/defaultInputModes": default_input_modes +"/workspaceevents:v1/AgentCard/defaultInputModes/default_input_mode": default_input_mode +"/workspaceevents:v1/AgentCard/defaultOutputModes": default_output_modes +"/workspaceevents:v1/AgentCard/defaultOutputModes/default_output_mode": default_output_mode +"/workspaceevents:v1/AgentCard/description": description +"/workspaceevents:v1/AgentCard/documentationUrl": documentation_url +"/workspaceevents:v1/AgentCard/iconUrl": icon_url +"/workspaceevents:v1/AgentCard/name": name +"/workspaceevents:v1/AgentCard/preferredTransport": preferred_transport +"/workspaceevents:v1/AgentCard/protocolVersion": protocol_version +"/workspaceevents:v1/AgentCard/provider": provider +"/workspaceevents:v1/AgentCard/security": security +"/workspaceevents:v1/AgentCard/security/security": security +"/workspaceevents:v1/AgentCard/securitySchemes": security_schemes +"/workspaceevents:v1/AgentCard/securitySchemes/security_scheme": security_scheme +"/workspaceevents:v1/AgentCard/signatures": signatures +"/workspaceevents:v1/AgentCard/signatures/signature": signature +"/workspaceevents:v1/AgentCard/skills": skills +"/workspaceevents:v1/AgentCard/skills/skill": skill +"/workspaceevents:v1/AgentCard/supportsAuthenticatedExtendedCard": supports_authenticated_extended_card +"/workspaceevents:v1/AgentCard/url": url +"/workspaceevents:v1/AgentCard/version": version +"/workspaceevents:v1/AgentCardSignature": agent_card_signature +"/workspaceevents:v1/AgentCardSignature/header": header +"/workspaceevents:v1/AgentCardSignature/header/header": header +"/workspaceevents:v1/AgentCardSignature/protected": protected +"/workspaceevents:v1/AgentCardSignature/signature": signature +"/workspaceevents:v1/AgentExtension": agent_extension +"/workspaceevents:v1/AgentExtension/description": description +"/workspaceevents:v1/AgentExtension/params": params +"/workspaceevents:v1/AgentExtension/params/param": param +"/workspaceevents:v1/AgentExtension/required": required +"/workspaceevents:v1/AgentExtension/uri": uri +"/workspaceevents:v1/AgentInterface": agent_interface +"/workspaceevents:v1/AgentInterface/transport": transport +"/workspaceevents:v1/AgentInterface/url": url +"/workspaceevents:v1/AgentProvider": agent_provider +"/workspaceevents:v1/AgentProvider/organization": organization +"/workspaceevents:v1/AgentProvider/url": url +"/workspaceevents:v1/AgentSkill": agent_skill +"/workspaceevents:v1/AgentSkill/description": description +"/workspaceevents:v1/AgentSkill/examples": examples +"/workspaceevents:v1/AgentSkill/examples/example": example +"/workspaceevents:v1/AgentSkill/id": id +"/workspaceevents:v1/AgentSkill/inputModes": input_modes +"/workspaceevents:v1/AgentSkill/inputModes/input_mode": input_mode +"/workspaceevents:v1/AgentSkill/name": name +"/workspaceevents:v1/AgentSkill/outputModes": output_modes +"/workspaceevents:v1/AgentSkill/outputModes/output_mode": output_mode +"/workspaceevents:v1/AgentSkill/security": security +"/workspaceevents:v1/AgentSkill/security/security": security +"/workspaceevents:v1/AgentSkill/tags": tags +"/workspaceevents:v1/AgentSkill/tags/tag": tag +"/workspaceevents:v1/Artifact": artifact +"/workspaceevents:v1/Artifact/artifactId": artifact_id +"/workspaceevents:v1/Artifact/description": description +"/workspaceevents:v1/Artifact/extensions": extensions +"/workspaceevents:v1/Artifact/extensions/extension": extension +"/workspaceevents:v1/Artifact/metadata": metadata +"/workspaceevents:v1/Artifact/metadata/metadatum": metadatum +"/workspaceevents:v1/Artifact/name": name +"/workspaceevents:v1/Artifact/parts": parts +"/workspaceevents:v1/Artifact/parts/part": part +"/workspaceevents:v1/AuthenticationInfo": authentication_info +"/workspaceevents:v1/AuthenticationInfo/credentials": credentials +"/workspaceevents:v1/AuthenticationInfo/schemes": schemes +"/workspaceevents:v1/AuthenticationInfo/schemes/scheme": scheme +"/workspaceevents:v1/AuthorizationCodeOAuthFlow": authorization_code_o_auth_flow +"/workspaceevents:v1/AuthorizationCodeOAuthFlow/authorizationUrl": authorization_url +"/workspaceevents:v1/AuthorizationCodeOAuthFlow/refreshUrl": refresh_url +"/workspaceevents:v1/AuthorizationCodeOAuthFlow/scopes": scopes +"/workspaceevents:v1/AuthorizationCodeOAuthFlow/scopes/scope": scope +"/workspaceevents:v1/AuthorizationCodeOAuthFlow/tokenUrl": token_url +"/workspaceevents:v1/CancelTaskRequest": cancel_task_request +"/workspaceevents:v1/ClientCredentialsOAuthFlow": client_credentials_o_auth_flow +"/workspaceevents:v1/ClientCredentialsOAuthFlow/refreshUrl": refresh_url +"/workspaceevents:v1/ClientCredentialsOAuthFlow/scopes": scopes +"/workspaceevents:v1/ClientCredentialsOAuthFlow/scopes/scope": scope +"/workspaceevents:v1/ClientCredentialsOAuthFlow/tokenUrl": token_url +"/workspaceevents:v1/DataPart": data_part +"/workspaceevents:v1/DataPart/data": data +"/workspaceevents:v1/DataPart/data/datum": datum +"/workspaceevents:v1/Empty": empty +"/workspaceevents:v1/FilePart": file_part +"/workspaceevents:v1/FilePart/fileWithBytes": file_with_bytes +"/workspaceevents:v1/FilePart/fileWithUri": file_with_uri +"/workspaceevents:v1/FilePart/mimeType": mime_type +"/workspaceevents:v1/FilePart/name": name +"/workspaceevents:v1/HTTPAuthSecurityScheme": http_auth_security_scheme +"/workspaceevents:v1/HTTPAuthSecurityScheme/bearerFormat": bearer_format +"/workspaceevents:v1/HTTPAuthSecurityScheme/description": description +"/workspaceevents:v1/HTTPAuthSecurityScheme/scheme": scheme +"/workspaceevents:v1/ImplicitOAuthFlow": implicit_o_auth_flow +"/workspaceevents:v1/ImplicitOAuthFlow/authorizationUrl": authorization_url +"/workspaceevents:v1/ImplicitOAuthFlow/refreshUrl": refresh_url +"/workspaceevents:v1/ImplicitOAuthFlow/scopes": scopes +"/workspaceevents:v1/ImplicitOAuthFlow/scopes/scope": scope "/workspaceevents:v1/ListSubscriptionsResponse": list_subscriptions_response "/workspaceevents:v1/ListSubscriptionsResponse/nextPageToken": next_page_token "/workspaceevents:v1/ListSubscriptionsResponse/subscriptions": subscriptions "/workspaceevents:v1/ListSubscriptionsResponse/subscriptions/subscription": subscription +"/workspaceevents:v1/ListTaskPushNotificationConfigResponse": list_task_push_notification_config_response +"/workspaceevents:v1/ListTaskPushNotificationConfigResponse/configs": configs +"/workspaceevents:v1/ListTaskPushNotificationConfigResponse/configs/config": config +"/workspaceevents:v1/ListTaskPushNotificationConfigResponse/nextPageToken": next_page_token +"/workspaceevents:v1/Message": message +"/workspaceevents:v1/Message/content": content +"/workspaceevents:v1/Message/content/content": content +"/workspaceevents:v1/Message/contextId": context_id +"/workspaceevents:v1/Message/extensions": extensions +"/workspaceevents:v1/Message/extensions/extension": extension +"/workspaceevents:v1/Message/messageId": message_id +"/workspaceevents:v1/Message/metadata": metadata +"/workspaceevents:v1/Message/metadata/metadatum": metadatum +"/workspaceevents:v1/Message/role": role +"/workspaceevents:v1/Message/taskId": task_id +"/workspaceevents:v1/MutualTlsSecurityScheme": mutual_tls_security_scheme +"/workspaceevents:v1/MutualTlsSecurityScheme/description": description "/workspaceevents:v1/NotificationEndpoint": notification_endpoint "/workspaceevents:v1/NotificationEndpoint/pubsubTopic": pubsub_topic +"/workspaceevents:v1/OAuth2SecurityScheme": o_auth2_security_scheme +"/workspaceevents:v1/OAuth2SecurityScheme/description": description +"/workspaceevents:v1/OAuth2SecurityScheme/flows": flows +"/workspaceevents:v1/OAuth2SecurityScheme/oauth2MetadataUrl": oauth2_metadata_url +"/workspaceevents:v1/OAuthFlows": o_auth_flows +"/workspaceevents:v1/OAuthFlows/authorizationCode": authorization_code +"/workspaceevents:v1/OAuthFlows/clientCredentials": client_credentials +"/workspaceevents:v1/OAuthFlows/implicit": implicit +"/workspaceevents:v1/OAuthFlows/password": password +"/workspaceevents:v1/OpenIdConnectSecurityScheme": open_id_connect_security_scheme +"/workspaceevents:v1/OpenIdConnectSecurityScheme/description": description +"/workspaceevents:v1/OpenIdConnectSecurityScheme/openIdConnectUrl": open_id_connect_url "/workspaceevents:v1/Operation": operation "/workspaceevents:v1/Operation/done": done "/workspaceevents:v1/Operation/error": error @@ -396364,16 +396503,60 @@ "/workspaceevents:v1/Operation/name": name "/workspaceevents:v1/Operation/response": response "/workspaceevents:v1/Operation/response/response": response +"/workspaceevents:v1/Part": part +"/workspaceevents:v1/Part/data": data +"/workspaceevents:v1/Part/file": file +"/workspaceevents:v1/Part/metadata": metadata +"/workspaceevents:v1/Part/metadata/metadatum": metadatum +"/workspaceevents:v1/Part/text": text +"/workspaceevents:v1/PasswordOAuthFlow": password_o_auth_flow +"/workspaceevents:v1/PasswordOAuthFlow/refreshUrl": refresh_url +"/workspaceevents:v1/PasswordOAuthFlow/scopes": scopes +"/workspaceevents:v1/PasswordOAuthFlow/scopes/scope": scope +"/workspaceevents:v1/PasswordOAuthFlow/tokenUrl": token_url "/workspaceevents:v1/PayloadOptions": payload_options "/workspaceevents:v1/PayloadOptions/fieldMask": field_mask "/workspaceevents:v1/PayloadOptions/includeResource": include_resource +"/workspaceevents:v1/PushNotificationConfig": push_notification_config +"/workspaceevents:v1/PushNotificationConfig/authentication": authentication +"/workspaceevents:v1/PushNotificationConfig/id": id +"/workspaceevents:v1/PushNotificationConfig/token": token +"/workspaceevents:v1/PushNotificationConfig/url": url "/workspaceevents:v1/ReactivateSubscriptionRequest": reactivate_subscription_request +"/workspaceevents:v1/Security": security +"/workspaceevents:v1/Security/schemes": schemes +"/workspaceevents:v1/Security/schemes/scheme": scheme +"/workspaceevents:v1/SecurityScheme": security_scheme +"/workspaceevents:v1/SecurityScheme/apiKeySecurityScheme": api_key_security_scheme +"/workspaceevents:v1/SecurityScheme/httpAuthSecurityScheme": http_auth_security_scheme +"/workspaceevents:v1/SecurityScheme/mtlsSecurityScheme": mtls_security_scheme +"/workspaceevents:v1/SecurityScheme/oauth2SecurityScheme": oauth2_security_scheme +"/workspaceevents:v1/SecurityScheme/openIdConnectSecurityScheme": open_id_connect_security_scheme +"/workspaceevents:v1/SendMessageConfiguration": send_message_configuration +"/workspaceevents:v1/SendMessageConfiguration/acceptedOutputModes": accepted_output_modes +"/workspaceevents:v1/SendMessageConfiguration/acceptedOutputModes/accepted_output_mode": accepted_output_mode +"/workspaceevents:v1/SendMessageConfiguration/blocking": blocking +"/workspaceevents:v1/SendMessageConfiguration/historyLength": history_length +"/workspaceevents:v1/SendMessageConfiguration/pushNotification": push_notification +"/workspaceevents:v1/SendMessageRequest": send_message_request +"/workspaceevents:v1/SendMessageRequest/configuration": configuration +"/workspaceevents:v1/SendMessageRequest/message": message +"/workspaceevents:v1/SendMessageRequest/metadata": metadata +"/workspaceevents:v1/SendMessageRequest/metadata/metadatum": metadatum "/workspaceevents:v1/Status": status "/workspaceevents:v1/Status/code": code "/workspaceevents:v1/Status/details": details "/workspaceevents:v1/Status/details/detail": detail "/workspaceevents:v1/Status/details/detail/detail": detail "/workspaceevents:v1/Status/message": message +"/workspaceevents:v1/StreamResponse": stream_response +"/workspaceevents:v1/StreamResponse/artifactUpdate": artifact_update +"/workspaceevents:v1/StreamResponse/message": message +"/workspaceevents:v1/StreamResponse/statusUpdate": status_update +"/workspaceevents:v1/StreamResponse/task": task +"/workspaceevents:v1/StringList": string_list +"/workspaceevents:v1/StringList/list": list +"/workspaceevents:v1/StringList/list/list": list "/workspaceevents:v1/Subscription": subscription "/workspaceevents:v1/Subscription/authority": authority "/workspaceevents:v1/Subscription/createTime": create_time @@ -396391,9 +396574,42 @@ "/workspaceevents:v1/Subscription/ttl": ttl "/workspaceevents:v1/Subscription/uid": uid "/workspaceevents:v1/Subscription/updateTime": update_time +"/workspaceevents:v1/Task": task +"/workspaceevents:v1/Task/artifacts": artifacts +"/workspaceevents:v1/Task/artifacts/artifact": artifact +"/workspaceevents:v1/Task/contextId": context_id +"/workspaceevents:v1/Task/history": history +"/workspaceevents:v1/Task/history/history": history +"/workspaceevents:v1/Task/id": id +"/workspaceevents:v1/Task/metadata": metadata +"/workspaceevents:v1/Task/metadata/metadatum": metadatum +"/workspaceevents:v1/Task/status": status +"/workspaceevents:v1/TaskArtifactUpdateEvent": task_artifact_update_event +"/workspaceevents:v1/TaskArtifactUpdateEvent/append": append +"/workspaceevents:v1/TaskArtifactUpdateEvent/artifact": artifact +"/workspaceevents:v1/TaskArtifactUpdateEvent/contextId": context_id +"/workspaceevents:v1/TaskArtifactUpdateEvent/lastChunk": last_chunk +"/workspaceevents:v1/TaskArtifactUpdateEvent/metadata": metadata +"/workspaceevents:v1/TaskArtifactUpdateEvent/metadata/metadatum": metadatum +"/workspaceevents:v1/TaskArtifactUpdateEvent/taskId": task_id +"/workspaceevents:v1/TaskPushNotificationConfig": task_push_notification_config +"/workspaceevents:v1/TaskPushNotificationConfig/name": name +"/workspaceevents:v1/TaskPushNotificationConfig/pushNotificationConfig": push_notification_config +"/workspaceevents:v1/TaskStatus": task_status +"/workspaceevents:v1/TaskStatus/message": message +"/workspaceevents:v1/TaskStatus/state": state +"/workspaceevents:v1/TaskStatus/timestamp": timestamp +"/workspaceevents:v1/TaskStatusUpdateEvent": task_status_update_event +"/workspaceevents:v1/TaskStatusUpdateEvent/contextId": context_id +"/workspaceevents:v1/TaskStatusUpdateEvent/final": final +"/workspaceevents:v1/TaskStatusUpdateEvent/metadata": metadata +"/workspaceevents:v1/TaskStatusUpdateEvent/metadata/metadatum": metadatum +"/workspaceevents:v1/TaskStatusUpdateEvent/status": status +"/workspaceevents:v1/TaskStatusUpdateEvent/taskId": task_id "/workspaceevents:v1/fields": fields "/workspaceevents:v1/key": key "/workspaceevents:v1/quotaUser": quota_user +"/workspaceevents:v1/workspaceevents.message.stream": stream_message "/workspaceevents:v1/workspaceevents.operations.get": get_operation "/workspaceevents:v1/workspaceevents.operations.get/name": name "/workspaceevents:v1/workspaceevents.subscriptions.create": create_subscription @@ -396415,6 +396631,24 @@ "/workspaceevents:v1/workspaceevents.subscriptions.patch/validateOnly": validate_only "/workspaceevents:v1/workspaceevents.subscriptions.reactivate": reactivate_subscription "/workspaceevents:v1/workspaceevents.subscriptions.reactivate/name": name +"/workspaceevents:v1/workspaceevents.tasks.cancel": cancel_task +"/workspaceevents:v1/workspaceevents.tasks.cancel/name": name +"/workspaceevents:v1/workspaceevents.tasks.get": get_task +"/workspaceevents:v1/workspaceevents.tasks.get/historyLength": history_length +"/workspaceevents:v1/workspaceevents.tasks.get/name": name +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.create": create_task_push_notification_config +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.create/configId": config_id +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.create/parent": parent +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.delete": delete_task_push_notification_config +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.delete/name": name +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.get": get_task_push_notification_config +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.get/name": name +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.list": list_task_push_notification_configs +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.list/pageSize": page_size +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.list/pageToken": page_token +"/workspaceevents:v1/workspaceevents.tasks.pushNotificationConfigs.list/parent": parent +"/workspaceevents:v1/workspaceevents.tasks.subscribe": subscribe_task +"/workspaceevents:v1/workspaceevents.tasks.subscribe/name": name "/workstations:v1/Accelerator": accelerator "/workstations:v1/Accelerator/count": count "/workstations:v1/Accelerator/type": type diff --git a/generated/google-apis-workspaceevents_v1/CHANGELOG.md b/generated/google-apis-workspaceevents_v1/CHANGELOG.md index 09f8c6b2f79..dfc162ce97a 100644 --- a/generated/google-apis-workspaceevents_v1/CHANGELOG.md +++ b/generated/google-apis-workspaceevents_v1/CHANGELOG.md @@ -1,5 +1,9 @@ # Release history for google-apis-workspaceevents_v1 +### v0.19.0 (2025-11-09) + +* Regenerated from discovery document revision 20251102 + ### v0.18.0 (2025-10-05) * Regenerated from discovery document revision 20250930 diff --git a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/classes.rb b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/classes.rb index c2917162951..0eedc960769 100644 --- a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/classes.rb +++ b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/classes.rb @@ -22,20 +22,1192 @@ module Google module Apis module WorkspaceeventsV1 + # + class ApiKeySecurityScheme + include Google::Apis::Core::Hashable + + # Description of this security scheme. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Location of the API key, valid values are "query", "header", or "cookie" + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # Name of the header, query or cookie parameter to be used. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @location = args[:location] if args.key?(:location) + @name = args[:name] if args.key?(:name) + end + end + + # Defines the A2A feature set supported by the agent + class AgentCapabilities + include Google::Apis::Core::Hashable + + # Extensions supported by this agent. + # Corresponds to the JSON property `extensions` + # @return [Array] + attr_accessor :extensions + + # If the agent can send push notifications to the clients webhook + # Corresponds to the JSON property `pushNotifications` + # @return [Boolean] + attr_accessor :push_notifications + alias_method :push_notifications?, :push_notifications + + # If the agent will support streaming responses + # Corresponds to the JSON property `streaming` + # @return [Boolean] + attr_accessor :streaming + alias_method :streaming?, :streaming + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @extensions = args[:extensions] if args.key?(:extensions) + @push_notifications = args[:push_notifications] if args.key?(:push_notifications) + @streaming = args[:streaming] if args.key?(:streaming) + end + end + + # AgentCard conveys key information: - Overall details (version, name, + # description, uses) - Skills; a set of actions/solutions the agent can perform - + # Default modalities/content types supported by the agent. - Authentication + # requirements Next ID: 19 + class AgentCard + include Google::Apis::Core::Hashable + + # Announcement of additional supported transports. Client can use any of the + # supported transports. + # Corresponds to the JSON property `additionalInterfaces` + # @return [Array] + attr_accessor :additional_interfaces + + # Defines the A2A feature set supported by the agent + # Corresponds to the JSON property `capabilities` + # @return [Google::Apis::WorkspaceeventsV1::AgentCapabilities] + attr_accessor :capabilities + + # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED The set of interaction modes + # that the agent supports across all skills. This can be overridden per skill. + # Defined as mime types. + # Corresponds to the JSON property `defaultInputModes` + # @return [Array] + attr_accessor :default_input_modes + + # The mime types supported as outputs from this agent. + # Corresponds to the JSON property `defaultOutputModes` + # @return [Array] + attr_accessor :default_output_modes + + # A description of the agent's domain of action/solution space. Example: "Agent + # that helps users with recipes and cooking." + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # A url to provide additional documentation about the agent. + # Corresponds to the JSON property `documentationUrl` + # @return [String] + attr_accessor :documentation_url + + # An optional URL to an icon for the agent. + # Corresponds to the JSON property `iconUrl` + # @return [String] + attr_accessor :icon_url + + # A human readable name for the agent. Example: "Recipe Agent" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The transport of the preferred endpoint. If empty, defaults to JSONRPC. + # Corresponds to the JSON property `preferredTransport` + # @return [String] + attr_accessor :preferred_transport + + # The version of the A2A protocol this agent supports. + # Corresponds to the JSON property `protocolVersion` + # @return [String] + attr_accessor :protocol_version + + # Represents information about the service provider of an agent. + # Corresponds to the JSON property `provider` + # @return [Google::Apis::WorkspaceeventsV1::AgentProvider] + attr_accessor :provider + + # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Security requirements for + # contacting the agent. This list can be seen as an OR of ANDs. Each object in + # the list describes one possible set of security requirements that must be + # present on a request. This allows specifying, for example, "callers must + # either use OAuth OR an API Key AND mTLS." Example: security ` schemes ` key: " + # oauth" value ` list: ["read"] ` ` ` security ` schemes ` key: "api-key" ` + # schemes ` key: "mtls" ` ` + # Corresponds to the JSON property `security` + # @return [Array] + attr_accessor :security + + # The security scheme details used for authenticating with this agent. + # Corresponds to the JSON property `securitySchemes` + # @return [Hash] + attr_accessor :security_schemes + + # JSON Web Signatures computed for this AgentCard. + # Corresponds to the JSON property `signatures` + # @return [Array] + attr_accessor :signatures + + # Skills represent a unit of ability an agent can perform. This may somewhat + # abstract but represents a more focused set of actions that the agent is highly + # likely to succeed at. + # Corresponds to the JSON property `skills` + # @return [Array] + attr_accessor :skills + + # Whether the agent supports providing an extended agent card when the user is + # authenticated, i.e. is the card from .well-known different than the card from + # GetAgentCard. + # Corresponds to the JSON property `supportsAuthenticatedExtendedCard` + # @return [Boolean] + attr_accessor :supports_authenticated_extended_card + alias_method :supports_authenticated_extended_card?, :supports_authenticated_extended_card + + # A URL to the address the agent is hosted at. This represents the preferred + # endpoint as declared by the agent. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + # The version of the agent. Example: "1.0.0" + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @additional_interfaces = args[:additional_interfaces] if args.key?(:additional_interfaces) + @capabilities = args[:capabilities] if args.key?(:capabilities) + @default_input_modes = args[:default_input_modes] if args.key?(:default_input_modes) + @default_output_modes = args[:default_output_modes] if args.key?(:default_output_modes) + @description = args[:description] if args.key?(:description) + @documentation_url = args[:documentation_url] if args.key?(:documentation_url) + @icon_url = args[:icon_url] if args.key?(:icon_url) + @name = args[:name] if args.key?(:name) + @preferred_transport = args[:preferred_transport] if args.key?(:preferred_transport) + @protocol_version = args[:protocol_version] if args.key?(:protocol_version) + @provider = args[:provider] if args.key?(:provider) + @security = args[:security] if args.key?(:security) + @security_schemes = args[:security_schemes] if args.key?(:security_schemes) + @signatures = args[:signatures] if args.key?(:signatures) + @skills = args[:skills] if args.key?(:skills) + @supports_authenticated_extended_card = args[:supports_authenticated_extended_card] if args.key?(:supports_authenticated_extended_card) + @url = args[:url] if args.key?(:url) + @version = args[:version] if args.key?(:version) + end + end + + # AgentCardSignature represents a JWS signature of an AgentCard. This follows + # the JSON format of an RFC 7515 JSON Web Signature (JWS). + class AgentCardSignature + include Google::Apis::Core::Hashable + + # The unprotected JWS header values. + # Corresponds to the JSON property `header` + # @return [Hash] + attr_accessor :header + + # Required. The protected JWS header for the signature. This is always a + # base64url-encoded JSON object. Required. + # Corresponds to the JSON property `protected` + # @return [String] + attr_accessor :protected + + # Required. The computed signature, base64url-encoded. Required. + # Corresponds to the JSON property `signature` + # @return [String] + attr_accessor :signature + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @header = args[:header] if args.key?(:header) + @protected = args[:protected] if args.key?(:protected) + @signature = args[:signature] if args.key?(:signature) + end + end + + # A declaration of an extension supported by an Agent. + class AgentExtension + include Google::Apis::Core::Hashable + + # A description of how this agent uses this extension. Example: "Google OAuth 2. + # 0 authentication" + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Optional configuration for the extension. + # Corresponds to the JSON property `params` + # @return [Hash] + attr_accessor :params + + # Whether the client must follow specific requirements of the extension. Example: + # false + # Corresponds to the JSON property `required` + # @return [Boolean] + attr_accessor :required + alias_method :required?, :required + + # The URI of the extension. Example: "https://developers.google.com/identity/ + # protocols/oauth2" + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @params = args[:params] if args.key?(:params) + @required = args[:required] if args.key?(:required) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Defines additional transport information for the agent. + class AgentInterface + include Google::Apis::Core::Hashable + + # The transport supported this url. This is an open form string, to be easily + # extended for many transport protocols. The core ones officially supported are + # JSONRPC, GRPC and HTTP+JSON. + # Corresponds to the JSON property `transport` + # @return [String] + attr_accessor :transport + + # The url this interface is found at. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @transport = args[:transport] if args.key?(:transport) + @url = args[:url] if args.key?(:url) + end + end + + # Represents information about the service provider of an agent. + class AgentProvider + include Google::Apis::Core::Hashable + + # The providers organization name Example: "Google" + # Corresponds to the JSON property `organization` + # @return [String] + attr_accessor :organization + + # The providers reference url Example: "https://ai.google.dev" + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @organization = args[:organization] if args.key?(:organization) + @url = args[:url] if args.key?(:url) + end + end + + # AgentSkill represents a unit of action/solution that the agent can perform. + # One can think of this as a type of highly reliable solution that an agent can + # be tasked to provide. Agents have the autonomy to choose how and when to use + # specific skills, but clients should have confidence that if the skill is + # defined that unit of action can be reliably performed. + class AgentSkill + include Google::Apis::Core::Hashable + + # A human (or llm) readable description of the skill details and behaviors. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # A set of example queries that this skill is designed to address. These + # examples should help the caller to understand how to craft requests to the + # agent to achieve specific goals. Example: ["I need a recipe for bread"] + # Corresponds to the JSON property `examples` + # @return [Array] + attr_accessor :examples + + # Unique identifier of the skill within this agent. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Possible input modalities supported. + # Corresponds to the JSON property `inputModes` + # @return [Array] + attr_accessor :input_modes + + # A human readable name for the skill. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Possible output modalities produced + # Corresponds to the JSON property `outputModes` + # @return [Array] + attr_accessor :output_modes + + # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Security schemes necessary + # for the agent to leverage this skill. As in the overall AgentCard.security, + # this list represents a logical OR of security requirement objects. Each object + # is a set of security schemes that must be used together (a logical AND). + # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED + # Corresponds to the JSON property `security` + # @return [Array] + attr_accessor :security + + # A set of tags for the skill to enhance categorization/utilization. Example: [" + # cooking", "customer support", "billing"] + # Corresponds to the JSON property `tags` + # @return [Array] + attr_accessor :tags + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @examples = args[:examples] if args.key?(:examples) + @id = args[:id] if args.key?(:id) + @input_modes = args[:input_modes] if args.key?(:input_modes) + @name = args[:name] if args.key?(:name) + @output_modes = args[:output_modes] if args.key?(:output_modes) + @security = args[:security] if args.key?(:security) + @tags = args[:tags] if args.key?(:tags) + end + end + + # Artifacts are the container for task completed results. These are similar to + # Messages but are intended to be the product of a task, as opposed to point-to- + # point communication. + class Artifact + include Google::Apis::Core::Hashable + + # Unique identifier (e.g. UUID) for the artifact. It must be at least unique + # within a task. + # Corresponds to the JSON property `artifactId` + # @return [String] + attr_accessor :artifact_id + + # A human readable description of the artifact, optional. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The URIs of extensions that are present or contributed to this Artifact. + # Corresponds to the JSON property `extensions` + # @return [Array] + attr_accessor :extensions + + # Optional metadata included with the artifact. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # A human readable name for the artifact. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The content of the artifact. + # Corresponds to the JSON property `parts` + # @return [Array] + attr_accessor :parts + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @artifact_id = args[:artifact_id] if args.key?(:artifact_id) + @description = args[:description] if args.key?(:description) + @extensions = args[:extensions] if args.key?(:extensions) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @parts = args[:parts] if args.key?(:parts) + end + end + + # Defines authentication details, used for push notifications. + class AuthenticationInfo + include Google::Apis::Core::Hashable + + # Optional credentials + # Corresponds to the JSON property `credentials` + # @return [String] + attr_accessor :credentials + + # Supported authentication schemes - e.g. Basic, Bearer, etc + # Corresponds to the JSON property `schemes` + # @return [Array] + attr_accessor :schemes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @credentials = args[:credentials] if args.key?(:credentials) + @schemes = args[:schemes] if args.key?(:schemes) + end + end + + # + class AuthorizationCodeOAuthFlow + include Google::Apis::Core::Hashable + + # The authorization URL to be used for this flow. This MUST be in the form of a + # URL. The OAuth2 standard requires the use of TLS + # Corresponds to the JSON property `authorizationUrl` + # @return [String] + attr_accessor :authorization_url + + # The URL to be used for obtaining refresh tokens. This MUST be in the form of a + # URL. The OAuth2 standard requires the use of TLS. + # Corresponds to the JSON property `refreshUrl` + # @return [String] + attr_accessor :refresh_url + + # The available scopes for the OAuth2 security scheme. A map between the scope + # name and a short description for it. The map MAY be empty. + # Corresponds to the JSON property `scopes` + # @return [Hash] + attr_accessor :scopes + + # The token URL to be used for this flow. This MUST be in the form of a URL. The + # OAuth2 standard requires the use of TLS. + # Corresponds to the JSON property `tokenUrl` + # @return [String] + attr_accessor :token_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @authorization_url = args[:authorization_url] if args.key?(:authorization_url) + @refresh_url = args[:refresh_url] if args.key?(:refresh_url) + @scopes = args[:scopes] if args.key?(:scopes) + @token_url = args[:token_url] if args.key?(:token_url) + end + end + + # + class CancelTaskRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # + class ClientCredentialsOAuthFlow + include Google::Apis::Core::Hashable + + # The URL to be used for obtaining refresh tokens. This MUST be in the form of a + # URL. The OAuth2 standard requires the use of TLS. + # Corresponds to the JSON property `refreshUrl` + # @return [String] + attr_accessor :refresh_url + + # The available scopes for the OAuth2 security scheme. A map between the scope + # name and a short description for it. The map MAY be empty. + # Corresponds to the JSON property `scopes` + # @return [Hash] + attr_accessor :scopes + + # The token URL to be used for this flow. This MUST be in the form of a URL. The + # OAuth2 standard requires the use of TLS. + # Corresponds to the JSON property `tokenUrl` + # @return [String] + attr_accessor :token_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @refresh_url = args[:refresh_url] if args.key?(:refresh_url) + @scopes = args[:scopes] if args.key?(:scopes) + @token_url = args[:token_url] if args.key?(:token_url) + end + end + + # DataPart represents a structured blob. This is most commonly a JSON payload. + class DataPart + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `data` + # @return [Hash] + attr_accessor :data + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data = args[:data] if args.key?(:data) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated empty + # messages in your APIs. A typical example is to use it as the request or the + # response type of an API method. For instance: service Foo ` rpc Bar(google. + # protobuf.Empty) returns (google.protobuf.Empty); ` + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # FilePart represents the different ways files can be provided. If files are + # small, directly feeding the bytes is supported via file_with_bytes. If the + # file is large, the agent should read the content as appropriate directly from + # the file_with_uri source. + class FilePart + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `fileWithBytes` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :file_with_bytes + + # + # Corresponds to the JSON property `fileWithUri` + # @return [String] + attr_accessor :file_with_uri + + # + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file_with_bytes = args[:file_with_bytes] if args.key?(:file_with_bytes) + @file_with_uri = args[:file_with_uri] if args.key?(:file_with_uri) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @name = args[:name] if args.key?(:name) + end + end + + # + class HttpAuthSecurityScheme + include Google::Apis::Core::Hashable + + # A hint to the client to identify how the bearer token is formatted. Bearer + # tokens are usually generated by an authorization server, so this information + # is primarily for documentation purposes. + # Corresponds to the JSON property `bearerFormat` + # @return [String] + attr_accessor :bearer_format + + # Description of this security scheme. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The name of the HTTP Authentication scheme to be used in the Authorization + # header as defined in RFC7235. The values used SHOULD be registered in the IANA + # Authentication Scheme registry. The value is case-insensitive, as defined in + # RFC7235. + # Corresponds to the JSON property `scheme` + # @return [String] + attr_accessor :scheme + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bearer_format = args[:bearer_format] if args.key?(:bearer_format) + @description = args[:description] if args.key?(:description) + @scheme = args[:scheme] if args.key?(:scheme) + end + end + + # + class ImplicitOAuthFlow + include Google::Apis::Core::Hashable + + # The authorization URL to be used for this flow. This MUST be in the form of a + # URL. The OAuth2 standard requires the use of TLS + # Corresponds to the JSON property `authorizationUrl` + # @return [String] + attr_accessor :authorization_url + + # The URL to be used for obtaining refresh tokens. This MUST be in the form of a + # URL. The OAuth2 standard requires the use of TLS. + # Corresponds to the JSON property `refreshUrl` + # @return [String] + attr_accessor :refresh_url + + # The available scopes for the OAuth2 security scheme. A map between the scope + # name and a short description for it. The map MAY be empty. + # Corresponds to the JSON property `scopes` + # @return [Hash] + attr_accessor :scopes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @authorization_url = args[:authorization_url] if args.key?(:authorization_url) + @refresh_url = args[:refresh_url] if args.key?(:refresh_url) + @scopes = args[:scopes] if args.key?(:scopes) + end + end + # The response message for SubscriptionsService.ListSubscriptions. class ListSubscriptionsResponse include Google::Apis::Core::Hashable - # A token, which can be sent as `page_token` to retrieve the next page. If this - # field is omitted, there are no subsequent pages. - # Corresponds to the JSON property `nextPageToken` + # A token, which can be sent as `page_token` to retrieve the next page. If this + # field is omitted, there are no subsequent pages. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # List of subscriptions. + # Corresponds to the JSON property `subscriptions` + # @return [Array] + attr_accessor :subscriptions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @subscriptions = args[:subscriptions] if args.key?(:subscriptions) + end + end + + # + class ListTaskPushNotificationConfigResponse + include Google::Apis::Core::Hashable + + # The list of push notification configurations. + # Corresponds to the JSON property `configs` + # @return [Array] + attr_accessor :configs + + # A token, which can be sent as `page_token` to retrieve the next page. If this + # field is omitted, there are no subsequent pages. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @configs = args[:configs] if args.key?(:configs) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Message is one unit of communication between client and server. It is + # associated with a context and optionally a task. Since the server is + # responsible for the context definition, it must always provide a context_id in + # its messages. The client can optionally provide the context_id if it knows the + # context to associate the message to. Similarly for task_id, except the server + # decides if a task is created and whether to include the task_id. + class Message + include Google::Apis::Core::Hashable + + # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of + # the message content. + # Corresponds to the JSON property `content` + # @return [Array] + attr_accessor :content + + # The context id of the message. This is optional and if set, the message will + # be associated with the given context. + # Corresponds to the JSON property `contextId` + # @return [String] + attr_accessor :context_id + + # The URIs of extensions that are present or contributed to this Message. + # Corresponds to the JSON property `extensions` + # @return [Array] + attr_accessor :extensions + + # The unique identifier (e.g. UUID)of the message. This is required and created + # by the message creator. + # Corresponds to the JSON property `messageId` + # @return [String] + attr_accessor :message_id + + # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to + # provide along with the message. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # A role for the message. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + # The task id of the message. This is optional and if set, the message will be + # associated with the given task. + # Corresponds to the JSON property `taskId` + # @return [String] + attr_accessor :task_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + @context_id = args[:context_id] if args.key?(:context_id) + @extensions = args[:extensions] if args.key?(:extensions) + @message_id = args[:message_id] if args.key?(:message_id) + @metadata = args[:metadata] if args.key?(:metadata) + @role = args[:role] if args.key?(:role) + @task_id = args[:task_id] if args.key?(:task_id) + end + end + + # + class MutualTlsSecurityScheme + include Google::Apis::Core::Hashable + + # Description of this security scheme. + # Corresponds to the JSON property `description` # @return [String] - attr_accessor :next_page_token + attr_accessor :description + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + end + end + + # The endpoint where the subscription delivers events. + class NotificationEndpoint + include Google::Apis::Core::Hashable + + # Immutable. The Pub/Sub topic that receives events for the subscription. Format: + # `projects/`project`/topics/`topic`` You must create the topic in the same + # Google Cloud project where you create this subscription. Note: The Google + # Workspace Events API uses [ordering keys](https://cloud.google.com/pubsub/docs/ + # ordering) for the benefit of sequential events. If the Cloud Pub/Sub topic has + # a [message storage policy](https://cloud.google.com/pubsub/docs/resource- + # location-restriction#exceptions) configured to exclude the nearest Google + # Cloud region, publishing events with ordering keys will fail. When the topic + # receives events, the events are encoded as Pub/Sub messages. For details, see + # the [Google Cloud Pub/Sub Protocol Binding for CloudEvents](https://github.com/ + # googleapis/google-cloudevents/blob/main/docs/spec/pubsub.md). + # Corresponds to the JSON property `pubsubTopic` + # @return [String] + attr_accessor :pubsub_topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic) + end + end + + # + class OAuth2SecurityScheme + include Google::Apis::Core::Hashable + + # Description of this security scheme. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # An object containing configuration information for the flow types supported + # Corresponds to the JSON property `flows` + # @return [Google::Apis::WorkspaceeventsV1::OAuthFlows] + attr_accessor :flows + + # URL to the oauth2 authorization server metadata [RFC8414](https://datatracker. + # ietf.org/doc/html/rfc8414). TLS is required. + # Corresponds to the JSON property `oauth2MetadataUrl` + # @return [String] + attr_accessor :oauth2_metadata_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @flows = args[:flows] if args.key?(:flows) + @oauth2_metadata_url = args[:oauth2_metadata_url] if args.key?(:oauth2_metadata_url) + end + end + + # + class OAuthFlows + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `authorizationCode` + # @return [Google::Apis::WorkspaceeventsV1::AuthorizationCodeOAuthFlow] + attr_accessor :authorization_code + + # + # Corresponds to the JSON property `clientCredentials` + # @return [Google::Apis::WorkspaceeventsV1::ClientCredentialsOAuthFlow] + attr_accessor :client_credentials + + # + # Corresponds to the JSON property `implicit` + # @return [Google::Apis::WorkspaceeventsV1::ImplicitOAuthFlow] + attr_accessor :implicit + + # + # Corresponds to the JSON property `password` + # @return [Google::Apis::WorkspaceeventsV1::PasswordOAuthFlow] + attr_accessor :password + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @authorization_code = args[:authorization_code] if args.key?(:authorization_code) + @client_credentials = args[:client_credentials] if args.key?(:client_credentials) + @implicit = args[:implicit] if args.key?(:implicit) + @password = args[:password] if args.key?(:password) + end + end + + # + class OpenIdConnectSecurityScheme + include Google::Apis::Core::Hashable + + # Description of this security scheme. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Well-known URL to discover the [[OpenID-Connect-Discovery]] provider metadata. + # Corresponds to the JSON property `openIdConnectUrl` + # @return [String] + attr_accessor :open_id_connect_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @open_id_connect_url = args[:open_id_connect_url] if args.key?(:open_id_connect_url) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # If the value is `false`, it means the operation is still in progress. If `true` + # , the operation is completed, and either `error` or `response` is available. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by [ + # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of + # data: error code, error message, and error details. You can find out more + # about this error model and how to work with it in the [API Design Guide](https: + # //cloud.google.com/apis/design/errors). + # Corresponds to the JSON property `error` + # @return [Google::Apis::WorkspaceeventsV1::Status] + attr_accessor :error + + # Service-specific metadata associated with the operation. It typically contains + # progress information and common metadata such as create time. Some services + # might not provide such metadata. Any method that returns a long-running + # operation should document the metadata type, if any. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The server-assigned name, which is only unique within the same service that + # originally returns it. If you use the default HTTP mapping, the `name` should + # be a resource name ending with `operations/`unique_id``. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The normal, successful response of the operation. If the original method + # returns no data on success, such as `Delete`, the response is `google.protobuf. + # Empty`. If the original method is standard `Get`/`Create`/`Update`, the + # response should be the resource. For other methods, the response should have + # the type `XxxResponse`, where `Xxx` is the original method name. For example, + # if the original method name is `TakeSnapshot()`, the inferred response type is + # `TakeSnapshotResponse`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Part represents a container for a section of communication content. Parts can + # be purely textual, some sort of file (image, video, etc) or a structured data + # blob (i.e. JSON). + class Part + include Google::Apis::Core::Hashable + + # DataPart represents a structured blob. This is most commonly a JSON payload. + # Corresponds to the JSON property `data` + # @return [Google::Apis::WorkspaceeventsV1::DataPart] + attr_accessor :data + + # FilePart represents the different ways files can be provided. If files are + # small, directly feeding the bytes is supported via file_with_bytes. If the + # file is large, the agent should read the content as appropriate directly from + # the file_with_uri source. + # Corresponds to the JSON property `file` + # @return [Google::Apis::WorkspaceeventsV1::FilePart] + attr_accessor :file + + # Optional metadata associated with this part. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # + # Corresponds to the JSON property `text` + # @return [String] + attr_accessor :text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data = args[:data] if args.key?(:data) + @file = args[:file] if args.key?(:file) + @metadata = args[:metadata] if args.key?(:metadata) + @text = args[:text] if args.key?(:text) + end + end + + # + class PasswordOAuthFlow + include Google::Apis::Core::Hashable + + # The URL to be used for obtaining refresh tokens. This MUST be in the form of a + # URL. The OAuth2 standard requires the use of TLS. + # Corresponds to the JSON property `refreshUrl` + # @return [String] + attr_accessor :refresh_url + + # The available scopes for the OAuth2 security scheme. A map between the scope + # name and a short description for it. The map MAY be empty. + # Corresponds to the JSON property `scopes` + # @return [Hash] + attr_accessor :scopes + + # The token URL to be used for this flow. This MUST be in the form of a URL. The + # OAuth2 standard requires the use of TLS. + # Corresponds to the JSON property `tokenUrl` + # @return [String] + attr_accessor :token_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @refresh_url = args[:refresh_url] if args.key?(:refresh_url) + @scopes = args[:scopes] if args.key?(:scopes) + @token_url = args[:token_url] if args.key?(:token_url) + end + end + + # Options about what data to include in the event payload. Only supported for + # Google Chat and Google Drive events. + class PayloadOptions + include Google::Apis::Core::Hashable + + # Optional. If `include_resource` is set to `true`, the list of fields to + # include in the event payload. Separate fields with a comma. For example, to + # include a Google Chat message's sender and create time, enter `message.sender, + # message.createTime`. If omitted, the payload includes all fields for the + # resource. If you specify a field that doesn't exist for the resource, the + # system ignores the field. + # Corresponds to the JSON property `fieldMask` + # @return [String] + attr_accessor :field_mask + + # Optional. Whether the event payload includes data about the resource that + # changed. For example, for an event where a Google Chat message was created, + # whether the payload contains data about the [`Message`](https://developers. + # google.com/chat/api/reference/rest/v1/spaces.messages) resource. If false, the + # event payload only includes the name of the changed resource. + # Corresponds to the JSON property `includeResource` + # @return [Boolean] + attr_accessor :include_resource + alias_method :include_resource?, :include_resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field_mask = args[:field_mask] if args.key?(:field_mask) + @include_resource = args[:include_resource] if args.key?(:include_resource) + end + end + + # Configuration for setting up push notifications for task updates. + class PushNotificationConfig + include Google::Apis::Core::Hashable + + # Defines authentication details, used for push notifications. + # Corresponds to the JSON property `authentication` + # @return [Google::Apis::WorkspaceeventsV1::AuthenticationInfo] + attr_accessor :authentication + + # A unique identifier (e.g. UUID) for this push notification. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Token unique for this task/session + # Corresponds to the JSON property `token` + # @return [String] + attr_accessor :token + + # Url to send the notification too + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end - # List of subscriptions. - # Corresponds to the JSON property `subscriptions` - # @return [Array] - attr_accessor :subscriptions + # Update properties of this object + def update!(**args) + @authentication = args[:authentication] if args.key?(:authentication) + @id = args[:id] if args.key?(:id) + @token = args[:token] if args.key?(:token) + @url = args[:url] if args.key?(:url) + end + end + + # The request message for SubscriptionsService.ReactivateSubscription. + class ReactivateSubscriptionRequest + include Google::Apis::Core::Hashable def initialize(**args) update!(**args) @@ -43,29 +1215,17 @@ def initialize(**args) # Update properties of this object def update!(**args) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - @subscriptions = args[:subscriptions] if args.key?(:subscriptions) end end - # The endpoint where the subscription delivers events. - class NotificationEndpoint + # + class Security include Google::Apis::Core::Hashable - # Immutable. The Pub/Sub topic that receives events for the subscription. Format: - # `projects/`project`/topics/`topic`` You must create the topic in the same - # Google Cloud project where you create this subscription. Note: The Google - # Workspace Events API uses [ordering keys](https://cloud.google.com/pubsub/docs/ - # ordering) for the benefit of sequential events. If the Cloud Pub/Sub topic has - # a [message storage policy](https://cloud.google.com/pubsub/docs/resource- - # location-restriction#exceptions) configured to exclude the nearest Google - # Cloud region, publishing events with ordering keys will fail. When the topic - # receives events, the events are encoded as Pub/Sub messages. For details, see - # the [Google Cloud Pub/Sub Protocol Binding for CloudEvents](https://github.com/ - # googleapis/google-cloudevents/blob/main/docs/spec/pubsub.md). - # Corresponds to the JSON property `pubsubTopic` - # @return [String] - attr_accessor :pubsub_topic + # + # Corresponds to the JSON property `schemes` + # @return [Hash] + attr_accessor :schemes def initialize(**args) update!(**args) @@ -73,57 +1233,38 @@ def initialize(**args) # Update properties of this object def update!(**args) - @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic) + @schemes = args[:schemes] if args.key?(:schemes) end end - # This resource represents a long-running operation that is the result of a - # network API call. - class Operation + # + class SecurityScheme include Google::Apis::Core::Hashable - # If the value is `false`, it means the operation is still in progress. If `true` - # , the operation is completed, and either `error` or `response` is available. - # Corresponds to the JSON property `done` - # @return [Boolean] - attr_accessor :done - alias_method :done?, :done + # + # Corresponds to the JSON property `apiKeySecurityScheme` + # @return [Google::Apis::WorkspaceeventsV1::ApiKeySecurityScheme] + attr_accessor :api_key_security_scheme - # The `Status` type defines a logical error model that is suitable for different - # programming environments, including REST APIs and RPC APIs. It is used by [ - # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of - # data: error code, error message, and error details. You can find out more - # about this error model and how to work with it in the [API Design Guide](https: - # //cloud.google.com/apis/design/errors). - # Corresponds to the JSON property `error` - # @return [Google::Apis::WorkspaceeventsV1::Status] - attr_accessor :error + # + # Corresponds to the JSON property `httpAuthSecurityScheme` + # @return [Google::Apis::WorkspaceeventsV1::HttpAuthSecurityScheme] + attr_accessor :http_auth_security_scheme - # Service-specific metadata associated with the operation. It typically contains - # progress information and common metadata such as create time. Some services - # might not provide such metadata. Any method that returns a long-running - # operation should document the metadata type, if any. - # Corresponds to the JSON property `metadata` - # @return [Hash] - attr_accessor :metadata + # + # Corresponds to the JSON property `mtlsSecurityScheme` + # @return [Google::Apis::WorkspaceeventsV1::MutualTlsSecurityScheme] + attr_accessor :mtls_security_scheme - # The server-assigned name, which is only unique within the same service that - # originally returns it. If you use the default HTTP mapping, the `name` should - # be a resource name ending with `operations/`unique_id``. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name + # + # Corresponds to the JSON property `oauth2SecurityScheme` + # @return [Google::Apis::WorkspaceeventsV1::OAuth2SecurityScheme] + attr_accessor :oauth2_security_scheme - # The normal, successful response of the operation. If the original method - # returns no data on success, such as `Delete`, the response is `google.protobuf. - # Empty`. If the original method is standard `Get`/`Create`/`Update`, the - # response should be the resource. For other methods, the response should have - # the type `XxxResponse`, where `Xxx` is the original method name. For example, - # if the original method name is `TakeSnapshot()`, the inferred response type is - # `TakeSnapshotResponse`. - # Corresponds to the JSON property `response` - # @return [Hash] - attr_accessor :response + # + # Corresponds to the JSON property `openIdConnectSecurityScheme` + # @return [Google::Apis::WorkspaceeventsV1::OpenIdConnectSecurityScheme] + attr_accessor :open_id_connect_security_scheme def initialize(**args) update!(**args) @@ -131,38 +1272,41 @@ def initialize(**args) # Update properties of this object def update!(**args) - @done = args[:done] if args.key?(:done) - @error = args[:error] if args.key?(:error) - @metadata = args[:metadata] if args.key?(:metadata) - @name = args[:name] if args.key?(:name) - @response = args[:response] if args.key?(:response) + @api_key_security_scheme = args[:api_key_security_scheme] if args.key?(:api_key_security_scheme) + @http_auth_security_scheme = args[:http_auth_security_scheme] if args.key?(:http_auth_security_scheme) + @mtls_security_scheme = args[:mtls_security_scheme] if args.key?(:mtls_security_scheme) + @oauth2_security_scheme = args[:oauth2_security_scheme] if args.key?(:oauth2_security_scheme) + @open_id_connect_security_scheme = args[:open_id_connect_security_scheme] if args.key?(:open_id_connect_security_scheme) end end - # Options about what data to include in the event payload. Only supported for - # Google Chat and Google Drive events. - class PayloadOptions + # Configuration of a send message request. + class SendMessageConfiguration include Google::Apis::Core::Hashable - # Optional. If `include_resource` is set to `true`, the list of fields to - # include in the event payload. Separate fields with a comma. For example, to - # include a Google Chat message's sender and create time, enter `message.sender, - # message.createTime`. If omitted, the payload includes all fields for the - # resource. If you specify a field that doesn't exist for the resource, the - # system ignores the field. - # Corresponds to the JSON property `fieldMask` - # @return [String] - attr_accessor :field_mask + # The output modes that the agent is expected to respond with. + # Corresponds to the JSON property `acceptedOutputModes` + # @return [Array] + attr_accessor :accepted_output_modes - # Optional. Whether the event payload includes data about the resource that - # changed. For example, for an event where a Google Chat message was created, - # whether the payload contains data about the [`Message`](https://developers. - # google.com/chat/api/reference/rest/v1/spaces.messages) resource. If false, the - # event payload only includes the name of the changed resource. - # Corresponds to the JSON property `includeResource` + # If true, the message will be blocking until the task is completed. If false, + # the message will be non-blocking and the task will be returned immediately. It + # is the caller's responsibility to check for any task updates. + # Corresponds to the JSON property `blocking` # @return [Boolean] - attr_accessor :include_resource - alias_method :include_resource?, :include_resource + attr_accessor :blocking + alias_method :blocking?, :blocking + + # The maximum number of messages to include in the history. if 0, the history + # will be unlimited. + # Corresponds to the JSON property `historyLength` + # @return [Fixnum] + attr_accessor :history_length + + # Configuration for setting up push notifications for task updates. + # Corresponds to the JSON property `pushNotification` + # @return [Google::Apis::WorkspaceeventsV1::PushNotificationConfig] + attr_accessor :push_notification def initialize(**args) update!(**args) @@ -170,21 +1314,46 @@ def initialize(**args) # Update properties of this object def update!(**args) - @field_mask = args[:field_mask] if args.key?(:field_mask) - @include_resource = args[:include_resource] if args.key?(:include_resource) + @accepted_output_modes = args[:accepted_output_modes] if args.key?(:accepted_output_modes) + @blocking = args[:blocking] if args.key?(:blocking) + @history_length = args[:history_length] if args.key?(:history_length) + @push_notification = args[:push_notification] if args.key?(:push_notification) end end - # The request message for SubscriptionsService.ReactivateSubscription. - class ReactivateSubscriptionRequest + # /////////// Request Messages /////////// + class SendMessageRequest include Google::Apis::Core::Hashable + # Configuration of a send message request. + # Corresponds to the JSON property `configuration` + # @return [Google::Apis::WorkspaceeventsV1::SendMessageConfiguration] + attr_accessor :configuration + + # Message is one unit of communication between client and server. It is + # associated with a context and optionally a task. Since the server is + # responsible for the context definition, it must always provide a context_id in + # its messages. The client can optionally provide the context_id if it knows the + # context to associate the message to. Similarly for task_id, except the server + # decides if a task is created and whether to include the task_id. + # Corresponds to the JSON property `message` + # @return [Google::Apis::WorkspaceeventsV1::Message] + attr_accessor :message + + # Optional metadata for the request. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @configuration = args[:configuration] if args.key?(:configuration) + @message = args[:message] if args.key?(:message) + @metadata = args[:metadata] if args.key?(:metadata) end end @@ -227,6 +1396,77 @@ def update!(**args) end end + # The stream response for a message. The stream should be one of the following + # sequences: If the response is a message, the stream should contain one, and + # only one, message and then close If the response is a task lifecycle, the + # first response should be a Task object followed by zero or more + # TaskStatusUpdateEvents and TaskArtifactUpdateEvents. The stream should + # complete when the Task if in an interrupted or terminal state. A stream that + # ends before these conditions are met are + class StreamResponse + include Google::Apis::Core::Hashable + + # TaskArtifactUpdateEvent represents a task delta where an artifact has been + # generated. + # Corresponds to the JSON property `artifactUpdate` + # @return [Google::Apis::WorkspaceeventsV1::TaskArtifactUpdateEvent] + attr_accessor :artifact_update + + # Message is one unit of communication between client and server. It is + # associated with a context and optionally a task. Since the server is + # responsible for the context definition, it must always provide a context_id in + # its messages. The client can optionally provide the context_id if it knows the + # context to associate the message to. Similarly for task_id, except the server + # decides if a task is created and whether to include the task_id. + # Corresponds to the JSON property `message` + # @return [Google::Apis::WorkspaceeventsV1::Message] + attr_accessor :message + + # TaskStatusUpdateEvent is a delta even on a task indicating that a task has + # changed. + # Corresponds to the JSON property `statusUpdate` + # @return [Google::Apis::WorkspaceeventsV1::TaskStatusUpdateEvent] + attr_accessor :status_update + + # Task is the core unit of action for A2A. It has a current status and when + # results are created for the task they are stored in the artifact. If there are + # multiple turns for a task, these are stored in history. + # Corresponds to the JSON property `task` + # @return [Google::Apis::WorkspaceeventsV1::Task] + attr_accessor :task + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @artifact_update = args[:artifact_update] if args.key?(:artifact_update) + @message = args[:message] if args.key?(:message) + @status_update = args[:status_update] if args.key?(:status_update) + @task = args[:task] if args.key?(:task) + end + end + + # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED + class StringList + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `list` + # @return [Array] + attr_accessor :list + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @list = args[:list] if args.key?(:list) + end + end + # A subscription to receive events about a Google Workspace resource. To learn # more about subscriptions, see the [Google Workspace Events API overview](https: # //developers.google.com/workspace/events). @@ -362,6 +1602,222 @@ def update!(**args) @update_time = args[:update_time] if args.key?(:update_time) end end + + # Task is the core unit of action for A2A. It has a current status and when + # results are created for the task they are stored in the artifact. If there are + # multiple turns for a task, these are stored in history. + class Task + include Google::Apis::Core::Hashable + + # A set of output artifacts for a Task. + # Corresponds to the JSON property `artifacts` + # @return [Array] + attr_accessor :artifacts + + # Unique identifier (e.g. UUID) for the contextual collection of interactions ( + # tasks and messages). Created by the A2A server. + # Corresponds to the JSON property `contextId` + # @return [String] + attr_accessor :context_id + + # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED The history of interactions + # from a task. + # Corresponds to the JSON property `history` + # @return [Array] + attr_accessor :history + + # Unique identifier (e.g. UUID) for the task, generated by the server for a new + # task. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED A key/value object to store + # custom metadata about a task. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # A container for the status of a task + # Corresponds to the JSON property `status` + # @return [Google::Apis::WorkspaceeventsV1::TaskStatus] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @artifacts = args[:artifacts] if args.key?(:artifacts) + @context_id = args[:context_id] if args.key?(:context_id) + @history = args[:history] if args.key?(:history) + @id = args[:id] if args.key?(:id) + @metadata = args[:metadata] if args.key?(:metadata) + @status = args[:status] if args.key?(:status) + end + end + + # TaskArtifactUpdateEvent represents a task delta where an artifact has been + # generated. + class TaskArtifactUpdateEvent + include Google::Apis::Core::Hashable + + # Whether this should be appended to a prior one produced + # Corresponds to the JSON property `append` + # @return [Boolean] + attr_accessor :append + alias_method :append?, :append + + # Artifacts are the container for task completed results. These are similar to + # Messages but are intended to be the product of a task, as opposed to point-to- + # point communication. + # Corresponds to the JSON property `artifact` + # @return [Google::Apis::WorkspaceeventsV1::Artifact] + attr_accessor :artifact + + # The id of the context that this task belongs too + # Corresponds to the JSON property `contextId` + # @return [String] + attr_accessor :context_id + + # Whether this represents the last part of an artifact + # Corresponds to the JSON property `lastChunk` + # @return [Boolean] + attr_accessor :last_chunk + alias_method :last_chunk?, :last_chunk + + # Optional metadata associated with the artifact update. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The id of the task for this artifact + # Corresponds to the JSON property `taskId` + # @return [String] + attr_accessor :task_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @append = args[:append] if args.key?(:append) + @artifact = args[:artifact] if args.key?(:artifact) + @context_id = args[:context_id] if args.key?(:context_id) + @last_chunk = args[:last_chunk] if args.key?(:last_chunk) + @metadata = args[:metadata] if args.key?(:metadata) + @task_id = args[:task_id] if args.key?(:task_id) + end + end + + # + class TaskPushNotificationConfig + include Google::Apis::Core::Hashable + + # The resource name of the config. Format: tasks/`task_id`/ + # pushNotificationConfigs/`config_id` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Configuration for setting up push notifications for task updates. + # Corresponds to the JSON property `pushNotificationConfig` + # @return [Google::Apis::WorkspaceeventsV1::PushNotificationConfig] + attr_accessor :push_notification_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @push_notification_config = args[:push_notification_config] if args.key?(:push_notification_config) + end + end + + # A container for the status of a task + class TaskStatus + include Google::Apis::Core::Hashable + + # Message is one unit of communication between client and server. It is + # associated with a context and optionally a task. Since the server is + # responsible for the context definition, it must always provide a context_id in + # its messages. The client can optionally provide the context_id if it knows the + # context to associate the message to. Similarly for task_id, except the server + # decides if a task is created and whether to include the task_id. + # Corresponds to the JSON property `message` + # @return [Google::Apis::WorkspaceeventsV1::Message] + attr_accessor :message + + # The current state of this task + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Timestamp when the status was recorded. Example: "2023-10-27T10:00:00Z" + # Corresponds to the JSON property `timestamp` + # @return [String] + attr_accessor :timestamp + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @message = args[:message] if args.key?(:message) + @state = args[:state] if args.key?(:state) + @timestamp = args[:timestamp] if args.key?(:timestamp) + end + end + + # TaskStatusUpdateEvent is a delta even on a task indicating that a task has + # changed. + class TaskStatusUpdateEvent + include Google::Apis::Core::Hashable + + # The id of the context that the task belongs to + # Corresponds to the JSON property `contextId` + # @return [String] + attr_accessor :context_id + + # Whether this is the last status update expected for this task. + # Corresponds to the JSON property `final` + # @return [Boolean] + attr_accessor :final + alias_method :final?, :final + + # Optional metadata to associate with the task update. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # A container for the status of a task + # Corresponds to the JSON property `status` + # @return [Google::Apis::WorkspaceeventsV1::TaskStatus] + attr_accessor :status + + # The id of the task that is changed + # Corresponds to the JSON property `taskId` + # @return [String] + attr_accessor :task_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @context_id = args[:context_id] if args.key?(:context_id) + @final = args[:final] if args.key?(:final) + @metadata = args[:metadata] if args.key?(:metadata) + @status = args[:status] if args.key?(:status) + @task_id = args[:task_id] if args.key?(:task_id) + end + end end end end diff --git a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/gem_version.rb b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/gem_version.rb index cea04b1ca8e..c97a7cf1a32 100644 --- a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/gem_version.rb +++ b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/gem_version.rb @@ -16,13 +16,13 @@ module Google module Apis module WorkspaceeventsV1 # Version of the google-apis-workspaceevents_v1 gem - GEM_VERSION = "0.18.0" + GEM_VERSION = "0.19.0" # Version of the code generator used to generate this client GENERATOR_VERSION = "0.18.0" # Revision of the discovery document this client was generated from - REVISION = "20250930" + REVISION = "20251102" end end end diff --git a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/representations.rb b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/representations.rb index e3aa0f3430b..481687c35c5 100644 --- a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/representations.rb +++ b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/representations.rb @@ -22,48 +22,463 @@ module Google module Apis module WorkspaceeventsV1 + class ApiKeySecurityScheme + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AgentCapabilities + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AgentCard + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AgentCardSignature + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AgentExtension + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AgentInterface + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AgentProvider + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AgentSkill + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Artifact + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthenticationInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizationCodeOAuthFlow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CancelTaskRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClientCredentialsOAuthFlow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DataPart + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FilePart + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpAuthSecurityScheme + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ImplicitOAuthFlow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ListSubscriptionsResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class ListTaskPushNotificationConfigResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Message + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MutualTlsSecurityScheme + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class NotificationEndpoint class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class OAuth2SecurityScheme + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OAuthFlows + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OpenIdConnectSecurityScheme + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Operation class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Part + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PasswordOAuthFlow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class PayloadOptions class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class PushNotificationConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ReactivateSubscriptionRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Security + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SecurityScheme + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SendMessageConfiguration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SendMessageRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Status class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class StreamResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StringList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Subscription class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Task + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TaskArtifactUpdateEvent + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TaskPushNotificationConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TaskStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TaskStatusUpdateEvent + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApiKeySecurityScheme + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :location, as: 'location' + property :name, as: 'name' + end + end + + class AgentCapabilities + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :extensions, as: 'extensions', class: Google::Apis::WorkspaceeventsV1::AgentExtension, decorator: Google::Apis::WorkspaceeventsV1::AgentExtension::Representation + + property :push_notifications, as: 'pushNotifications' + property :streaming, as: 'streaming' + end + end + + class AgentCard + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :additional_interfaces, as: 'additionalInterfaces', class: Google::Apis::WorkspaceeventsV1::AgentInterface, decorator: Google::Apis::WorkspaceeventsV1::AgentInterface::Representation + + property :capabilities, as: 'capabilities', class: Google::Apis::WorkspaceeventsV1::AgentCapabilities, decorator: Google::Apis::WorkspaceeventsV1::AgentCapabilities::Representation + + collection :default_input_modes, as: 'defaultInputModes' + collection :default_output_modes, as: 'defaultOutputModes' + property :description, as: 'description' + property :documentation_url, as: 'documentationUrl' + property :icon_url, as: 'iconUrl' + property :name, as: 'name' + property :preferred_transport, as: 'preferredTransport' + property :protocol_version, as: 'protocolVersion' + property :provider, as: 'provider', class: Google::Apis::WorkspaceeventsV1::AgentProvider, decorator: Google::Apis::WorkspaceeventsV1::AgentProvider::Representation + + collection :security, as: 'security', class: Google::Apis::WorkspaceeventsV1::Security, decorator: Google::Apis::WorkspaceeventsV1::Security::Representation + + hash :security_schemes, as: 'securitySchemes', class: Google::Apis::WorkspaceeventsV1::SecurityScheme, decorator: Google::Apis::WorkspaceeventsV1::SecurityScheme::Representation + + collection :signatures, as: 'signatures', class: Google::Apis::WorkspaceeventsV1::AgentCardSignature, decorator: Google::Apis::WorkspaceeventsV1::AgentCardSignature::Representation + + collection :skills, as: 'skills', class: Google::Apis::WorkspaceeventsV1::AgentSkill, decorator: Google::Apis::WorkspaceeventsV1::AgentSkill::Representation + + property :supports_authenticated_extended_card, as: 'supportsAuthenticatedExtendedCard' + property :url, as: 'url' + property :version, as: 'version' + end + end + + class AgentCardSignature + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :header, as: 'header' + property :protected, as: 'protected' + property :signature, as: 'signature' + end + end + + class AgentExtension + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + hash :params, as: 'params' + property :required, as: 'required' + property :uri, as: 'uri' + end + end + + class AgentInterface + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :transport, as: 'transport' + property :url, as: 'url' + end + end + + class AgentProvider + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :organization, as: 'organization' + property :url, as: 'url' + end + end + + class AgentSkill + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + collection :examples, as: 'examples' + property :id, as: 'id' + collection :input_modes, as: 'inputModes' + property :name, as: 'name' + collection :output_modes, as: 'outputModes' + collection :security, as: 'security', class: Google::Apis::WorkspaceeventsV1::Security, decorator: Google::Apis::WorkspaceeventsV1::Security::Representation + + collection :tags, as: 'tags' + end + end + + class Artifact + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :artifact_id, as: 'artifactId' + property :description, as: 'description' + collection :extensions, as: 'extensions' + hash :metadata, as: 'metadata' + property :name, as: 'name' + collection :parts, as: 'parts', class: Google::Apis::WorkspaceeventsV1::Part, decorator: Google::Apis::WorkspaceeventsV1::Part::Representation + + end + end + + class AuthenticationInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :credentials, as: 'credentials' + collection :schemes, as: 'schemes' + end + end + + class AuthorizationCodeOAuthFlow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :authorization_url, as: 'authorizationUrl' + property :refresh_url, as: 'refreshUrl' + hash :scopes, as: 'scopes' + property :token_url, as: 'tokenUrl' + end + end + + class CancelTaskRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ClientCredentialsOAuthFlow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :refresh_url, as: 'refreshUrl' + hash :scopes, as: 'scopes' + property :token_url, as: 'tokenUrl' + end + end + + class DataPart + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :data, as: 'data' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class FilePart + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :file_with_bytes, :base64 => true, as: 'fileWithBytes' + property :file_with_uri, as: 'fileWithUri' + property :mime_type, as: 'mimeType' + property :name, as: 'name' + end + end + + class HttpAuthSecurityScheme + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bearer_format, as: 'bearerFormat' + property :description, as: 'description' + property :scheme, as: 'scheme' + end + end + + class ImplicitOAuthFlow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :authorization_url, as: 'authorizationUrl' + property :refresh_url, as: 'refreshUrl' + hash :scopes, as: 'scopes' + end + end + class ListSubscriptionsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -73,6 +488,36 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class ListTaskPushNotificationConfigResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :configs, as: 'configs', class: Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig, decorator: Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class Message + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :content, as: 'content', class: Google::Apis::WorkspaceeventsV1::Part, decorator: Google::Apis::WorkspaceeventsV1::Part::Representation + + property :context_id, as: 'contextId' + collection :extensions, as: 'extensions' + property :message_id, as: 'messageId' + hash :metadata, as: 'metadata' + property :role, as: 'role' + property :task_id, as: 'taskId' + end + end + + class MutualTlsSecurityScheme + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + end + end + class NotificationEndpoint # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -80,6 +525,38 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class OAuth2SecurityScheme + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :flows, as: 'flows', class: Google::Apis::WorkspaceeventsV1::OAuthFlows, decorator: Google::Apis::WorkspaceeventsV1::OAuthFlows::Representation + + property :oauth2_metadata_url, as: 'oauth2MetadataUrl' + end + end + + class OAuthFlows + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :authorization_code, as: 'authorizationCode', class: Google::Apis::WorkspaceeventsV1::AuthorizationCodeOAuthFlow, decorator: Google::Apis::WorkspaceeventsV1::AuthorizationCodeOAuthFlow::Representation + + property :client_credentials, as: 'clientCredentials', class: Google::Apis::WorkspaceeventsV1::ClientCredentialsOAuthFlow, decorator: Google::Apis::WorkspaceeventsV1::ClientCredentialsOAuthFlow::Representation + + property :implicit, as: 'implicit', class: Google::Apis::WorkspaceeventsV1::ImplicitOAuthFlow, decorator: Google::Apis::WorkspaceeventsV1::ImplicitOAuthFlow::Representation + + property :password, as: 'password', class: Google::Apis::WorkspaceeventsV1::PasswordOAuthFlow, decorator: Google::Apis::WorkspaceeventsV1::PasswordOAuthFlow::Representation + + end + end + + class OpenIdConnectSecurityScheme + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :open_id_connect_url, as: 'openIdConnectUrl' + end + end + class Operation # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -92,6 +569,27 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class Part + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data, as: 'data', class: Google::Apis::WorkspaceeventsV1::DataPart, decorator: Google::Apis::WorkspaceeventsV1::DataPart::Representation + + property :file, as: 'file', class: Google::Apis::WorkspaceeventsV1::FilePart, decorator: Google::Apis::WorkspaceeventsV1::FilePart::Representation + + hash :metadata, as: 'metadata' + property :text, as: 'text' + end + end + + class PasswordOAuthFlow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :refresh_url, as: 'refreshUrl' + hash :scopes, as: 'scopes' + property :token_url, as: 'tokenUrl' + end + end + class PayloadOptions # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -100,12 +598,69 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class PushNotificationConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :authentication, as: 'authentication', class: Google::Apis::WorkspaceeventsV1::AuthenticationInfo, decorator: Google::Apis::WorkspaceeventsV1::AuthenticationInfo::Representation + + property :id, as: 'id' + property :token, as: 'token' + property :url, as: 'url' + end + end + class ReactivateSubscriptionRequest # @private class Representation < Google::Apis::Core::JsonRepresentation end end + class Security + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :schemes, as: 'schemes', class: Google::Apis::WorkspaceeventsV1::StringList, decorator: Google::Apis::WorkspaceeventsV1::StringList::Representation + + end + end + + class SecurityScheme + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_key_security_scheme, as: 'apiKeySecurityScheme', class: Google::Apis::WorkspaceeventsV1::ApiKeySecurityScheme, decorator: Google::Apis::WorkspaceeventsV1::ApiKeySecurityScheme::Representation + + property :http_auth_security_scheme, as: 'httpAuthSecurityScheme', class: Google::Apis::WorkspaceeventsV1::HttpAuthSecurityScheme, decorator: Google::Apis::WorkspaceeventsV1::HttpAuthSecurityScheme::Representation + + property :mtls_security_scheme, as: 'mtlsSecurityScheme', class: Google::Apis::WorkspaceeventsV1::MutualTlsSecurityScheme, decorator: Google::Apis::WorkspaceeventsV1::MutualTlsSecurityScheme::Representation + + property :oauth2_security_scheme, as: 'oauth2SecurityScheme', class: Google::Apis::WorkspaceeventsV1::OAuth2SecurityScheme, decorator: Google::Apis::WorkspaceeventsV1::OAuth2SecurityScheme::Representation + + property :open_id_connect_security_scheme, as: 'openIdConnectSecurityScheme', class: Google::Apis::WorkspaceeventsV1::OpenIdConnectSecurityScheme, decorator: Google::Apis::WorkspaceeventsV1::OpenIdConnectSecurityScheme::Representation + + end + end + + class SendMessageConfiguration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :accepted_output_modes, as: 'acceptedOutputModes' + property :blocking, as: 'blocking' + property :history_length, as: 'historyLength' + property :push_notification, as: 'pushNotification', class: Google::Apis::WorkspaceeventsV1::PushNotificationConfig, decorator: Google::Apis::WorkspaceeventsV1::PushNotificationConfig::Representation + + end + end + + class SendMessageRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :configuration, as: 'configuration', class: Google::Apis::WorkspaceeventsV1::SendMessageConfiguration, decorator: Google::Apis::WorkspaceeventsV1::SendMessageConfiguration::Representation + + property :message, as: 'message', class: Google::Apis::WorkspaceeventsV1::Message, decorator: Google::Apis::WorkspaceeventsV1::Message::Representation + + hash :metadata, as: 'metadata' + end + end + class Status # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -115,6 +670,27 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class StreamResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :artifact_update, as: 'artifactUpdate', class: Google::Apis::WorkspaceeventsV1::TaskArtifactUpdateEvent, decorator: Google::Apis::WorkspaceeventsV1::TaskArtifactUpdateEvent::Representation + + property :message, as: 'message', class: Google::Apis::WorkspaceeventsV1::Message, decorator: Google::Apis::WorkspaceeventsV1::Message::Representation + + property :status_update, as: 'statusUpdate', class: Google::Apis::WorkspaceeventsV1::TaskStatusUpdateEvent, decorator: Google::Apis::WorkspaceeventsV1::TaskStatusUpdateEvent::Representation + + property :task, as: 'task', class: Google::Apis::WorkspaceeventsV1::Task, decorator: Google::Apis::WorkspaceeventsV1::Task::Representation + + end + end + + class StringList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :list, as: 'list' + end + end + class Subscription # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -137,6 +713,65 @@ class Representation < Google::Apis::Core::JsonRepresentation property :update_time, as: 'updateTime' end end + + class Task + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :artifacts, as: 'artifacts', class: Google::Apis::WorkspaceeventsV1::Artifact, decorator: Google::Apis::WorkspaceeventsV1::Artifact::Representation + + property :context_id, as: 'contextId' + collection :history, as: 'history', class: Google::Apis::WorkspaceeventsV1::Message, decorator: Google::Apis::WorkspaceeventsV1::Message::Representation + + property :id, as: 'id' + hash :metadata, as: 'metadata' + property :status, as: 'status', class: Google::Apis::WorkspaceeventsV1::TaskStatus, decorator: Google::Apis::WorkspaceeventsV1::TaskStatus::Representation + + end + end + + class TaskArtifactUpdateEvent + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :append, as: 'append' + property :artifact, as: 'artifact', class: Google::Apis::WorkspaceeventsV1::Artifact, decorator: Google::Apis::WorkspaceeventsV1::Artifact::Representation + + property :context_id, as: 'contextId' + property :last_chunk, as: 'lastChunk' + hash :metadata, as: 'metadata' + property :task_id, as: 'taskId' + end + end + + class TaskPushNotificationConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :push_notification_config, as: 'pushNotificationConfig', class: Google::Apis::WorkspaceeventsV1::PushNotificationConfig, decorator: Google::Apis::WorkspaceeventsV1::PushNotificationConfig::Representation + + end + end + + class TaskStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :message, as: 'message', class: Google::Apis::WorkspaceeventsV1::Message, decorator: Google::Apis::WorkspaceeventsV1::Message::Representation + + property :state, as: 'state' + property :timestamp, as: 'timestamp' + end + end + + class TaskStatusUpdateEvent + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :context_id, as: 'contextId' + property :final, as: 'final' + hash :metadata, as: 'metadata' + property :status, as: 'status', class: Google::Apis::WorkspaceeventsV1::TaskStatus, decorator: Google::Apis::WorkspaceeventsV1::TaskStatus::Representation + + property :task_id, as: 'taskId' + end + end end end end diff --git a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/service.rb b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/service.rb index a85bd9ca6e3..891afc32719 100644 --- a/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/service.rb +++ b/generated/google-apis-workspaceevents_v1/lib/google/apis/workspaceevents_v1/service.rb @@ -52,6 +52,37 @@ def initialize @batch_path = 'batch' end + # SendStreamingMessage is a streaming call that will return a stream of task + # update events until the Task is in an interrupted or terminal state. + # @param [Google::Apis::WorkspaceeventsV1::SendMessageRequest] send_message_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::StreamResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::StreamResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def stream_message(send_message_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/message:stream', options) + command.request_representation = Google::Apis::WorkspaceeventsV1::SendMessageRequest::Representation + command.request_object = send_message_request_object + command.response_representation = Google::Apis::WorkspaceeventsV1::StreamResponse::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::StreamResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Gets the latest state of a long-running operation. Clients can use this method # to poll the operation result at intervals as recommended by the API service. # @param [String] name @@ -370,6 +401,272 @@ def reactivate_subscription(name, reactivate_subscription_request_object = nil, command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end + + # Cancel a task from the agent. If supported one should expect no more task + # updates for the task. + # @param [String] name + # The resource name of the task to cancel. Format: tasks/`task_id` + # @param [Google::Apis::WorkspaceeventsV1::CancelTaskRequest] cancel_task_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::Task] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::Task] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_task(name, cancel_task_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+name}:cancel', options) + command.request_representation = Google::Apis::WorkspaceeventsV1::CancelTaskRequest::Representation + command.request_object = cancel_task_request_object + command.response_representation = Google::Apis::WorkspaceeventsV1::Task::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::Task + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get the current state of a task from the agent. + # @param [String] name + # Required. The resource name of the task. Format: tasks/`task_id` + # @param [Fixnum] history_length + # The number of most recent messages from the task's history to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::Task] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::Task] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_task(name, history_length: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+name}', options) + command.response_representation = Google::Apis::WorkspaceeventsV1::Task::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::Task + command.params['name'] = name unless name.nil? + command.query['historyLength'] = history_length unless history_length.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # TaskSubscription is a streaming call that will return a stream of task update + # events. This attaches the stream to an existing in process task. If the task + # is complete the stream will return the completed task (like GetTask) and close + # the stream. + # @param [String] name + # The resource name of the task to subscribe to. Format: tasks/`task_id` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::StreamResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::StreamResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def subscribe_task(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+name}:subscribe', options) + command.response_representation = Google::Apis::WorkspaceeventsV1::StreamResponse::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::StreamResponse + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Set a push notification config for a task. + # @param [String] parent + # Required. The parent task resource for this config. Format: tasks/`task_id` + # @param [Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig] task_push_notification_config_object + # @param [String] config_id + # Required. The ID for the new config. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_task_push_notification_config(parent, task_push_notification_config_object = nil, config_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+parent}', options) + command.request_representation = Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig::Representation + command.request_object = task_push_notification_config_object + command.response_representation = Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig + command.params['parent'] = parent unless parent.nil? + command.query['configId'] = config_id unless config_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Delete a push notification config for a task. + # @param [String] name + # The resource name of the config to delete. Format: tasks/`task_id`/ + # pushNotificationConfigs/`config_id` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_task_push_notification_config(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1/{+name}', options) + command.response_representation = Google::Apis::WorkspaceeventsV1::Empty::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get a push notification config for a task. + # @param [String] name + # The resource name of the config to retrieve. Format: tasks/`task_id`/ + # pushNotificationConfigs/`config_id` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_task_push_notification_config(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+name}', options) + command.response_representation = Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::TaskPushNotificationConfig + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get a list of push notifications configured for a task. + # @param [String] parent + # The parent task resource. Format: tasks/`task_id` + # @param [Fixnum] page_size + # For AIP-158 these fields are present. Usually not used/needed. The maximum + # number of configurations to return. If unspecified, all configs will be + # returned. + # @param [String] page_token + # A page token received from a previous ListTaskPushNotificationConfigRequest + # call. Provide this to retrieve the subsequent page. When paginating, all other + # parameters provided to `ListTaskPushNotificationConfigRequest` must match the + # call that provided the page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::ListTaskPushNotificationConfigResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::ListTaskPushNotificationConfigResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_task_push_notification_configs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+parent}/pushNotificationConfigs', options) + command.response_representation = Google::Apis::WorkspaceeventsV1::ListTaskPushNotificationConfigResponse::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::ListTaskPushNotificationConfigResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # GetAgentCard returns the agent card for the agent. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::WorkspaceeventsV1::AgentCard] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::WorkspaceeventsV1::AgentCard] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_card(fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/card', options) + command.response_representation = Google::Apis::WorkspaceeventsV1::AgentCard::Representation + command.response_class = Google::Apis::WorkspaceeventsV1::AgentCard + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end protected