--- title: "system.tag.writeSynchronous" description: "Performs a write to a tag, synchronously." --- # system.tag.writeSynchronous > Performs a write to a tag, synchronously. This function is used in **Python Scripting**. ## Description Performs a write to a tag, synchronously. This means that you know at the end of this function whether or not the write succeeded or not. A write that fails or times out will throw an error. However, this function cannot be called from the event dispatch thread, which means that it cannot be called directly from a GUI event like a button press, without wrapping it in a system.util.invokeAsynchronous. You can call this from project event scripts like timer scripts. ## Client Permission Restrictions This scripting function has no [Client Permission](projects\project-properties\project-properties.md#client---permissions) restrictions. ## Syntax - Vision Client `system.tag.writeSynchronous(tagPath, value [, timeout])` ### Parameters | Type | Parameter | Description | |---|---|---| | String | `tagPath` | The path of the tag to write to. | | Object | `value` | The value to write. | | int | `timeout` | How long to wait in milliseconds before timing out pending writes. The default is 45000 milliseconds. [optional] | ### Returns Nothing ### Scope Client ## Syntax - Gateway `system.tag.writeSynchronous(tagPath, value)` ### Parameters | Type | Parameter | Description | |---|---|---| | String | `tagPath` | The path of the tag to write to. | | Object | `value` | The value to write. | ### Returns Nothing ### Scope Gateway ## Code Examples ```python title="Example #1" # This code would write the value 1 to a tag. It will continue immediately on success or failure, or wait up to 38 seconds if the write is pending. system.tag.writeSynchronous("Tags/T5", 1, 38000) # This line will not be reached until the tag write succeeds, fails, or has been # pending for at least 38 seconds. ```