Interface EventKind

All Known Implementing Classes:
Message, Task, TaskArtifactUpdateEvent, TaskStatusUpdateEvent

public interface EventKind
Interface for events that can be returned from non-streaming A2A Protocol operations.

EventKind represents events that are suitable for synchronous request-response patterns. These events provide complete state information and are typically returned as the final result of an operation.

EventKind implementations use polymorphic JSON serialization where the JSON member name itself acts as the type discriminator (e.g., "task", "message").

Permitted implementations:

  • Task - Complete task state with status and artifacts
  • Message - Full message with all content parts
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the type identifier for this event.
  • Method Details

    • kind

      String kind()
      Returns the type identifier for this event.

      This method provides programmatic type discrimination for routing, logging, and debugging. NOTE: This value is NOT serialized to JSON in protocol v1.0+.

      Returns:
      the event kind string (e.g., "task", "message")