Kalau lolos, kembalikan JSON-nya dengan status 201: return response()->json($validated, 201);.
Saat dijalankan, rute-mu dipanggil dengan body kosong, jadi validasinya gagal: output-nya POST /products → 422, lalu jawaban JSON Laravel dengan pesan error-nya, misalnya The name field is required.
Yang diperiksa:
Kodemu memuat required dan max:255.
Output-nya memuat POST /products → 422 dan The name field is required.
Aturan price memuat required, integer, dan min:1000, dan aturan category memuat nullable.
Jawabannya memakai status 201: response()->json($validated, 201).
Pemeriksanya juga mengirim {"name": "Mouse", "price": 150000} dan mengharapkan baris terakhirnya persis {"name":"Mouse","price":150000}. Lalu harga 500 (ditolak dengan The price field must be at least 1000.), nama 256 huruf (ditolak dengan The name field must not be greater than 255 characters.), dan category berisi null (diterima, "category":null ikut di jawabannya).
Hint
Validasi jalan sebelum datanya dipakai: kalau ada aturan yang gagal, Laravel menghentikan request-nya dan menjawab 422.
Isi array di validate() dengan satu baris per field, aturannya dipisah tanda pipa, lalu kembalikan $validated dengan status 201.