--- title: "Launches a specified lab within an event" slug: "launches-a-specified-lab-within-an-event-1" updated: 2025-08-07T14:39:28Z published: 2025-08-07T14:41:42Z canonical: "docs.skillable.com/launches-a-specified-lab-within-an-event-1" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.skillable.com/llms.txt > Use this file to discover all available pages before exploring further. # Launches a specified lab within an event Get/LaunchForEvent The **LaunchForEvent** command launches a lab instance within an event. SecurityAPI Key: api_keyHeader parameter nameapi_key All methods require an API key, which must be obtained from Skillable. This key is used by Skillable to validate your account. The key can be passed as an HTTP request header with the header name "api_key". Query parameterslabIdinteger (int32) Required The ID of the lab profile. Example100 eventIdinteger (int32) Required The ID of the event the lab is part of. Example24 useridstringRequired The ID you use to identify the user in your external system. Example555 firstnamestringRequired The user’s first name. ExampleJoe lastnamestringRequired The user’s last name. ExampleSmith emailstringRequired The user’s email address. Examplejoe.smith@email.com classIdstring An optional parameter used to associate the lab with a class (see **GetOrCreateClass**). This is the unique identifier of the class as it is represented in your organization. Example1223334444 canBeMarkedCompleteinteger (int32) An optional parameter used to specify if the lab can be marked as complete by the student. 1 = true, 2 = false. If not specified, defaults to 1 (true). Valid values[ 1, 2 ]Default1Example1 tagstring An optional parameter that can be used for tagging the lab instance with your own custom data. ExampleeventLaunch ipAddressstring When specified, Skillable will attempt to launch the lab in the closest available delivery region. You should provide the IP address of the user that is taking the lab, not the IP address of your system. Example1.1.1.1 regionIdinteger (int32) When specified, Skillable will attempt to launch the lab in the specified delivery region if a suitable host in that region is available and all required storage is available in that region. Delivery regions can be found using the **DeliveryRegions** command or **Catalog** command. Using the ipAddress parameter will result in a more reliable geo-location of the lab for the end user. Example1 langstring Allows you to override the language of the Instruction Set as well as the lab client UI language. This affects lab client UI elements like menus, tabs, and dialogs. Using this in connection with **instructionsId** will allow you to select launching labs with a specific Instruction Set in the specified language if they have been defined within the lab profile. NOTE: If this parameter is omitted, or if the specified language is not specified on one of the Instruction sets in a lab profile, then the default language as defined in the **Lab Profile ➔ Manage Instructions Sets** option. en = English es = Spanish fr = French de = German pt = Portuguese ja = Japanese zh-hans = Simplified Chinese zh-hant = Traditional Chinese ko = Korean Valid values[ "en", "es", "fr", "de", "pt", "ja", "zh-hans", "zh-hant", "ko" ]Exampleen instructionsIdstring When specified, Skillable will attempt to launch the lab and present the selected instructions. If not specified, or the instruction Id could not be found, the default instructions, as defined on the Lab Profile, will be used instead. This is a string that cannot contain spaces. NOTE: To be able to see how to use this parameter, add the column "**API Example**" in the **Manage Instruction Sets** feature while editing the instructions. ExampleBase-01 Responses200 OK Response. Example of a successful lab instance launch within an event ```json { "Result": 1, "Url": "https://labondemand.com/console/setup/1b4909d6-0dbe-43db-9ab9-74ee4f913c4e", "LabInstanceId": 3896477, "Expires": 1337977153, "Status": 1, "Error": null } ``` object Resultinteger (int32) Result of the launch command. Possible values are: 0 = Error 1 = Success 2 = User has too many active labs 3 = Insufficient host resources 5 = API integration has too many active labs 6 = User has a saved instance of this lab 7 = API integration doesn't have enough available RAM 10 = User doesn't have enough available RAM 20 = User's organization has too many active labs 30 = User's organization doesn't have enough available RAM 40 = Lab profile has too many active instances 50 = Lab organization doesn't have enough available RAM 60 = Lab organization has too many active instances 70 = Lab series has too many active instances 80 = Lab series doesn't have enough available RAM Urlstring A URL where the lab can be viewed by the user. LabInstanceIdinteger (int64) The Id assigned to the new lab instance. Expiresinteger (int64) When the lab will expire (in Unix epoch time). Statusinteger Indicates the status of the API request. 0 = Error 1 = Success Errorstring | null In the event of an error, this will contain a detailed error message.