If data is intended to be an array , you need to update your validation rules to reflect that. For example:
public function rules(): array
{
return [
'data' => 'required' ];
}
public function messages(): array
{
return [
'data.required' => 'error.action.required.data',
];
}