Skip to main content

How do you connect Sally AI with Power Automate?

To connect Sally with Power Automate you use a webhook. Sally sends the results of a meeting to an address of your choice, and your cloud flow picks up from there.

The setup has three parts, and the order matters. Power Automate only generates the address once the flow is saved, so you build the flow first. Then you set up the webhook in Sally with that address and copy the example body there. With that body, Power Automate generates the schema in the last step, so you can work with the individual fields inside the flow. If you have not worked with webhooks before, read the webhook guide first.

Quick navigation

  1. Build the flow in Power Automate
  2. Configure the webhook in Sally
  3. Add the schema to the flow
  4. Check the webhook activity in the log

1. How do you build the flow in Power Automate?

First you need a flow in Power Automate with a trigger that waits for incoming data, and with at least one action. Power Automate only saves a flow once both are in place, and the address for Sally only appears when you save.

  1. In Power Automate, click Create and choose Automated cloud flow, the flow that is triggered by an event.
Create a new automated cloud flow
Figure 1: Start with a new automated cloud flow
  1. Enter a meaningful name under Flow name, Sally, send e-mail for instance. Then click Skip to choose the trigger yourself.
Name the flow and skip the trigger selection
Figure 2: Give your flow a clear name and skip the trigger selection
  1. In the new flow, click Add trigger.
Add a trigger in Power Automate
Figure 3: Add the trigger to your flow
  1. Search for HTTP and select When an HTTP request is received.
Select the When an HTTP request is received trigger
Figure 4: Choose the HTTP request trigger
  1. Now add an action to the flow.
Add an action after the trigger
Figure 5: Add the first action
  1. In this example it is Send an email notification (V3), to send the meeting information by e-mail. A Planner task, a Teams message or a new row in Excel works just as well.
Select the Send an email notification action
Figure 6: Choose Send an email notification (V3)
  1. Configure the details of the action, in this example the e-mail:

    • To: where the output should go.
    • Subject: a meaningful label, Meeting tasks for instance.
    • Body: a short message, into which you can insert the dynamic fields from Sally later.
Configure the e-mail action
Figure 7: Set the recipient, the subject and the content
  1. Click Save.
Save the flow in Power Automate
Figure 8: Save the flow
  1. Saving is what makes Power Automate generate the address. Open the trigger; the address sits under HTTP URL. Copy it with the icon on the right of the field.
Trigger in Power Automate with the HTTP URL field and the copy icon highlighted
Figure 9: Once saved, the address sits under HTTP URL
The schema comes later

Leave Request Body JSON Schema in the trigger empty for now. You need the example body from Sally for it, which you get in the next section. After that you add the schema.


2. How do you create the webhook in Sally?

Now you put the copied address into Sally.

  1. In Sally, open Settings from the bottom-left corner of the sidebar.
Sally interface with Settings highlighted in the bottom-left corner of the sidebar
Figure 10: Open Settings
  1. Under Configuration, select Integrations and open the Webhooks tab. Click Create webhook under Webhooks (Personal).
Webhooks tab in the integrations with the Create webhook button highlighted
Figure 11: Create a personal webhook
Personal or organization-wide

Webhooks (Personal) fire after your own meetings are summarized. Webhooks (Organization) apply to the entire organization account and are managed by administrators. For your own flow, use the personal section.

  1. Fill in the upper part of the Create webhook dialog: Name, an optional Description, the Trigger, the Language, the address from Power Automate under Webhook URL, and the Authentication.
Create webhook dialog with name, description, trigger, language, webhook URL and authentication
Figure 12: Enter the name, the trigger and the address
  1. Scroll down in the dialog. Body contents defines what Sally sends along, Options defines when the webhook fires. Then click Create.
Lower part of the dialog with custom headers, body contents, example body and options
Figure 13: Choose the body contents and create the webhook

The table below explains every field of the dialog.

