Create Data Definition

POST /ws/rest/service/v1/ds/data-def

Version: 20.11

Purpose

To create data definition

Request Format

All parameters should be URL encoded.

Both input & output in JSON format in the body

Create DD Basic type

Input JSON field description:

Required Fields:

  • name: specify the data definition name
  • type: Basic
  • data_type: Integer/String are possible values.
  • input_type: Text Box, Pull-down Menu, Radio Buttons, Multi-select Input, Multiple Text Lines, Checkbox are possible values based on the data type.
  • data_size: has to be provided for Text Box and Multiple Text Lines.

Non-required Fields:

  • default_value: Default value can be set.
  • data_set: Value and Labels for Pull-down Menu , Radio buttons, Multi-select Input
  • dataset_non_modifiable: Yes/No.

Valid Fields based on the data_definition:

data_type input_type datasize separator data_set
Integer Checkbox not applicable not applicable not applicable
Integer  Pull-down Menu not applicable not applicable pull down value and labels need to be set
Integer Radio Buttons not applicable not applicable value and labels need to be set
String Text Box required not applicable not applicable
String Multiple Text Lines required not applicable not applicable
String Pull-down Menu not applicable not applicable pull down value and labels need to be set
String Radio Buttons not applicable not applicable value and labels need to be set
String  Multi-select Input not applicable comma is the separator. value need to be set

Note:

  • Category will be defaulted to "Company" in case of basic type of data definition.
  • "System" category type of data definition cannot be created.
  • type is case insensitive.
  • dataset_non_modifiable is case insensitive.

Response Format

A JSON object is returned in the following format.

{

"data": [],

"message": [],

"status": <REST status code value>

}

A successful response displays a status code 200.

A failed response displays a message with a status code.

Basic type input JSON

{

"options":{

"type": "Basic"

},

"data": [{

"name": "sample basic 1",

"data_size": "128",

"data_type": "String",

"input_type": "Text Box"

},

{

"name": "sample basic 2",

"data_type": "Integer",

"input_type": "Pull-down Menu",

"dataset_non_modifiable": "Yes",

"data_set": [{

"value": 0,

"label": "first",

"row_num": 1,

"status": "Active",

"is_default": "No"

},

{

"value": 1,

"label": "Fixed Amount",

"row_num": 2,

"status": "Active",

"is_default": "Yes"

},

{

"value": 2,

"label": "last",

"row_num": 3,

"status": "Active",

"is_default": "No"

}

]

}

]

}

Basic type output JSON

{

"data": [

{

"data_size": "128",

"name": "sample basic 1",

"data_type": "String",

"input_type": "Text Box",

"default_value": "",

"used": "",

"category": "Company"

},

{

"data_size": "0",

"dataset_non_modifiable": "Yes",

"name": "sample basic 2",

"data_type": "Integer",

"input_type": "Pull-down Menu",

"data_set": [

{

"value": "0",

"row_num": 1,

"status": "Active",

"label": "first",

"is_default": "No"

},

{

"value": "1",

"row_num": 2,

"status": "Active",

"label": "Fixed Amount",

"is_default": "Yes"

},

{

"value": "2",

"row_num": 3,

"status": "Active",

"label": "last",

"is_default": "No"

}

],

"used": "",

"category": "Company"

}

],

"message": [

{

"message": "success",

"data_definition": "sample basic 1",

"status": 200

},

{

"message": "success",

"data_definition": "sample basic 2",

"status": 200

}

],

"status": 200

}

Create DD Cost Code type

Input JSON field description:

Required Fields:

name: specify the field definition name

type: Cost Codes

label: has to be specified.

input_type: Text Box, Pull-down Menu are possible values.

Non-required Fields:

default value: Default value can be set.

data_set: Value and Labels are applicable for Pull down menu.

dataset_non_modifiable: Yes/No.

Note:

  • Category will be defaulted to "CBS Code" in case of cost codes type of data definition.
  • type is case insensitive.
  • dataset_non_modifiable is case insensitive.

Cost Codes type input JSON

{

"options":{

"type": "Cost Codes"

},

"data": [{

"name": "sample costcode 1",

"input_type": "Text Box",

"label": "Test 1"

},

{

"name": "sample costcode 2",

"input_type": "Pull-down Menu",

"label": "Test 2",

"dataset_non_modifiable": "No",

"data_set": [{

"value": "Type 1",

"label": "first",

"row_num": 1,

"status": "Active",

"is_default": "Yes"

},

{

"value": "Type 2",

"label": "Fixed Amount",

"row_num": 2,

"status": "Active",

"is_default": "No"

},

{

"value": "Type 3",

"label": "last",

"row_num": 3,

"status": "Inactive",

"is_default": "No"

}

]

}

]

}

Response Format

A JSON object is returned in the following format.

{

"data": [],

"message": [],

"status": <REST status code value>

}

A successful response displays a status code 200.

A failed response displays a message with a status code.

Cost Codes type output JSON

{

"data": [

{

"data_size": "32",

"name": "sample costcode 1",

"data_type": "String",

"input_type": "Text Box",

"default_value": "",

"used": "",

"label": "Test 1",

"category": "CBS Code"

},

{

"data_size": "32",

"dataset_non_modifiable": "No",

"name": "sample costcode 2",

"data_type": "String",

"input_type": "Pull-down Menu",

"data_set": [

{

"value": "Type 1",

"row_num": 1,

"status": "Active",

"label": "first",

"is_default": "Yes"

},

{

"value": "Type 2",

"row_num": 2,

"status": "Active",

"label": "Fixed Amount",

"is_default": "No"

},

{

"value": "Type 3",

"row_num": 3,

"status": "Inactive",

"label": "last",

"is_default": "No"

}

],

"used": "",

"label": "Test 2",

"category": "CBS Code"

}

],

"message": [

{

"message": "success",

"data_definition": "sample costcode 1",

"status": 200

},

{

"message": "success",

"data_definition": "sample costcode 2",

"status": 200

}

],

"status": 200

}

Create DD Data Picker type

Input JSON field description:

Required Fields:

name: specify the field definition name

category: Business process, Shell Manager, Planning Items, Resource Manager (if you have access to it), User Attributes and Space Manager are the system defined categories. You can provide other category values based on the modules loaded in the environment, for example, Material Inventory Manager.

data_source: name of the data source for the given category

data_element: provide the data element for the selected data source.

type: Data Picker

Note:

Type is case insensitive.

Data Picker type input JSON

{

"options":{

"type": "Data Picker"

},

"data": [{

"name": "sample dp 1",

"category": "Business Process",

"data_source": "Vendors",

"data_element": "uuu_user_name"

},

{

"name": "sample dp 2",

"category": "Shell Manager",

"data_source": "Buildings",

"data_element": "uBuildingNumber"

}

]

}

Response Format

A JSON object is returned in the following format.

{

"data": [],

"message": [],

"status": <REST status code value>

}

A successful response displays a status code 200.

A failed response displays a message with a status code.

Data Picker type output JSON

{

"data": [

{

"data_element": "uBuildingNumber",

"display_element": "Building Code",

"name": "sample dp 2",

"used": "",

"category": "Shell Manager",

"data_source": "Buildings"

}

],

"message": [

{

"message": "invalid data element provided for Vendors",

"data_definition": "sample dp 1",

"status": 619

},

{

"message": "success",

"data_definition": "sample dp 2",

"status": 200

}

],

"status": 3000

}

Supported Validation Messages and Status Codes

The following status codes and messages can display in the response to a request.

Status Code Validation Message
200 Success.
619 Invalid field value.
620 Input is required.
1101 Empty or Invalid JSON data
3000 Partial create
3002 Invalid JSON input