Skip to main content

tvlabs projects

The tvlabs projects command group provides tools for discovering and managing TV Labs automation projects from the CLI.

Available Commands


tvlabs projects list

Overview

List all automation projects accessible to your account, including both your own projects and public projects from your organization.

tvlabs projects list

Output Information

The command displays comprehensive information about each project:

  • Project ID - The unique identifier for use with other commands
  • Project Name - Human-readable project name
  • Owner - The project creator/owner
  • Status - draft or published
  • Privacy - team (organization-only) or public
  • Description - Project description (if provided)
  • Targets - Number of configured app/device combinations
  • Updated - Last modification timestamp

Example Output

Available projects:

38b7f95e-5bc7-4c86-b5a8-19ce713813c0 - My TV Automation
Owner: John Doe
Status: published, Privacy: team
Description: Automated testing for our streaming app
Targets: 3, Updated: 2025-04-27 00:20:59

22c545a0-25d6-4cfa-b675-ff1fad55471e - Partner Integration Tests
Owner: Jane Smith
Status: draft, Privacy: team
Targets: 1, Updated: 2025-03-20 19:25:34

Example usage:
tvlabs projects targets --project 38b7f95e-5bc7-4c86-b5a8-19ce713813c0
tvlabs run --project 38b7f95e-5bc7-4c86-b5a8-19ce713813c0 --app <app-id> --device <device-id>

Discovery Workflow

  1. List projects using tvlabs projects list
  2. Discover targets using tvlabs projects targets --project <id>
  3. Run automation using tvlabs run --project <id> --app <app-id> --device <device-id>

tvlabs projects targets

Overview

Discover available app and device combinations for a specific automation project. This command is essential for understanding what --app and --device values you can use with tvlabs run.

tvlabs projects targets --project 123e4567-e89b-12d3-a456-426614174000

Output Information

The command displays three key sections:

Apps

Lists all applications configured in the project with:

  • ID - The identifier to use with --app
  • Name - Human-readable application name
  • Build permissions - Whether you can upload builds for this app

Devices

Lists all devices configured in the project with:

  • ID - The identifier to use with --device
  • Name - Human-readable device description (make, model, year)
  • Platform - The device platform (webOS, Tizen, Android TV, etc.)

Summary

  • Example usage - Ready-to-use command template

Example Output

Available targets for project:

Apps:
- ID: 456, Name: My TV App (builds allowed)
- ID: 789, Name: Partner App
- ID: 101, Name: Streaming Service

Devices:
- ID: 201, Name: LG C2 OLED (2022), Platform: web_os
- ID: 202, Name: Samsung QN90A (2021), Platform: tizen
- ID: 203, Name: Sony X90J (2021), Platform: android_tv

Example usage:
tvlabs run --project 123e4567-e89b-12d3-a456-426614174000 --app 456 --device 201

Access Control

Both projects commands respect the same access controls as the web interface:

  • Private projects - Only accessible to project owners and collaborators
  • Public projects - Accessible to all organization members
  • Build permissions - Indicated in the app listings

If you don't have access to a project, you'll receive an appropriate error message.

Error Handling

The commands provide error messages for common issues:

  • Invalid project ID format: Invalid project ID format. Project ID must be a valid UUID. Please verify that the project id is correct with tvlabs projects list
  • Project not found: Project not found. Please verify that the project id is correct with tvlabs projects list
  • Access denied: You do not have access to this project
  • tvlabs run - Execute project automations using the discovered targets