AI Test Authoring API Endpoints
The AI Test Authoring API allows you to manage AI-authored test cases, test suites, and test schedules. Use these methods to create, retrieve, update, delete, and run your AI-authored tests programmatically.
Refer to Getting Started for Authentication and Server information.
What You'll Need
- A Sauce Labs enterprise account (Log in)
- Your Sauce Labs username and access key
Test Cases
List Test Cases
GET /v1/ai-authoring/testcases
Parameters
search | | QUERY | OPTIONAL | STRING | Case-insensitive search term matched against the test case name. |
startDate | | QUERY | OPTIONAL | DATE | ISO 8601 start date filter — only return test cases created on or after this date. |
endDate | | QUERY | OPTIONAL | DATE | ISO 8601 end date filter — only return test cases created on or before this date. |
userId | | QUERY | OPTIONAL | STRING | Filter by creator user UUID. |
teamId | | QUERY | OPTIONAL | STRING | Filter by team UUID. |
testSuiteId | | QUERY | OPTIONAL | ARRAY of STRINGS | Filter by test suite UUID(s). Pass |
skip | | QUERY | OPTIONAL | INTEGER | Number of results to skip (for offset-based pagination). Default value is |
limit | | QUERY | OPTIONAL | INTEGER | Maximum number of results to return. Set to |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.us-west-1.saucelabs.com/v1/ai-authoring/testcases" | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testcases" | json_pp
Responses
200 | Success. Returns paginated list of test cases | |
400 | Invalid query string parameters | |
401 | Missing or invalid authentication header | |
{
"data": {
"total": 8,
"items": [
{
"id": "69c164bcd27d5bfc3e3ef8a7",
"orgId": "<orgId>",
"teamId": "<teamId>",
"creatorUserId": "<creatorID>",
"lastModifierUserId": "<userId>",
"testSuiteId": "<suiteId>",
"name": "Saucedemo - Backpack and bike light flow",
"creationDate": "2026-03-23T16:05:16.333Z",
"lastUpdateDate": "2026-03-23T16:06:42.915Z",
"runSettings": {
"testUrl": "https://www.saucedemo.com/",
"primaryTarget": {
"capabilities": {
"browserName": "chrome",
"browserVersion": "latest",
"platformName": "Windows 11",
"sauce:options": {},
"goog:chromeOptions": {
"prefs": {
"profile.password_manager_leak_detection": false
}
}
},
"isRdc": false
},
...
Get a Test Case
GET /v1/ai-authoring/testcases/{id}
Parameters
id | | PATH | REQUIRED | STRING | Test Case Id (24-character hex string) |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.us-west-1.saucelabs.com/v1/ai-authoring/testcases/<id>" | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testcases/<id>" | json_pp
Responses
200 | Success. Test case details | |
400 | Invalid path parameters | |
401 | Missing or invalid authentication header | |
404 | Test case not found | |
{
"data": {
"id": "<id>",
"orgId": "<orgId>",
"teamId": "<teamId>",
"creatorUserId": "<userId>",
"lastModifierUserId": "<userId>",
"testSuiteId": "<suiteId>",
"name": "Saucedemo - Backpack and bike light flow",
"creationDate": "2026-03-23T16:05:16.333Z",
"lastUpdateDate": "2026-03-23T16:06:42.915Z",
"runSettings": { ... },
"revisions": [ ... ],
"creatorUserName": "sauceBot",
"lastModifierUserName": "sauceBot"
}
}
Delete a Test Case
DELETE /v1/ai-authoring/testcases/{id}
Parameters
id | | PATH | REQUIRED | STRING | Test case Id (24-character hex string). |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request DELETE "https://api.us-west-1.saucelabs.com/v1/ai-authoring/testcases/<id>"
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request DELETE "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testcases/<id>"
Responses
204 | Test case deleted | |
400 | Invalid path parameters | |
401 | Missing or invalid authentication header | |
404 | Test case not found | |
Run a Test Case
POST /v1/ai-authoring/testcases/{id}/run
revisionId to the path.Parameters
id | | PATH | REQUIRED | STRING | Test case Id (24-character hex string). |
buildName | | BODY | OPTIONAL | STRING | The name of the build to associate with the test case run. Defaults to test case name if not set. |
targets | | BODY | OPTIONAL | ARRAY of OBJECTS | A list of target device configurations. Each object can contain the following attributes:
|
scTunnelName | | BODY | OPTIONAL | STRING | The name of the Sauce Connect tunnel to use for the run. |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.us-west-1.saucelabs.com/v1/ai-authoring/testcases/<id>/run' | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testcases/<id>/run' | json_pp
Responses
200 | Success. Test case run initiated | |
400 |
| |
401 | Missing or invalid authentication header | |
404 |
| |
{
"data" : {
"build" : "Saucedemo - Backpack checkout - 2",
"creationDate" : "2026-03-24T20:31:57.869Z",
"id" : "<id>",
"jobs" : [ ... ],
"orgId" : "<orgId>",
"teamId" : "<teamId>",
"testCaseId" : "<testCaseId>",
"testUrl" : "https://www.saucedemo.com/",
"userId" : "<userId>"
}
}
Rename a Test Case
POST /v1/ai-authoring/testcases/{id}/rename
Parameters
id | | PATH | REQUIRED | STRING | Test case Id (24 character hex string) |
name | | BODY | REQUIRED | STRING | The updated name of the test case |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.us-west-1.saucelabs.com/v1/ai-authoring/testcases/<id>/rename' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Updated Test Name"
}' | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testcases/<id>/rename' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Updated Test Name"
}' | json_pp
Responses
200 | Successfully updated test case name | |
400 |
| |
401 | Missing or invalid authentication header | |
404 | Test case not found | |
{
"data" : {
"creationDate" : "2026-03-17T15:35:55.794Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "<userId>",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdateDate" : "2026-03-24T20:57:31.086Z",
"name" : "Updated test name",
"orgId" : "7fb25570b4064716b9b6daae1a846790",
"revisions" : [ ... ],
"runSettings" : { ... },
"teamId" : "<teamId>",
"testSuiteId" : "<testSuiteId>"
}
}
Test Suites
List Test Suites
GET /v1/ai-authoring/testsuites
Parameters
ids | | QUERY | OPTIONAL | ARRAY<STRING> | Filter by specific test suite UUID(s). Accepts a single value or an array |
search | | QUERY | OPTIONAL | STRING | Case-insensitive search term matched against the suite name |
startDate | | QUERY | OPTIONAL | STRING | ISO 8601 start date filter — only return suites created on or after this date |
endDate | | QUERY | OPTIONAL | STRING | ISO 8601 end date filter — only return suites created on or before this date |
userId | | QUERY | OPTIONAL | STRING | Filter by creator user UUID |
teamId | | QUERY | OPTIONAL | STRING | Filter by team UUID |
skip | | QUERY | OPTIONAL | INTEGER | Number of results to skip (for offset-based pagination). Defaults to |
limit | | QUERY | OPTIONAL | INTEGER | Maximum number of results to return |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.us-west-1.saucelabs.com/v1/ai-authoring/testsuites" | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testsuites" | json_pp
Responses
200 | Success. Returns paginated list of test suites | |
400 | Invalid query string parameters | |
401 | Missing or invalid authentication header | |
{
"data": {
"items": [
{
"id": "<id>",
"orgId": "<orgId>",
"teamId": "<teamId>",
"name": "Smoke tests",
"tags": [
"string"
],
"creationDate": "2024-01-15T10:00:00Z",
"lastUpdate": "2024-01-15T10:00:00Z",
"creatorUserId": "<userId>",
"creatorUserName": "<userId>",
"lastModifierUserId": "<userId>",
"lastModifierUserName": "sauceBot",
"testCaseCount": 10
},
{...}
],
"total": 30
}
}
Create a Test Suite
POST /v1/ai-authoring/testsuites
Parameters
Request body parameters.- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.us-west-1.saucelabs.com/v1/ai-authoring/testsuites' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Sauce Smoke tests",
"testCases": [
"<testCaseId>"
]
}' | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testsuites' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Sauce Smoke tests",
"testCases": [
"<testCaseId>"
]
}' | json_pp
Responses
201 | Created test suite | |
400 | Invalid request body | |
401 | Missing or invalid authentication header | |
404 | One or more test cases not found | |
{
"data" : {
"creationDate" : "2026-03-24T22:28:20.224Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "sauceBot",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdate" : "2026-03-24T22:28:20.224Z",
"name" : "Sauce Smoke Tests",
"orgId" : "<orgId>",
"runCount" : 0,
"tags" : [],
"teamId" : "<teamId>",
"testCaseCount" : 0
}
}
Get a Test Suite
GET /v1/ai-authoring/testsuites/{id}
Parameters
id | | PATH | REQUIRED | STRING | UID of the test suite |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.us-west-1.saucelabs.com/v1/ai-authoring/testsuites/<id>" | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testsuites/<id>" | json_pp
Responses
200 | Success in getting test suite details | |
400 | Invalid path parameters | |
401 | Missing or invalid authentication header | |
404 | Test suite not found | |
{
"data" : {
"creationDate" : "2026-03-24T22:28:20.224Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "sauceBot",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdate" : "2026-03-24T22:28:20.224Z",
"name" : "Sauce Smoke Tests",
"orgId" : "<orgId>",
"runCount" : 0,
"tags" : [],
"teamId" : "<teamId>",
"testCaseCount" : 0
}
}
Update a Test Suite
POST /v1/ai-authoring/testsuites/{id}
Parameters
id | | PATH | REQUIRED | STRING | UUID of the test suite to update |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.us-west-1.saucelabs.com/v1/ai-authoring/testsuites/<id>' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Updated smoke tests",
"testCaseIds": [
"<testCaseId>"
]
}' | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testsuites/<id>' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Updated smoke tests",
"testCaseIds": [
"<testCaseId>"
]
}' | json_pp
Responses
200 | Success updating test suite | |
400 |
| |
401 | Missing or invalid authentication header | |
404 | Test suite not found | |
{
"data" : {
"creationDate" : "2026-03-24T22:40:55.113Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "sauceBot",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdate" : "2026-03-24T22:42:48.163Z",
"name" : "Updated smoke tests",
"orgId" : "<orgId>",
"runCount" : 15,
"tags" : [],
"teamId" : "<teamId>",
"testCaseCount" : 3
}
}
Delete a Test Suite
DELETE /v1/ai-authoring/testsuites/{id}
Parameters
id | | PATH | REQUIRED | STRING | The unique identifier of the test suite to delete |
deleteTestCases | | BODY | OPTIONAL | BOOLEAN | If set to true, test cases assigned to this test suite will be deleted |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request DELETE "https://api.us-west-1.saucelabs.com/v1/ai-authoring/testsuites/<id>"
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request DELETE "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testsuites/<id>"
Responses
204 | Test suite deleted (No Content) | |
400 |
| |
401 | Missing or invalid authentication header | |
404 | Test suite not found | |
Run All Test Cases in a Suite
POST /v1/ai-authoring/testsuites/{id}/run
Parameters
id | | PATH | REQUIRED | STRING | The UUID of the test suite to run |
buildName | | BODY | OPTIONAL | STRING | Name of the automated test build that will run as a result of suite execution. Defaults to the test suite name. |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST "https://api.us-west-1.saucelabs.com/v1/ai-authoring/testsuites/<id>/run" | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/testsuites/<id>/run" | json_pp
Responses
200 | Success. Runs initiated for all test cases in the suite | |
400 |
| |
401 | Missing or invalid authentication header | |
404 | Test suite not found | |
{
"data" : {
"buildName" : "E-Commerce app suite - 1",
"id" : "<id>",
"orgId" : "<orgId>",
"runCount" : 12,
"teamId" : "<teamId>",
"userId" : "<userId>"
}
}
Test Schedules
List Test Schedules
GET /v1/ai-authoring/test-schedules
Parameters
ids | | QUERY | OPTIONAL | ARRAY<STRING> | Filter by specific schedule UUID(s). Accepts a single value or an array. |
search | | QUERY | OPTIONAL | STRING | Case-insensitive search term matched against the schedule name |
startDate | | QUERY | OPTIONAL | STRING | ISO 8601 start date filter — only return schedules created on or after this date |
endDate | | QUERY | OPTIONAL | STRING | ISO 8601 end date filter — only return schedules created on or before this date |
userId | | QUERY | OPTIONAL | STRING | Filter by creator user UUID |
teamId | | QUERY | OPTIONAL | STRING | Filter by team UUID |
skip | | QUERY | OPTIONAL | INTEGER | Number of results to skip (for offset-based pagination). Defaults to |
limit | | QUERY | OPTIONAL | INTEGER | Maximum number of results to return |
testSuiteIds | | QUERY | OPTIONAL | ARRAY<STRING> | Filter schedules that contain any of these test suite UUID(s). Accepts a single value or an array. |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.us-west-1.saucelabs.com/v1/ai-authoring/test-schedules" | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/test-schedules" | json_pp
Responses
200 | Paginated list of test schedules | |
400 | Invalid query string parameters | |
401 | Missing or invalid authentication header | |
{
"data" : {
"items" : [
{
"creationDate" : "2026-03-04T15:52:46.615Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "sauceBot",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdateDate" : "2026-03-17T14:06:14.927Z",
"name" : "E-Commerce App - Nightly",
"orgId" : "<orgId>",
"settings" : {
"cron" : "0 15 12 * * *",
"maxRuns" : 5,
"runningUserId" : "<userId>",
"startDate" : "2026-03-05T11:15:00.000Z",
"timezone" : "Europe/Berlin"
},
"state" : {
"lastRunDate" : "2026-03-10T11:15:00.652Z",
"runCount" : 7,
"stateName" : "DISABLED"
},
"teamId" : "<teamId>",
"testSuiteIds" : [
"<testSuiteId>"
]
},
{ ... }
],
"total" : 2
}
}
Create a Test Schedule
POST /v1/ai-authoring/test-schedules
Parameters
name | | BODY | OPTIONAL | STRING | An updated name for the schedule |
settings | | BODY | OPTIONAL | OBJECT | The schedule configuration for the test suite. The available attributes are:
|
testSuiteIds | | BODY | OPTIONAL | ARRAY of STRINGS | The suite IDs to run as part of the schedule |
stateName | | BODY | OPTIONAL | STRING | The state of the schedule |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.us-west-1.saucelabs.com/v1/ai-authoring/test-schedules' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "string",
"settings": {
"cron": "0 */1 * * *",
"timezone": "America/New_York",
"runningUserId": "string",
"startDate": "string",
"endDate": "string",
"maxRuns": 0,
"scTunnelName": "string",
"buildName": "string"
},
"testSuiteIds": [
"string"
],
"stateName": "ENABLED"
}' | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.eu-central-1.saucelabs.com/v1/ai-authoring/test-schedules' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "string",
"settings": {
"cron": "0 */1 * * *",
"timezone": "America/New_York",
"runningUserId": "string",
"startDate": "string",
"endDate": "string",
"maxRuns": 0,
"scTunnelName": "string",
"buildName": "string"
},
"testSuiteIds": [
"string"
],
"stateName": "ENABLED"
}' | json_pp
Responses
201 | Created test schedule | |
400 |
| |
401 | Missing or invalid authentication header | |
{
"data" : {
"creationDate" : "2026-03-24T23:28:37.264Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "sauceBot",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdateDate" : "2026-03-24T23:28:37.264Z",
"name" : "Regression scheduled run",
"orgId" : "<orgId>",
"settings" : {
"buildName" : "Build",
"cron" : "0 1 * * *",
"endDate" : "2026-06-25T12:00:00.000Z",
"maxRuns" : 5,
"runningUserId" : "<userId>",
"scTunnelName" : "none",
"startDate" : "2026-06-24T12:00:00.000Z",
"timezone" : "America/New_York"
},
"state" : {
"nextRunDate" : "2026-06-25T05:00:00.000Z",
"remainingRuns" : 5,
"runCount" : 0,
"stateName" : "ENABLED"
},
"teamId" : "<teamId>",
"testSuiteIds" : [
"<testSuiteId>"
]
}
}
Get a Test Schedule
GET /v1/ai-authoring/test-schedules/{id}
Parameters
id | | PATH | REQUIRED | STRING | The UUID of the test schedule |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.us-west-1.saucelabs.com/v1/ai-authoring/test-schedules/<id>" | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/test-schedules/<id>" | json_pp
Responses
200 | Success fetching test schedule details | |
400 | Invalid path parameters | |
401 | Missing or invalid authentication header | |
404 | Test schedule not found | |
{
"data" : {
"creationDate" : "2026-03-24T23:28:37.264Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "sauceBot",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdateDate" : "2026-03-24T23:28:37.264Z",
"name" : "Regression scheduled run",
"orgId" : "<orgId>",
"settings" : {
"buildName" : "Build",
"cron" : "0 1 * * *",
"endDate" : "2026-06-25T12:00:00.000Z",
"maxRuns" : 5,
"runningUserId" : "<userId>",
"scTunnelName" : "none",
"startDate" : "2026-06-24T12:00:00.000Z",
"timezone" : "America/New_York"
},
"state" : {
"nextRunDate" : "2026-06-25T05:00:00.000Z",
"remainingRuns" : 5,
"runCount" : 0,
"stateName" : "ENABLED"
},
"teamId" : "<teamId>",
"testSuiteIds" : [
"<testSuiteId>"
]
}
}
Update a Test Schedule
POST /v1/ai-authoring/test-schedules/{id}
Parameters
id | | PATH | REQUIRED | STRING | The UUID of the test schedule to update |
name | | BODY | OPTIONAL | STRING | An updated name for the schedule |
settings | | BODY | OPTIONAL | OBJECT | The updated schedule configuration. The available attributes are:
|
testSuiteIds | | BODY | OPTIONAL | ARRAY of STRINGS | The suite IDs to run as part of the schedule |
stateName | | BODY | OPTIONAL | STRING | The state of the schedule |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.us-west-1.saucelabs.com/v1/ai-authoring/test-schedules/<id>' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Updated nightly regression",
"settings": {
"cron": "0 2 * * *"
},
"stateName": "ENABLED"
}' | json_pp
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request POST 'https://api.eu-central-1.saucelabs.com/v1/ai-authoring/test-schedules/<id>' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Updated nightly regression",
"settings": {
"cron": "0 2 * * *"
},
"stateName": "ENABLED"
}' | json_pp
Responses
200 | Success updating test schedule | |
400 |
| |
401 | Missing or invalid authentication header | |
404 | Test schedule not found | |
{
"data" : {
"creationDate" : "2026-03-24T23:28:37.264Z",
"creatorUserId" : "<userId>",
"creatorUserName" : "sauceBot",
"id" : "<id>",
"lastModifierUserId" : "<userId>",
"lastModifierUserName" : "sauceBot",
"lastUpdateDate" : "2026-03-24T23:28:37.264Z",
"name" : "Updated nightly regression",
"orgId" : "<orgId>",
"settings" : {
"buildName" : "Build",
"cron" : "0 1 * * *",
"endDate" : "2026-06-25T12:00:00.000Z",
"maxRuns" : 5,
"runningUserId" : "<userId>",
"scTunnelName" : "none",
"startDate" : "2026-06-24T12:00:00.000Z",
"timezone" : "America/New_York"
},
"state" : {
"nextRunDate" : "2026-06-25T05:00:00.000Z",
"remainingRuns" : 5,
"runCount" : 0,
"stateName" : "ENABLED"
},
"teamId" : "<teamId>",
"testSuiteIds" : [
"<testSuiteId>"
]
}
}
Delete a Test Schedule
DELETE /v1/ai-authoring/test-schedules/{id}
Parameters
id | | PATH | REQUIRED | STRING | The UUID of the test schedule to delete. |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request DELETE "https://api.us-west-1.saucelabs.com/v1/ai-authoring/test-schedules/<id>"
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request DELETE "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/test-schedules/<id>"
Responses
204 | Test schedule deleted | |
401 | Missing or invalid authentication header | |
404 | Test schedule not found | |
Storage
Get Artifact File
GET /v1/ai-authoring/storage/{id}
Parameters
id | | PATH | REQUIRED | STRING | Artifact UUID |
- United States
- Europe
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.us-west-1.saucelabs.com/v1/ai-authoring/storage/<id>" \
--output <FILE>
curl -u "$SAUCE_USERNAME:$SAUCE_ACCESS_KEY" --location \
--request GET "https://api.eu-central-1.saucelabs.com/v1/ai-authoring/storage/<id>" \
--output <FILE>
Responses
200 | Artifact file stream | |
400 | Invalid path parameters | |
401 | Missing or invalid authentication header | |
404 | Artifact not found | |
200 response returns the artifact as a binary file stream (application/octet-stream). Error responses return JSON.