Skip to content

Power Automate

Plugboard works with Microsoft Power Automate over HTTP in both directions. There is no certified Plugboard connector in Power Automate, so you use its own HTTP trigger and HTTP action. Both are premium in Power Automate, so the account that owns the flow needs a plan that includes them.

Both directions are part of external flows and hooks, which has the full detail. Neither works on the public demo.

A Plugboard flow starts a Power Automate flow

Section titled “A Plugboard flow starts a Power Automate flow”
  1. In Power Automate, start a flow with the trigger When an HTTP request is received. Set Who can trigger the flow to Anyone, save it, and copy the HTTP URL. The sig part of that URL is what protects it.
  2. In Plugboard, open Flows, Connections and choose Add a connection. Paste the URL as the Address. This needs flow.publish, integration.manage and connector.manage, and asks you to confirm it is you. Plugboard names the platform from the host and warns you if the address has no sig.
  3. Under What it may be sent, tick only what the flow needs: Ticket text, Names and addresses or Anything about students. Ids and plain details are always allowed.
  4. In any Plugboard flow, add a Start an external flow step, choose the connection, and name the values it sends.

Things to know:

  • The address is sealed when you save it. Afterwards only its host and last four characters show, and it never appears in run history or the audit log.
  • The body also carries plugboard, with the run’s id (runId) and the flow’s name (flow), so the Power Automate flow can say which run it answers about.
  • Each request carries an Idempotency-Key header that stays the same on every attempt of one step. Power Automate does not check signatures; leave Sign what it sends on unless the flow refuses unknown headers.
  • The body is limited to 64 KB, and Power Automate has 10 seconds to accept it. A request is never retried by itself.
  • To get a result back, turn on Wait for its answer. The request then carries a callbackUrl. End the Power Automate flow with an HTTP action that sends a POST with a JSON object to that URL. It works once, expires when the step gives up, and the answer is checked against what the step expects.

A Power Automate flow starts a Plugboard flow

Section titled “A Power Automate flow starts a Plugboard flow”
  1. Build a Plugboard flow with the trigger Another app calls it. Under What it sends, list the values Power Automate will send.
  2. Once the flow is saved, choose Add an address under Addresses and name it “Power Automate”. Copy the address and the token: the token starts pbh_ and is shown once, with a Power Automate recipe beside it. This needs flow.publish and integration.manage, with step-up.
  3. In Power Automate, add an HTTP action:
    • Method POST, URI the address you copied.
    • Headers: Authorization set to Bearer and the token, Idempotency-Key set to a value unique to the event, and Content-Type set to application/json.
    • Body: a JSON object with the values the Plugboard flow expects.
  4. Turn the Plugboard flow on. Plugboard answers 202 with the run’s id.
Limit Value
Requests per address 60 a minute
Body size 64 KB
Idempotency-Key Required, at most 200 characters, remembered for 72 hours
Signature Optional per address; Power Automate cannot sign, so leave Also require a signature off

A repeat with the same Idempotency-Key starts nothing and answers with the first run. What Power Automate sends is marked “From another app”: it can start the flow and appear in messages, but it never chooses who or what a step changes without a person. To stop it, revoke its address.