Upload files programmatically to users

it was just missing $upload_dir['path'] . "https://wordpress.stackexchange.com/" . $upload_file_name in

            $uploaded_file['attach_id'] = wp_insert_attachment($attachment, $upload_dir['path'] . "https://wordpress.stackexchange.com/" . $upload_file_name);
            require_once(ABSPATH . 'wp-admin/includes/image.php');

            //Generate the metadata for the attachment, and update the database record.
            $attach_data = wp_generate_attachment_metadata($uploaded_file['attach_id'], $upload_dir['path'] . "https://wordpress.stackexchange.com/" . $upload_file_name);