Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Click Add Action and fill in the following details for your new action.

  • Enter a name to identify the action.

  • Optionally, choose a base action. A base action will add some read-only properties for you automatically in the context of that technology. Currently, the FlexDeploy extension offers base actions for Oracle Application Express, Oracle RESTful Data Services, Oracle Business Intelligence, and Oracle Integration Cloud.

  • Enter the full webhook URL to send to FlexDeploy. This will be in the format <FlexDeploy base URL>/flexdeploy/webhooks/v1/<webhook function URI>.

  • Optionally, use a regular expression to determine for which URL patterns the extension should select this action initially when the popup is opened. Example: https:\/\/apexServer.* for any URLs starting with http://apexServer

  • Define any additional properties to send in the JSON payload. The extension supports single item properties or list data and sends as type string. You can also set a default value for your property with literal text, a CSS selector, or general Javascript.

Receiving the Webhook in FlexDeploy

...

The extension will require a new incoming webhook provider. We can create one by following the directions in the incoming webhooks guide. Below is a webhook provider match script verifying the extension id and query parameters match what we expect.Image Removed

...

code
Extension Provider Match Script
Expand
titleExtension Provider Match Script


languagegroovy
title
Code Block
linenumberslanguagetruegroovy
def tokenQueryParam = QUERY_PARAMS.get('token');
def originHeader = HTTP_HEADERS.get('origin');

if (tokenQueryParam && originHeader) 
{
  if (TOKEN.equals(tokenQueryParam) && CHROME_EXTENSION_ID.equals(originHeader))
  {
    LOG.fine('FlexDeploy Extension is a match');
    return true;
  }
}

return false;


...

The following is a reference of the 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.

Code Block
linenumberstrue
{
  "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"]
    }
  ]
}

...

The extension will automatically open to the Send tab once you have an action created. From here, you can choose an action, customize property values as needed, and send a webhook to FlexDeploy.Image Removed

...