I have finished a working prototype of the form-processor and action-provider extension. See my previous blog post for where the idea came from.
Below I will explain what you can do with this extension. Lets assume we have an external website where students can signup to volunteer in a summer program. When a student has signed up we want this data to be present in CiviCRM and the student added to the group student volunteers.
We then have a screen where we can enter the name, define the input fields (in our case email address) and the processing of the actions. See below on how this looks like:
We can also define how the output of the form processor is formatted:
The extension also covers for the use case where we want to prefill the form data (for example we have a form on which we want to show the data already present in the system):
After we have defined our form processor it becomes available as an API call (check the API explorer for the entities FormProcessor and FormProcessorDefaults).
If we then want to submit the form from the external website we can use the CiviMRF and webform drupal modules: