Package lf.a2a.v1

색인

A2AService

A2A 프로토콜을 사용하여 에이전트와 상호작용하는 작업을 제공합니다.

CancelTask

rpc CancelTask(CancelTaskRequest) returns (Task)

진행 중인 작업을 취소합니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

CreateTaskPushNotificationConfig

rpc CreateTaskPushNotificationConfig(TaskPushNotificationConfig) returns (TaskPushNotificationConfig)

작업의 푸시 알림 구성을 만듭니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

DeleteTaskPushNotificationConfig

rpc DeleteTaskPushNotificationConfig(DeleteTaskPushNotificationConfigRequest) returns (Empty)

작업의 푸시 알림 구성을 삭제합니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

GetExtendedAgentCard

rpc GetExtendedAgentCard(GetExtendedAgentCardRequest) returns (AgentCard)

인증된 에이전트의 확장된 에이전트 카드를 가져옵니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

GetTask

rpc GetTask(GetTaskRequest) returns (Task)

작업의 최신 상태를 가져옵니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

GetTaskPushNotificationConfig

rpc GetTaskPushNotificationConfig(GetTaskPushNotificationConfigRequest) returns (TaskPushNotificationConfig)

작업의 푸시 알림 구성을 가져옵니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

ListTaskPushNotificationConfigs

rpc ListTaskPushNotificationConfigs(ListTaskPushNotificationConfigsRequest) returns (ListTaskPushNotificationConfigsResponse)

작업에 대해 구성된 푸시 알림 목록을 가져옵니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

ListTasks

rpc ListTasks(ListTasksRequest) returns (ListTasksResponse)

지정된 필터와 일치하는 작업을 나열합니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

SendMessage

rpc SendMessage(SendMessageRequest) returns (SendMessageResponse)

상담사에게 메시지를 보냅니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

SendStreamingMessage

rpc SendStreamingMessage(SendMessageRequest) returns (StreamResponse)

상담사에게 스트리밍 메시지를 전송하여 실시간 상호작용과 상태 업데이트를 지원합니다. 스트리밍 버전의 SendMessage

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

SubscribeToTask

rpc SubscribeToTask(SubscribeToTaskRequest) returns (StreamResponse)

종료 상태가 아닌 작업의 작업 업데이트를 구독합니다. 작업이 이미 종료 상태 (완료, 실패, 취소, 거부됨)인 경우 UnsupportedOperationError를 반환합니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/ces

자세한 내용은 Authentication Overview를 참조하세요.

APIKeySecurityScheme

API 키를 사용하여 보안 스키마를 정의합니다.

필드
description

string

보안 스킴에 대한 설명(선택사항)입니다.

location

string

필수 항목입니다. API 키의 위치입니다. 유효한 값은 'query', 'header' 또는 'cookie'입니다.

name

string

필수 항목입니다. 사용할 헤더, 쿼리 또는 쿠키 매개변수의 이름입니다.

AgentCapabilities

에이전트가 지원하는 선택적 기능을 정의합니다.

필드
extensions[]

AgentExtension

에이전트에서 지원하는 프로토콜 확장 프로그램 목록입니다.

streaming

bool

에이전트가 스트리밍 응답을 지원하는지 여부를 나타냅니다.

push_notifications

bool

에이전트가 비동기 작업 업데이트에 대한 푸시 알림 전송을 지원하는지 나타냅니다.

extended_agent_card

bool

인증 시 상담사가 확장된 상담사 카드를 제공하는 것을 지원하는지 여부를 나타냅니다.

AgentCard

에이전트의 자체 설명 매니페스트입니다. 여기에는 에이전트의 ID, 기능, 기술, 지원되는 커뮤니케이션 방법, 보안 요구사항 등 필수 메타데이터가 포함됩니다. 다음 ID: 20

필드
name

string

필수 항목입니다. 인간이 읽을 수 있는 에이전트 이름입니다. 예: '레시피 에이전트'

description

string

필수 항목입니다. 사용자와 다른 에이전트가 목적을 이해하는 데 도움이 되는 사람이 읽을 수 있는 에이전트 설명입니다. 예: '사용자가 레시피와 요리를 할 수 있도록 지원하는 에이전트'

