11# generated by datamodel-codegen:
2- # filename: https://raw.githubusercontent.com/a2aproject/A2A/refs/heads/main /specification/json/a2a.json
2+ # filename: https://raw.githubusercontent.com/a2aproject/A2A/refs/heads/uuid-fields /specification/json/a2a.json
33
44from __future__ import annotations
55
66from enum import Enum
77from typing import Any , Literal
8+ from uuid import UUID
89
910from pydantic import Field , RootModel
1011
@@ -293,15 +294,15 @@ class DeleteTaskPushNotificationConfigParams(A2ABaseModel):
293294 Defines parameters for deleting a specific push notification configuration for a task.
294295 """
295296
296- id : str
297+ id : UUID
297298 """
298299 The unique identifier of the task.
299300 """
300301 metadata : dict [str , Any ] | None = None
301302 """
302303 Optional metadata associated with the request.
303304 """
304- push_notification_config_id : str
305+ push_notification_config_id : UUID
305306 """
306307 The ID of the push notification configuration to delete.
307308 """
@@ -430,15 +431,15 @@ class GetTaskPushNotificationConfigParams(A2ABaseModel):
430431 Defines parameters for fetching a specific push notification configuration for a task.
431432 """
432433
433- id : str
434+ id : UUID
434435 """
435436 The unique identifier of the task.
436437 """
437438 metadata : dict [str , Any ] | None = None
438439 """
439440 Optional metadata associated with the request.
440441 """
441- push_notification_config_id : str | None = None
442+ push_notification_config_id : UUID | None = None
442443 """
443444 The ID of the push notification configuration to retrieve.
444445 """
@@ -675,7 +676,7 @@ class ListTaskPushNotificationConfigParams(A2ABaseModel):
675676 Defines parameters for listing all push notification configurations associated with a task.
676677 """
677678
678- id : str
679+ id : UUID
679680 """
680681 The unique identifier of the task.
681682 """
@@ -828,7 +829,7 @@ class PushNotificationConfig(A2ABaseModel):
828829 """
829830 Optional authentication details for the agent to use when calling the notification URL.
830831 """
831- id : str | None = None
832+ id : UUID | None = None
832833 """
833834 A unique ID for the push notification configuration, set by the client
834835 to support multiple notification callbacks.
@@ -879,7 +880,7 @@ class TaskIdParams(A2ABaseModel):
879880 Defines parameters containing a task ID, used for simple task operations.
880881 """
881882
882- id : str
883+ id : UUID
883884 """
884885 The unique identifier of the task.
885886 """
@@ -938,7 +939,7 @@ class TaskPushNotificationConfig(A2ABaseModel):
938939 """
939940 The push notification configuration for this task.
940941 """
941- task_id : str
942+ task_id : UUID
942943 """
943944 The ID of the task.
944945 """
@@ -953,7 +954,7 @@ class TaskQueryParams(A2ABaseModel):
953954 """
954955 The number of most recent messages from the task's history to retrieve.
955956 """
956- id : str
957+ id : UUID
957958 """
958959 The unique identifier of the task.
959960 """
@@ -1374,7 +1375,7 @@ class Artifact(A2ABaseModel):
13741375 Represents a file, data structure, or other resource generated by an agent during a task.
13751376 """
13761377
1377- artifact_id : str
1378+ artifact_id : UUID
13781379 """
13791380 A unique identifier for the artifact within the scope of the task.
13801381 """
@@ -1438,7 +1439,7 @@ class Message(A2ABaseModel):
14381439 Represents a single message in the conversation between a user and an agent.
14391440 """
14401441
1441- context_id : str | None = None
1442+ context_id : UUID | None = None
14421443 """
14431444 The context identifier for this message, used to group related interactions.
14441445 """
@@ -1450,7 +1451,7 @@ class Message(A2ABaseModel):
14501451 """
14511452 The type of this object, used as a discriminator. Always 'message' for a Message.
14521453 """
1453- message_id : str
1454+ message_id : UUID
14541455 """
14551456 A unique identifier for the message, typically a UUID, generated by the sender.
14561457 """
@@ -1463,15 +1464,15 @@ class Message(A2ABaseModel):
14631464 An array of content parts that form the message body. A message can be
14641465 composed of multiple parts of different types (e.g., text and files).
14651466 """
1466- reference_task_ids : list [str ] | None = None
1467+ reference_task_ids : list [UUID ] | None = None
14671468 """
14681469 A list of other task IDs that this message references for additional context.
14691470 """
14701471 role : Role
14711472 """
14721473 Identifies the sender of the message. `user` for the client, `agent` for the service.
14731474 """
1474- task_id : str | None = None
1475+ task_id : UUID | None = None
14751476 """
14761477 The identifier of the task this message is part of. Can be omitted for the first message of a new task.
14771478 """
@@ -1614,7 +1615,7 @@ class TaskArtifactUpdateEvent(A2ABaseModel):
16141615 """
16151616 The artifact that was generated or updated.
16161617 """
1617- context_id : str
1618+ context_id : UUID
16181619 """
16191620 The context ID associated with the task.
16201621 """
@@ -1630,7 +1631,7 @@ class TaskArtifactUpdateEvent(A2ABaseModel):
16301631 """
16311632 Optional metadata for extensions.
16321633 """
1633- task_id : str
1634+ task_id : UUID
16341635 """
16351636 The ID of the task this artifact belongs to.
16361637 """
@@ -1663,7 +1664,7 @@ class TaskStatusUpdateEvent(A2ABaseModel):
16631664 This is typically used in streaming or subscription models.
16641665 """
16651666
1666- context_id : str
1667+ context_id : UUID
16671668 """
16681669 The context ID associated with the task.
16691670 """
@@ -1683,7 +1684,7 @@ class TaskStatusUpdateEvent(A2ABaseModel):
16831684 """
16841685 The new status of the task.
16851686 """
1686- task_id : str
1687+ task_id : UUID
16871688 """
16881689 The ID of the task that was updated.
16891690 """
@@ -1861,15 +1862,15 @@ class Task(A2ABaseModel):
18611862 """
18621863 A collection of artifacts generated by the agent during the execution of the task.
18631864 """
1864- context_id : str
1865+ context_id : UUID
18651866 """
18661867 A server-generated identifier for maintaining context across multiple related tasks or interactions.
18671868 """
18681869 history : list [Message ] | None = None
18691870 """
18701871 An array of messages exchanged during the task, representing the conversation history.
18711872 """
1872- id : str
1873+ id : UUID
18731874 """
18741875 A unique identifier for the task, generated by the server for a new task.
18751876 """
0 commit comments