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.



4687
4688
4689
# File 'lib/google/apis/ces_v1/classes.rb', line 4687

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)


4662
4663
4664
# File 'lib/google/apis/ces_v1/classes.rb', line 4662

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)


4668
4669
4670
# File 'lib/google/apis/ces_v1/classes.rb', line 4668

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)


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

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)


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

def url
  @url
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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