php - How to validate an array inside an array payload in laravel

How to validate a request like for this example i want to create a custom validation for qualities based on a group type. I know how to create a custom validation for laravel but for the example below i want to create a validation for quality type based on its group type.

The payload below it just for demonstration.

$payload = [
 'groups' => [
   [
     'type' => 'human',
     'qualities' => [
       [
         'type' => 'hair',
         'value' => 'blue'
       ],
       [
         'type' => 'height',
         'value' => '188cm'
       ],
     ]
   ],
   [
     'type' => 'cat',
     'qualities' => [
       [
         'type' => 'hair',
         'value' => 'yellow'
       ]
   ]
   ]

 ]
];

Answer

Solution:

You can use the wildcard, for example:

$request->validate([
    'payload.*' => 'required|array',
    'payload.*.type' => 'required',
    'payload.*.qualities' => 'required|array',
    'payload.*.qualities.*' => 'required'
]);

Source