supported_interfaces[]

AgentInterface

필수 항목입니다. 지원되는 인터페이스의 순서가 지정된 목록입니다. 첫 번째 항목이 선호됩니다.

provider

AgentProvider

에이전트의 서비스 제공업체입니다.

version

string

필수 항목입니다. 에이전트 버전입니다. 예: '1.0.0'

capabilities

AgentCapabilities

필수 항목입니다. 에이전트에서 지원하는 A2A 기능 집합입니다.

security_schemes

map<string, SecurityScheme>

이 에이전트로 인증하는 데 사용되는 보안 스킴 세부정보입니다.

security_requirements[]

SecurityRequirement

상담사에게 문의하기 위한 보안 요구사항입니다.

default_input_modes[]

string

필수사항입니다. protolint:enable REPEATED_FIELD_NAMES_PLURALIZED 에이전트가 모든 스킬에서 지원하는 상호작용 모드 집합입니다. 이는 스킬별로 재정의할 수 있습니다. 미디어 유형으로 정의됩니다.

default_output_modes[]

string

필수 항목입니다. 이 에이전트에서 출력으로 지원되는 미디어 유형입니다.

skills[]

AgentSkill

필수 항목입니다. 스킬은 상담사의 능력을 나타냅니다. 주로 설명적인 개념이지만 에이전트가 성공할 가능성이 높은 더 집중된 행동을 나타냅니다.

signatures[]

AgentCardSignature

이 AgentCard에 대해 계산된 JSON 웹 서명입니다.

documentation_url

string

에이전트에 관한 추가 문서를 제공하는 URL입니다.

icon_url

string

선택사항입니다. 에이전트 아이콘의 URL입니다.

AgentCardSignature

AgentCardSignature는 AgentCard의 JWS 서명을 나타냅니다. 이는 RFC 7515 JSON 웹 서명 (JWS)의 JSON 형식을 따릅니다.

필드
protected

string

(필수 항목) 필수 항목입니다. 서명의 보호된 JWS 헤더입니다. 항상 base64url로 인코딩된 JSON 객체입니다.

signature

string

필수 항목입니다. 계산된 서명으로, base64url로 인코딩됩니다.

header

Struct

보호되지 않은 JWS 헤더 값입니다.

AgentExtension

에이전트에서 지원하는 프로토콜 확장 프로그램의 선언입니다.

필드
uri

string

확장 프로그램을 식별하는 고유 URI입니다.

description

string

이 에이전트가 확장 프로그램을 사용하는 방식에 대한 사람이 읽을 수 있는 설명입니다.

required

bool

true인 경우 클라이언트는 확장 프로그램의 요구사항을 이해하고 준수해야 합니다.

params

Struct

선택사항입니다. 확장 프로그램별 구성 매개변수입니다.

AgentInterface

에이전트와 상호작용하기 위한 대상 URL, 전송, 프로토콜 버전의 조합을 선언합니다. 이를 통해 에이전트는 여러 프로토콜 바인딩 메커니즘을 통해 동일한 기능을 노출할 수 있습니다.

필드
url

string

필수 항목입니다. 이 인터페이스를 사용할 수 있는 URL입니다. 프로덕션에서는 유효한 절대 HTTPS URL이어야 합니다. 예: 'https://api.example.com/a2a/v1', 'https://grpc.example.com/a2a'

protocol_binding

string

필수 항목입니다. 이 URL에서 지원되는 프로토콜 바인딩입니다. 이는 다른 프로토콜 바인딩을 위해 쉽게 확장할 수 있는 개방형 양식 문자열입니다. 공식적으로 지원되는 핵심 모델은 JSONRPC, GRPC, HTTP+JSON입니다.

tenant

string

선택사항입니다. 단일 A2A 엔드포인트 뒤에 여러 에이전트가 제공될 때 요청을 특정 에이전트 또는 테넌트로 라우팅하는 데 사용되는 불투명 문자열입니다. 설정된 경우 클라이언트는 이 인터페이스로 전송되는 모든 요청 메시지의 tenant 필드에 이 값을 포함해야 합니다(MUST). 서버는 값을 해석하고 그에 따라 요청을 라우팅해야 합니다. 프로토콜은 형식이나 의미를 정의하지 않습니다.

