リクエストボディを型にバインドするには、モデルバインディングを使用します。現在、JSON、XML、YAML、標準フォーム値のバインディングをサポートしています。 (foo=bar&boo=baz).
Ginはバリデーションにgo-playground/validator/v10を使用しています。構造体タグの使い方については、こちらのドキュメントを参照してください。
バインドしたいすべてのフィールドに対応するバインディングタグを設定する必要があることに注意してください。たとえばJSONからバインドする場合はjson:"fieldname"タグを設定します。
また、GinではMustとShouldの2種類のバインディングを用意しています。