// --8<-- [start:AgentInterface]
// Declares a combination of a target URL and a transport protocol for interacting with the agent.
// This allows agents to expose the same functionality over multiple protocol binding mechanisms.
message AgentInterface {
// 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"
string url = 1 [(google.api.field_behavior) = 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`.
string protocol_binding = 2 [(google.api.field_behavior) = REQUIRED];
// Tenant to be set in the request when calling the agent.
string tenant = 3;
}
// --8<-- [end:AgentInterface]