Installation and Getting Started

Installation and Getting Started

Installation

Chrome

Open the FlexDeploy Actions page in the Chrome Web Store. Click Add to Chrome. The extension will then show up in the extension list in your Chrome window next to the URL bar. It will be updated automatically as new versions are available.

By default, site access for the extension is across all sites. You can modify this from the chrome://extensions page to allow access to specific sites with a match pattern, or only allow on click.

Firefox

Open the FlexDeploy Actions page in Firefox Add-Ons. Click Add to Firefox. The extension will then show up in the extension list in your Firefox window next to the URL bar. It can be set to automatically update as new versions are available, or they can be managed manually.

Extension Initial Setup

The extension popup can be opened and closed with Ctrl+Shift+E, (or Cmd+Shift+E for Mac) regardless of whether the extension is pinned.

Creating an Action

The first time the extension is opened, it will open to the Settings menu. Here, you can set the URL of your FlexDeploy instance for sending webhooks. There’s also an optional request token which can be used to verify any incoming webhook requests are coming from this extension.

image-20250305-204927.png

From here, you can edit the included base actions or configure your own actions. Each action will be linked to some webhook URL defined by you, so you could have different actions for each webhook function you want to run in FlexDeploy. Using a base action should work for getting started, but you can read Using the Extension for more details on customizing actions.

image-20250305-205647.png

Receiving the Webhook in FlexDeploy

You will need to complete some one-time setup in FlexDeploy for processing your webhooks and triggering the desired actions.

Creating a Webhook Provider

The extension will require a new incoming webhook provider for each technology that you are working with. Here are the details on setting one up. If you aren’t sure how to get there, see the high-level details of how to create incoming webhooks.

  • Create the new Webhook Provider.

  • Add an encrypted property named TOKEN. Create a new credential and set the value to match the Request Token in your extension settings.

  • Navigate to the Match Script tab and write your Groovy script to verify an incoming webhook request is coming from the browser extension.

image-20250304-164150.png

Extension Provider Match Script

// This assumes that you have a value set for the request token setting in the browser extension // create a TOKEN property for it, and set both values to the same String. // It also assumes you are using Chrome. def tokenHeader = HTTP_HEADERS.get('x-fdtoken'); def originHeader = HTTP_HEADERS.get('origin'); if (tokenHeader && originHeader) { if (TOKEN.equals(tokenHeader) && "chrome-extension://paacbpidhiiepifmicloidcimomkkhlh".equals(originHeader)) { LOG.fine('FlexDeploy Extension is a match'); return true; } } return false;

Creating a Webhook Function

Now, we can create a function to take our webhook payload and use its content to trigger some action in FlexDeploy. The webhook URI format of the base actions which are auto-loaded with your extension is /extension/<base action code>, but can be modified by editing the associated action in your extension. There are example functions for each technology on the Example Incoming Webhook Functions page. If you need help with the basics, see the incoming webhooks documentation.

The following is a reference of the basic payload format which is sent from the browser extension. Action name and source URL are sent with each webhook and properties will vary based on the properties in your webhook action.

{ "actionName": "Name of action sent", "fromURL": "URL of the active window the sender was on when the webhook was sent", "properties": [ { "Property A Name": "Property A Value" }, { "Property B Name": "Property B Value" }, { "List Property C Name": ["Property C Value1", "Property C Value2", "Property C Value3"] } ] }

Sending a Webhook

The extension will automatically open to the Send page the next time you open it. From here, you can choose an action, customize property values as needed, and send a webhook to FlexDeploy.

FlexDeploy browser extension using the APEX action

 

The following macros are not currently supported in the footer:
  • style