Avatar

<- Back to homepage

Http button PCF: Make HTTP request locally

This is a simple button that makes HTTP calls directly from the browser — no Custom Connector and not directly integrated with Premium Power Automate.

I originally built this for a bank where the core layer and core integration layer only allowed internal network access. To sync master data from their internal platform, this PCF was essential, as external access (Microsoft’s cloud) was blocked.

There is another version that supports OAuth2 and can strip malicious payloads later, but I think this version is sufficient for most community use cases.


⚠️ Important Notice on Security and DLP

This component executes HTTP requests directly in the user’s browser, which means it does not comply with Power Platform Data Loss Prevention (DLP) policies.

➡️ Please use this component at your own risk, especially in environments with strict governance, security, or compliance requirements.

I recommend using it only with trusted APIs and avoiding sensitive or confidential data in ungoverned environments.


✨ Features

  • Send HTTP requests (GET, POST, PUT, PATCH, DELETE)
  • Fully configurable:
    • Font size, color, and weight
    • Border and background styles
    • Button text and behavior
  • Built with React + Fluent UI
Screenshot 2025-07-04 at 12 07 31 PM

📦 Download

You can download the latest managed solution here:

➡️ Download HttpButton_Managed.zip


🛠️ Input Properties

display-name-keyDescription
🔤 TextText displayed on the button (e.g. “Send Request”).
🌐 Target endpointHTTPS URL of the REST endpoint to call (must begin with https://).
📨 MethodHTTP method: POST, GET, PUT, PATCH or DELETE.
📦 JSON payloadJSON payload string (required for POST/PUT/PATCH).
🔑 Authentication TypeAuthentication type: None, Basic or API Key.
👤 Basic Auth UsernameUsername for Basic auth (if Authentication Type = Basic).
🔒 Basic Auth PasswordPassword for Basic auth (if Authentication Type = Basic).
🏷️ API Key Header NameHeader name for API Key (if Authentication Type = API Key).
🗝️ API Key ValueAPI Key value (if Authentication Type = API Key).
🎨 FontNameFont family for button text (e.g. “Segoe UI”).
🎨 FontSizeFont size in pixels (e.g. 10.5).
🎨 FontColorColor of the text when enabled.
🎨 FontWeightText weight: normal, bold, bolder, lighter.
🎨 DisabledFontColorColor of the text when disabled.
🎨 DisabledFillColorBackground color when disabled.
🎨 BorderColorButton border color.
🎨 BorderThicknessBorder thickness in pixels.
🎨 BorderRadiusBorder corner radius in pixels.

📌 Note: POST requests require a valid JSON payload.

📤 Output Properties

display-name-keyDescription
📊 ResponsesJSON string with statusCode and body of the HTTP response.

📊 Read the Response

  • The control outputs a JSON string in the Responses field, for example:
    {
      "statusCode": 200,
      "body": "{ \"success\": true }"
    }
    

Tuong Doan - All rights reserved.