Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

saucelabs

Package Overview
Dependencies
Maintainers
4
Versions
122
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

saucelabs - npm Package Compare versions

Comparing version 2.2.0 to 2.2.1

3056

build/index.d.ts

@@ -1,190 +0,217 @@

export interface SauceLabsOptions {
user: string;
key: string;
region?: "us" | "eu" | "us-west-1" | "eu-central-1";
headless?: boolean;
user: string;
key: string;
region?: "us" | "eu" | "us-west-1" | "eu-central-1";
headless?: boolean;
}
export type PerformanceMetricsListView = {
'items' ? : Array < PerformanceMetricsListViewItems >
;
export type PerformanceMetricsListView = {
items?: Array<PerformanceMetricsListViewItems>;
};
export type PerformanceMetricsListViewItems = {
'id' ? : number;
'job_id' ? : string;
'job_owner' ? : string;
'page_url' ? : string;
'order_index' ? : number;
'job_creation_time' ? : string;
'metric_data' ? : PerformanceMetricsDetails;
'regime_acknowledge' ? : Array < string >
;
id?: number;
job_id?: string;
job_owner?: string;
page_url?: string;
order_index?: number;
job_creation_time?: string;
metric_data?: PerformanceMetricsDetails;
regime_acknowledge?: Array<string>;
};
export type PerformanceMetricsDetails = {
'load' ? : number;
'font_size' ? : number;
'firstPaint' ? : number;
'font_count' ? : number;
'image_size' ? : number;
'other_size' ? : number;
'pageWeight' ? : number;
'speedIndex' ? : number;
'image_count' ? : number;
'other_count' ? : number;
'script_size' ? : number;
'requestsSize' ? : number;
'script_count' ? : number;
'document_size' ? : number;
'requestsCount' ? : number;
'document_count' ? : number;
'timeToFirstByte' ? : number;
'domContentLoaded' ? : number;
'pageWeightEncoded' ? : number;
'firstContentfulPaint' ? : number;
'firstMeaningfulPaint' ? : number;
'perceptualSpeedIndex' ? : number;
'timeToFirstInteractive' ? : number;
load?: number;
font_size?: number;
firstPaint?: number;
font_count?: number;
image_size?: number;
other_size?: number;
pageWeight?: number;
speedIndex?: number;
image_count?: number;
other_count?: number;
script_size?: number;
requestsSize?: number;
script_count?: number;
document_size?: number;
requestsCount?: number;
document_count?: number;
timeToFirstByte?: number;
domContentLoaded?: number;
pageWeightEncoded?: number;
firstContentfulPaint?: number;
firstMeaningfulPaint?: number;
perceptualSpeedIndex?: number;
timeToFirstInteractive?: number;
};
export type BaselineHistoryView = {
'load' ? : Array < BaselineDetails >
;
'requestsCount' ? : Array < BaselineDetails >
;
'pageWeight' ? : Array < BaselineDetails >
;
'speedIndex' ? : Array < BaselineDetails >
;
load?: Array<BaselineDetails>;
requestsCount?: Array<BaselineDetails>;
pageWeight?: Array<BaselineDetails>;
speedIndex?: Array<BaselineDetails>;
};
export type BaselineCommandView = {
'load' ? : BaselineDetails;
'requestsCount' ? : BaselineDetails;
'pageWeight' ? : BaselineDetails;
'speedIndex' ? : BaselineDetails;
load?: BaselineDetails;
requestsCount?: BaselineDetails;
pageWeight?: BaselineDetails;
speedIndex?: BaselineDetails;
};
export type BaselineDetails = {
'b' ? : number;
'u' ? : number;
'l' ? : number;
'r' ? : number;
'job_id' ? : string;
'datetime' ? : string;
'new_regime' ? : 0 | 1;
'accepted' ? : 0 | 1;
b?: number;
u?: number;
l?: number;
r?: number;
job_id?: string;
datetime?: string;
new_regime?: 0 | 1;
accepted?: 0 | 1;
};
export type RegimeAcknowledge = {
'page_url': string;
'order_index': number;
'metric_names': Array < "load" | "font_size" | "firstPaint" | "font_count" | "image_size" | "other_size" | "pageWeight" | "speedIndex" | "image_count" | "other_count" | "script_size" | "requestsSize" | "script_count" | "document_size" | "requestsCount" | "document_count" | "timeToFirstByte" | "domContentLoaded" | "pageWeightEncoded" | "firstContentfulPaint" | "firstMeaningfulPaint" | "perceptualSpeedIndex" | "timeToFirstInteractive" >
;
page_url: string;
order_index: number;
metric_names: Array<
| "load"
| "font_size"
| "firstPaint"
| "font_count"
| "image_size"
| "other_size"
| "pageWeight"
| "speedIndex"
| "image_count"
| "other_count"
| "script_size"
| "requestsSize"
| "script_count"
| "document_size"
| "requestsCount"
| "document_count"
| "timeToFirstByte"
| "domContentLoaded"
| "pageWeightEncoded"
| "firstContentfulPaint"
| "firstMeaningfulPaint"
| "perceptualSpeedIndex"
| "timeToFirstInteractive"
>;
};
export type RegimeAcknowledgeList = Array < RegimeAcknowledge >
;
export type RegimeAcknowledgeList = Array<RegimeAcknowledge>;
export type PerformanceMetricsRegressionListView = {
'items' ? : Array < {
'page_url' ? : string;
'order_index' ? : number;
'is_regression_detected' ? : boolean;
'metrics' ? : PerformanceMetricsDetails;
} >
;
items?: Array<{
page_url?: string;
order_index?: number;
is_regression_detected?: boolean;
metrics?: PerformanceMetricsDetails;
}>;
};
export type PerformanceMetricsDataSetListView = {
'load' ? : {
'https://www.saucedemo.com/' ? : {
'0' ? : Array < BaselineItemInput >
;
};
load?: {
"https://www.saucedemo.com/"?: {
"0"?: Array<BaselineItemInput>;
};
};
};
export type BaselineItemInput = {
'job_id' ? : string;
'datetime' ? : string;
'value' ? : number;
job_id?: string;
datetime?: string;
value?: number;
};
export type ErrorResponse = {
'details' ? : string;
details?: string;
};
export type PaginationSettings = {
'offset' ? : number;
'limit' ? : number;
'searchTerm' ? : string;
'sortDirection' ? : "ASCENDING" | "DESCENDING";
export type PaginationSettings = {
offset?: number;
limit?: number;
searchTerm?: string;
sortDirection?: "ASCENDING" | "DESCENDING";
};
export type ApiSuiteV2 = {
'id' ? : Id;
'title' ? : string;
'appVersionId' ? : Id;
'frameworkVersion' ? : string;
'deviceIds' ? : {
[key: string]: Array < Id >
};
id?: Id;
title?: string;
appVersionId?: Id;
frameworkVersion?: string;
deviceIds?: {
[key: string]: Array<Id>;
};
};
export type Entity = {
'id' ? : string;
'url' ? : string;
id?: string;
url?: string;
};
export type ApiSuiteV1 = {
'id' ? : Id;
'title' ? : string;
'appVersionId' ? : Id;
'frameworkVersion' ? : string;
'deviceIds' ? : Array < Id >
;
id?: Id;
title?: string;
appVersionId?: Id;
frameworkVersion?: string;
deviceIds?: Array<Id>;
};
export type AppiumTestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
'className' ? : string;
'sessionId' ? : string;
'vitalsLogRecordingEnabled' ? : boolean;
'optionalSharedId' ? : SharedLiveViewId;
'hasWdaLogs' ? : boolean;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
className?: string;
sessionId?: string;
vitalsLogRecordingEnabled?: boolean;
optionalSharedId?: SharedLiveViewId;
hasWdaLogs?: boolean;
};
export type ReportKey = {
'testId' ? : Id;
'deviceId' ? : Id;
testId?: Id;
deviceId?: Id;
};

@@ -195,192 +222,232 @@

export type ApiTestReport = {
'id' ? : Id;
'test' ? : ApiTest;
id?: Id;
test?: ApiTest;
};
export type PaginationResultSessionReport = {
'entities' ? : Array < SessionReport >
;
'metaData' ? : PaginationSettings;
entities?: Array<SessionReport>;
metaData?: PaginationSettings;
};
export type RobotiumTestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
'screenshots' ? : Array < number >
;
'stackTrace' ? : string;
'className' ? : string;
'errorMessage' ? : string;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
screenshots?: Array<number>;
stackTrace?: string;
className?: string;
errorMessage?: string;
};
export type TestReportWithArtifacts = {
'report' ? : TestReport;
'deviceContextId' ? : string;
'testResult' ? : string;
'screenshots' ? : Array < Entity >
;
'video' ? : Entity;
'deviceLog' ? : string;
'frameworkLog' ? : string;
'vitalsLog' ? : string;
report?: TestReport;
deviceContextId?: string;
testResult?: string;
screenshots?: Array<Entity>;
video?: Entity;
deviceLog?: string;
frameworkLog?: string;
vitalsLog?: string;
};
export type WebdriverBatchReport = {
'projectPath' ? : Path;
'id' ? : Id;
'batchId' ? : Id;
'name' ? : string;
'tests' ? : Array < TestView >
;
'devices' ? : Array < DeviceView >
;
'reports' ? : Array < ReportEntry >
;
'notificationEnabled' ? : boolean;
'notificationEmails' ? : Array < string >
;
'checkupType' ? : "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
'duration' ? : number;
'startTime' ? : number;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'running' ? : boolean;
'secretLinkCode' ? : string;
'automationFramework' ? : "APPIUM" | "TENKOD" | "PIRANHA";
'appUnderTestId' ? : Id;
projectPath?: Path;
id?: Id;
batchId?: Id;
name?: string;
tests?: Array<TestView>;
devices?: Array<DeviceView>;
reports?: Array<ReportEntry>;
notificationEnabled?: boolean;
notificationEmails?: Array<string>;
checkupType?: "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
duration?: number;
startTime?: number;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
running?: boolean;
secretLinkCode?: string;
automationFramework?: "APPIUM" | "TENKOD" | "PIRANHA";
appUnderTestId?: Id;
};
export type TestSuite = {
'name' ? : string;
'testsuiteStartedAt' ? : Instant;
'testsuiteFinishedAt' ? : Instant;
'runCount' ? : number;
'withFailures' ? : number;
'unexpected' ? : number;
'testDuration' ? : Duration;
'totalDuration' ? : Duration;
name?: string;
testsuiteStartedAt?: Instant;
testsuiteFinishedAt?: Instant;
runCount?: number;
withFailures?: number;
unexpected?: number;
testDuration?: Duration;
totalDuration?: Duration;
};
export type TestReportView = {
'reportId' ? : Id;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
reportId?: Id;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
};
export type DeviceStatusInfo = {
'poolId' ? : Id;
'deviceId' ? : Id;
'status' ? : "AVAILABLE" | "IN_USE" | "REBOOTING" | "BROKEN" | "OFFLINE" | "UNPLUGGED";
poolId?: Id;
deviceId?: Id;
status?:
| "AVAILABLE"
| "IN_USE"
| "REBOOTING"
| "BROKEN"
| "OFFLINE"
| "UNPLUGGED";
};
export type ApiSuiteReport = {
'id' ? : Id;
'testReports' ? : Array < ApiTestReport >
;
id?: Id;
testReports?: Array<ApiTestReport>;
};
export type ApiTestV2 = {
'className' ? : string;
'methodName' ? : string;
'deviceId' ? : Id;
'dataCenterId' ? : Id;
className?: string;
methodName?: string;
deviceId?: Id;
dataCenterId?: Id;
};
export type Instant = {
'epochSecond' ? : number;
'nano' ? : number;
epochSecond?: number;
nano?: number;
};
export type ApiTestV1 = {
'className' ? : string;
'methodName' ? : string;
'deviceId' ? : Id;
className?: string;
methodName?: string;
deviceId?: Id;
};
export type Duration = {
'seconds' ? : number;
'zero' ? : boolean;
'negative' ? : boolean;
'units' ? : Array < TemporalUnit >
;
'nano' ? : number;
seconds?: number;
zero?: boolean;
negative?: boolean;
units?: Array<TemporalUnit>;
nano?: number;
};
export type TestCaseGroup = {
'className' ? : string;
'testCases' ? : Array < TestCase >
;
className?: string;
testCases?: Array<TestCase>;
};
export type PiranhaTestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
'className' ? : string;
'optionalSharedId' ? : SharedLiveViewId;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
className?: string;
optionalSharedId?: SharedLiveViewId;
};
export type ApiTest = {
'deviceId' ? : Id;
'dataCenterId' ? : Id;
'className' ? : string;
'methodName' ? : string;
deviceId?: Id;
dataCenterId?: Id;
className?: string;
methodName?: string;
};
export type ApiTestStatus = {
'passed' ? : boolean;
passed?: boolean;
};
export type ReportEntry = {
'key' ? : ReportKey;
'view' ? : TestReportView;
key?: ReportKey;
view?: TestReportView;
};

