Eggplant Public API
Version 1.0
Path Table
Method | Path | Description |
---|---|---|
POST | /auth | Obtain an access token from a client ID and secret |
GET | /test_results | List test results |
GET | /test_results/{test_result_id} | Get the result of a single test |
GET | /test_results/{test_result_id}/logs | Get the logs for a single test |
GET | /test_results/{test_result_id}/screenshots | List the available screenshots for a test |
GET | /screenshots/{screenshot_id} | Download a screenshot for a test result |
Reference Table
Name | Type | Description |
---|---|---|
AuthRequestBody | Schema | |
AuthResponseBody | Schema | |
HTTPValidationError | Schema | |
Problem | Schema | |
RunType | Schema | The possible run types for a particular test result. |
Screenshot | Schema | Info of an available screenshot for a particular test result. |
ScreenshotsPaginatedList | Schema | A paginated list of a single test result's screenshots available. |
Severity | Schema | The severity levels of a single test result log entry. |
SortBy | Schema | The possible sorting options available for sorting a list of test results. |
SortDirection | Schema | The possible direction applied during sorting. |
Status | Schema | The possible statuses for a particular test result. |
TestResult | Schema | The test result containing all the information for a single exploratory, replay or test case execution. |
TestResultLogEntriesPaginatedList | Schema | A paginated list of a single test result's log entries. |
TestResultLogEntry | Schema | A single log entry from a particular test result. |
TestResultsPaginatedList | Schema | A paginated list of the test results. |
ValidationError | Schema |
Path Details
[POST] /auth
Summary:
Obtain an access token from a client ID and secret
RequestBody
application/json
{
client_id: string
client_secret: string
}
Responses
200 OK
application/json
{
access_token: string
expires_in: integer
}
401 Unauthorized
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
422 Validation Error
application/json
{
detail: {
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}[]
}
[GET] /test_results
Summary:
List test results
Description:
Gets a paginated list of test results matching the filters applied.
Parameters (Query)
//
// The number of test results at the beginning which matches the filters applied but will be excluded from the returned list.
//
offset: integer
// The maximum number of test results that will be returned.<br>*Note*: The limit's maximum value can be changed by setting the LIMIT_MAX_VALUE in your system environment variables. Allowable range for LIMIT_MAX_VALUE is 1000-2147483647 inclusive.
limit: integer //default: 1000
//
// The key used to determine the order of the returned test result items.
//
sort_by: SortBy
//
// The order direction applied to the test result items during sorting.
//
sort_direction: SortDirection
//
// Filter the test results by a particular test result status.
//
status: Status
//
// Filter the test results to obtain those which started after the given time.<br>
// *Default value* : null
//
start_time: string
//
// Filter the test results to obtain those which ended before the given time.<br>
// *Default value* : null
//
end_time: string
//
// Filter the test results to obtain the test results which uses the model matching the given model_id.<br>
// *Default value* : null
//
model_id: string
//
// Filter the test results to obtain the scripted test results which uses the suite matching the given suite_id.<br>
// *Default value* : null
//
suite_id: string
//
// Obtain all the test results for the given test_case_id.<br>
// *Default value* : null
//
test_case_id: string
//
// Obtain all the test results which uses this execution_environment_id for execution.<br>
// *Default value* : null
//
execution_environment_id: integer
//
// Obtain all the test results which uses the sut matching this sut_id for execution.<br>
// *Default value* : null
//
sut_id: string
//
// Obtain all the test results which are part of a test config run matching the given task_instance_id.<br>
// *Default value* : null
//
test_config_result_id: string
//
// Obtain all the test results of the given test_config_id.<br>
// *Default value* : null
//
test_config_id: string
Headers
// The access_token that is returned from the POST /auth endpoint.
authorization: string
Responses
200 OK
application/json
// A paginated list of the test results.
{
// The total number of items that matches the request before any limit or offset are applied.
total_count: integer
// The date and time when this request was made.
date_as_of: string
// The test result containing all the information for a single exploratory, replay or test case execution.
items: {
// The test result id.
id: integer
// The possible statuses for a particular test result.
status: enum[RUNNING, PASSED, FAILED, ERROR, CANCELLED]
// The possible run types for a particular test result.
run_type: enum[SCRIPTED_TEST_CASE, MODEL_TEST_CASE, EXPLORATORY, REPLAY]
// Whether this test result was part of a test config configured rerun attempt.
is_rerun: boolean
// The time the test run started.
start_time: string
// The time the test run completed. If it is still running, this will be null.
end_time: Partial(string) & Partial(null)
// The name of the model used for the test execution. If this was a scripted test case result, this will be null.
model_name: Partial(string) & Partial(null)
// The id of the model used for the test execution. If this was a scripted test case result, this will be null.
model_id: Partial(string) & Partial(null)
// The name of the suite used for the test execution.
suite_name: Partial(string) & Partial(null)
// The id of the suite used for the test execution.
suite_id: Partial(string) & Partial(null)
// The name of the test case that is being executed. For an exploratory or replay test result, this will be null.
test_case_name: Partial(string) & Partial(null)
// The id of the test case that was executed. For an exploratory or replay test result, this will be null.
test_case_id: Partial(string) & Partial(null)
// The name of the design or run agent used for the test execution
execution_environment_name: Partial(string) & Partial(null)
// The id of the design or run agent used for the test execution.
execution_environment_id: Partial(integer) & Partial(null)
// The name of the SUT used for the test execution.
sut_name: Partial(string) & Partial(null)
// The id of the SUT used for the test execution.
sut_id: Partial(string) & Partial(null)
// The id of the test config result that this test result is part of. For a live run, this will be null.
test_config_result_id: Partial(string) & Partial(null)
// The test config step of which this test result represents. This is zero-indexed and for a live run result, this will be null.
test_config_step: Partial(integer) & Partial(null)
}[]
}
400 Bad request
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
401 Unauthorized
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
422 Validation Error
application/json
{
detail: {
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}[]
}
[GET] /test_results/{test_result_id}
Summary:
Get the result of a single test
Description:
Gets the test result of the given test_result_id.
Headers
// The access_token that is returned from the POST /auth endpoint.
authorization: string
Responses
200 Test result retrieved successfully
application/json
// The test result containing all the information for a single exploratory, replay or test case execution.
{
// The test result id.
id: integer
// The possible statuses for a particular test result.
status: enum[RUNNING, PASSED, FAILED, ERROR, CANCELLED]
// The possible run types for a particular test result.
run_type: enum[SCRIPTED_TEST_CASE, MODEL_TEST_CASE, EXPLORATORY, REPLAY]
// Whether this test result was part of a test config configured rerun attempt.
is_rerun: boolean
// The time the test run started.
start_time: string
// The time the test run completed. If it is still running, this will be null.
end_time: Partial(string) & Partial(null)
// The name of the model used for the test execution. If this was a scripted test case result, this will be null.
model_name: Partial(string) & Partial(null)
// The id of the model used for the test execution. If this was a scripted test case result, this will be null.
model_id: Partial(string) & Partial(null)
// The name of the suite used for the test execution.
suite_name: Partial(string) & Partial(null)
// The id of the suite used for the test execution.
suite_id: Partial(string) & Partial(null)
// The name of the test case that is being executed. For an exploratory or replay test result, this will be null.
test_case_name: Partial(string) & Partial(null)
// The id of the test case that was executed. For an exploratory or replay test result, this will be null.
test_case_id: Partial(string) & Partial(null)
// The name of the design or run agent used for the test execution
execution_environment_name: Partial(string) & Partial(null)
// The id of the design or run agent used for the test execution.
execution_environment_id: Partial(integer) & Partial(null)
// The name of the SUT used for the test execution.
sut_name: Partial(string) & Partial(null)
// The id of the SUT used for the test execution.
sut_id: Partial(string) & Partial(null)
// The id of the test config result that this test result is part of. For a live run, this will be null.
test_config_result_id: Partial(string) & Partial(null)
// The test config step of which this test result represents. This is zero-indexed and for a live run result, this will be null.
test_config_step: Partial(integer) & Partial(null)
}
400 Bad request
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
401 Unauthorized
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
403 Access denied
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
404 Test result not found
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
422 Validation Error
application/json
{
detail: {
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}[]
}
[GET] /test_results/{test_result_id}/logs
Summary:
Get the logs for a single test
Description:
Gets a paginated list of a single test result's logs.
Parameters (Query)
// The number of test result log entries at the beginning that will be excluded from the returned list.
offset: integer
// The maximum number of test result log entries that will be returned.<br>*Note*: The limit's maximum value can be changed by setting the LIMIT_MAX_VALUE in your system environment variables. Allowable range for LIMIT_MAX_VALUE is 1000-2147483647 inclusive.
limit: integer //default: 1000
Headers
// The access_token that is returned from the POST /auth endpoint.
authorization: string
Responses
200 Test result logs retrieved successfully.
application/json
// A paginated list of a single test result's log entries.
{
// The total number of items that matches the request before any limit or offset are applied.
total_count: integer
// The date and time when this request was made.
date_as_of: string
// A single log entry from a particular test result.
items: {
// The id of the test result of which this log entry is part of.
test_result_id: integer
// The timestamp when this log entry was created.
timestamp: string
// The message conveyed in this test result log entry.
message: string
// The severity levels of a single test result log entry.
severity: enum[CRITICAL, ERROR, WARNING, INFO, DEBUG]
}[]
}
400 Bad request
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
401 Unauthorized
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
403 Access denied
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
404 Test result not found
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
422 Validation Error
application/json
{
detail: {
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}[]
}
[GET] /test_results/{test_result_id}/screenshots
Summary:
List the available screenshots for a test
Description:
Gets a paginated list of screenshots available for the test specified by the given test_result_id.
Parameters (Query)
//
// The number of screenshots available at the beginning that will be excluded from the returned list.
//
offset: integer
//
// The maximum number of screenshots available that will be returned.<br>
// *Default value* : null
//
limit: integer //default: 1000
Headers
// The access_token that is returned from the POST /auth endpoint.
authorization: string
Responses
200 Screenshots available retrieved successfully.
application/json
// A paginated list of a single test result's screenshots available.
{
// The total number of items that matches the request before any limit or offset are applied.
total_count: integer
// The date and time when this request was made.
date_as_of: string
// Info of an available screenshot for a particular test result.
items: {
// The artifact id of this screenshot.
id: string
// The timestamp when this screenshot was created.
timestamp: string
// The image format of this screenshot.
content_type: string
}[]
}
400 Bad request
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
401 Unauthorized
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
403 Access denied
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
404 Test result not found
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
422 Validation Error
application/json
{
detail: {
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}[]
}
[GET] /screenshots/{screenshot_id}
Summary:
Download a screenshot for a test result
Description:
Downloads the screenshot for the given screenshot_id.
Headers
// The access_token that is returned from the POST /auth endpoint.
authorization: string
Responses
200 The screenshot of interest, in bytes.
image/png image/tiff image/jpeg
400 Bad request
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
401 Unauthorized
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
404 Test result screenshot not found.
application/json
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
422 Validation Error
application/json
{
detail: {
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}[]
}
References
AuthRequestBody
{
client_id: string
client_secret: string
}
AuthResponseBody
{
access_token: string
expires_in: integer
}
HTTPValidationError
{
detail: {
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}[]
}
Problem
{
status: integer //default: 400
title: Partial(string) & Partial(null)
detail: Partial(string) & Partial(null)
type: Partial(string) & Partial(null)
}
RunType
{
"type": "string",
"enum": [
"SCRIPTED_TEST_CASE",
"MODEL_TEST_CASE",
"EXPLORATORY",
"REPLAY"
],
"title": "RunType",
"description": "The possible run types for a particular test result."
}
Screenshot
// Info of an available screenshot for a particular test result.
{
// The artifact id of this screenshot.
id: string
// The timestamp when this screenshot was created.
timestamp: string
// The image format of this screenshot.
content_type: string
}
ScreenshotsPaginatedList
// A paginated list of a single test result's screenshots available.
{
// The total number of items that matches the request before any limit or offset are applied.
total_count: integer
// The date and time when this request was made.
date_as_of: string
// Info of an available screenshot for a particular test result.
items: {
// The artifact id of this screenshot.
id: string
// The timestamp when this screenshot was created.
timestamp: string
// The image format of this screenshot.
content_type: string
}[]
}
Severity
{
"type": "string",
"enum": [
"CRITICAL",
"ERROR",
"WARNING",
"INFO",
"DEBUG"
],
"title": "Severity",
"description": "The severity levels of a single test result log entry."
}
SortBy
{
"type": "string",
"enum": [
"id",
"model_or_suite_name",
"start_time",
"test_case_name",
"test_config_name",
"execution_environment_name",
"sut_name"
],
"title": "SortBy",
"description": "The possible sorting options available for sorting a list of test results."
}
SortDirection
{
"type": "string",
"enum": [
"asc",
"desc"
],
"title": "SortDirection",
"description": "The possible direction applied during sorting."
}
Status
{
"type": "string",
"enum": [
"RUNNING",
"PASSED",
"FAILED",
"ERROR",
"CANCELLED"
],
"title": "Status",
"description": "The possible statuses for a particular test result."
}
TestResult
// The test result containing all the information for a single exploratory, replay or test case execution.
{
// The test result id.
id: integer
// The possible statuses for a particular test result.
status: enum[RUNNING, PASSED, FAILED, ERROR, CANCELLED]
// The possible run types for a particular test result.
run_type: enum[SCRIPTED_TEST_CASE, MODEL_TEST_CASE, EXPLORATORY, REPLAY]
// Whether this test result was part of a test config configured rerun attempt.
is_rerun: boolean
// The time the test run started.
start_time: string
// The time the test run completed. If it is still running, this will be null.
end_time: Partial(string) & Partial(null)
// The name of the model used for the test execution. If this was a scripted test case result, this will be null.
model_name: Partial(string) & Partial(null)
// The id of the model used for the test execution. If this was a scripted test case result, this will be null.
model_id: Partial(string) & Partial(null)
// The name of the suite used for the test execution.
suite_name: Partial(string) & Partial(null)
// The id of the suite used for the test execution.
suite_id: Partial(string) & Partial(null)
// The name of the test case that is being executed. For an exploratory or replay test result, this will be null.
test_case_name: Partial(string) & Partial(null)
// The id of the test case that was executed. For an exploratory or replay test result, this will be null.
test_case_id: Partial(string) & Partial(null)
// The name of the design or run agent used for the test execution
execution_environment_name: Partial(string) & Partial(null)
// The id of the design or run agent used for the test execution.
execution_environment_id: Partial(integer) & Partial(null)
// The name of the SUT used for the test execution.
sut_name: Partial(string) & Partial(null)
// The id of the SUT used for the test execution.
sut_id: Partial(string) & Partial(null)
// The id of the test config result that this test result is part of. For a live run, this will be null.
test_config_result_id: Partial(string) & Partial(null)
// The test config step of which this test result represents. This is zero-indexed and for a live run result, this will be null.
test_config_step: Partial(integer) & Partial(null)
}
TestResultLogEntriesPaginatedList
// A paginated list of a single test result's log entries.
{
// The total number of items that matches the request before any limit or offset are applied.
total_count: integer
// The date and time when this request was made.
date_as_of: string
// A single log entry from a particular test result.
items: {
// The id of the test result of which this log entry is part of.
test_result_id: integer
// The timestamp when this log entry was created.
timestamp: string
// The message conveyed in this test result log entry.
message: string
// The severity levels of a single test result log entry.
severity: enum[CRITICAL, ERROR, WARNING, INFO, DEBUG]
}[]
}
TestResultLogEntry
// A single log entry from a particular test result.
{
// The id of the test result of which this log entry is part of.
test_result_id: integer
// The timestamp when this log entry was created.
timestamp: string
// The message conveyed in this test result log entry.
message: string
// The severity levels of a single test result log entry.
severity: enum[CRITICAL, ERROR, WARNING, INFO, DEBUG]
}
TestResultsPaginatedList
// A paginated list of the test results.
{
// The total number of items that matches the request before any limit or offset are applied.
total_count: integer
// The date and time when this request was made.
date_as_of: string
// The test result containing all the information for a single exploratory, replay or test case execution.
items: {
// The test result id.
id: integer
// The possible statuses for a particular test result.
status: enum[RUNNING, PASSED, FAILED, ERROR, CANCELLED]
// The possible run types for a particular test result.
run_type: enum[SCRIPTED_TEST_CASE, MODEL_TEST_CASE, EXPLORATORY, REPLAY]
// Whether this test result was part of a test config configured rerun attempt.
is_rerun: boolean
// The time the test run started.
start_time: string
// The time the test run completed. If it is still running, this will be null.
end_time: Partial(string) & Partial(null)
// The name of the model used for the test execution. If this was a scripted test case result, this will be null.
model_name: Partial(string) & Partial(null)
// The id of the model used for the test execution. If this was a scripted test case result, this will be null.
model_id: Partial(string) & Partial(null)
// The name of the suite used for the test execution.
suite_name: Partial(string) & Partial(null)
// The id of the suite used for the test execution.
suite_id: Partial(string) & Partial(null)
// The name of the test case that is being executed. For an exploratory or replay test result, this will be null.
test_case_name: Partial(string) & Partial(null)
// The id of the test case that was executed. For an exploratory or replay test result, this will be null.
test_case_id: Partial(string) & Partial(null)
// The name of the design or run agent used for the test execution
execution_environment_name: Partial(string) & Partial(null)
// The id of the design or run agent used for the test execution.
execution_environment_id: Partial(integer) & Partial(null)
// The name of the SUT used for the test execution.
sut_name: Partial(string) & Partial(null)
// The id of the SUT used for the test execution.
sut_id: Partial(string) & Partial(null)
// The id of the test config result that this test result is part of. For a live run, this will be null.
test_config_result_id: Partial(string) & Partial(null)
// The test config step of which this test result represents. This is zero-indexed and for a live run result, this will be null.
test_config_step: Partial(integer) & Partial(null)
}[]
}
ValidationError
{
loc: Partial(string) & Partial(integer)[]
msg: string
type: string
}