Class: Google::Apis::CesV1::LfA2aV1AgentInterface

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/ces_v1/classes.rb,
lib/google/apis/ces_v1/representations.rb,
lib/google/apis/ces_v1/representations.rb

Overview

Declares a combination of a target URL, transport and protocol version for interacting with the agent. This allows agents to expose the same functionality over multiple protocol binding mechanisms.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ LfA2aV1AgentInterface

Returns a new instance of LfA2aV1AgentInterface.



4703
4704
4705
# File 'lib/google/apis/ces_v1/classes.rb', line 4703

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#protocol_bindingString

Required. The protocol binding supported at this URL. This is an open form string, to be easily extended for other protocol bindings. The core ones officially supported are JSONRPC, GRPC and HTTP+JSON. Corresponds to the JSON property protocolBinding

Returns:

  • (String)


4678
4679
4680
# File 'lib/google/apis/ces_v1/classes.rb', line 4678

def protocol_binding
  @protocol_binding
end

#protocol_versionString

Required. The version of the A2A protocol this interface exposes. Use the latest supported minor version per major version. Examples: "0.3", "1.0" Corresponds to the JSON property protocolVersion

Returns:

  • (String)


4684
4685
4686
# File 'lib/google/apis/ces_v1/classes.rb', line 4684

def protocol_version
  @protocol_version
end

#tenantString

Optional. An opaque string used for routing requests to a specific agent or tenant when multiple agents are served behind a single A2A endpoint. When set, clients MUST include this value in the tenant field of all request messages sent to this interface. The server is responsible for interpreting the value and routing requests accordingly; the protocol does not define its format or semantics. Corresponds to the JSON property tenant

Returns:

  • (String)


4694
4695
4696
# File 'lib/google/apis/ces_v1/classes.rb', line 4694

def tenant
  @tenant
end

#urlString

Required. The URL where this interface is available. Must be a valid absolute HTTPS URL in production. Example: "https://api.example.com/a2a/v1", "https:// grpc.example.com/a2a" Corresponds to the JSON property url

Returns:

  • (String)


4701
4702
4703
# File 'lib/google/apis/ces_v1/classes.rb', line 4701

def url
  @url
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4708
4709
4710
4711
4712
4713
# File 'lib/google/apis/ces_v1/classes.rb', line 4708

def update!(**args)
  @protocol_binding = args[:protocol_binding] if args.key?(:protocol_binding)
  @protocol_version = args[:protocol_version] if args.key?(:protocol_version)
  @tenant = args[:tenant] if args.key?(:tenant)
  @url = args[:url] if args.key?(:url)
end