Upload XCUITest test suites for Apple TV via App Automate API
Upload a zipped test suite to BrowserStack and get a test suite URL to use when you start a build.
To test your tvOS app on Apple TV devices using XCUITest, you also need to upload your test suite (.zip file) to BrowserStack servers. Use this REST API endpoint to upload your test suite.
Upload a test suite
Upload your XCUITest test suite for tvOS. The .zip file must contain your <Name>-Runner.app built for the tvOS SDK (appletvos), with UIDeviceFamily in its Info.plist containing 3.
Request parameters
Request
curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" \
-X POST "https://api-cloud.browserstack.com/app-automate/xcuitest/v2/test-suite" \
-F "file=@/path/to/test-suite/YourTVAppUITests.zip"
-
file File
File to upload. Ensure that the request’s content type is set to
multipart/form-data. In cURL, you can do this using-Foption. Eitherfileorurlparameter is required. -
url String
Remote URL to your test suite. Ensure that it’s a publicly accessible URL as BrowserStack will attempt to download the test suite from this location. Either
fileorurlparameter is required. -
custom_id String
Custom ID for the test suite. Accepted characters are
A-Z,a-z,0-9,.,-,_. All other characters are ignored. Character limit is 100. Refer to upload test suites for Apple TV to know more.
Response attributes 200 OK application/json
Response
{
"test_suite_name": "YourTVAppUITests.zip",
"test_suite_url": "bs://<hashed_test_suite_id>",
"test_suite_id": "<hashed_test_suite_id>",
"uploaded_at": "2026-11-03 06:17:50 UTC",
"expiry": "2026-12-03 06:17:50 UTC",
"framework": "xcuitest"
}
-
test_suite_name String
Filename of the uploaded test suite.
-
test_suite_url String
Unique identifier returned upon successful upload of your test suite on BrowserStack. This value can be used later to specify the test suite for your XCUI test execution.
Example:bs://c8ddcb5649a8280ca800075bfd8f151115bba6b3 -
test_suite_id String
Unique identifier returned upon successful upload of your test suite on BrowserStack.
Example:c8ddcb5649a8280ca800075bfd8f151115bba6b3 -
uploaded_at String
Test suite upload timestamp.
-
framework String
Name of the automation framework. This is set to
xcuitestby default. -
custom_id String
Custom ID defined for the uploaded test suite.
Example:SampleTest. Accepted characters areA-Z,a-z,0-9,.,-,_. All other characters are ignored. Character limit is 100. -
expiry String
By default, an uploaded test suite expires in 30 days. Upon expiry, the uploaded test suite is deleted from BrowserStack servers and thus can no longer be tested.
We're sorry to hear that. Please share your feedback so we can do better
Contact our Support team for immediate help while we work on improving our docs.