protocol_version

string

필수 항목입니다. 이 인터페이스가 노출하는 A2A 프로토콜의 버전입니다. 지원되는 최신 마이너 버전을 메이저 버전별로 사용합니다. 예: '0.3', '1.0'

AgentProvider

에이전트의 서비스 제공업체를 나타냅니다.

필드
url

string

필수 항목입니다. 에이전트 제공업체의 웹사이트 또는 관련 문서의 URL입니다. 예: 'https://ai.google.dev'

organization

string

필수 항목입니다. 에이전트 제공업체 조직의 이름입니다. 예: 'Google'

AgentSkill

에이전트가 실행할 수 있는 고유한 기능 또는 기능을 나타냅니다.

필드
id

string

필수 항목입니다. 상담사의 기술에 대한 고유 식별자입니다.

name

string

필수 항목입니다. 인간이 읽을 수 있는 스킬 이름입니다.

description

string

필수 항목입니다. 스킬에 대한 자세한 설명입니다.

tags[]

string

필수 항목입니다. 스킬의 기능을 설명하는 키워드 집합입니다.

examples[]

string

이 스킬이 처리할 수 있는 프롬프트 또는 시나리오의 예시입니다.

input_modes[]

string

이 스킬에 지원되는 입력 미디어 유형의 집합으로, 에이전트의 기본값을 재정의합니다.

output_modes[]

string

이 스킬에서 지원되는 출력 미디어 유형의 집합으로, 에이전트의 기본값을 재정의합니다.

security_requirements[]

SecurityRequirement

이 스킬에 필요한 보안 스키마입니다.

아티팩트

아티팩트는 작업 출력을 나타냅니다.

필드
artifact_id

string

필수 항목입니다. 아티팩트의 고유 식별자 (예: UUID)입니다. 작업 내에서 고유해야 합니다.

name

string

아티팩트의 사람이 읽을 수 있는 이름입니다.

description

string

선택사항입니다. 아티팩트에 대한 사람이 읽을 수 있는 설명입니다.

parts[]

Part

필수 항목입니다. 아티팩트의 콘텐츠입니다. 하나 이상의 파트를 포함해야 합니다.

metadata

Struct

선택사항입니다. 아티팩트에 포함된 메타데이터입니다.

extensions[]

string

이 아티팩트에 있거나 기여한 확장 프로그램의 URI입니다.

AuthenticationInfo

푸시 알림에 사용되는 인증 세부정보를 정의합니다.

필드
scheme

string

필수 항목입니다. IANA 레지스트리의 HTTP 인증 스키마입니다. 예: Bearer, Basic, Digest 스키마 이름은 RFC 9110 섹션 11.1에 따라 대소문자를 구분하지 않습니다.

credentials

string

푸시 알림 사용자 인증 정보입니다. 형식은 스킴 (예: Bearer의 토큰)에 따라 다릅니다.

AuthorizationCodeOAuthFlow

OAuth 2.0 승인 코드 플로우의 구성 세부정보를 정의합니다.

필드
authorization_url

string

필수 항목입니다. 이 흐름에 사용할 승인 URL입니다.

token_url

string

필수 항목입니다. 이 흐름에 사용할 토큰 URL입니다.

refresh_url

string

갱신 토큰을 획득하는 데 사용되는 URL입니다.

scopes

map<string, string>

필수 항목입니다. OAuth2 보안 체계에 사용할 수 있는 범위입니다.

pkce_required

bool

이 흐름에 PKCE (RFC 7636)가 필요한지 여부를 나타냅니다. PKCE는 항상 공개 클라이언트에 사용해야 하며 모든 클라이언트에 권장됩니다.

CancelTaskRequest

CancelTask 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

id

string

필수 항목입니다. 취소할 작업의 리소스 ID입니다.

metadata

Struct

추가 컨텍스트 또는 매개변수를 전달하기 위한 유연한 키-값 맵입니다.

ClientCredentialsOAuthFlow

OAuth 2.0 클라이언트 사용자 인증 정보 흐름의 구성 세부정보를 정의합니다.

필드
token_url

string

