You probably want to use Discriminated Unions https://docs.pydantic.dev/latest/concepts/unions/#discrimina...
Yeah, I'm doing that