@@ -391,170 +458,224 @@

export type TestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
};
export type ApiSuite = {
'frameworkVersion' ? : string;
'deviceIds' ? : {
[key: string]: Array < Id >
};
'appVersionId' ? : Id;
'title' ? : string;
'id' ? : Id;
frameworkVersion?: string;
deviceIds?: {
[key: string]: Array<Id>;
};
appVersionId?: Id;
title?: string;
id?: Id;
};
export type Step = {
'id' ? : Id;
'line' ? : number;
'method' ? : string;
'hasReplayImage' ? : boolean;
'recordedImage' ? : Id;
'resolvedPosition' ? : Point;
'orientation' ? : "PORTRAIT" | "LANDSCAPE";
'warning' ? : ScriptWarning;
'error' ? : ScriptError;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
id?: Id;
line?: number;
method?: string;
hasReplayImage?: boolean;
recordedImage?: Id;
resolvedPosition?: Point;
orientation?: "PORTRAIT" | "LANDSCAPE";
warning?: ScriptWarning;
error?: ScriptError;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
};
export type QualityReportTestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
'steps' ? : Array < Step >
;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
steps?: Array<Step>;
};
export type JunitXMLReport = {
'name' ? : string;
name?: string;
};
export type ScriptError = {
'message' ? : string;
'reason' ? : string;
'info' ? : {
[key: string]: string
};
message?: string;
reason?: string;
info?: {
[key: string]: string;
};
};
export type SessionReport = {
'id' ? : Id;
'projectId' ? : Id;
'userId' ? : Id;
'deviceDescriptorId' ? : Id;
'usage' ? : "MANUAL" | "BATCH" | "APPIUM" | "PIRANHA" | "XCUITEST" | "ANDROID_INSTRUMENTATION";
'appId' ? : Id;
'frameworkAppId' ? : Id;
'testFrameworkType' ? : string;
'testFrameworkVersion' ? : string;
'testReportIds' ? : Array < Id >
;
'testIds' ? : Array < Id >
;
'batchId' ? : number;
'startDateTime' ? : string;
'endDateTime' ? : string;
'durationInSeconds' ? : number;
id?: Id;
projectId?: Id;
userId?: Id;
deviceDescriptorId?: Id;
usage?:
| "MANUAL"
| "BATCH"
| "APPIUM"
| "PIRANHA"
| "XCUITEST"
| "ANDROID_INSTRUMENTATION";
appId?: Id;
frameworkAppId?: Id;
testFrameworkType?: string;
testFrameworkVersion?: string;
testReportIds?: Array<Id>;
testIds?: Array<Id>;
batchId?: number;
startDateTime?: string;
endDateTime?: string;
durationInSeconds?: number;
};
export type DeviceView = {
'dataCenterId' ? : Id;
'deviceDescriptor' ? : DeviceDescriptor;
dataCenterId?: Id;
deviceDescriptor?: DeviceDescriptor;
};
export type TestError = {
'file' ? : string;
'lineNumber' ? : number;
'error' ? : string;
file?: string;
lineNumber?: number;
error?: string;
};
export type EspressoTestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
'screenshots' ? : Array < number >
;
'stackTrace' ? : string;
'className' ? : string;
'errorMessage' ? : string;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
screenshots?: Array<number>;
stackTrace?: string;
className?: string;
errorMessage?: string;
};
export type Path = {
'first' ? : Id;
'second' ? : Id;
first?: Id;
second?: Id;
};

@@ -565,6 +686,6 @@

export type TemporalUnit = {
'dateBased' ? : boolean;
'durationEstimated' ? : boolean;
'duration' ? : Duration;
'timeBased' ? : boolean;
dateBased?: boolean;
durationEstimated?: boolean;
duration?: Duration;
timeBased?: boolean;
};

@@ -575,103 +696,108 @@

