How to create a node out of a webform submission? I'd like to be able to create a node out of a webform submission in Drupal 8. It can happen either on successful submission or as an additional task after the webform has been submitted. I've seen some info on creating content entities via REST/GET (https://www.drupal.org/docs/8/core/modules/rest/3-post-for-creating-content-entities) and I know that you can post a webform submission to a URL with Webform (yamlform) using either x-www-form-urlencoded or JSON, but I'm not sure if this is even the right thing to be looking at.

The webform, submissions, and content type I'd like to use are all on the same site.

I know this question came up for Drupal 7 and the direction was to have them use a content type, but we're not able to allow the submitters to use content types at this time because of the way the site is setup.
The answer from @owenpm3 is great for adding this as an administrative duty. 

In order to automate this and make it occur on a successful submission, I would create a custom WebformHandler that you add to your form in the configuration settings, the same way you configure your form to send an email upon a successful submission. So under your web forms Settings tab, under the sub-tab: Emails / Handlers.

To build this you would need to create a custom module, mymodule and place the custom webform handler in: mymodule/src/Plugin/WebformHandler/

I will call the WebformHandler MyWebformHandler.php. Aside from this you will need an info file and that should do it.

Code for MyWebformHandler.php as follows:

&lt;?php

namespace Drupal\mymodule\Plugin\WebformHandler;

use Drupal\Core\Session\AccountInterface;
use Drupal\Core\Serialization\Yaml;
use Drupal\Core\Form\FormStateInterface;
use Drupal\node\Entity\Node;
use Drupal\webform\WebformInterface;
use Drupal\webform\Plugin\WebformHandlerBase;
use Drupal\webform\webformSubmissionInterface;
use Drupal\webform\Entity\WebformSubmission;


/**
 * Create a new Article node from a webform submission.
 *
 * @WebformHandler(
 *   id = "article_from_webform",
 *   label = @Translation("Create a node on submit"),
 *   category = @Translation("Content"),
 *   description = @Translation("Creates a new Article node from Webform Submissions."),
 *   cardinality = \Drupal\webform\Plugin\WebformHandlerInterface::CARDINALITY_UNLIMITED,
 *   results = \Drupal\webform\Plugin\WebformHandlerInterface::RESULTS_PROCESSED,
 *   submission = \Drupal\webform\Plugin\WebformHandlerInterface::SUBMISSION_REQUIRED,
 * )
 */

class MyWebformHandler extends WebformHandlerBase {

  public function submitForm(array &amp;$form, FormStateInterface $form_state, WebformSubmissionInterface $webform_submission) {

    // Get an array of form field values.
    $submission_array = $webform_submission-&gt;getData();

    // Dump the $submission_array to acquire the fields if you don't know what fields you're working with. 

    // Prepare variables for use in the node.  
    $title = $submission_array['subject'];
    $body = "&lt;p&gt;" . $submission_array['name'] . "&lt;br/&gt;";
    $body .= $submission_array['email'] . "&lt;/p&gt;";
    $body .= $submission_array['message'];

    // Create the node.
    $node = Node::create([
      'type' =&gt; 'article',
      'status' =&gt; FALSE,
      'title' =&gt; $title,

      'body' =&gt; [
        'value' =&gt; $body,
        'format' =&gt; 'basic_html',
      ],

    ]);

    // Save the node. 
    $node-&gt;save();
  }
}