This can be done, just not using the API insert function. Instead, you can write your own INSERT query. You always want to use the API whenever you can, but sometimes itโs not possible. The request will look like this:
global $wpdb; $wpdb->query( $wpdb->prepare(" INSERT INTO {$wpdb->posts} VALUES( %d, %d, NOW(), %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, NOW(), %s, %s, %d, %s, %d, %s, %s, %d )", $ID, $post_author, $post_date_gmt, $post_content, $post_title, $post_excerpt, $post_status, $comment_status, $ping_status, $post_password, $post_name, $to_ping, $pinged, $post_modified_gmt, $post_content_filtered, $post_parent, $guid, $menu_order, $post_type, $post_mime_type, $comment_count ) );
You need to make sure that the identifier does not already exist in the database. If the mail table layout changes in the future, you may need to update your account request for changes.