필수 항목입니다. 이 흐름에 사용할 토큰 URL입니다.

refresh_url

string

갱신 토큰을 획득하는 데 사용되는 URL입니다.

scopes

map<string, string>

필수 항목입니다. OAuth2 보안 체계에 사용할 수 있는 범위입니다.

DeleteTaskPushNotificationConfigRequest

DeleteTaskPushNotificationConfig 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

task_id

string

필수 항목입니다. 상위 작업 리소스 ID입니다.

id

string

필수 항목입니다. 삭제할 구성의 리소스 ID입니다.

DeviceCodeOAuthFlow

OAuth 2.0 기기 코드 흐름 (RFC 8628)의 구성 세부정보를 정의합니다. 이 흐름은 IoT 기기, 사용자가 별도의 기기에서 인증하는 CLI 도구와 같이 입력이 제한된 기기를 위해 설계되었습니다.

필드
device_authorization_url

string

필수 항목입니다. 기기 승인 엔드포인트 URL입니다.

token_url

string

필수 항목입니다. 이 흐름에 사용할 토큰 URL입니다.

refresh_url

string

갱신 토큰을 획득하는 데 사용되는 URL입니다.

scopes

map<string, string>

필수 항목입니다. OAuth2 보안 체계에 사용할 수 있는 범위입니다.

GetExtendedAgentCardRequest

GetExtendedAgentCard 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

GetTaskPushNotificationConfigRequest

GetTaskPushNotificationConfig 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

task_id

string

필수 항목입니다. 상위 작업 리소스 ID입니다.

id

string

필수 항목입니다. 가져올 구성의 리소스 ID입니다.

GetTaskRequest

GetTask 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

id

string

필수 항목입니다. 가져올 작업의 리소스 ID입니다.

history_length

int32

가져올 작업 기록의 가장 최근 메시지의 최대 개수입니다. 설정되지 않은 값은 클라이언트가 제한을 적용하지 않음을 의미합니다. 값이 0이면 메시지를 포함하지 않도록 요청하는 것입니다. 서버는 제공된 값보다 많은 메시지를 반환하면 안 되지만(MUST NOT) 더 낮은 한도를 적용할 수는 있습니다(MAY).

HTTPAuthSecurityScheme

HTTP 인증을 사용하여 보안 스키마를 정의합니다.

필드
description

string

보안 스킴에 대한 설명(선택사항)입니다.

scheme

string

필수 항목입니다. RFC7235에 정의된 대로 Authorization 헤더에 사용될 HTTP 인증 스키마의 이름입니다 (예: 'Bearer'). 이 값은 IANA 인증 체계 레지스트리에 등록되어야 합니다.

bearer_format

string

보유자 토큰의 형식을 식별하기 위한 클라이언트 힌트입니다 (예: 'JWT'). 주로 문서화 목적으로 사용됩니다.

ImplicitOAuthFlow

지원 중단됨: 대신 승인 코드 + PKCE를 사용하세요.

필드
authorization_url

string

이 흐름에 사용할 승인 URL입니다. URL 형식이어야 합니다(MUST). OAuth2 표준에서는 TLS 사용이 필요합니다.

refresh_url

string

갱신 토큰을 획득하는 데 사용되는 URL입니다. URL 형식이어야 합니다(MUST). OAuth2 표준에서는 TLS를 사용해야 합니다.

scopes

map<string, string>

OAuth2 보안 체계에 사용할 수 있는 범위입니다. 범위 이름과 범위의 간단한 설명 간의 매핑입니다. 맵은 비어 있을 수 있습니다(MAY).

ListTaskPushNotificationConfigsRequest

ListTaskPushNotificationConfigs 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

task_id

string

필수 항목입니다. 상위 작업 리소스 ID입니다.

page_size

int32

반환할 최대 구성 수입니다.

page_token

string

이전 ListTaskPushNotificationConfigsRequest 호출에서 받은 페이지 토큰입니다.

ListTaskPushNotificationConfigsResponse

ListTaskPushNotificationConfigs 메서드의 성공적인 응답을 나타냅니다.

필드
configs[]

TaskPushNotificationConfig

푸시 알림 구성 목록입니다.

next_page_token

string

