Сохранить дает только true или false.
$query = (new Item())->fill([ 'first'=>$first, 'second'=>$second ])->save(); $lastInsertId = $query->id; //does not work... return ['status'=>true];
Вместо этого используйте функцию create.
create
$item = Item::create([ 'first' => $first, 'second' => $second ]); $id = $item->id;