Page tree

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

This is the documentation for ConfiForms Server/Data Center app

However, this might also work for ConfiForms cloud and in most cases it does. But please see this page to understand the differences between server and cloud versions of the ConfiForms app.


ConfiForms add-on has a macro called ConfiForms IFTTT to enable integrations with external systems or with Confluence itself.

Below, you can find a list of integrations scenarios the macro can support and it's configuration details

Actions list

There are 24 actions supported by IFTTT out-of-the-box (some actions are very generic, so the integration scenarios number is a lot bigger)

  • Add Page Label
  • Add Page Watcher
  • AppLink service
  • Copy ConfiForms Data
  • Copy ConfiForms Data to DB
  • Create Attachment
  • Create BlogPost
  • Create (Update) ConfiForms Entry
  • Create JIRA Issue
  • Create Page
  • Create Task
  • Delete ConfiForms Entry
  • Delete Page
  • Force Page Re-index
  • Make request
  • Move Attachment
  • Move Page
  • Remove Page Label
  • Remove Page Watcher
  • Rename Page
  • Run JavaScript
  • Send Email
  • Send Notification
  • Update JIRA Issue

 

Each IFTTT action has own parameters, but the following parameters are supported by all actions

 

When specified (in the docs below, for an action) - a macro body is used as a template, otherwise leave it empty

 

 

Parameter nameDescription
Event

Type of event in ConfiForms this IFTTT action should be fired on

  • On Created
  • On Modified
  • On Deleted

 

Action to performOne of the actions to perform. See the list above
Do not report errorA checkbox field to disable error reporting and continue with the workflow even if current macro has resulted in an error
Custom name for the action resultThis is used in advanced techniques, when you want to use the result of the IFTTT in next IFTTT or want to save the result of some IFTTT or some part of the result back into a ConfiForms record. See below the result types and the contents stored in the result for each IFTTT action.

Add Page Label

Adds label to a page, you can apply a label (or labels) to page sub-pages as well

Result type:NO RESULT

Add Page Watcher

Adds a user or group of users as a page watcher
Result type:

Page object (page where the watcher's were added)

Depending on the IFTTT result name you can access all of the properties available from Page object.

For example (when result name is MYRESULT)

${iftttResult_MYRESULT.id}
${iftttResult_MYRESULT.spaceKey}
${iftttResult_MYRESULT.displayTitle}

Any other property, which Page object provide (any "get" method)

Applink Service

Sends a request to configured Application link service

A user specifies which HTTP method to use, which URL service to execute (url must be given as "relative" url, this means it is "concatenated" with the base url in your applink service)

More about Application links in Confluence could be found here: https://confluence.atlassian.com/display/APPLINKS/Application+Links+Documentation

Result type:

Response returned from a request to a service is returned and stored as result

If response is a JSON then you can apply Virtual functions to work on a JSON object

Please note that virtual functions could be applied only on ConfiForms fields, not the IFTTT result directly. This means you will need to save the response to some ConfiForms field temporarily in order to apply the functions and convert the response to JSON.

Copy ConfiForms Data

 

Copies data from one ConfiForms form to another, can have custom mapping for fields and have a filter applied before copying the data

Also, it can "flatten" the multi-select values to copy the data to a new form in an "expanded" view

 

Please note that if you leave the filter empty then ALL the records from a source form will be copied to a destination form.

To copy just one, current record, you will need to apply the following filter

id:[entry.id]

It is important to note that this action never fires any other "Create ConfiForms Entry", "Delete ConfiForms Entry" or "Copy ConfiForms Data" for the entry created

Result type:Last created (copied) record as object. This means that you can access any property available in ConfiForms record. Please note that the values accessed using the Velocity notation (${}) return "raw" (internal) values. More on this Accessing field values and properties

Copy ConfiForms Data to DB

 

Executes a SQL statement you specify on your database (on the database connection you have configured)

You must specify a valid SQL statement - either INSERT or UPDATE

Similar to "Copy ConfiForms Data" action you can filter records on original form before copying, as well as "flatten" records in order to have multi-value fields as separate rows (if necessary)

 

ConfiForms uses JDBC driver to connect to your database. See more on Some guidelines on using database fields in ConfiForms and Working with database fields in ConfiForms

Result type:NO RESULT

Create Attachment

 

Creates a file, based on the content you specify in macro body and uploads it as attachment.

See more Creating a file with calendar invitation (ics) and sending it via email with ConfiForms

You need to specify field name to use to store the reference to a created attachment - ConfiForms field of type "File" is the preferred field type to store this

 

 

Macro body:

Template / content to use to generate the contents
You can reference any field value using [entry.fieldname] notation, more on this Accessing field values and properties

Result type:File contents as text into the result

Create BlogPost

 
 

Creates blog post based on the contents in macro body and the title given.

Blog post will be created in a Confluence space specified.

You can apply labels to a created blog post

Macro body:

Template / content to use to generate the contents
You can reference any field value using [entry.fieldname] notation, more on this Accessing field values and properties

Result type:

Created Blog Post - complete object, as https://docs.atlassian.com/confluence/5.8.9/com/atlassian/confluence/pages/BlogPost.html

Example:

${iftttResult_MYRESULT.id}
${iftttResult_MYRESULT.displayTitle}
other properties from BlogPost object

(if result was named "MYRESULT")

 

Create (Update) ConfiForms Entry

 

 

Creates (or updates) ConfiForms Entry in the specified form

It is important to note that this action never fires any other "Create ConfiForms Entry", "Delete ConfiForms Entry" or "Copy ConfiForms Data" for the entry created

Additionally, you can stop the propagation of the "create/update" events completely.

 

To update the current ConfiForms record leave the "Reference to form and it's location" empty and in parameters to set specify:

entryId=[entry.id]

To target the current record

Result type:

Created entry object, same as in Copy ConfiForms Data

 

${iftttResult_MYRESULT.somefield}

Where "somefield" is the name of the field in ConfiForms form

  

Create JIRA Issue

 

Creates JIRA issue based on the JSON mapping given

See Creating JIRA issue with ConfiForms

You can add users as watchers to created JIRA issue. Must be a valid user (list of users) given

Macro body:

JSON mapping wrapped in "No Format" macro to have a raw text

JSON mapping should be of structure specified in JIRA REST API - https://developer.atlassian.com/jiradev/jira-apis/jira-rest-apis/jira-rest-api-tutorials/jira-rest-api-example-create-issue

Result type:

Created issue KEY as text

${iftttResult_MYRESULT}

(if result was named "MYRESULT")

 

 

 

 

More tutorials on ConfiForms IFTTT macro

  • No labels