Skip to main content

Jotform → Make → EMR webhook · 10 min read

How to send review requests from a completed-job form with Make

Written by , Founder & Lead Developer at EmbedMyReviews. LinkedInPublished

For a business with no reliable completion event in its software, let staff submit a short Jotform when a job is finished. Make checks that the job is complete and sends the customer details to an EMR inbound webhook. EMR then runs the branded review campaign. This is a practical human handoff followed by automated sending.

TL;DR

The short version

  • Use this for cleaners, mobile detailers or tradespeople whose finished work is otherwise hard to detect.
  • Staff submit the form once; Make sends the details into EMR. No EMR API key is needed for the default inbound webhook setup.
  • Keep the form about job completion. Do not ask staff to choose only satisfied customers.

Before you set this up

For a basic first request to each customer, a staff form can feed EMR without Make. Use this guide when you already use Jotform/Make, need a filter, or need to pass separate job events.

Start with Google Forms + Sheets if that is enough →

What happens automatically?

  1. 01

    Staff submit a completed job

  2. 02

    Make checks it and sends the contact

  3. 03

    EMR runs the review campaign

Choose this when: A team already uses Jotform and Make, or needs form-answer filters and separate job events that the simple Sheets route cannot provide.

Choose another route when: A business with a suitable native EMR connection or an existing completed-jobs sheet. Adding a form and bridge can be unnecessary extra work in those cases.

Who does what?

The business owner

Approves the completion form, gives staff its private link and makes submitting it part of closing a job.

You, the agency

Creates the Make connection, filter, field mapping and EMR webhook, tests exceptions, and monitors scenario and campaign activity.

Set up EMR Automations while signed in as the agency owner and working in the intended client location. The business owner handles access to their own software. They do not need your agency login or a daily EMR task.

A message you can send the business owner
“We can give your staff a short form to submit when a job is finished. It asks for the job reference and customer email. I will connect that form to the review campaign, so staff submit once and the request follows automatically. I will manage Make and check failures; your team only needs to make the form part of closing the job.”

Once it is connected

Staff submit the form once after finishing each eligible job. Make checks the completion answer and passes the customer to EMR. You monitor failed runs and Make credits. The staff form is the one manual step; sending the review request is automatic.

Have these ready

  • An enabled Jotform account and Make account, with the form owned by the business or managed under an agreed agency arrangement.
  • An EMR campaign, a configured domain for its webhook URL and a test email you control.
  • A named person who will investigate failed Make runs or depleted credits.
First client? Prepare the review campaign first

From your agency, open Business → Customers → Manage Customers → Open dashboard (or the Customer tab if shown). Select the business location you are setting up.

A campaign is the review message and any follow-ups you want EMR to send. A feedback form controls where the customer is invited to leave their review.

Use Grow → Review Tools → Feedback Forms to prepare the customer’s review destination, then Grow → Campaigns → Request Reviews to create the campaign. Choose its feedback form, message and working sender. Start with one email step for this walkthrough. Add your own test contact through Grow → Campaigns → Invites and verify the message and link.

Set the campaign’s sending window and duplicate-request window. Honour opt-outs. For Google review campaigns, ask eligible customers consistently, leave review gating off and offer no incentives.

Campaign sending rules and setup reference →

Do I need to understand APIs or write code?

You do not write code, but this route has more setup than a direct connection. Make is the bridge between the form and EMR. You will choose fields from menus and send them to the receiving URL EMR gives you. No EMR API key is needed for this setup.

A key or token is a private connection credential. A webhook is an automatic notice that something happened, such as a payment completing. Keep connection credentials private; the business owner does not need to share their everyday login password.

The walkthrough

Set it up, step by step

