WordPress at a glance
function is not described

WP_REST_Autosaves_Controller::create_item() public WP 5.0.0

Creates, updates or deletes an autosave revision.

{} It's a method of the class: WP_REST_Autosaves_Controller{}

No Hooks.

Return

WP_REST_Response/WP_Error. Response object on success, or WP_Error object on failure.

Usage

$WP_REST_Autosaves_Controller = new WP_REST_Autosaves_Controller();
$WP_REST_Autosaves_Controller->create_item( $request );
$request(WP_REST_Request) (required)
Full details about the request.

Changelog

Since 5.0.0 Introduced.

Code of WP_REST_Autosaves_Controller::create_item() WP 5.5.1

<?php
public function create_item( $request ) {

	if ( ! defined( 'DOING_AUTOSAVE' ) ) {
		define( 'DOING_AUTOSAVE', true );
	}

	$post = get_post( $request['id'] );

	if ( is_wp_error( $post ) ) {
		return $post;
	}

	$prepared_post     = $this->parent_controller->prepare_item_for_database( $request );
	$prepared_post->ID = $post->ID;
	$user_id           = get_current_user_id();

	if ( ( 'draft' === $post->post_status || 'auto-draft' === $post->post_status ) && $post->post_author == $user_id ) {
		// Draft posts for the same author: autosaving updates the post and does not create a revision.
		// Convert the post object to an array and add slashes, wp_update_post() expects escaped array.
		$autosave_id = wp_update_post( wp_slash( (array) $prepared_post ), true );
	} else {
		// Non-draft posts: create or update the post autosave.
		$autosave_id = $this->create_post_autosave( (array) $prepared_post );
	}

	if ( is_wp_error( $autosave_id ) ) {
		return $autosave_id;
	}

	$autosave = get_post( $autosave_id );
	$request->set_param( 'context', 'edit' );

	$response = $this->prepare_item_for_response( $autosave, $request );
	$response = rest_ensure_response( $response );

	return $response;
}