FieldWhat it does
NameRequired. The display name of the webhook. Pick something you will recognize later, for example "CRM entry via Power Automate".
DescriptionOptional. A note on what the webhook is triggered for. Useful once several webhooks run side by side.
TriggerRequired. Defines when Sally sends. Automatically after every summary runs the webhook after every transcription, which means after a video or audio upload and after a meeting Sally attended.
Trigger for all languagesWhen enabled, the webhook fires no matter which language the summary was created in.
Webhook URLRequired. The address from the trigger of your flow.
AuthenticationDefines how Sally identifies itself to the target system. For an open HTTP trigger, None is enough. The webhook guide covers the other methods.
Custom headers (optional)Add header lets you send extra headers, an API key for instance.
Body contentsDefines which fields end up in the POST body: Summary, Section content, Objections, Conversation goals and Transcript. Only enabled fields are sent on each trigger, and the less you send, the smaller and faster the request.
Preview and Copy example bodyShows the body Sally would send with the toggles you set, and copies it. That body is exactly what you need for the schema in the next section.
Re-trigger on re-summarizationWhen off, the webhook fires only the first time. When on, Sally sends again whenever a summary is regenerated.
Webhook activeSwitches the webhook on. Turning it off leaves it in place without deleting it.
  1. The webhook you created then sits under Webhooks (Personal).
List of personal webhooks with the newly created entry
Figure 14: The webhook is created
  1. Open the webhook with the pencil icon in its row and click Copy example body. The create dialog does not have the body ready yet, which is why this extra step is needed. You need the body for the schema in the next section.
Edit webhook dialog with the example HTTP body area and the Copy example body button highlighted
Figure 15: Copy the example body in the edit dialog
Spotting older webhooks

Every webhook in the list carries its body version. Sally creates new webhooks on the current version, older ones are marked Outdated or Expiring. If an old webhook is still running, recreate it with the same settings. The version determines how the body is built, so after recreating it you have to generate the schema in the flow again.


3. How do you add the schema to the flow?

Given the example body from Sally, Power Automate learns the structure of the incoming data. Only then can you work with individual fields inside the flow.

  1. Open the trigger in your flow and click Use sample payload to generate schema under Request Body JSON Schema.
Generate the schema from a sample payload
Figure 16: Generate the schema from the example body
  1. Paste the body you copied in Sally and click Done.
Paste the example body from Sally into Power Automate
Figure 17: Paste the example body from Sally
  1. The schema now sits in the Request Body JSON Schema field. Also check under Who can trigger the flow? who may run the flow.
Generated schema in the webhook trigger
Figure 18: The schema is generated
Why this step matters

With the schema, Power Automate knows the structure of the incoming data. That is what lets you pick dynamic fields such as summary, tasks or decisions in the action.

  1. Finally, click Save again.

That completes the path: Sally sends after every summary, and your flow carries on with the fields from the schema.


4. How do you inspect and debug webhook logs?

Finally, check that Sally is actually sending. Sally logs every trigger, so you can see what went to Power Automate and how Power Automate answered.

  1. In Sally, open the Webhooks tab and click the document icon on your webhook. In the row it sits directly to the right of the switch.
List of personal webhooks with the document icon for the logs highlighted
Figure 19: Open the logs of the webhook

Once the trigger has fired, the entries show up in the log. The list shows Status with the HTTP code Power Automate returned, Time of the delivery, Message when something failed, and the Request URL from your flow. The arrow on the right opens the entry with the full Request body and the Response body. The icon next to it sends the same record again.

Webhook logs of a webhook with the framed column headers and the framed icons for resending and expanding an entry
Figure 20: The log lists every delivery with its status, time and target, the request URL is blurred here

4.1. What do the HTTP status codes mean?

The status comes from Power Automate, not from Sally. It tells you whether the request arrived and where to look when it did not.

StatusWhat it meansWhat you can do
200 OK, 202 AcceptedPower Automate accepted the request and runs the flow.Nothing. If the flow still does nothing, check its run history.
400 Bad RequestThe body does not match the schema in the trigger.Generate the schema again from the current example body. You also need this after changing the body contents in Sally.
401 Unauthorized, 403 ForbiddenPower Automate rejects the request.Check in the trigger who may run the flow, and whether the Sally webhook carries matching authentication.
404 Not FoundThere is no flow at that address any more.Most common cause: the flow was deleted or switched off. Check it and put the address in again if needed.
429 Too Many RequestsToo many requests arrive in a short time, or a limit of your Power Platform environment is reached.Send less content or check the limits of your environment.
500, 502, 503, 504Power Automate was unreachable, or the flow failed with an error.Trigger again later and check the run history of the flow.
Start here when something is wrong

If nothing arrives in the flow, check the log in Sally first. No entry means the trigger did not fire, which points back at Sally. An entry with an error status points at the flow: the address, the permissions or the schema.