export type DeviceDescriptor = {
'id' ? : Id;
'name' ? : string;
'modelNumber' ? : string;
'manufacturer' ? : Array < string >
;
'isArm' ? : boolean;
'hasOnScreenButtons' ? : boolean;
'abiType' ? : string;
'os' ? : "ANDROID" | "IOS";
'osVersion' ? : string;
'apiLevel' ? : number;
'screenSize' ? : number;
'resolutionWidth' ? : number;
'resolutionHeight' ? : number;
'dpi' ? : number;
'pixelsPerPoint' ? : number;
'isTablet' ? : boolean;
'internalOrientation' ? : "PORTRAIT" | "LANDSCAPE";
'defaultOrientation' ? : "PORTRAIT" | "LANDSCAPE";
'ramSize' ? : number;
'internalStorageSize' ? : number;
'sdCardSize' ? : number;
'cpuCores' ? : number;
'cpuFrequency' ? : number;
'supportsMockLocations' ? : boolean;
'supportsAppiumWebAppTesting' ? : boolean;
'isKeyGuardDisabled' ? : boolean;
'isRooted' ? : boolean;
'isPrivate' ? : boolean;
'supportsGlobalProxy' ? : boolean;
'supportsMinicapSocketConnection' ? : boolean;
'disableMtp' ? : boolean;
'deviceFamily' ? : "ANY" | "IPHONE" | "IPAD";
'cpuType' ? : "ARM" | "X86";
'dpiName' ? : string;
'supportsManualWebTesting' ? : boolean;
'supportsXcuiTest' ? : boolean;
'supportsMultiTouch' ? : boolean;
'isAlternativeIoEnabled' ? : boolean;
'supportsQualityReport' ? : boolean;
id?: Id;
name?: string;
modelNumber?: string;
manufacturer?: Array<string>;
isArm?: boolean;
hasOnScreenButtons?: boolean;
abiType?: string;
os?: "ANDROID" | "IOS";
osVersion?: string;
apiLevel?: number;
screenSize?: number;
resolutionWidth?: number;
resolutionHeight?: number;
dpi?: number;
pixelsPerPoint?: number;
isTablet?: boolean;
internalOrientation?: "PORTRAIT" | "LANDSCAPE";
defaultOrientation?: "PORTRAIT" | "LANDSCAPE";
ramSize?: number;
internalStorageSize?: number;
sdCardSize?: number;
cpuCores?: number;
cpuFrequency?: number;
supportsMockLocations?: boolean;
supportsAppiumWebAppTesting?: boolean;
isKeyGuardDisabled?: boolean;
isRooted?: boolean;
isPrivate?: boolean;
supportsGlobalProxy?: boolean;
supportsMinicapSocketConnection?: boolean;
disableMtp?: boolean;
deviceFamily?: "ANY" | "IPHONE" | "IPAD";
cpuType?: "ARM" | "X86";
dpiName?: string;
supportsManualWebTesting?: boolean;
supportsXcuiTest?: boolean;
supportsMultiTouch?: boolean;
isAlternativeIoEnabled?: boolean;
supportsQualityReport?: boolean;
};
export type Point = {
'x' ? : number;
'y' ? : number;
x?: number;
y?: number;
};
export type InstrumentationBatchReport = {
'projectPath' ? : Path;
'id' ? : Id;
'batchId' ? : Id;
'name' ? : string;
'tests' ? : Array < TestView >
;
'devices' ? : Array < DeviceView >
;
'reports' ? : Array < ReportEntry >
;
'notificationEnabled' ? : boolean;
'notificationEmails' ? : Array < string >
;
'checkupType' ? : "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
'duration' ? : number;
'startTime' ? : number;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'running' ? : boolean;
'secretLinkCode' ? : string;
'testSpecAppId' ? : Id;
'automationFramework' ? : "ROBOTIUM" | "ESPRESSO" | "XCUITEST";
'appUnderTestId' ? : Id;
'tunnelIdentifier' ? : string;
projectPath?: Path;
id?: Id;
batchId?: Id;
name?: string;
tests?: Array<TestView>;
devices?: Array<DeviceView>;
reports?: Array<ReportEntry>;
notificationEnabled?: boolean;
notificationEmails?: Array<string>;
checkupType?: "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
duration?: number;
startTime?: number;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
running?: boolean;
secretLinkCode?: string;
testSpecAppId?: Id;
automationFramework?: "ROBOTIUM" | "ESPRESSO" | "XCUITEST";
appUnderTestId?: Id;
tunnelIdentifier?: string;
};
export type ScriptWarning = {
'message' ? : string;
'reason' ? : string;
'info' ? : {
[key: string]: string
};
message?: string;
reason?: string;
info?: {
[key: string]: string;
};
};
export type QualityReportBatchReport = {
'projectPath' ? : Path;
'id' ? : Id;
'batchId' ? : Id;
'name' ? : string;
'tests' ? : Array < TestView >
;
'devices' ? : Array < DeviceView >
;
'reports' ? : Array < ReportEntry >
;
'notificationEnabled' ? : boolean;
'notificationEmails' ? : Array < string >
;
'checkupType' ? : "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
'duration' ? : number;
'startTime' ? : number;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'running' ? : boolean;
'secretLinkCode' ? : string;
projectPath?: Path;
id?: Id;
batchId?: Id;
name?: string;
tests?: Array<TestView>;
devices?: Array<DeviceView>;
reports?: Array<ReportEntry>;
notificationEnabled?: boolean;
notificationEmails?: Array<string>;
checkupType?: "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
duration?: number;
startTime?: number;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
running?: boolean;
secretLinkCode?: string;
};

@@ -682,36 +808,46 @@

export type TestCase = {
'methodName' ? : string;
'className' ? : string;
'startTime' ? : number;
'duration' ? : number;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'testError' ? : TestError;
methodName?: string;
className?: string;
startTime?: number;
duration?: number;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
testError?: TestError;
};
export type BatchReport = {
'projectPath' ? : Path;
'id' ? : Id;
'batchId' ? : Id;
'name' ? : string;
'tests' ? : Array < TestView >
;
'devices' ? : Array < DeviceView >
;
'reports' ? : Array < ReportEntry >
;
'notificationEnabled' ? : boolean;
'notificationEmails' ? : Array < string >
;
'checkupType' ? : "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
'duration' ? : number;
'startTime' ? : number;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'running' ? : boolean;
'secretLinkCode' ? : string;
projectPath?: Path;
id?: Id;
batchId?: Id;
name?: string;
tests?: Array<TestView>;
devices?: Array<DeviceView>;
reports?: Array<ReportEntry>;
notificationEnabled?: boolean;
notificationEmails?: Array<string>;
checkupType?: "STRESS_TEST" | "INSTALL_LAUNCH" | "SCREENSHOTS" | "NONE";
duration?: number;
startTime?: number;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
running?: boolean;
secretLinkCode?: string;
};
export type TestView = {
'testId' ? : Id;
'name' ? : string;
'className' ? : string;
testId?: Id;
name?: string;
className?: string;
};

@@ -722,441 +858,443 @@