A form, a filter and one HTTP action. Work through this together the first time.

  1. Together

    Create a short internal completion form

    In Jotform, create an internal form with four fields: Job reference (Short Text), Customer first name (Short Text), Customer email (Email), and Job completed? (Single Choice with Yes and No). Require the job reference, email and completion answer. Start with email only for this walkthrough.

    Use this form after the service. Do not use a general enquiry form or a satisfaction rating as the trigger. Start with one business and one EMR location.

    Keep submissions for staff: in the form builder, open Settings → Form Settings → Show More Options → Password Protection and enable a password. Share the form link and password with staff, and confirm the published form asks for it before launch.

    Before moving on: A staff member can fill it in using only details already recorded for the completed job.

  2. Agency

    Create the receiving address in EMR

    Open the client dashboard and location from your agency. Go to Connect → Integrations → Automations and click Connect Make. If the card shows Manage Make, open it and choose New Connection.

    Name the connection, select the campaign and copy the Endpoint URL. Leave the wizard waiting for a test submission. This URL contains a secret token; treat the whole address like a password.

    Before moving on: The wizard displays a URL on the configured domain and is waiting to capture data.

  3. Business owner

    Create the Jotform credential

    In Jotform, open your profile → Settings → API and create a new key. Give this connection Full Access because Make must create the submission webhook.

    Add it securely to the Make connection with the agency. Use a dedicated key so this connection can be revoked independently.

    Before moving on: Make has a dedicated Jotform credential with permission to create its webhook.

  4. Agency

    Start the Make scenario with the form

    Create a scenario and add Jotform → Watch for Submissions. Create its webhook and connection, enter the Jotform API key and select the completion form.

    Click Run once, then submit the form using your own email and Job completed? = Yes. Open the captured output so the form’s actual fields are available to map.

    Before moving on: Make shows the test submission, including the customer email and completion answer.

  5. Agency

    Filter completed jobs and add the HTTP action

    Add HTTP → Make a request after the Jotform module. On the connection between them, add a filter: Job completed? equals Yes AND Customer email exists. These are conditions on the captured form answers: only a finished job with an email can continue.

    In HTTP, choose No authentication, paste the EMR Endpoint URL and set Method to POST. Select Body content type application/JSON and Body input method Data structure. Create three Text fields named first_name, email and job_id. Click each value and select the matching Jotform answer from the mapping panel. Do not type a customer email into the module: that would send every job to the same person.

    Leave the optional signing setting at its default for this basic setup. The private Endpoint URL identifies the EMR connection; you do not add an EMR API key or an Authorization header.

    Before moving on: The HTTP action sends the customer’s values, not the Jotform owner’s email or literal placeholder text.

    The fields to map

    first_name
    Map Customer first name from the Jotform output → EMR First Name
    email
    Map Customer email from the Jotform output → EMR Email
    job_id
    Map Job reference so you can identify the submission later. EMR does not use it to permanently block duplicate jobs.
    See an example of the data EMR receives

    Illustrative data only. Select the real source fields in your automation tool; use your own email for testing.

    {
      "first_name": "Alex",
      "email": "[email protected]",
      "job_id": "JOB-1042"
    }
  6. Agency

    Match the form fields inside EMR

    Keep EMR waiting for its test, run the Make scenario once and submit a fresh completed test job. EMR should show Submission received.

    In EMR, match First Name to first_name and Email to email. Leave Appointment or order date empty for this form: the delay will start when the data arrives. Keep job_id in the submitted data to help identify a job in Recent requests; it is not a rule that blocks repeat jobs.

    Choose A set time after the moment, for example one hour, and click Activate Webhook. The first captured sample was for setup; submit a fresh test after activation to prove campaign delivery.

    Before moving on: The active webhook has the correct email mapping and timing.

  7. Together

    Turn on the scenario and test both paths

    Save the scenario and turn on its scheduling so new submissions run automatically. Complete the tests below with your own details.

    Agree who checks Make’s scenario history and EMR activity. Repeatedly replaying a failed run can create new requests outside the five-minute duplicate window, so inspect the destination before retrying.

    Before moving on: A fresh completed job sends once; an unfinished job is filtered out.

Example: a mobile detailer finishes a job

The detailer finishes at 2 pm and submits the internal form. Make passes the completed-job filter and sends the customer details to EMR. With an hour of delay measured from arrival, the contact is scheduled around 3 pm. The staff member never opens EMR or writes a review-request email.

How to know it is working

Follow the event all the way to a message you receive. A green connection or a successful test response is only part of that journey.

Where to look: In Make, open the scenario’s History and inspect the Jotform result, filter and HTTP action. In EMR, open Automations → Make, click the connection and check Recent requests. Then find the email under Grow → Campaigns → Invites and confirm the message in your inbox.

When to expect the message: Set the first-request delay here in the automation. EMR does not add the campaign’s first-step delay on top, but its allowed sending hours still apply. For example, a request due at 8 pm waits if the campaign only sends between 9 am and 6 pm. Follow-up timing stays in the campaign.

Testing again? Use another email address you control for a second successful-send test. Reusing the first address can correctly trigger your duplicate-request rule. Keep that protection on for real customers.

Test 1: After both systems are active, submit a fresh completed job with your own email.

Expected result: Make shows a successful run, EMR shows a received event and scheduled contact, then the campaign message arrives. A successful HTTP response alone is not delivery proof.

Test 2: Submit a job with Job completed? = No.

Expected result: The Make filter blocks it before the HTTP action. EMR receives no invitation event.

Test 3: Check the first run’s credit usage and inspect both histories.

Expected result: The agency can explain the operating cost and identify where a future failure would be diagnosed.

If something does not work

Jotform cannot create its webhook

Check that the API key has Full Access and that the form is enabled. Match the connection’s region or enterprise settings to the Jotform account where applicable.

HTTP succeeds but no invitation arrives

Check Recent requests: was this only a setup sample, is the connection paused, was the same data just sent, or is the customer email missing? Then check the contact’s campaign activity, sending window, repeat-customer rule and sender setup.

The form works only when Run once is clicked

Save and enable scenario scheduling. Run once is a setup test, not the permanent on switch. Also check Make credit availability.

At handover, record the connection name, source account, client location, campaign, timing, test result and person responsible for failures. Test again after changing the workflow. Keep passwords, API keys and private webhook URLs out of the handover notes.

Cost, reliability and the simpler alternatives

Cost: This workflow uses Jotform submissions and Make credits, plus EMR and message delivery. Start with the plans you already have and check their limits. One form submission runs a trigger and HTTP action, but retries or extra steps can add usage. Read the test run’s credit count before pricing this for a client.

Reliability: The form must be submitted, the Make scenario must be on and its account must have credits. Keep one submission per completed job and use the campaign’s repeat-customer rule. EMR only blocks identical incoming data for five minutes; the job reference does not permanently prevent repeats.

When to use something else: For a first request per customer, Google Forms → Google Sheets → EMR avoids a separate bridge. Use a direct inbound webhook when the source already sends eligible customer data. Keep Make when its filter, field changes or repeated-job handling earns the extra setup and monitoring.

Common questions

Need help with a setting?