결과의 다음 페이지를 검색하는 토큰으로, 목록에 더 이상 결과가 없으면 비어 있습니다.

ListTasksRequest

선택적 필터링 기준을 사용하여 작업을 나열하는 매개변수입니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

context_id

string

컨텍스트 ID로 작업을 필터링하여 특정 대화 또는 세션의 작업을 가져옵니다.

status

TaskState

현재 상태별로 작업을 필터링합니다.

page_token

string

이전 ListTasks 호출에서 받은 페이지 토큰입니다. ListTasksResponse.next_page_token 후속 페이지를 검색하려면 이를 입력합니다.

status_timestamp_after

Timestamp

ISO 8601 형식 (예: '2023-10-27T10:00:00Z')으로 제공된 타임스탬프 이후에 상태가 업데이트된 작업을 필터링합니다. 상태 타임스탬프 시간이 이 값보다 크거나 같은 작업만 반환됩니다.

page_size

int32

반환할 최대 작업 수입니다. 서비스가 이 값보다 더 적게 반환할 수 있습니다. 지정하지 않으면 최대 50개의 작업이 반환됩니다. 최솟값은 1입니다. 최댓값은 100입니다.

history_length

int32

각 작업의 기록에 포함할 최대 메시지 수입니다.

include_artifacts

bool

반환된 작업에 아티팩트를 포함할지 여부입니다. 페이로드 크기를 줄이기 위해 기본값은 false입니다.

ListTasksResponse

작업 배열과 페이지로 나누기 정보가 포함된 ListTasks 메서드의 결과 객체입니다.

필드
tasks[]

Task

필수 항목입니다. 지정된 기준과 일치하는 작업의 배열입니다.

next_page_token

string

필수 항목입니다. 결과의 다음 페이지를 검색하는 토큰으로, 목록에 더 이상 결과가 없으면 비어 있습니다.

page_size

int32

필수 항목입니다. 이 응답에 사용된 페이지 크기입니다.

total_size

int32

필수 항목입니다. 사용 가능한 총 작업 수 (페이지로 나누기 전)입니다.

메시지

Message는 클라이언트와 서버 간의 통신 단위입니다. 컨텍스트 또는 작업과 연결될 수 있습니다. 서버 메시지의 경우 context_id가 제공되어야 하며 task_id는 작업이 생성된 경우에만 제공됩니다. 클라이언트 메시지의 경우 두 필드 모두 선택사항입니다. 단, 두 필드가 모두 제공되는 경우 일치해야 합니다 (context_id는 작업에 설정된 필드여야 함). task_id만 제공되면 서버에서 이를 기반으로 context_id를 추론합니다.

필드
message_id

string

필수 항목입니다. 메시지의 고유 식별자 (예: UUID)입니다. 메시지 작성자가 만듭니다.

context_id

string

선택사항입니다. 메시지의 컨텍스트 ID입니다. 설정된 경우 메시지는 지정된 컨텍스트와 연결됩니다.

task_id

string

선택사항입니다. 메시지의 작업 ID입니다. 설정된 경우 메시지는 지정된 작업과 연결됩니다.

role

Role

필수 항목입니다. 메시지 발신자를 식별합니다.

parts[]

Part

필수 항목입니다. Parts는 메시지 콘텐츠의 컨테이너입니다.

metadata

Struct

선택사항입니다. 메시지와 함께 제공할 메타데이터입니다.

extensions[]

string

이 메시지에 있거나 이 메시지에 제공된 확장 프로그램의 URI입니다.

reference_task_ids[]

string

이 메시지가 추가 컨텍스트를 위해 참조하는 작업 ID 목록입니다.

MutualTlsSecurityScheme

mTLS 인증을 사용하여 보안 스키마를 정의합니다.

필드
description

string

보안 스킴에 대한 설명(선택사항)입니다.

OAuth2SecurityScheme

OAuth 2.0을 사용하여 보안 스키마를 정의합니다.

필드
description

string

보안 스킴에 대한 설명(선택사항)입니다.

flows

OAuthFlows

필수 항목입니다. 지원되는 OAuth 2.0 흐름의 구성 정보가 포함된 객체입니다.

oauth2_metadata_url

string

