Skip to main content
All posts
Developers6 min read

How to Send Microsoft Forms Response Alerts to a Shared Room

Use Microsoft Forms and Power Automate to send one fixed shared-phone alert without putting response answers on the lock screen.

Two PingRoom avatars keep response cards in a wooden forms box while Pingo watches one blank signal token reach a shared tray.

To send a Microsoft Forms response alert to a shared group of phones, use Power Automate's When a new response is submitted trigger for one form, then post fixed copy to a PingRoom incoming webhook. Build the event key from the Forms response ID so retrying the same submission does not create another Ping.

This is a Power Automate webhook recipe, not a native Microsoft Forms integration. Microsoft Forms remains the response record. PingRoom carries one small update to the people who need to look.

Start with the notification Microsoft Forms already has

Microsoft Forms can email the form owner for every new response. Use that option when one editor watches the form and email is the right destination.

Add the shared Room only when the same fixed signal should reach an opt-in group:

NeedBetter starting point
One form owner needs a message for every responseMicrosoft Forms' built-in email notification
A team needs the submitted answersOpen Microsoft Forms through the team's authorized access
A workflow must branch on an answerPower Automate with Get response details
A shared group needs only “a response arrived”Fixed copy to a private PingRoom Room
The response starts a regulated or safety-critical actionThe organization's approved system and escalation path

The useful privacy boundary is simple: this alert does not need the answers. It can use the response ID for retry identity without retrieving names, email addresses, uploads, or answer fields.

Check the two plan boundaries

This setup needs:

  • a work or school Microsoft account that can use the Microsoft Forms connector;
  • permission to create a flow for the selected form;
  • a Power Automate environment where the HTTP action is available under your tenant's connector and data policies; and
  • active PingRoom Pro on the destination Room owner's account.

Microsoft lists the Forms connector as Standard and says it works with organizational accounts. The HTTP action used to call an external webhook may require premium connector entitlement. Microsoft's current licensing guide explains the Standard and Premium distinction, but your designer and administrator remain authoritative for your tenant.

If the form belongs to a Microsoft 365 group, it may not appear in the trigger's list. Microsoft's connector reference says you can paste the portion after FormId= from the form's edit URL into the Form Id field.

Create one private destination

In PingRoom, create or choose a private Room for the people who should receive the alert. Open Settings → Connections → From another app, add an incoming webhook named Microsoft Forms, keep Quick Ping on Custom message, save it, and copy the complete URL.

The Room owner needs PingRoom Pro. The URL is a credential: anyone who has it can trigger that webhook. Store it in protected flow configuration, keep it out of form questions and descriptions, and never paste it into a screenshot or shared template. The incoming-webhook guide covers the Room-side setup; the webhook reference lists current fields, errors, idempotency, and limits.

Build the smallest useful Forms flow

In Power Automate, create an Automated cloud flow and choose the current Microsoft Forms trigger When a new response is submitted. Select exactly one form.

Do not add Get response details for this fixed alert. Microsoft's Forms workflow overview explains that the action fetches the response content as dynamic data. This recipe does not need that content.

Add a Compose action named Event_key. Use this expression:

concat('msforms-', string(first(triggerBody()?['value'])?['resourceData']?['responseId']))

The path follows Microsoft's current trigger schema: value is a list of response notifications, and each notification carries an integer at resourceData.responseId. One flow is tied to one form, so the fixed msforms- prefix plus that response ID is enough for this webhook's event identity.

Then add an HTTP action with these values:

HTTP fieldValue
MethodPOST
URIthe protected PingRoom webhook URL
Header Acceptapplication/json
Header Content-Typeapplication/json
Header Idempotency-Keyoutput of the Event_key Compose

Use a fixed body. Change Workshop request to a short label that identifies this one form without exposing a respondent or answer:

{
  "title": "New form response",
  "message": "Workshop request received a response",
  "data": {
    "source": "microsoft-forms",
    "form": "workshop-request"
  },
  "correlation_id": "@{outputs('Event_key')}"
}

In the HTTP action's Settings, enable Secure Inputs and Secure Outputs. Microsoft documents those controls in its sensitive-input guidance. They reduce accidental exposure in run history; they do not replace careful flow access, tenant policy, or secret rotation.

Keep the answers behind the form

The title, message, and form label above are fixed. They do not include dynamic response content. The only response-derived value is the ID used for Idempotency-Key and correlation_id.

That gives the Room a small, literal result:

New form response

Workshop request received a response

The team opens Microsoft Forms through its normal authorized route to review the answer. A notification does not mean the response was accepted, approved, assigned, or completed.

Two PingRoom avatars test a wooden retry gate while Pingo watches one blank response token pass and an identical replay stop.

Pingo the Pigeon, PingRoom's fictional Chief Marketing Officer, appears beside the miniature retry gate. The blank token passes; the sealed answer cards stay put. He cannot open the Form, enter the private Room, edit the flow, or send the Ping. People configure and own the workflow.

Rehearse five boundaries with a disposable form

Use non-sensitive sample answers and a private test Room. This is an illustrative test plan, not a delivery guarantee.

  1. First response: submit the disposable form once. Confirm the flow receives one response ID and Room history contains one New form response Ping.
  2. Exact replay: resubmit that flow run without changing the HTTP body. The same response ID should produce the same event key, so Room history should still contain one Ping for that submission.
  3. Changed body: in the disposable test flow, change the fixed message and resubmit the same captured response. PingRoom should return 409 idempotency_conflict because one key cannot describe two bodies.
  4. Second response: submit the form again. The new response ID should produce a new event key and one new Ping.
  5. Unavailable destination: temporarily disable the test webhook and confirm the HTTP action follows the flow's failure path instead of reporting success.

Our recorded fixture used Microsoft Forms-shaped trigger bodies and a local mock of PingRoom's documented contract. It checked first acceptance, exact replay, changed-body conflict, a second response, excluded answer fields, malformed trigger data, and a disabled webhook. It did not use a live Microsoft tenant, PingRoom Room, customer response, or phone.

Read the HTTP result correctly

HTTP 200 with success: true means PingRoom accepted the request and created or returned the Ping for that event key. It does not prove every phone displayed an alert. Connectivity, operating-system behavior, notification permissions, Focus modes, battery settings, and Room preferences can delay or suppress delivery.

PingRoom incoming webhooks accept one new Ping every five seconds by default. If the form can receive bursts, do not turn every response into an interruption. Keep the built-in email, send a digest through a separate approved workflow, or route only a selected state after the form has been reviewed.

For a generic final-result flow, use the broader Power Automate phone-alert recipe. When this fixed response-arrived signal is the right boundary, create the private destination Room, test one disposable response, and keep the answers in Microsoft Forms.

The illustrations are AI-generated editorial scenes featuring Pingo the Pigeon, PingRoom's official mascot and fictional Chief Marketing Officer, and approved PingRoom avatars. The people and scenario are illustrative, not customers or product screens; the human team remains responsible for product claims and decisions.

Sources

PingRoom

Short-form communication.

View all posts