メインコンテンツまでスキップ
バージョン: DAI 7.4

Eggplant Public API

Version 0.1.0

Path Table

MethodPathDescription
POST/authObtain an access token from a client ID and secret
GET/test_resultsList test results
GET/test_results/{test_result_id}Get the result of a single test
GET/test_results/{test_result_id}/logsGet the logs for a single test
GET/test_results/{test_result_id}/screenshotsList the available screenshots for a test
GET/screenshots/{screenshot_id}Download a screenshot for a test result

Reference Table

NameTypeDescription
AuthRequestBodySchema
AuthResponseBodySchema
HTTPValidationErrorSchema
ProblemSchema
RunTypeSchemaThe possible run types for a particular test result.
ScreenshotSchemaInfo of an available screenshot for a particular test result.
ScreenshotsPaginatedListSchemaA paginated list of a single test result's screenshots available.
SeveritySchemaThe severity levels of a single test result log entry.
SortBySchemaThe possible sorting options available for sorting a list of test results.
SortDirectionSchemaThe possible direction applied during sorting.
StatusSchemaThe possible statuses for a particular test result.
TestResultSchemaThe test result containing all the information for a single exploratory, replay or test case execution.
TestResultLogEntriesPaginatedListSchemaA paginated list of a single test result's log entries.
TestResultLogEntrySchemaA single log entry from a particular test result.
TestResultsPaginatedListSchemaA paginated list of the test results.
ValidationErrorSchema

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
}