OAuth2 승인 서버 메타데이터 RFC 8414의 URL입니다. TLS가 필요합니다.

OAuthFlows

지원되는 OAuth 2.0 흐름의 구성을 정의합니다.

필드

통합 필드 flow.

flow는 다음 중 하나여야 합니다.

authorization_code

AuthorizationCodeOAuthFlow

OAuth 승인 코드 플로우의 구성입니다.

client_credentials

ClientCredentialsOAuthFlow

OAuth 클라이언트 사용자 인증 정보 흐름의 구성입니다.

implicit
(deprecated)

ImplicitOAuthFlow

지원 중단됨: 대신 승인 코드 + PKCE를 사용하세요.

password
(deprecated)

PasswordOAuthFlow

지원 중단됨: 승인 코드 + PKCE 또는 기기 코드를 사용하세요.

device_code

DeviceCodeOAuthFlow

OAuth 기기 코드 흐름의 구성입니다.

OpenIdConnectSecurityScheme

OpenID Connect를 사용하는 보안 스키마를 정의합니다.

필드
description

string

보안 스킴에 대한 설명(선택사항)입니다.

open_id_connect_url

string

필수 항목입니다. OIDC 제공업체의 메타데이터에 대한 OpenID Connect Discovery URL입니다.

파트

Part는 커뮤니케이션 콘텐츠 섹션의 컨테이너를 나타냅니다. 파트는 순수 텍스트, 일종의 파일 (이미지, 동영상 등) 또는 구조화된 데이터 blob (예: JSON)일 수 있습니다.

필드
metadata

Struct

선택사항. 이 부분과 연결된 메타데이터입니다.

filename

string

파일의 선택적 filename입니다 (예: 'document.pdf').

media_type

string

파트 콘텐츠의 media_type (MIME 유형)(예: 'text/plain', 'application/json', 'image/png')입니다. 이 필드는 모든 부품 유형에 사용할 수 있습니다.

통합 필드 content.

content는 다음 중 하나여야 합니다.

text

string

text 부분의 문자열 콘텐츠입니다.

raw

bytes

파일의 raw 바이트 콘텐츠입니다. JSON 직렬화에서 이는 base64 문자열로 인코딩됩니다.

url

string

파일 콘텐츠를 가리키는 url입니다.

data

Value

JSON 값 (객체, 배열, 문자열, 숫자, 불리언 또는 null)로 된 임의의 구조화된 data

PasswordOAuthFlow

지원 중단됨: 승인 코드 + PKCE 또는 기기 코드를 사용하세요.

필드
token_url

string

이 흐름에 사용할 토큰 URL입니다. URL 형식이어야 합니다(MUST). OAuth2 표준에서는 TLS를 사용해야 합니다.

refresh_url

string

갱신 토큰을 획득하는 데 사용되는 URL입니다. URL 형식이어야 합니다(MUST). OAuth2 표준에서는 TLS를 사용해야 합니다.

scopes

map<string, string>

OAuth2 보안 체계에 사용할 수 있는 범위입니다. 범위 이름과 범위의 간단한 설명 간의 매핑입니다. 맵은 비어 있을 수 있습니다(MAY).

역할

A2A 프로토콜 통신에서 메시지의 발신자를 정의합니다.

열거형
ROLE_UNSPECIFIED 역할이 지정되지 않았습니다.
ROLE_USER 메시지는 클라이언트에서 서버로 전송됩니다.
ROLE_AGENT 메시지는 서버에서 클라이언트로 전송됩니다.

SecurityRequirement

에이전트의 보안 요구사항을 정의합니다.

필드
schemes

map<string, StringList>

보안 스키마에서 필수 범위로 매핑되는 맵입니다.

SecurityScheme

에이전트의 엔드포인트를 보호하는 데 사용할 수 있는 보안 스키마를 정의합니다. OpenAPI 3.2 보안 스킴 객체를 기반으로 하는 차별화된 유니온 유형입니다. https://spec.openapis.org/oas/v3.2.0.html#security-scheme-object을 참고하세요.

필드

통합 필드 scheme.

scheme는 다음 중 하나여야 합니다.

api_key_security_scheme

APIKeySecurityScheme

