tidy3d.web.upload(simulation: Union[tidy3d.components.simulation.Simulation, tidy3d.components.heat.simulation.HeatSimulation], task_name: str, folder_name: str = 'default', callback_url: str = None, verbose: bool = True, progress_callback: Callable[[float], None] = None, simulation_type: str = 'tidy3d', parent_tasks: List[str] = None, source_required: bool = True) str#

Upload a simulation to the server, but do not start running.

  • simulation (Union[Simulation, HeatSimulation]) – Simulation to upload to server.

  • task_name (str) – Name of task.

  • folder_name (str) – Name of folder to store task on web UI

  • callback_url (str = None) – Http PUT url to receive simulation finish event. The body content is a json file with fields {'id', 'status', 'name', 'workUnit', 'solverVersion'}.

  • verbose (bool = True) – If True, will print progressbars and status, otherwise, will run silently.

  • progress_callback (Callable[[float], None] = None) – Optional callback function called when uploading file with bytes_in_chunk as argument.

  • simulation_type (str) – Type of simulation being uploaded.

  • parent_tasks (List[str]) – List of related task ids.

  • source_required (bool = True) – If True, simulations without sources will raise an error before being uploaded.


Unique identifier of task on server.

Return type



To start the simulation running, must call start() after uploaded.