============================================================================== COPY AND PASTE THIS EXACT COMMAND INTO POWERSHELL ============================================================================== Step 1: First, find your image files: -------------------------------------- Get-ChildItem "C:\Users\gamer\Downloads\" | Where-Object { $_.Extension -match '\.(jpg|jpeg|png|webp)$' } | Select-Object FullName Step 2: Then COPY-PASTE this command (update file paths from Step 1): ---------------------------------------------------------------------- curl.exe --location "http://localhost:8000/api/sections/footer" --header "Accept: application/json" --header "Authorization: Bearer hc7CtZwXYp1iyHuvaNlxU7LOiHnigzyv9uVPKkWfab102d49" --form "Header=TestArrayUpload" --form "hero_image=@C:/Users/gamer/Downloads/TOPURIA_ILIA_L_BELT_10-26.png" --form "hero_images[]=@C:/Users/gamer/Downloads/shutterstock_141945937.webp" --form "hero_images[]=@C:/Users/gamer/Downloads/golden-retriever-dog-breed-info.jpeg" IMPORTANT: This is ONE SINGLE LINE - copy the entire line! OR Use the automated script: ----------------------------- .\test-working-upload.ps1 What you should see in the response: ------------------------------------ { "body": { "Header": "TestArrayUpload", "hero_image": "http://localhost:8000/storage/sections/xxx.png", "hero_images": [ <--- THIS SHOULD BE AN ARRAY! "http://localhost:8000/storage/sections/yyy.webp", "http://localhost:8000/storage/sections/zzz.jpeg" ] } } Check the logs after running: ------------------------------ Get-Content storage/logs/laravel.log -Tail 5 You should see: "raw_files":["hero_image","hero_images"] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BOTH fields should appear here! Currently you only see: "raw_files":["hero_image"] ^^^^^^^^^^^^ Only one field - this is why hero_images is missing! ==============================================================================