API 키 기반 인증

http_auth_security_scheme

HTTPAuthSecurityScheme

HTTP 인증 (기본, 베어러 등)

oauth2_security_scheme

OAuth2SecurityScheme

OAuth 2.0 인증입니다.

open_id_connect_security_scheme

OpenIdConnectSecurityScheme

OpenID Connect 인증입니다.

mtls_security_scheme

MutualTlsSecurityScheme

상호 TLS 인증

SendMessageConfiguration

메시지 요청 보내기 구성입니다.

필드
accepted_output_modes[]

string

클라이언트가 응답 부분에 대해 수락할 준비가 된 미디어 유형 목록입니다. 상담사는 이를 사용하여 출력을 맞춤설정해야 합니다(SHOULD).

task_push_notification_config

TaskPushNotificationConfig

작업 업데이트에 대한 푸시 알림을 전송하는 에이전트의 구성입니다. SendMessage 요청에서 이 구성을 전송할 때는 작업 ID가 비어 있어야 합니다.

return_immediately

bool

true인 경우 처리가 아직 진행 중이더라도 작업을 생성한 후 작업이 즉시 반환됩니다. false(기본값)인 경우 작업이 종료(COMPLETED, FAILED, CANCELED, REJECTED) 또는 중단(INPUT_REQUIRED, AUTH_REQUIRED) 상태에 도달할 때까지 기다린 후 반환해야 합니다(MUST).

history_length

int32

응답에서 가져올 태스크 기록의 최신 메시지 최대 수입니다. 설정되지 않은 값은 클라이언트가 제한을 적용하지 않음을 의미합니다. 값이 0이면 메시지를 포함하지 않도록 요청하는 것입니다. 서버는 제공된 값보다 많은 메시지를 반환하면 안 되지만(MUST NOT) 더 낮은 한도를 적용할 수는 있습니다(MAY).

SendMessageRequest

SendMessage 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

message

Message

필수 항목입니다. 에이전트에게 보낼 메시지입니다.

configuration

SendMessageConfiguration

전송 요청의 구성입니다.

metadata

Struct

추가 컨텍스트 또는 매개변수를 전달하기 위한 유연한 키-값 맵입니다.

SendMessageResponse

SendMessage 메서드의 응답을 나타냅니다.

필드
통합 필드 payload. 대답의 페이로드입니다. payload은 다음 중 하나여야 합니다.
task

Task

메시지로 생성되거나 업데이트된 작업입니다.

message

Message

상담사가 보낸 메시지입니다.

StreamResponse

스트리밍 작업에서 다양한 유형의 응답 데이터를 캡슐화하는 데 사용되는 래퍼 객체입니다.

필드
통합 필드 payload. 스트림 응답의 페이로드입니다. payload은 다음 중 하나여야 합니다.
task

Task

작업의 현재 상태가 포함된 Task 객체입니다.

message

Message

에이전트의 메시지가 포함된 Message 객체입니다.

status_update

TaskStatusUpdateEvent

작업 상태 업데이트를 나타내는 이벤트입니다.

artifact_update

TaskArtifactUpdateEvent

작업 아티팩트 업데이트를 나타내는 이벤트입니다.

StringList

protolint:disable REPEATED_FIELD_NAMES_PLURALIZED 문자열 목록입니다.

필드
list[]

string

개별 문자열 값입니다.

SubscribeToTaskRequest

SubscribeToTask 메서드의 요청을 나타냅니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

id

string

필수 항목입니다. 구독할 작업의 리소스 ID입니다.

작업

Task는 A2A의 핵심 작업 단위입니다. 현재 상태가 있으며 작업의 결과가 생성되면 아티팩트에 저장됩니다. 작업에 여러 턴이 있는 경우 기록에 저장됩니다.

필드
id

string

필수 항목입니다. 새 작업에 대해 서버에서 생성한 작업의 고유 식별자 (예: UUID)입니다.

context_id

string

상호작용 (작업 및 메시지)의 컨텍스트 모음의 고유 식별자 (예: UUID)입니다.

status

TaskStatus

필수 항목입니다. state 및 message를 포함한 Task의 현재 상태입니다.

artifacts[]

Artifact