export type XCUITestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
'screenshots' ? : Array < number >
;
'stackTrace' ? : string;
'className' ? : string;
'testCaseGroups' ? : Array < TestCaseGroup >
;
'errorMessage' ? : string;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
screenshots?: Array<number>;
stackTrace?: string;
className?: string;
testCaseGroups?: Array<TestCaseGroup>;
errorMessage?: string;
};
export type AndroidInstrumentationTestReport = {
'projectPath' ? : Path;
'id' ? : Id;
'uuid' ? : Uuid;
'batchId' ? : Id;
'batchName' ? : string;
'testId' ? : Id;
'testName' ? : string;
'appVersionId' ? : number;
'appVersionName' ? : string;
'startTime' ? : number;
'duration' ? : number;
'networkSpeed' ? : "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
'deviceDescriptor' ? : DeviceDescriptor;
'videoId' ? : Id;
'running' ? : boolean;
'systemError' ? : string;
'testResultStatus' ? : "UNDEFINED" | "WARNING" | "OK" | "ERROR" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'dataCenterId' ? : Id;
'tunnelIdentifier' ? : string;
'tunnelId' ? : string;
'remoteAppFileUrl' ? : string;
'phoneNumber' ? : PhoneNumber;
'sharedLinkCode' ? : string;
'systemErrorType' ? : string;
'automationBackend' ? : string;
'status' ? : "UNKNOWN" | "SUCCESS" | "WARNING" | "FAILURE" | "SKIPPED" | "ABORTED" | "CANCELED";
'withSystemError' ? : boolean;
'type' ? : string;
'screenshots' ? : Array < number >
;
'stackTrace' ? : string;
'className' ? : string;
'testSuites' ? : Array < TestSuite >
;
'sessionId' ? : string;
'testCaseGroups' ? : Array < TestCaseGroup >
;
'errorMessage' ? : string;
projectPath?: Path;
id?: Id;
uuid?: Uuid;
batchId?: Id;
batchName?: string;
testId?: Id;
testName?: string;
appVersionId?: number;
appVersionName?: string;
startTime?: number;
duration?: number;
networkSpeed?: "FULL" | "GSM" | "HDCSD" | "GPRS" | "EDGE" | "UMTS" | "HSDPA";
deviceDescriptor?: DeviceDescriptor;
videoId?: Id;
running?: boolean;
systemError?: string;
testResultStatus?:
| "UNDEFINED"
| "WARNING"
| "OK"
| "ERROR"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
dataCenterId?: Id;
tunnelIdentifier?: string;
tunnelId?: string;
remoteAppFileUrl?: string;
phoneNumber?: PhoneNumber;
sharedLinkCode?: string;
systemErrorType?: string;
automationBackend?: string;
status?:
| "UNKNOWN"
| "SUCCESS"
| "WARNING"
| "FAILURE"
| "SKIPPED"
| "ABORTED"
| "CANCELED";
withSystemError?: boolean;
type?: string;
screenshots?: Array<number>;
stackTrace?: string;
className?: string;
testSuites?: Array<TestSuite>;
sessionId?: string;
testCaseGroups?: Array<TestCaseGroup>;
errorMessage?: string;
};
export type Activity = {
'ccy_exec_peak': Array < number >
;
'datestamp': Array < string >
;
'jobs': Array < number >
;
'minutes': Array < number >
;
export type Activity = {
ccy_exec_peak: Array<number>;
datestamp: Array<string>;
jobs: Array<number>;
minutes: Array<number>;
};
export type BaseConfig = {
'browserName' ? : string;
'name' ? : string;
'platform' ? : string;
'status' ? : string;
'version' ? : number;
browserName?: string;
name?: string;
platform?: string;
status?: string;
version?: number;
};
export type Build = {
'creation_time' ? : number;
'deletion_time' ? : number;
'end_time' ? : number;
'id' ? : string;
'jobs' ? : {
'completed' ? : number;
'errored' ? : number;
'failed' ? : number;
'finished' ? : number;
'passed' ? : number;
'public' ? : number;
'queued' ? : number;
'running' ? : number;
};
'modification_time' ? : number;
'name' ? : string;
'number' ? : number;
'owner' ? : string;
'passed' ? : boolean;
'prefix' ? : string;
'public' ? : boolean;
'run' ? : number;
'start_time' ? : number;
'status' ? : string;
creation_time?: number;
deletion_time?: number;
end_time?: number;
id?: string;
jobs?: {
completed?: number;
errored?: number;
failed?: number;
finished?: number;
passed?: number;
public?: number;
queued?: number;
running?: number;
};
modification_time?: number;
name?: string;
number?: number;
owner?: string;
passed?: boolean;
prefix?: string;
public?: boolean;
run?: number;
start_time?: number;
status?: string;
};
export type CIStat = {
'platform': string;
'platform_version' ? : string;
platform: string;
platform_version?: string;
};
export type CommandCountStats = {
'all' ? : number;
'error' ? : number;
all?: number;
error?: number;
};
export type Concurrency = {
'concurrency': {
[key: string]: SubAccountConcurrencyValues
};
'timestamp': number;
concurrency: {
[key: string]: SubAccountConcurrencyValues;
};
timestamp: number;
};
export type ConcurrencyLimit = {
'mac' ? : number;
'overall' ? : number;
'real_device' ? : number;
'scout' ? : number;
mac?: number;
overall?: number;
real_device?: number;
scout?: number;
};
export type ConcurrencyValues = {
'mac' ? : number;
'manual' ? : number;
'overall' ? : number;
mac?: number;
manual?: number;
overall?: number;
};
export type Error = {
'code' ? : number;
'fields' ? : string;
'message' ? : string;
code?: number;
fields?: string;
message?: string;
};
export type File = {
'md5': string;
'mtime': string;
'name': string;
'size': number;
md5: string;
mtime: string;
name: string;
size: number;
};
export type Job = {
'assigned_tunnel_id' ? : string;
'automation_backend' ? : string;
'base_config' ? : BaseConfig;
'breakpointed' ? : string;
'browser' ? : string;
'browser_short_version' ? : string;
'browser_version' ? : string;
'build' ? : string;
'collects_automator_log' ? : boolean;
'command_counts' ? : CommandCountStats;
'commands_not_successful' ? : number;
'consolidated_status' ? : "error" | "passed" | "failed" | "complete";
'creation_time' ? : string;
'custom-data' ? : string;
'deletion_time' ? : string;
'end_time' ? : string;
'id': string;
'log_url' ? : string;
'manual' ? : boolean;
'modification_time' ? : string;
'name' ? : string;
'os' ? : string;
'owner' ? : string;
'passed' ? : boolean;
'proxied' ? : boolean;
'proxy_host' ? : boolean;
'public' ? : "public" | "public restricted" | "share" | "team";
'record_screenshots' ? : boolean;
'record_video' ? : boolean;
'selenium_version' ? : string;
'start_time' ? : string;
'status' ? : string;
'tags' ? : Array < string >
;
'video_secret' ? : string;
'video_url' ? : string;
assigned_tunnel_id?: string;
automation_backend?: string;
base_config?: BaseConfig;
breakpointed?: string;
browser?: string;
browser_short_version?: string;
browser_version?: string;
build?: string;
collects_automator_log?: boolean;
command_counts?: CommandCountStats;
commands_not_successful?: number;
consolidated_status?: "error" | "passed" | "failed" | "complete";
creation_time?: string;
"custom-data"?: string;
deletion_time?: string;
end_time?: string;
id: string;
log_url?: string;
manual?: boolean;
modification_time?: string;
name?: string;
os?: string;
owner?: string;
passed?: boolean;
proxied?: boolean;
proxy_host?: boolean;
public?: "public" | "public restricted" | "share" | "team";
record_screenshots?: boolean;
record_video?: boolean;
selenium_version?: string;
start_time?: string;
status?: string;
tags?: Array<string>;
video_secret?: string;
video_url?: string;
};
export type Platform = {
'api_name' ? : string;
'automation_backend' ? : string;
'deprecated_backend_versions' ? : Array < string >
;
'device' ? : string;
'latest_stable_version' ? : string;
'long_name' ? : string;
'long_version' ? : string;
'os' ? : string;
'recommended_backend_version' ? : string;
'short_version' ? : string;
'supported_backend_versions' ? : Array < string >
;
api_name?: string;
automation_backend?: string;
deprecated_backend_versions?: Array<string>;
device?: string;
latest_stable_version?: string;
long_name?: string;
long_version?: string;
os?: string;
recommended_backend_version?: string;
short_version?: string;
supported_backend_versions?: Array<string>;
};
export type SauceStatus = {
'service_operational' ? : boolean;
'status_message' ? : string;
'wait_time' ? : number;
service_operational?: boolean;
status_message?: string;
wait_time?: number;
};
export type SubAccountConcurrencyValues = {
'current' ? : ConcurrencyValues;
'remaining' ? : ConcurrencyValues;
current?: ConcurrencyValues;
remaining?: ConcurrencyValues;
};
export type Tunnel = {
'creation_time' ? : number;
'direct_domains' ? : Array < string >
;
'domain_names' ? : Array < string >
;
'host' ? : string;
'id': string;
'last_connected' ? : number;
'launch_time' ? : number;
'metadata' ? : TunnelMetaData;
'no_proxy_caching' ? : boolean;
'no_ssl_bump_domains' ? : Array < string >
;
'owner' ? : string;
'shared_tunnel' ? : boolean;
'shutdown_time' ? : number;
'ssh_port' ? : number;
'status' ? : string;
'tunnel_identifier' ? : string;
'use_caching_proxy' ? : boolean;
'use_kgp' ? : boolean;
'user_shutdown' ? : boolean;
'vm_version' ? : string;
creation_time?: number;
direct_domains?: Array<string>;
domain_names?: Array<string>;
host?: string;
id: string;
last_connected?: number;
launch_time?: number;
metadata?: TunnelMetaData;
no_proxy_caching?: boolean;
no_ssl_bump_domains?: Array<string>;
owner?: string;
shared_tunnel?: boolean;
shutdown_time?: number;
ssh_port?: number;
status?: string;
tunnel_identifier?: string;
use_caching_proxy?: boolean;
use_kgp?: boolean;
user_shutdown?: boolean;
vm_version?: string;
};
export type TunnelMetaData = {
'build' ? : string;
'command' ? : string;
'git_version' ? : string;
'hostname' ? : string;
'nofile_limit' ? : number;
'platform' ? : string;
'release' ? : string;
build?: string;
command?: string;
git_version?: string;
hostname?: string;
nofile_limit?: number;
platform?: string;
release?: string;
};
export type User = {
'access_key' ? : string;
'ancestor_allows_subaccounts' ? : boolean;
'ancestor_concurrency_limit' ? : ConcurrencyLimit;
'can_run_manual' ? : boolean;
'concurrency_limit' ? : ConcurrencyLimit;
'creation_time' ? : string;
'domain' ? : string;
'email' ? : string;
'entity_type' ? : string;
'first_name' ? : string;
'id' ? : string;
'is_admin' ? : string;
'is_sso' ? : boolean;
'last_name' ? : string;
'manual_minutes' ? : number;
'minutes' ? : number;
'name' ? : string;
'parent' ? : string;
'prevent_emails' ? : Array < "marketing" >
;
'subscribed' ? : boolean;
'title' ? : string;
'user_type' ? : string;
'username' ? : string;
'verified' ? : boolean;
'vm_lockdown' ? : boolean;
access_key?: string;
ancestor_allows_subaccounts?: boolean;
ancestor_concurrency_limit?: ConcurrencyLimit;
can_run_manual?: boolean;
concurrency_limit?: ConcurrencyLimit;
creation_time?: string;
domain?: string;
email?: string;
entity_type?: string;
first_name?: string;
id?: string;
is_admin?: string;
is_sso?: boolean;
last_name?: string;
manual_minutes?: number;
minutes?: number;
name?: string;
parent?: string;
prevent_emails?: Array<"marketing">;
subscribed?: boolean;
title?: string;
user_type?: string;
username?: string;
verified?: boolean;
vm_lockdown?: boolean;
};
export type WhoamiUser = {
'access_key' ? : string;
'ancestor_concurrency_limit' ? : ConcurrencyLimit;
'can_run_manual' ? : boolean;
'concurrency_limit' ? : ConcurrencyLimit;
'email' ? : string;
'first_name' ? : string;
'id' ? : string;
'last_name' ? : string;
'manual_minutes' ? : number;
'minutes' ? : number;
'name' ? : string;
'parent' ? : {};
'subscribed' ? : boolean;
'user_type' ? : string;
'username' ? : string;
'verified' ? : boolean;
access_key?: string;
ancestor_concurrency_limit?: ConcurrencyLimit;
can_run_manual?: boolean;
concurrency_limit?: ConcurrencyLimit;
email?: string;
first_name?: string;
id?: string;
last_name?: string;
manual_minutes?: number;
minutes?: number;
name?: string;
parent?: {};
subscribed?: boolean;
user_type?: string;
username?: string;
verified?: boolean;
};
declare class SauceLabs {
constructor(options: SauceLabsOptions);
constructor(options: SauceLabsOptions)
/**
* Get performance metrics of specific test.
* @method
* @name SauceLabs#getPerformanceMetrics
* @param {string} jobId -
*/
getPerformanceMetrics(jobId: string): Promise<PerformanceMetricsListView>;
/**
* Get baseline history of specific test.
* @method
* @name SauceLabs#getBaselineHistory
* @param {string} jobId -
* @param {array} metricNames - Option
* @param {integer} orderIndex - Option
* @param {integer} limit - Option
* @param {integer} windowSize - Option
*/
getBaselineHistory(
jobId: string,
options?: {
metricNames: Array<string>;
orderIndex: number;
limit?: number;
windowSize?: number;
}
): Promise<BaselineHistoryView>;
/**
* Get performance metrics of specific test.
* @method
* @name SauceLabs#getPerformanceMetrics
* @param {string} jobId -
*/
getPerformanceMetrics(
jobId: string,
): Promise<PerformanceMetricsListView >
/**
* Gets recent baseline based on job_id and given parameters
* @method
* @name SauceLabs#getRecentBaselineHistory
* @param {string} jobId -
* @param {array} metricNames - Option
* @param {integer} orderIndex - Option
* @param {integer} windowSize - Option
*/
getRecentBaselineHistory(
jobId: string,
options?: {
metricNames: Array<string>;
orderIndex: number;
windowSize?: number;
}
): Promise<BaselineCommandView>;
/**
* Get baseline history of specific test.
* @method
* @name SauceLabs#getBaselineHistory
* @param {string} jobId -
* @param {array} metricNames - Option
* @param {integer} orderIndex - Option
* @param {integer} limit - Option
* @param {integer} windowSize - Option
*/
getBaselineHistory(
jobId: string,
options?: {
metricNames: Array < string >
,
orderIndex: number,
limit ? : number,
windowSize ? : number
},
): Promise<BaselineHistoryView >
/**
* Acknowledge Regime.
* @method
* @name SauceLabs#acknowledgeRegime
* @param {string} jobId -
* @param {} body - Data needed to acknowledge the regime
*/
acknowledgeRegime(
jobId: string,
body: RegimeAcknowledgeList
): Promise<PerformanceMetricsListViewItems>;
/**
* Gets recent baseline based on job_id and given parameters
* @method
* @name SauceLabs#getRecentBaselineHistory
* @param {string} jobId -
* @param {array} metricNames - Option
* @param {integer} orderIndex - Option
* @param {integer} windowSize - Option
*/
getRecentBaselineHistory(
jobId: string,
options?: {
metricNames: Array < string >
,
orderIndex: number,
windowSize ? : number
},
): Promise<BaselineCommandView >
/**
* Shows if there's a regression detected for given job_id and metric_names
* @method
* @name SauceLabs#assertPerformanceRegression
* @param {string} jobId -
* @param {array} metricNames - Option
* @param {integer} windowSize - Option
*/
assertPerformanceRegression(
jobId: string,
options?: {
metricNames: Array<string>;
windowSize?: number;
}
): Promise<PerformanceMetricsRegressionListView>;
/**
* Acknowledge Regime.
* @method
* @name SauceLabs#acknowledgeRegime
* @param {string} jobId -
* @param {} body - Data needed to acknowledge the regime
*/
acknowledgeRegime(
jobId: string,
body: RegimeAcknowledgeList,
): Promise<PerformanceMetricsListViewItems >
/**
* Returns a dataset used to calculate regressions and baselines
* @method
* @name SauceLabs#getPerformanceDataset
* @param {string} jobId -
* @param {array} metricNames - Option
*/
getPerformanceDataset(
jobId: string,
options?: {
metricNames: Array<string>;
}
): Promise<PerformanceMetricsDataSetListView>;
/**
* Shows if there's a regression detected for given job_id and metric_names
* @method
* @name SauceLabs#assertPerformanceRegression
* @param {string} jobId -
* @param {array} metricNames - Option
* @param {integer} windowSize - Option
*/
assertPerformanceRegression(
jobId: string,
options?: {
metricNames: Array < string >
,
windowSize ? : number
},
): Promise<PerformanceMetricsRegressionListView >
/**
* Returns new application id after the upload.
* @method
* @name SauceLabs#uploadApp
* @param {string} appType - Application type
* @param {string} appIdentifier - Your custom unique identifier for your app
* @param {string} appDisplayName - Your custom display name
* @param {boolean} appActive - If true makes uploaded application active one
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
uploadApp(
appType?: string,
appIdentifier?: string,
appDisplayName?: string,
appActive?: boolean,
body?: InputStream
): Promise<string>;
/**
* Returns a dataset used to calculate regressions and baselines
* @method
* @name SauceLabs#getPerformanceDataset
* @param {string} jobId -
* @param {array} metricNames - Option
*/
getPerformanceDataset(
jobId: string,
options?: {
metricNames: Array < string >
},
): Promise<PerformanceMetricsDataSetListView >
/**
* Returns new application id after the upload.
* @method
* @name SauceLabs#uploadApp
* @param {string} appType - Application type
* @param {string} appIdentifier - Your custom unique identifier for your app
* @param {string} appDisplayName - Your custom display name
* @param {boolean} appActive - If true makes uploaded application active one
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
uploadApp(
appType ? : string,
appIdentifier ? : string,
appDisplayName ? : string,
appActive ? : boolean,
body ? : InputStream,
): Promise<string >
/**
/**
* The session history reports provide information about user sessions. This includes device usage and test reports. By default reports of the last 30 days will be retrieved - limited to a maximum of 50 reports.

@@ -1171,661 +1309,557 @@ If the authenticated user is the owner of the account, session reports of the entire team will be retrieved. Team members can only retrieve their own session history. This endpoint requires Password authentication.

*/
getSessionReports(
options?: {
userId ? : string,
lastDays ? : number,
offset ? : number,
limit ? : number
},
): Promise<PaginationResultSessionReport >
getSessionReports(options?: {
userId?: string;
lastDays?: number;
offset?: number;
limit?: number;
}): Promise<PaginationResultSessionReport>;
/**
* Report the result of a test as skipped.
* @method
* @name SauceLabs#markTestAsSkipped
* @param {string} sessionId - The Appium session ID of your test
*/
markTestAsSkipped(
sessionId: string,
): Promise<void >
/**
* Report the result of a test as skipped.
* @method
* @name SauceLabs#markTestAsSkipped
* @param {string} sessionId - The Appium session ID of your test
*/
markTestAsSkipped(sessionId: string): Promise<void>;
/**
* Report the result of a test.
* @method
* @name SauceLabs#updateTest
* @param {string} sessionId - The Appium session ID of your test
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
updateTest(
sessionId: string,
body ? : ApiTestStatus,
): Promise<void >
/**
* Report the result of a test.
* @method
* @name SauceLabs#updateTest
* @param {string} sessionId - The Appium session ID of your test
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
updateTest(sessionId: string, body?: ApiTestStatus): Promise<void>;
/**
* Updates the properties of a suite.
* @method
* @name SauceLabs#updateSuite
* @param {integer} suiteId - The ID of the suite
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
updateSuite(
suiteId: number,
body ? : ApiSuiteV2,
): Promise<ApiSuite >
/**
* Updates the properties of a suite.
* @method
* @name SauceLabs#updateSuite
* @param {integer} suiteId - The ID of the suite
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
updateSuite(suiteId: number, body?: ApiSuiteV2): Promise<ApiSuite>;
/**
* Returns the IDs of the devices which you had selected for the specified suite.
* @method
* @name SauceLabs#readDeviceIds
* @param {integer} suiteId - The ID of the suite
*/
readDeviceIds(
suiteId: number,
): Promise<Array < Id >>
/**
* Returns the IDs of the devices which you had selected for the specified suite.
* @method
* @name SauceLabs#readDeviceIds
* @param {integer} suiteId - The ID of the suite
*/
readDeviceIds(suiteId: number): Promise<Array<Id>>;
/**
* Start a new suite execution including its test executions.
* @method
* @name SauceLabs#startSuite
* @param {integer} suiteId - The ID of the suite
* @param {integer} appId - The ID of the app version you wish to testOption
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
startSuite(
suiteId: number,
options?: {
appId ? : number
},
body ? : Array < ApiTestV2 >
,
): Promise<ApiSuiteReport >
/**
* Start a new suite execution including its test executions.
* @method
* @name SauceLabs#startSuite
* @param {integer} suiteId - The ID of the suite
* @param {integer} appId - The ID of the app version you wish to testOption
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
startSuite(
suiteId: number,
options?: {
appId?: number;
},
body?: Array<ApiTestV2>
): Promise<ApiSuiteReport>;
/**
* Marks all test executions contained in the specified suite execution as finished.
* @method
* @name SauceLabs#finishSuite
* @param {integer} suiteId - The ID of the suite
* @param {integer} batchReportId - The ID of this suite execution
*/
finishSuite(
suiteId: number,
batchReportId: number,
): Promise<ApiSuiteReport >
/**
* Marks all test executions contained in the specified suite execution as finished.
* @method
* @name SauceLabs#finishSuite
* @param {integer} suiteId - The ID of the suite
* @param {integer} batchReportId - The ID of this suite execution
*/
finishSuite(suiteId: number, batchReportId: number): Promise<ApiSuiteReport>;
/**
* Sets the status of the specific test execution and marks it as finished.
* @method
* @name SauceLabs#finishTestReport
* @param {integer} suiteId - The ID of the suite
* @param {integer} suiteReportId - The ID of this suite execution
* @param {integer} testReportId - The ID of this test execution
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
finishTestReport(
suiteId: number,
suiteReportId: number,
testReportId: number,
body ? : ApiTestStatus,
): Promise<ApiTestReport >
/**
* Sets the status of the specific test execution and marks it as finished.
* @method
* @name SauceLabs#finishTestReport
* @param {integer} suiteId - The ID of the suite
* @param {integer} suiteReportId - The ID of this suite execution
* @param {integer} testReportId - The ID of this test execution
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
finishTestReport(
suiteId: number,
suiteReportId: number,
testReportId: number,
body?: ApiTestStatus
): Promise<ApiTestReport>;
/**
* Mark test execution as skipped
* @method
* @name SauceLabs#skipTestReport
* @param {integer} suiteId - The ID of the suite
* @param {integer} suiteReportId - The ID of this suite execution
* @param {integer} testReportId - The ID of this test execution
*/
skipTestReport(
suiteId: number,
suiteReportId: number,
testReportId: number,
): Promise<ApiTestReport >
/**
* Mark test execution as skipped
* @method
* @name SauceLabs#skipTestReport
* @param {integer} suiteId - The ID of the suite
* @param {integer} suiteReportId - The ID of this suite execution
* @param {integer} testReportId - The ID of this test execution
*/
skipTestReport(
suiteId: number,
suiteReportId: number,
testReportId: number
): Promise<ApiTestReport>;
/**
* Returns the test report of a suite
* @method
* @name SauceLabs#readBatchReport
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
readBatchReport(
body?: number | string
): Promise<BatchReport >
/**
* Returns the test report of a suite
* @method
* @name SauceLabs#readBatchReport
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
readBatchReport(body?: number | string): Promise<BatchReport>;
/**
* Returns the test report of a suite as XML
* @method
* @name SauceLabs#junitStyleXmlReport
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
junitStyleXmlReport(
body?: number | string
): Promise<JunitXMLReport >
/**
* Returns the test report of a suite as XML
* @method
* @name SauceLabs#junitStyleXmlReport
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
* @param {} body - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
junitStyleXmlReport(body?: number | string): Promise<JunitXMLReport>;
/**
* Returns a list per data center containing all devices, including private devices and those not currently available for testing. This endpoint requires API Key authentication.
* @method
* @name SauceLabs#getDescriptors
*/
getDescriptors(
): Promise<{
[key: string]: Array < DeviceDescriptor >
} >
/**
* Returns a list per data center containing all devices, including private devices and those not currently available for testing. This endpoint requires API Key authentication.
* @method
* @name SauceLabs#getDescriptors
*/
getDescriptors(): Promise<{
[key: string]: Array<DeviceDescriptor>;
}>;
/**
* Returns a list per data center containing the IDs of all devices currently available for testing, including private devices. This endpoint requires API Key authentication.
* @method
* @name SauceLabs#getAvailableDescriptorIds
*/
getAvailableDescriptorIds(
): Promise<{
[key: string]: Array < Id >
} >
/**
* Returns a list per data center containing the IDs of all devices currently available for testing, including private devices. This endpoint requires API Key authentication.
* @method
* @name SauceLabs#getAvailableDescriptorIds
*/
getAvailableDescriptorIds(): Promise<{
[key: string]: Array<Id>;
}>;
/**
* Returns information for a particular device per data center. This endpoint requires API Key authentication.
* @method
* @name SauceLabs#getDescriptor
* @param {string} deviceId - The ID of the device
*/
getDescriptor(
deviceId: string,
): Promise<{
[key: string]: DeviceDescriptor
} >
/**
* Returns information for a particular device per data center. This endpoint requires API Key authentication.
* @method
* @name SauceLabs#getDescriptor
* @param {string} deviceId - The ID of the device
*/
getDescriptor(
deviceId: string
): Promise<{
[key: string]: DeviceDescriptor;
}>;
/**
* Returns Appium log for the specified test report
* @method
* @name SauceLabs#readAppiumLog
* @param {integer} testReportId - The ID of the test report
*/
readAppiumLog(
testReportId: number,
): Promise<StreamingOutput >
/**
* Returns Appium log for the specified test report
* @method
* @name SauceLabs#readAppiumLog
* @param {integer} testReportId - The ID of the test report
*/
readAppiumLog(testReportId: number): Promise<StreamingOutput>;
/**
* Returns device log for the specified test report
* @method
* @name SauceLabs#readDeviceLog
* @param {integer} testReportId - The ID of the test report
*/
readDeviceLog(
testReportId: number,
): Promise<StreamingOutput >
/**
* Returns device log for the specified test report
* @method
* @name SauceLabs#readDeviceLog
* @param {integer} testReportId - The ID of the test report
*/
readDeviceLog(testReportId: number): Promise<StreamingOutput>;
/**
* Returns device vitals of a test session after completion
* @method
* @name SauceLabs#readVitalsLog
* @param {integer} testReportId - The ID of the test report
*/
readVitalsLog(
testReportId: number,
): Promise<StreamingOutput >
/**
* Returns device vitals of a test session after completion
* @method
* @name SauceLabs#readVitalsLog
* @param {integer} testReportId - The ID of the test report
*/
readVitalsLog(testReportId: number): Promise<StreamingOutput>;
/**
* Returns XCUITest log for the specified test report
* @method
* @name SauceLabs#readXcuiTestLog
* @param {integer} testReportId - The ID of the test report
*/
readXcuiTestLog(
testReportId: number,
): Promise<StreamingOutput >
/**
* Returns XCUITest log for the specified test report
* @method
* @name SauceLabs#readXcuiTestLog
* @param {integer} testReportId - The ID of the test report
*/
readXcuiTestLog(testReportId: number): Promise<StreamingOutput>;
/**
* Returns test report and artifacts for a test session after completion
* @method
* @name SauceLabs#readReport
* @param {integer} testReportId - The test report ID from the test session
*/
readReport(
testReportId: number,
): Promise<TestReportWithArtifacts >
/**
* Returns test report and artifacts for a test session after completion
* @method
* @name SauceLabs#readReport
* @param {integer} testReportId - The test report ID from the test session
*/
readReport(testReportId: number): Promise<TestReportWithArtifacts>;
/**
* Returns a PNG screenshot from a test
* @method
* @name SauceLabs#getScreenshot
* @param {integer} testReportId - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
* @param {integer} screenshotId - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
getScreenshot(
testReportId: number,
screenshotId: number,
): Promise<void >
/**
* Returns a PNG screenshot from a test
* @method
* @name SauceLabs#getScreenshot
* @param {integer} testReportId - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
* @param {integer} screenshotId - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
getScreenshot(testReportId: number, screenshotId: number): Promise<void>;
/**
* Returns screen recording of a test session after completion
* @method
* @name SauceLabs#getScreenRecording
* @param {string} videoId - The video ID of the recording from the test report
* @param {string} range - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
getScreenRecording(
videoId: string,
range ? : string,
): Promise<void >
/**
* Returns screen recording of a test session after completion
* @method
* @name SauceLabs#getScreenRecording
* @param {string} videoId - The video ID of the recording from the test report
* @param {string} range - TestObject provides access to devices, Appium, storage and your session history via REST API.</br></br>API endpoints requiring authentication use basic authentication. For endpoints requiring "API Key" authentication, the basic authentication should contain your username and have your project's API key as the password. For endpoints requiring "Password" authentication, the basic authentication should contain your username and password. All endpoints in Appium Suites API require basic authentication with the API Key as the username and the password left blank. Please note that the Appium Watcher API does not require basic authentication.</br></br>The base URL for the API is https://app.testobject.com/api/rest/
*/
getScreenRecording(videoId: string, range?: string): Promise<void>;
/**
* Get Job Information
* @method
* @name SauceLabs#getJobV1_1
* @param {string} id - job id
*/
getJobV1_1(
id: string,
): Promise<Job >
/**
* Get Job Information
* @method
* @name SauceLabs#getJobV1_1
* @param {string} id - job id
*/
getJobV1_1(id: string): Promise<Job>;
/**
* User concurrency
* @method
* @name SauceLabs#getUserConcurrency
* @param {string} username - username
*/
getUserConcurrency(
username: string,
): Promise<Concurrency >
/**
* User concurrency
* @method
* @name SauceLabs#getUserConcurrency
* @param {string} username - username
*/
getUserConcurrency(username: string): Promise<Concurrency>;
/**
* Org information
* @method
* @name SauceLabs#listUserOrganization
* @param {string} username - username
*/
listUserOrganization(
username: string,
): Promise<object >
/**
* Org information
* @method
* @name SauceLabs#listUserOrganization
* @param {string} username - username
*/
listUserOrganization(username: string): Promise<object>;
/**
* Get Tunnels
* @method
* @name SauceLabs#listAvailableTunnels
* @param {string} username - username
*/
listAvailableTunnels(
username: string,
): Promise<{
[key: string]: Array < Tunnel >
} >
/**
* Get Tunnels
* @method
* @name SauceLabs#listAvailableTunnels
* @param {string} username - username
*/
listAvailableTunnels(
username: string
): Promise<{
[key: string]: Array<Tunnel>;
}>;
/**
* Get all of a users builds
* @method
* @name SauceLabs#listBuilds
* @param {string} username - username
* @param {number} limit - Number of results to returnOption
* @param {boolean} subaccounts - Include subaccounts in list of jobsOption
*/
listBuilds(
username: string,
options?: {
limit ? : number,
subaccounts ? : boolean
},
): Promise<Array < Build >>
/**
* Get all of a users builds
* @method
* @name SauceLabs#listBuilds
* @param {string} username - username
* @param {number} limit - Number of results to returnOption
* @param {boolean} subaccounts - Include subaccounts in list of jobsOption
*/
listBuilds(
username: string,
options?: {
limit?: number;
subaccounts?: boolean;
}
): Promise<Array<Build>>;
/**
* Get all of a users jobs
* @method
* @name SauceLabs#listJobs
* @param {string} username - username
* @param {number} limit - Number of results to returnOption
* @param {boolean} subaccounts - Include subaccounts in list of jobsOption
* @param {boolean} full - Should the return result contain everything or just the basicsOption
* @param {boolean} manualOnly - Only return manual jobsOption
* @param {boolean} autoOnly - FIXME ---- ?Option
* @param {string} name - name of the jobOption
* @param {string} ownerType - owner type for jobsOption
* @param {string} owner - username of owner of the jobsOption
* @param {number} from - receive jobs beginning of a specific timestampOption
* @param {number} to - receive jobs until specific timestampOption
*/
listJobs(
username: string,
options?: {
limit ? : number,
subaccounts ? : boolean,
full ? : boolean,
manualOnly ? : boolean,
autoOnly ? : boolean,
name ? : string,
ownerType ? : string,
owner ? : string,
from ? : number,
to ? : number
},
): Promise<object >
/**
* Get all of a users jobs
* @method
* @name SauceLabs#listJobs
* @param {string} username - username
* @param {number} limit - Number of results to returnOption
* @param {boolean} subaccounts - Include subaccounts in list of jobsOption
* @param {boolean} full - Should the return result contain everything or just the basicsOption
* @param {boolean} manualOnly - Only return manual jobsOption
* @param {boolean} autoOnly - FIXME ---- ?Option
* @param {string} name - name of the jobOption
* @param {string} ownerType - owner type for jobsOption
* @param {string} owner - username of owner of the jobsOption
* @param {number} from - receive jobs beginning of a specific timestampOption
* @param {number} to - receive jobs until specific timestampOption
*/
listJobs(
username: string,
options?: {
limit?: number;
subaccounts?: boolean;
full?: boolean;
manualOnly?: boolean;
autoOnly?: boolean;
name?: string;
ownerType?: string;
owner?: string;
from?: number;
to?: number;
}
): Promise<object>;
/**
* Dashboard messages from Django
* @method
* @name SauceLabs#getDashboardMessageForUser
* @param {string} username - username
*/
getDashboardMessageForUser(
username: string,
): Promise<object >
/**
* Dashboard messages from Django
* @method
* @name SauceLabs#getDashboardMessageForUser
* @param {string} username - username
*/
getDashboardMessageForUser(username: string): Promise<object>;
/**
* returns a list of supported platforms in the Sauce cloud
* @method
* @name SauceLabs#listPlatforms
* @param {string} platform - username
*/
listPlatforms(
platform: "appium" | "webdriver" | "all",
): Promise<Array < Platform >>
/**
* returns a list of supported platforms in the Sauce cloud
* @method
* @name SauceLabs#listPlatforms
* @param {string} platform - username
*/
listPlatforms(
platform: "appium" | "webdriver" | "all"
): Promise<Array<Platform>>;
/**
* Sauce Labs Status
* @method
* @name SauceLabs#getStatus
*/
getStatus(
): Promise<SauceStatus >
/**
* Sauce Labs Status
* @method
* @name SauceLabs#getStatus
*/
getStatus(): Promise<SauceStatus>;
/**
* complete manual task
* @method
* @name SauceLabs#deleteManualJob
* @param {} ids - list of task ids that to complete
*/
deleteManualJob(
ids: Array < string >
,
): Promise<object >
/**
* complete manual task
* @method
* @name SauceLabs#deleteManualJob
* @param {} ids - list of task ids that to complete
*/
deleteManualJob(ids: Array<string>): Promise<object>;
/**
* Creates a manual job
* @method
* @name SauceLabs#createManualJob
* @param {} capabilities - desired capabilities to start the session
*/
createManualJob(
capabilities: {
'assets': boolean;
'browser': string;
'browserDisplay': string;
'browserVersionDisplay': string;
'device' ? : string;
'os': string;
'osDisplay': string;
'res': string;
'tunnel' ? : string;
'url': string;
'version': string;
},
): Promise<object >
/**
* Creates a manual job
* @method
* @name SauceLabs#createManualJob
* @param {} capabilities - desired capabilities to start the session
*/
createManualJob(capabilities: {
assets: boolean;
browser: string;
browserDisplay: string;
browserVersionDisplay: string;
device?: string;
os: string;
osDisplay: string;
res: string;
tunnel?: string;
url: string;
version: string;
}): Promise<object>;
/**
* returns a list of supported platforms in the Sauce cloud
* @method
* @name SauceLabs#listManualPlatforms
*/
listManualPlatforms(
): Promise<{
[key: string]: {
[key: string]: object
}
} >
/**
* returns a list of supported platforms in the Sauce cloud
* @method
* @name SauceLabs#listManualPlatforms
*/
listManualPlatforms(): Promise<{
[key: string]: {
[key: string]: object;
};
}>;
/**
* get manual task
* @method
* @name SauceLabs#getManualJob
* @param {string} taskId - task id of manual task
*/
getManualJob(
taskId: string,
): Promise<object >
/**
* get manual task
* @method
* @name SauceLabs#getManualJob
* @param {string} taskId - task id of manual task
*/
getManualJob(taskId: string): Promise<object>;
/**
* Take screenshot in manual session
* @method
* @name SauceLabs#createManualJobScreenshot
* @param {string} taskId - task id of manual task
*/
createManualJobScreenshot(
taskId: string,
): Promise<object >
/**
* Take screenshot in manual session
* @method
* @name SauceLabs#createManualJobScreenshot
* @param {string} taskId - task id of manual task
*/
createManualJobScreenshot(taskId: string): Promise<object>;
/**
* Authenticated user cookie information
* @method
* @name SauceLabs#getCurrentUser
*/
getCurrentUser(
): Promise<object >
/**
* Authenticated user cookie information
* @method
* @name SauceLabs#getCurrentUser
*/
getCurrentUser(): Promise<object>;
/**
* complete manual task
* @method
* @name SauceLabs#deleteManualJobLegacy
* @param {} ids - list of task ids that to complete
*/
deleteManualJobLegacy(
ids: Array < string >
,
): Promise<object >
/**
* complete manual task
* @method
* @name SauceLabs#deleteManualJobLegacy
* @param {} ids - list of task ids that to complete
*/
deleteManualJobLegacy(ids: Array<string>): Promise<object>;
/**
* Creates a manual job
* @method
* @name SauceLabs#createManualJobLegacy
* @param {} capabilities - desired capabilities to start the session
*/
createManualJobLegacy(
capabilities: {
'assets': boolean;
'browser': string;
'browserDisplay': string;
'browserVersionDisplay': string;
'device' ? : string;
'os': string;
'osDisplay': string;
'res': string;
'tunnel' ? : string;
'url': string;
'version': string;
},
): Promise<object >
/**
* Creates a manual job
* @method
* @name SauceLabs#createManualJobLegacy
* @param {} capabilities - desired capabilities to start the session
*/
createManualJobLegacy(capabilities: {
assets: boolean;
browser: string;
browserDisplay: string;
browserVersionDisplay: string;
device?: string;
os: string;
osDisplay: string;
res: string;
tunnel?: string;
url: string;
version: string;
}): Promise<object>;
/**
* User information
* @method
* @name SauceLabs#getUser
* @param {string} username - username
*/
getUser(
username: string,
): Promise<User >
/**
* User information
* @method
* @name SauceLabs#getUser
* @param {string} username - username
*/
getUser(username: string): Promise<User>;
/**
* User information
* @method
* @name SauceLabs#getSubaccounts
* @param {string} username - username
*/
getSubaccounts(
username: string,
): Promise<User >
/**
* User information
* @method
* @name SauceLabs#getSubaccounts
* @param {string} username - username
*/
getSubaccounts(username: string): Promise<User>;
/**
* Get currently running job counts broken down by account and job status
* @method
* @name SauceLabs#getUserActivity
* @param {string} username - username
*/
getUserActivity(
username: string,
): Promise<Activity >
/**
* Get currently running job counts broken down by account and job status
* @method
* @name SauceLabs#getUserActivity
* @param {string} username - username
*/
getUserActivity(username: string): Promise<Activity>;
/**
* User's monthly-minutes
* @method
* @name SauceLabs#getUserMinutes
* @param {string} username - username
*/
getUserMinutes(
username: string,
): Promise<object >
/**
* User's monthly-minutes
* @method
* @name SauceLabs#getUserMinutes
* @param {string} username - username
*/
getUserMinutes(username: string): Promise<object>;
/**
* Get job statistics for usernames
* @method
* @name SauceLabs#getUsersActivity
*/
getUsersActivity(
): Promise<object >
/**
* Get job statistics for usernames
* @method
* @name SauceLabs#getUsersActivity
*/
getUsersActivity(): Promise<object>;
/**
* The result returns dict of usersnames and time when they started last job.
* @method
* @name SauceLabs#usersLastJob
*/
usersLastJob(
): Promise<object >
/**
* The result returns dict of usersnames and time when they started last job.
* @method
* @name SauceLabs#usersLastJob
*/
usersLastJob(): Promise<object>;
/**
* Authenticated user information
* @method
* @name SauceLabs#getCurrentUserFull
*/
getCurrentUserFull(
): Promise<WhoamiUser >
/**
* Authenticated user information
* @method
* @name SauceLabs#getCurrentUserFull
*/
getCurrentUserFull(): Promise<WhoamiUser>;
/**
* Get all Tunnels
* @method
* @name SauceLabs#listAllTunnels
* @param {string} username - username
*/
listAllTunnels(
username: string,
): Promise<object >
/**
* Get all Tunnels
* @method
* @name SauceLabs#listAllTunnels
* @param {string} username - username
*/
listAllTunnels(username: string): Promise<object>;
/**
* Get all of the jobs associated with a build that have failed
* @method
* @name SauceLabs#listBuildFailedJobs
* @param {string} username - username
* @param {string} id - job id
*/
listBuildFailedJobs(
username: string,
id: string,
): Promise<Array < Job >>
/**
* Get all of the jobs associated with a build that have failed
* @method
* @name SauceLabs#listBuildFailedJobs
* @param {string} username - username
* @param {string} id - job id
*/
listBuildFailedJobs(username: string, id: string): Promise<Array<Job>>;
/**
* Get all of the jobs associated with a build
* @method
* @name SauceLabs#listBuildJobs
* @param {string} id - job id
* @param {boolean} full - Should the return result contain everything or just the basicsOption
*/
listBuildJobs(
id: string,
options?: {
full ? : boolean
},
): Promise<Array < Job >>
/**
* Get all of the jobs associated with a build
* @method
* @name SauceLabs#listBuildJobs
* @param {string} id - job id
* @param {boolean} full - Should the return result contain everything or just the basicsOption
*/
listBuildJobs(
id: string,
options?: {
full?: boolean;
}
): Promise<Array<Job>>;
/**
* Get Job Information
* @method
* @name SauceLabs#getJob
* @param {string} username - username
* @param {string} id - job id
*/
getJob(
username: string,
id: string,
): Promise<Job >
/**
* Get Job Information
* @method
* @name SauceLabs#getJob
* @param {string} username - username
* @param {string} id - job id
*/
getJob(username: string, id: string): Promise<Job>;
/**
* Update Job Information
* @method
* @name SauceLabs#updateJob
* @param {string} username - username
* @param {string} id - job id
* @param {} body - This is a REST API documentation provided by Sauce Labs
*/
updateJob(
username: string,
id: string,
body: Job,
): Promise<Job >
/**
* Update Job Information
* @method
* @name SauceLabs#updateJob
* @param {string} username - username
* @param {string} id - job id
* @param {} body - This is a REST API documentation provided by Sauce Labs
*/
updateJob(username: string, id: string, body: Job): Promise<Job>;
/**
* Stop Job Information
* @method
* @name SauceLabs#stopJob
* @param {string} username - username
* @param {string} id - job id
*/
stopJob(
username: string,
id: string,
): Promise<void >
/**
* Stop Job Information
* @method
* @name SauceLabs#stopJob
* @param {string} username - username
* @param {string} id - job id
*/
stopJob(username: string, id: string): Promise<void>;
/**
* Get Tunnels
* @method
* @name SauceLabs#listTunnels
* @param {string} username - username
* @param {boolean} full - Should the return result contain everything or just the basicsOption
*/
listTunnels(
username: string,
options?: {
full ? : boolean
},
): Promise<Array < string >>
/**
* Get Tunnels
* @method
* @name SauceLabs#listTunnels
* @param {string} username - username
* @param {boolean} full - Should the return result contain everything or just the basicsOption
*/
listTunnels(
username: string,
options?: {
full?: boolean;
}
): Promise<Array<string>>;
/**
* Delete a Tunnel
* @method
* @name SauceLabs#deleteTunnel
* @param {string} username - username
* @param {string} id - job id
*/
deleteTunnel(
username: string,
id: string,
): Promise<void >
/**
* Delete a Tunnel
* @method
* @name SauceLabs#deleteTunnel
* @param {string} username - username
* @param {string} id - job id
*/
deleteTunnel(username: string, id: string): Promise<void>;
/**
* Get Tunnels
* @method
* @name SauceLabs#getTunnel
* @param {string} username - username
* @param {string} id - job id
*/
getTunnel(
username: string,
id: string,
): Promise<Tunnel >
/**
* Get Tunnels
* @method
* @name SauceLabs#getTunnel
* @param {string} username - username
* @param {string} id - job id
*/
getTunnel(username: string, id: string): Promise<Tunnel>;
/**
* Get job asset
* @method
* @name SauceLabs#downloadJobAsset
* @param {string} id - job id
* @param {string} filename - filename
*/
downloadJobAsset(
id: string,
filename: string,
): Promise<File >
/**
* Get job asset
* @method
* @name SauceLabs#downloadJobAsset
* @param {string} id - job id
* @param {string} filename - filename
*/
downloadJobAsset(id: string, filename: string): Promise<File>;
}
export default SauceLabs;
export default SauceLabs;
{
"name": "saucelabs",
"version": "2.2.0",
"version": "2.2.1",
"author": "Christian Bromann <christian@saucelabs.com>",

@@ -64,2 +64,3 @@ "description": "A wrapper around Sauce Labs REST API",

"npm-run-all": "^4.1.5",
"prettier": "^1.18.2",
"rimraf": "^2.6.2",

@@ -66,0 +67,0 @@ "source-map-support": "^0.5.9",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc