Applies to QAComplete 14.1 SaaS, last modified on February 28, 2022

Creates a new test run in QAComplete.

Use the operation to add a new manual test run to the Run History in your QAComplete project, or to start an automated test run on a specific test host.

When you create a new automated test run using this operation, the operation creates a record about the run in the Run History and leaves the test in the Awaiting Run status. Information about the test will be provided to the test host, so that it can start the run in accordance with the provided data. The automated test run begins automatically – no additional actions are required from your side.


Basic authentication using a user’s login and password. See Authentication for details.

Security Rights

The authenticating user must belong to a security group that has the Add privilege for Test Library.

Request Format

To create a test, send a POST request to the following URL:

URL parameters

ProjectId  :  integer, required

The ID of the project, to which you want to add a test run.

Body parameters

In the request body, pass the RequestTestPost object that describes the test to create.

  "TestId": "int",
  "TestSetId": "int",
  "TestConfigId": "int",
  "ReleaseId": "int",
  "RunByHostId": "int",
  "IsSequential": "boolean"
For this operation, either the TestId parameter or the TestSetId one is required. These parameters are marked with the asterisk (*).

TestId  :  integer, required

The ID of the test to create a run for.

TestSetId  :  integer, required

The ID of the test set to create a run for.

TestConfigId  :  integer

The ID of the configuration to run the test on.

ReleaseId  :  integer

The ID of the release which should be tested during the run.

RunByHostId  :  integer

The ID of the host which should run the test (for automated tests).

IsSequential  :  boolean

Defines whether the test should belong to a sequence.

ForceNewRunCreation  :  boolean

Сreates a new test run even if a test is running.

A sample request:

Connection: keep-alive
Content-Type: application/json
Accept: application/json
Authorization: Basic am9obkBleGFtcGxlLmNvbTpwQHNzd29yZA==
Content-Length: 77

  "TestId": 3218450,
  "RunByHostId": 112,

A sample request made by using cURL:

curl -u -d @testrun.txt -H "Content-Type: application/json" -H "Accept: application/json"

Response Format

If successful, the operation responds with HTTP status code 200. The response is a JSON object with information on the test run.

A sample response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 592

  "id": 831233,
  "release_id": 0,
  "project_id": 98429,
  "run_by_user_id": 130457,
  "run_by_user_name": "Smith, John ",
  "is_sequential": false,
  "status_code": "Awaiting Run",
  "execution_type": "Automated",
  "date_started": "2016-09-23T06:42:04.6530000",
  "date_finished": "2016-09-23T06:42:16.7700000",
  "nbr_tests": 1,
  "nbr_passed": 0,
  "nbr_failed": 0,
  "nbr_blocked": 0,
  "nbr_awaiting_run": 1,
  "run_time": 0,
  "run_time_formated": "00:00:00",
  "schedule_id": "0",
  "test_host": "TESTHOST"

Error responses

If the operation fails, it returns the appropriate status code and (optionally) the error description in the response body.

If the project with the specified ProjectId does not exist or the authenticating user does not have rights to access the project, the operation returns the Access is denied error.

See Also

Test Runs Resources

Highlight search results