Create a Custom Form Type

post/add/CFOT

Creates a new standalone or embedded Custom Form Type.

Securitybasic or X-PriceFx-jwt
Request
Request Body schema: application/json
operation
required
string non-empty
required
object
uniqueName
required
string non-empty

A name of the Custom Form Type.

label
string non-empty

A label of the Custom Form Type.

headerFormulaName
required
string non-empty

A Custom Form header logic that defines the inputs, calculation results or a custom header. For embedded Custom Forms, it also defines communication with the parent object.

workflowFormulaName
string
embedded
required
boolean

Sets whether the Custom Form will be standalone or embedded in a module.

supportedParentTypeCodes
string

List of entities, which are allowed to embed this custom form type (Quote, Deal Plan, standalone Custom Form). This is meaningful only when embedded is true.

module
string non-empty

Applies to standalone Custom Forms. Select a module in whose main menu you want to have this Custom Form available.

object

Applies only to standalone Custom Forms, add a JSON definition describing the content of the Custom Form – its steps and tabs.

object
name
string non-empty
translationKey
string non-empty
icon
string non-empty
object
Responses
200

OK

Response Schema: application/json
object
node
string non-empty
object (CustomFormType)

The Type code is CFOT.

typedId
string
object (configuration)

Schema for definition of steps and tabs. This object can contains tabs array with tabs specifications or steps array (categories) with tabs inside.

name
string

Text to describe the configuration.

layout
string

DynamicTabs can have several types of layout. Default is stepper for config with steps and tabs for only tabs.

Possible values: "auto" "stepper" "tabs" "menu" "wizard"
Array of objects (step)
Array of objects (tab)
lastUpdateDate
string <date-time>
module
string or null <= 255 characters

A name of application module, in which the user interface will show the menu item, which opens a page with a list of custom forms of this type. This is meaningful only when embedded is false.

Possible values: "PRICESETTING" "QUOTING" "ANALYTICS" "ADMIN" "WORKFLOW" "REBATES" "AGREEMENTSPROMOTIONS" "OPTIMIZATION" "CHANNELMANAGEMENT" "MASTERDATA" "CONFIGURATION" "DASHBOARDS" "DEALPLANNING" "PROCESSES" "SALESCOMPENSATION" "CUSTOM_FORM"
label
string <= 255 characters

The name of the type, as displayed to the end users.

version
integer
uniqueName
string <= 255 characters

A unique name of the type.

supportedParentTypeCodes
Array of strings or null or null

List of entities, which are allowed to embed this custom form type (Quote, Deal Plan, standalone Custom Form). This is meaningful only when embedded is true.

createdBy
integer
headerFormulaName
string <= 255 characters

A name of the logic which implements the functionality of the Custom Form.

userGroupEdit
string or null <= 255 characters
userGroupViewDetails
string or null <= 255 characters
embedded
boolean

If this custom form type can be embedded - i.e. used inside of another document, like quote.

workflowFormulaName
string or null <= 255 characters

A name of the workflow logic, which will be used to build approval workflow for this Custom Form.

createDate
string <date-time>
lastUpdateBy
integer
status
number
Request samples
application/json
{
  • "operation": "add",
  • "data": {
    • "uniqueName": "CFOT01",
    • "label": "CustomFormType01",
    • "headerFormulaName": "cflogic",
    • "embedded": false,
    • "configuration": {
      • "default": {
        • "name": "default",
        • "translationKey": "common_default",
        • "icon": "compress-arrows",
        • "tabs": {
          }
        }
      },
    • "module": "PRICESETTING"
    }
}
Response samples
application/json
{
  • "response": {
    • "node": "string",
    • "data": {
      • "typedId": "string",
      • "configuration": {
        • "name": "string",
        • "layout": "tabs",
        • "steps": [
          ],
        • "tabs": [
          ]
        },
      • "lastUpdateDate": "2019-08-24T14:15:22Z",
      • "module": "PRICESETTING",
      • "label": "string",
      • "version": 0,
      • "uniqueName": "string",
      • "supportedParentTypeCodes": [
        • "string"
        ],
      • "createdBy": 0,
      • "headerFormulaName": "string",
      • "userGroupEdit": "string",
      • "userGroupViewDetails": "string",
      • "embedded": true,
      • "workflowFormulaName": "string",
      • "createDate": "2019-08-24T14:15:22Z",
      • "lastUpdateBy": 0
      },
    • "status": 0
    }
}