API for Data Parameterization

This document describes the REST Open API endpoints for managing parameters and Data Grids at the project level, and for linking parameter combinations to parametrized test cases within a test suite execution.

For the end to end flow that links a Data Grid combination during a Test Suite execution, see API for Test Suites.

Get parameter details

Returns the parameter IDs and names used by a parametrized test case in a test suite. Use this endpoint as the first step in the Data Grid linking flow to retrieve the paramID values required to fetch compatible Data Grids.

POST /rest/testcases/getParamDetails

Request

Content-Type: application/json

Name

Located in

Required

Description

Default

Schema

tctsID

body

yes

Unique identifier of the test case in the test suite. Obtain this value from the tctsID field in the POST /rest/testcases/list/forTS response.

-

integer

Response

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Get compatible Data Grids

Returns the Data Grids available for a test case and indicates which of them contain all the parameters that the test case uses.

POST /rest/datagrid/getSelectedParameterGrids

Request

Content-Type: application/json

Name

Located in

Required

Description

Default

Schema

paramIDs

body

yes

Holds the parameter IDs returned by the Get Parameter Details endpoint on the API for Test Cases page.

-

Array[integer]

testCaseID

body

yes

Test case ID (tcID). Do not use tctsID.

-

integer

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Successful Response Entity

Member

Description

dataGridID

Identifies the Data Grid.

name

Displays the Data Grid name.

isArchived

Returns true when the Data Grid is archived.

hasParams

Returns true when the Data Grid contains every parameter that the test case uses. You can link only those Data Grids for which hasParams is true.

Get Parameter Values for a Test Case

Returns the parameter values saved for a test case in a Test Suite. Pass the tctsDataGridId returned by the Test case list for Test Suite endpoint. The endpoint applies only when dataGridStatus is Has Values or Empty.

GET rest/datagrid/tctsDataGridValue/{tctsDataGridMappingID}

Request

Content-type: application/json

Name

Located in

Required

Description

Default

Schema

tctsDataGridId

body

yes

ID of the Data Grid to link, returned by getSelectedParmaterGrids

-

integer

Response

Content-type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Save or Update Parameter Values for Test Case in Test Suite

POST rest/datagrid/saveTcTsDgValues

Creates or updates the parameter values assigned to a parametrized test case in a Test Suite.

Request

Content-type: application/json

Name

Located in

Required

Description

Default

Schema

tctsIDs

body

yes

Identifies the test case within the Test Suite.

-

integer

preserveExistingRows

body

no

Controls whether QMetry retains saved rows that the request does not include.

False

boolean

orderId

body

yes

Identifies the row of parameter values.

integer

value

body

yes

Holds the parameter values as a JSON string in which each key is a paramID.

-

string

How QMetry processes rows

Scenario

preserveExistingRows set to false (default)

preserveExistingRows set to true

The request includes an orderId that is not saved.

QMetry inserts a row.

QMetry inserts a row.

The request includes an orderId that is already saved.

QMetry updates the row.

QMetry updates the row.

A saved orderId is missing from the request.

QMetry deletes the row.

QMetry retains the row.

Note

Passing an empty values array removes the mapping.

Delete Data Grid Mapping for Test Case in Test Suite

DELETE /rest/datagrid/tctsMapping/{tctsID}

Removes the Data Grid mapping for a test case in a Test Suite and deletes all parameter values assigned to it. The endpoint applies to both linked Data Grid combinations and manually entered values.

Request

Content-Type: application/json

Name

Located in

Required

Description

Default

Schema

tctsID

path

Yes

Unique identifier of the test case in the test suite.

-

integer

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

ResponseEntity

400

Invalid json object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when server connection times out

-

Note

If no mapping exists, the endpoint returns false.

Get List Parameters in the Project

POST /rest/parameter/list

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

ParameterRequest

body

yes

Get the list of parameters

-

ParameterRequest

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Add New Parameters

POST /rest/parameter

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

ParameterRequest

body

yes

ParameterRequest for Add parameters

-

ParameterRequest

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Delete Parameter

PUT /rest/parameter/delete/{paramID}

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

Parameter id

body

yes

parameter Ids as query path

-

integer

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Archive Parameters

POST /rest/parameter/archive

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

Ids

body

yes

parameter Ids list

-

Array[integer]

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Unarchive Parameters

POST /rest/parameter/unarchive

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

Ids

body

yes

parameter Ids list

-

Array[integer]

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Get List of Parameter Values

POST /rest/parameter/values/{paramID}

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

Parameter id

body

yes

parameter Ids as query path

-

integer

Base Request

body

yes

Filter,sort base request

-

BaseRequest

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Update Parameter/Values

PUT /rest/parameter/update/{paramID}

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

Parameter id

body

yes

parameter Ids as query path

-

integer

UpdateParameter

body

yes

UpdateParameter for update parameter

-

UpdateParameter

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Delete Parameter values

PUT /rest/parameter/deleteValue/{parameterValueID}

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

parameterValueID

body

yes

parameterValueID as query path

-

integer

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Get List of Projects having permissions to modify Test Data Parameterization

GET /rest/parameter/project/modify

Request

Content-Type: application/json

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Get List of Projects having Permissions to View Test Data Parameterization

GET /rest/parameter/project/view

Request

Content-Type: application/json

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Get DataGrid

GET /rest/datagrid/getById

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

dataGridID

query

yes

DataGridID to get DataGrid

-

integer

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Get List of DataGrid

POST /rest/datagrid/getList

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

filters

body

yes

Filter the DataGrid List

-

BaseRequest

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Get Data Grid Ids for Bulk Operations

POST /rest/datagrid/getIDList

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

filters

body

yes

for filtering List of DataGrid Ids

-

BaseRequest

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Create DataGrid

POST /rest/datagrid/create

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

DataGridModel

body

yes

DataGridModel to Create DataGrid

-

DataGridModel

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Autofill DataGrid

POST /rest/datagrid/autofill

Request

Content-Type: application/json

Parameters

Name

Located in

Required

Description

Default

Schema

Parameter Ids

body

yes

Parameter Ids to Autofill

-

Array[integer]

rows

query

no

Number of Rows to Autofill

-

integer

isRandom

query

no

Flag to fill Randomly

-

boolean

isSequential

query

no

Flag to fill sequentially

-

boolean

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Save DataGrid

PUT /rest/datagrid/save

Request

Parameters

Name

Located in

Required

Description

Default

Schema

DataGridUpdateRequest

body

yes

List of DataGridUpdateRequest to Save

-

Array[DatagridUpgradeRequest]

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Update DataGrid

PUT /rest/datagrid/update

Request

Parameters

Name

Located in

Required

Description

Default

Schema

DataGridUpdateRequest

body

yes

Request to update the DataGrid

-

DatagridUpgradeRequest

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Archive DataGrid

PUT /rest/datagrid/archive

Request

Parameters

Name

Located in

Required

Description

Default

Schema

dataGridIDs

body

yes

DataGrid Ids for Archive

-

Array[integer]

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Delete DataGrid

DELETE /rest/datagrid/delete

Request

Parameters

Name

Located in

Required

Description

Default

Schema

dataGridID

query

yes

DataGridID for deletion

-

integer

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Unarchive DataGrid

PUT /rest/datagrid/unarchive

Request

Parameters

Name

Located in

Required

Description

Default

Schema

dataGridIds

body

yes

DataGrid Ids for UnArchive

-

Array[integer]

Response

Content-Type: application/json

Status Code

Reason

Response Model

200

Successful

Response

400

Invalid JSON object or mandatory fields missing

-

401

Unauthorised or session expired

-

500

Returned when theserver connection times out

-

Definitions

Response

name

type

required

description

example

success

boolean

optional

-

data

object

optional

-

errorMessage

string

optional

-

total

integer

optional

-

DataGridModel

name

type

required

description

example

projectList

array[Project]

optional

-

id

integer

optional

-

archived

boolean

optional

-

dataGridID

integer

optional

-

name

string

optional

-

description

string

optional

-

createdBy

string

optional

-

createdDate

string

optional

-

updatedBy

string

optional

-

updatedDate

string

optional

-

isArchived

boolean

optional

-

archivedDate

string

optional

-

parameters

array[Parameter]

optional

-

hasParams

boolean

optional

-

projectIDs

array[integer]

optional

-

projects

string

optional

-

paramIDs

array[integer]

optional

-

BaseRequest

name

type

required

description

example

filter

array[Filter]

optional

-

start

integer

optional

-

limit

integer

optional

-

sort

array[Sort]

optional

-

showArchive

boolean

optional

-

showOnlyArchive

boolean

optional

-

entityIdsForBulk

boolean

optional

-

DatagridUpdateRequest

name

type

required

description

example

id

integer

optional

-

ids

array[integer]

optional

-

dataGridID

integer

optional

-

ID

integer

optional

-

IDs

array[integer]

optional

-

parentID

integer

optional

-

orderID

integer

optional

-

field

string

optional

-

operation

string

optional

-

value

string

optional

-

ParameterRequest

name

type

required

description

example

filter

array[Filter]

optional

-

start

integer

optional

-

limit

integer

optional

-

sort

array[sort]

optional

-

showArchive

boolean

optional

-

showOnlyArchive

boolean

optional

-

entityIdsForBulk

boolean

optional

-

paramName

string

optional

-

paramDes

string

optional

-

projectID

array[integer]

optional

-

values

array[string]

optional

-

projectIDs

array[integer]

optional

-

UpdateParameter

name

type

required

description

example

name

string

optional

-

description

string

optional

-

addProject

array[integer]

optional

-

removeProject

array[integer]

optional

-

addValue

array[string]

optional

-

editValue

array[Value]

optional

-

deleteValue

array[Value]

optional

-

Value

name

type

required

description

example

parameterValueID

integer

optional

-

value

string

optional

-

Sort

name

type

required

description

example

property

string

optional

-

direction

string

optional

-

Filter

name

type

required

description

example

value

object

optional

-

comparison

string

optional

-

type

string

optional

-

field

string

optional

-

Project

name

type

required

description

example

id

integer

optional

-

name

string

optional

-

Parameter

name

type

required

description

example

paramID

integer

optional

-

name

string

optional

-

description

string

optional

-

isArchived

boolean

optional

-

createdDate

string

optional

-

updatedDate

string

optional

-

associatedProjects

array[AssociatedProjects]

optional

-

projects

string

optional

-

OrignalParamID

integer

optional

-

parameterValues

array[ParameterValue]

optional

-

orderID

integer

optional

-

testCaseRefered

integer

optional

-

AssociatedProjects

name

type

required

description

example

projectID

integer

optional

-

projectName

string

optional

-

ParameterValue

name

type

required

description

example

parameterValueID

integer

optional

-

value

string

optional

-

orderID

integer

optional

-

Publication date: