Child pages
  • ConfiForms Server REST API version 1

Versions Compared

Key

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

This API is available from ConfiForms version 2.18

Image Modified


ConfiForms API prefix is "/rest/confiforms/1.0"

Each API call expects you to provide at least the information about the page where the form is located (pageId - as number, pointing at Confluence page by ID - https://confluence.atlassian.com/confkb/how-to-get-confluence-page-id-648380445.html) and the form name (the name of the form you have given in ConfiForms Form Definition macro for the form).

...

NameURLHttp MethodDescriptionExtra (query) parameters

Create ConfiForms Entry

/rest/confiforms/1.0/create/{pageId}/{formName}

POST

POST with  multipart/form-data

(from version 2.27)

Creates ConfiForms entry in the form

You will need to POST the following JSON structure to this REST API endpoint

Code Block
{
  "fields": {
    "mytextfield":"field value",
    "datefield1": "2020-04-25",
    "ready": true,
    "mydropdown": 2
  }
}

Where each property name in the "fields" JSON object matches the field name in your ConfiForms Form, 

Values are expected to be in the internal format

Values for Date/DateTime could be given in the same format as your Confluence uses or as timestamp

  • skipIFTTTExecute - true/false, to skip IFTTT executions (if there are any that should be executed onCreated event, you can switch them off)

---

You can also POST a request with multipart/form-data. This comes handy when you want to upload attachments together with record creation.

Please note that the parameter names must match the field names you have  defined in your ConfiForms form

Status
colourGreen
titlesince 3.5.0

  • _debug - could give you statistics on IFTTTs being executed and the invocation log 

Update ConfiForms Entry

/rest/confiforms/1.0/update/{pageId}/{formName}/{id}

POST

POST with  multipart/form-data

(from version 2.27)

Updates existing ConfiForms entry in the form (via {id} parameter)

Same as for create method, but with given UUID for the entry to perform an update

  • skipIFTTTExecute - true/false, to skip IFTTT executions (if there are any that should be executed onModified event, you can switch them off)
  • _skipIfParamIsEmpty - true/false (false by default). Setting this parameter with value "true" to your request helps to bypass setting all the fields - useful when you have field definitions with validations and you dont want to set / reset those with your REST API call (and want ConfiForms to lookup existing values)
  • Status
    colourGreen
    titlesince 3.5.0
    _debug
    - could give you statistics on IFTTTs being executed and the invocation log 

Validate ConfiForms Entry

/rest/confiforms/1.0/validate/{pageId}/{formName}

/rest/confiforms/1.0/validate/{pageId}/{formName}/{id}

POST

POST with  multipart/form-data

(from version 2.27)

Validates given data against the form's rules. Basically does the same as create/update, but does not do the actual "save"

Same JSON structure shall be given as with a "create" method

Get form definition

/rest/confiforms/1.0/definition/{pageId}/{formName}GETReturns form configuration (definition)

Status
colourGreen
titlesince 3.5.0

  • lazy - true/false, let's you request form definition with or without values for external fields (smart fields, db fields, web-services backed fields). Default is false, meaning that the options (values) are NOT loaded
  • _debug - true/false, allows you top get statistics on field initialization times to understand what are the slowest and problematic

Get ConfiForms Entry by ID

/rest/confiforms/1.0/get/{pageId}/{formName}/{id}GETReturns ConfiForms entry data in JSON format by given ID (UUID) in a given form
ConfiTemplates Smart Excerpt
nameparams
  • flatten - true/false - you can flatten multi-value fields (This will result in MULTIPLE rows returned!)
  • fields - used to decorate the returned values with Virtual functions. Use "," to separate field decoration instructions.
  • limitFields - comma separated list of field names to return in the response (helps to reduce the amount of data travelling between your service and ConfiForms). Please be aware that "metadata" fields are always returned - see 
  • append - you can set this as "true", in your query parameters which instructs the parameter "fields" to add the transformed (decorated) fields into the record. This allows you to have multiple representations of the field in the output


Search ConfiForms Entries by filter

/rest/confiforms/1.0/search/{pageId}/{formName}

/rest/confiforms/1.0/search/{pageId}/{formName}/{filter}

/rest/confiforms/1.0/search/{pageId}/{formName}?query={filter}

GET

Searches for ConfiForms entries in a form, based on the given filter/query (ConfiForms Filters). When filter is not specified all the entries are returned

Filtering expression can be specified as "query" parameter as well

ConfiTemplates Smart Template
sourcePage
excerptvertuna-smart-excerpt#b30ab3df-2818-4f71-85f7-a25c88aede32
content70582777


  • query - you can either use "{filter}" part of the url to specify the filtering expression or pass it via query request parameter (see an example on the top of the page)
  • limit - to limit the number of records returned (number) 
  • sortto sort the results set Sorting in ConfiForms
  • Status
    colourGreen
    titleversion 3.5.5
    ignoreCase - You can set the filtering to ignore case when matching (default) or not to ignore case when filtering entries, setting ignoreCase=false

Delete ConfiForms Entry by ID

/rest/confiforms/1.0/deleteById/{pageId}/{formName}/{id}DELETEDeletes ConfiForms entry by givenID (UUID)
  • skipIFTTTExecute - true/false, to skip IFTTT executions (if there are any that should be executed onDeleted event, you can switch them off)

Delete ConfiForms Entries by filter

/rest/confiforms/1.0/deleteByFilter/{pageId}/{formName}/{filter}

Status
colourGreen
titleversion 3.13.1

/rest/confiforms/1.0/deleteByFilter/{pageId}/{formName}?query={filter}

DELETEDeletes ConfiForms entry by given filter/query (ConfiForms Filters)
  • skipIFTTTExecute - true/false, to skip IFTTT executions (if there are any that should be executed onDeleted event, you can switch them off)

Update ConfiForms Field value by filter

/rest/confiforms/1.0/updateFieldValue/{pageId}/{formName}

/rest/confiforms/1.0/updateFieldValue/{pageId}/{formName}/{filter}

Status
colourGreen
titleversion 3.7.6

/rest/confiforms/1.0/updateFieldValue/{pageId}/{formName}?query={filter}

PUTUpdates specific field with a given value in the form, by filter (ConfiForms Filters). When filter is not specified the update is executed on all the entries


  • skipIFTTTExecute - true/false, to skip IFTTT executions (if there are any that should be executed onModified event, you can switch them off)
  • fv  - abbreviation for "field-value" and is expected to have the following structure:  fv=myfield:somevalue. Which will be translated to - update ConfiForms records, and the "myfield" in particular with "somevalue"
  • Status
    colourGreen
    titleversion 3.7.6
    query
    - you can either use "{filter}" part of the url to specify the filtering expression or pass it via query request parameter (see an example on the top of the page)


Export RAW dataset

Status
colourGreen
titleSince 2.18.7

/rest/confiforms/1.0/raw/{pageId}/{formName}GETExports ConfiForms RAW dataset (which can be used with Migration and Recovery API)

ConfiForms installation info

Status
colourGreen
titleSince 3.11.1

/rest/confiforms/1.0/infoGET

Provides information on current ConfiForms installation


(user must be authenticated to access this resource)

Example

Code Block
{
  "licenseType": "Commercial license.  Max users: 5000....",
  "pluginVersion": "3.11.1",
  "pluginInstalled": "Sat Jun 08 11:19:58 EEST 2024",
  "memoryUsage": "1.4 GB",
  "confluenceLicenseType": "(users count: 5000), license type <DEVELOPER>",
  "pluginName": "ConfiForms, forms and workflows app for Confluence by Vertuna LLC",
  "memoryAvailable": "4 GB",
  "javaVersion": "17.0.8.1",
  "pluginDescription": "ConfiForms app helps you to create custom data entry forms for your business needs, in Confluence. The possibilities for creating powerfully effective data entry forms are endless! Voting, enrollment, inventory, surveys, bulletin boards, employee checklists, and other type of forms that are easy to create and manage",
  "debugLogEnabled": false
}


...