Task의 출력 아티팩트 집합입니다.

history[]

Message

protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Task의 상호작용 기록입니다.

metadata

Struct

protolint:enable REPEATED_FIELD_NAMES_PLURALIZED 작업에 관한 맞춤 메타데이터를 저장하는 키/값 객체입니다.

TaskArtifactUpdateEvent

아티팩트가 생성된 작업 델타입니다.

필드
task_id

string

필수 항목입니다. 이 아티팩트의 작업 ID입니다.

context_id

string

필수 항목입니다. 이 작업이 속한 컨텍스트의 ID입니다.

artifact

Artifact

필수 항목입니다. 생성되거나 업데이트된 아티팩트입니다.

append

bool

true인 경우 이 아티팩트의 콘텐츠가 ID가 동일한 이전에 전송된 아티팩트에 추가되어야 합니다.

last_chunk

bool

true인 경우 아티팩트의 마지막 청크입니다.

metadata

Struct

선택사항입니다. 아티팩트 업데이트와 연결된 메타데이터입니다.

TaskPushNotificationConfig

푸시 알림 구성을 특정 작업과 연결하는 컨테이너입니다.

필드
tenant

string

선택사항입니다. 불투명 라우팅 식별자입니다. 이 필드가 설정된 경우 에이전트 카드에서 선택한 AgentInterface의 tenant 값과 일치해야 합니다.

id

string

푸시 알림 구성 세부정보입니다. 이 푸시 알림 구성의 고유 식별자 (예: UUID)입니다.

task_id

string

이 구성과 연결된 작업의 ID입니다.

url

string

필수 항목입니다. 알림을 전송해야 하는 URL입니다.

token

string

이 작업 또는 세션에 고유한 토큰입니다.

authentication

AuthenticationInfo

알림을 전송하는 데 필요한 인증 정보입니다.

TaskState

Task의 가능한 수명 주기 상태를 정의합니다.

열거형
TASK_STATE_UNSPECIFIED 작업이 알 수 없거나 불확실한 상태입니다.
TASK_STATE_SUBMITTED 작업이 제출되고 확인되었음을 나타냅니다.
TASK_STATE_WORKING 작업이 에이전트에 의해 적극적으로 처리되고 있음을 나타냅니다.
TASK_STATE_COMPLETED 작업이 성공적으로 완료되었음을 나타냅니다. 이는 터미널 상태입니다.
TASK_STATE_FAILED 작업이 오류와 함께 완료되었음을 나타냅니다. 이는 터미널 상태입니다.
TASK_STATE_CANCELED 작업이 완료되기 전에 취소되었음을 나타냅니다. 이는 터미널 상태입니다.
TASK_STATE_INPUT_REQUIRED 계속 진행하려면 에이전트에 추가 사용자 입력이 필요함을 나타냅니다. 이는 인터럽트된 상태입니다.
TASK_STATE_REJECTED 에이전트가 작업을 실행하지 않기로 결정했음을 나타냅니다. 이 작업은 초기 작업 생성 중에 수행하거나 에이전트가 작업을 진행할 수 없거나 진행하지 않기로 결정한 후에 수행할 수 있습니다. 이는 터미널 상태입니다.
TASK_STATE_AUTH_REQUIRED 계속 진행하려면 인증이 필요함을 나타냅니다. 이는 인터럽트된 상태입니다.

TaskStatus

작업 상태의 컨테이너

필드
state

TaskState

필수 항목입니다. 이 작업의 현재 상태입니다.

message

Message

상태와 연결된 메시지입니다.

timestamp

Timestamp

상태가 기록된 ISO 8601 타임스탬프입니다. 예: '2023-10-27T10:00:00Z'

TaskStatusUpdateEvent

작업 상태의 변경사항을 클라이언트에 알리기 위해 에이전트가 전송한 이벤트입니다.

필드
task_id

string

필수 항목입니다. 변경된 작업의 ID입니다.

context_id

string

필수 항목입니다. 작업이 속한 컨텍스트의 ID입니다.

status

TaskStatus

필수 항목입니다. 작업의 새 상태입니다.

metadata

Struct

선택사항입니다. 작업 업데이트와 연결된 메타데이터입니다.