Overview

Retrieve and submit webforms via REST.

  1. Enable module
  2. Enable REST resource "Webform Submit"
  3. Enable REST resource "Webform Elements"
  4. Enable REST resource "Webform Submission"

There may be 2 Webform Submission resources. The one provided by this module has the path: /webform_rest/{webform_id}/submission/{sid}

Submit Webform

POST /webform_rest/submit

Example POST data:

{
  "webform_id": "my_webform",
  "checkboxes_field": [
    "Option 3",
    "Option 5"
   ],
   "integer_field": 3,
   "radio_field": "Mail",
   "email": "myemail@mydomain.com.au"
}

Update Webform Submission

PATCH /webform_rest/{webform_id}/submission/{sid}?_format=json

Example PATCH data:

{
  "checkboxes_field": [
    "Option 3",
    "Option 5"
   ],
   "integer_field": 3,
   "radio_field": "Mail",
   "email": "myemail@mydomain.com.au"
}

Retrieve Webform Elements

Returns all form elements including render array.

GET /webform_rest/{webform_id}/elements?_format=json

Retrieve Webform Fields

Returns form fields.

GET /webform_rest/{webform_id}/fields?_format=json

Retrieve Webform Submission

GET /webform_rest/{webform_id}/submission/{sid}?_format=json

Example response:

{
  "entity": {
    "serial": [
      {
        "value": 1
      }
    ],
    "sid": [
      {
        "value": 1
      }
    ],
    "uuid": [
      {
        "value": "f796859a-7d65-471a-b794-d6c4ea83ab49"
      }
    ]
  // More entity fields including token, completed, in_draft etc.
  },
  "data": {
    "checkboxes_field": [
      "Option 3",
      "Option 5"
     ],
     "integer_field": 3,
     "radio_field": "Mail",
     "email": "myemail@mydomain.com.au"
  }
}
Supporting organizations: 

Project information

Releases