You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: Support for multiple pushNotification config per task (#738)
- Support for list pushNotificationConfig for task
- Support for delete pushNotificationConfig
- Get pushNotificationConfig by id or by task
- update protos to use PushNotificationConfig
---------
Co-authored-by: a2a-bot <[email protected]>
Copy file name to clipboardExpand all lines: docs/specification.md
+63-5Lines changed: 63 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -705,11 +705,69 @@ Sets or updates the push notification configuration for a specified task. This a
705
705
706
706
Retrieves the current push notification configuration for a specified task. Requires the server to have `AgentCard.capabilities.pushNotifications: true`.
_(Note: TaskIdParams type is deprecated for this method. Use GetTaskPushNotificationConfigParams instead.)_
709
710
-**Response `result` type (on success)**: [`TaskPushNotificationConfig`](#610-taskpushnotificationconfig-object) (The current push notification configuration for the task. Server may return an error if no push notification configuration is associated with the task).
710
711
-**Response `error` type (on failure)**: [`JSONRPCError`](#612-jsonrpcerror-object) (e.g., [`PushNotificationNotSupportedError`](#82-a2a-specific-errors), [`TaskNotFoundError`](#82-a2a-specific-errors)).
|`pushNotificationConfigId`|`string`| No | Push notification configuration id. Server will return one of the associated configurations if config id is not specified |
725
+
|`metadata`|`Record<string, any>`| No | Request-specific metadata. |
726
+
727
+
### 7.7. `tasks/pushNotificationConfig/list`
728
+
729
+
Retrieves the associated push notification configurations for a specified task. Requires the server to have `AgentCard.capabilities.pushNotifications: true`.
-**Response `result` type (on success)**: [`TaskPushNotificationConfig[]`](#610-taskpushnotificationconfig-object) (The push notification configurations associated with the task.).
733
+
-**Response `error` type (on failure)**: [`JSONRPCError`](#612-jsonrpcerror-object) (e.g., [`PushNotificationNotSupportedError`](#82-a2a-specific-errors), [`TaskNotFoundError`](#82-a2a-specific-errors)).
-**Response `result` type (on success)**: [`null`]
754
+
-**Response `error` type (on failure)**: [`JSONRPCError`](#612-jsonrpcerror-object) (e.g., [`PushNotificationNotSupportedError`](#82-a2a-specific-errors), [`TaskNotFoundError`](#82-a2a-specific-errors)).
|`pushNotificationConfigId`|`string`| Yes | Push notification configuration id |
768
+
|`metadata`|`Record<string, any>`| No | Request-specific metadata. |
769
+
770
+
### 7.9. `tasks/resubscribe`
713
771
714
772
Allows a client to reconnect to an SSE stream for an ongoing task after a previous connection (from `message/stream` or an earlier `tasks/resubscribe`) was interrupted. Requires the server to have `AgentCard.capabilities.streaming: true`.
715
773
@@ -724,7 +782,7 @@ The purpose is to resume receiving _subsequent_ updates. The server's behavior r
724
782
- Standard HTTP error code (e.g., 4xx, 5xx).
725
783
- The HTTP body MAY contain a standard `JSONRPCResponse` with an `error` object. Failures can occur if the task is no longer active, doesn't exist, or streaming is not supported/enabled for it.
726
784
727
-
### 7.8. `agent/authenticatedExtendedCard`
785
+
### 7.10. `agent/authenticatedExtendedCard`
728
786
729
787
Retrieves a potentially more detailed version of the Agent Card after the client has authenticated. This endpoint is available only if `AgentCard.supportsAuthenticatedExtendedCard` is `true`. This is an HTTP GET endpoint, not a JSON-RPC method.
730
788
@@ -741,11 +799,11 @@ Retrieves a potentially more detailed version of the Agent Card after the client
741
799
742
800
Clients retrieving this authenticated card **SHOULD** replace their cached public Agent Card with the content received from this endpoint for the duration of their authenticated session or until the card's version changes.
This endpoint does not use JSON-RPC `params`. Any parameters would be included as HTTP query parameters if needed (though none are defined by the standard).
0 commit comments