3434 computer_drag_mouse_params ,
3535 computer_move_mouse_params ,
3636 computer_click_mouse_params ,
37+ computer_write_clipboard_params ,
3738 computer_capture_screenshot_params ,
3839 computer_set_cursor_visibility_params ,
3940)
41+ from ...types .browsers .computer_read_clipboard_response import ComputerReadClipboardResponse
4042from ...types .browsers .computer_get_mouse_position_response import ComputerGetMousePositionResponse
4143from ...types .browsers .computer_set_cursor_visibility_response import ComputerSetCursorVisibilityResponse
4244
@@ -408,6 +410,39 @@ def press_key(
408410 cast_to = NoneType ,
409411 )
410412
413+ def read_clipboard (
414+ self ,
415+ id : str ,
416+ * ,
417+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
418+ # The extra values given here take precedence over values defined on the client or passed to this method.
419+ extra_headers : Headers | None = None ,
420+ extra_query : Query | None = None ,
421+ extra_body : Body | None = None ,
422+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
423+ ) -> ComputerReadClipboardResponse :
424+ """
425+ Read text from the clipboard on the browser instance
426+
427+ Args:
428+ extra_headers: Send extra headers
429+
430+ extra_query: Add additional query parameters to the request
431+
432+ extra_body: Add additional JSON properties to the request
433+
434+ timeout: Override the client-level default timeout for this request, in seconds
435+ """
436+ if not id :
437+ raise ValueError (f"Expected a non-empty value for `id` but received { id !r} " )
438+ return self ._post (
439+ f"/browsers/{ id } /computer/clipboard/read" ,
440+ options = make_request_options (
441+ extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
442+ ),
443+ cast_to = ComputerReadClipboardResponse ,
444+ )
445+
411446 def scroll (
412447 self ,
413448 id : str ,
@@ -553,6 +588,44 @@ def type_text(
553588 cast_to = NoneType ,
554589 )
555590
591+ def write_clipboard (
592+ self ,
593+ id : str ,
594+ * ,
595+ text : str ,
596+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
597+ # The extra values given here take precedence over values defined on the client or passed to this method.
598+ extra_headers : Headers | None = None ,
599+ extra_query : Query | None = None ,
600+ extra_body : Body | None = None ,
601+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
602+ ) -> None :
603+ """
604+ Write text to the clipboard on the browser instance
605+
606+ Args:
607+ text: Text to write to the system clipboard
608+
609+ extra_headers: Send extra headers
610+
611+ extra_query: Add additional query parameters to the request
612+
613+ extra_body: Add additional JSON properties to the request
614+
615+ timeout: Override the client-level default timeout for this request, in seconds
616+ """
617+ if not id :
618+ raise ValueError (f"Expected a non-empty value for `id` but received { id !r} " )
619+ extra_headers = {"Accept" : "*/*" , ** (extra_headers or {})}
620+ return self ._post (
621+ f"/browsers/{ id } /computer/clipboard/write" ,
622+ body = maybe_transform ({"text" : text }, computer_write_clipboard_params .ComputerWriteClipboardParams ),
623+ options = make_request_options (
624+ extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
625+ ),
626+ cast_to = NoneType ,
627+ )
628+
556629
557630class AsyncComputerResource (AsyncAPIResource ):
558631 @cached_property
@@ -919,6 +992,39 @@ async def press_key(
919992 cast_to = NoneType ,
920993 )
921994
995+ async def read_clipboard (
996+ self ,
997+ id : str ,
998+ * ,
999+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1000+ # The extra values given here take precedence over values defined on the client or passed to this method.
1001+ extra_headers : Headers | None = None ,
1002+ extra_query : Query | None = None ,
1003+ extra_body : Body | None = None ,
1004+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
1005+ ) -> ComputerReadClipboardResponse :
1006+ """
1007+ Read text from the clipboard on the browser instance
1008+
1009+ Args:
1010+ extra_headers: Send extra headers
1011+
1012+ extra_query: Add additional query parameters to the request
1013+
1014+ extra_body: Add additional JSON properties to the request
1015+
1016+ timeout: Override the client-level default timeout for this request, in seconds
1017+ """
1018+ if not id :
1019+ raise ValueError (f"Expected a non-empty value for `id` but received { id !r} " )
1020+ return await self ._post (
1021+ f"/browsers/{ id } /computer/clipboard/read" ,
1022+ options = make_request_options (
1023+ extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
1024+ ),
1025+ cast_to = ComputerReadClipboardResponse ,
1026+ )
1027+
9221028 async def scroll (
9231029 self ,
9241030 id : str ,
@@ -1064,6 +1170,46 @@ async def type_text(
10641170 cast_to = NoneType ,
10651171 )
10661172
1173+ async def write_clipboard (
1174+ self ,
1175+ id : str ,
1176+ * ,
1177+ text : str ,
1178+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1179+ # The extra values given here take precedence over values defined on the client or passed to this method.
1180+ extra_headers : Headers | None = None ,
1181+ extra_query : Query | None = None ,
1182+ extra_body : Body | None = None ,
1183+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
1184+ ) -> None :
1185+ """
1186+ Write text to the clipboard on the browser instance
1187+
1188+ Args:
1189+ text: Text to write to the system clipboard
1190+
1191+ extra_headers: Send extra headers
1192+
1193+ extra_query: Add additional query parameters to the request
1194+
1195+ extra_body: Add additional JSON properties to the request
1196+
1197+ timeout: Override the client-level default timeout for this request, in seconds
1198+ """
1199+ if not id :
1200+ raise ValueError (f"Expected a non-empty value for `id` but received { id !r} " )
1201+ extra_headers = {"Accept" : "*/*" , ** (extra_headers or {})}
1202+ return await self ._post (
1203+ f"/browsers/{ id } /computer/clipboard/write" ,
1204+ body = await async_maybe_transform (
1205+ {"text" : text }, computer_write_clipboard_params .ComputerWriteClipboardParams
1206+ ),
1207+ options = make_request_options (
1208+ extra_headers = extra_headers , extra_query = extra_query , extra_body = extra_body , timeout = timeout
1209+ ),
1210+ cast_to = NoneType ,
1211+ )
1212+
10671213
10681214class ComputerResourceWithRawResponse :
10691215 def __init__ (self , computer : ComputerResource ) -> None :
@@ -1091,6 +1237,9 @@ def __init__(self, computer: ComputerResource) -> None:
10911237 self .press_key = to_raw_response_wrapper (
10921238 computer .press_key ,
10931239 )
1240+ self .read_clipboard = to_raw_response_wrapper (
1241+ computer .read_clipboard ,
1242+ )
10941243 self .scroll = to_raw_response_wrapper (
10951244 computer .scroll ,
10961245 )
@@ -1100,6 +1249,9 @@ def __init__(self, computer: ComputerResource) -> None:
11001249 self .type_text = to_raw_response_wrapper (
11011250 computer .type_text ,
11021251 )
1252+ self .write_clipboard = to_raw_response_wrapper (
1253+ computer .write_clipboard ,
1254+ )
11031255
11041256
11051257class AsyncComputerResourceWithRawResponse :
@@ -1128,6 +1280,9 @@ def __init__(self, computer: AsyncComputerResource) -> None:
11281280 self .press_key = async_to_raw_response_wrapper (
11291281 computer .press_key ,
11301282 )
1283+ self .read_clipboard = async_to_raw_response_wrapper (
1284+ computer .read_clipboard ,
1285+ )
11311286 self .scroll = async_to_raw_response_wrapper (
11321287 computer .scroll ,
11331288 )
@@ -1137,6 +1292,9 @@ def __init__(self, computer: AsyncComputerResource) -> None:
11371292 self .type_text = async_to_raw_response_wrapper (
11381293 computer .type_text ,
11391294 )
1295+ self .write_clipboard = async_to_raw_response_wrapper (
1296+ computer .write_clipboard ,
1297+ )
11401298
11411299
11421300class ComputerResourceWithStreamingResponse :
@@ -1165,6 +1323,9 @@ def __init__(self, computer: ComputerResource) -> None:
11651323 self .press_key = to_streamed_response_wrapper (
11661324 computer .press_key ,
11671325 )
1326+ self .read_clipboard = to_streamed_response_wrapper (
1327+ computer .read_clipboard ,
1328+ )
11681329 self .scroll = to_streamed_response_wrapper (
11691330 computer .scroll ,
11701331 )
@@ -1174,6 +1335,9 @@ def __init__(self, computer: ComputerResource) -> None:
11741335 self .type_text = to_streamed_response_wrapper (
11751336 computer .type_text ,
11761337 )
1338+ self .write_clipboard = to_streamed_response_wrapper (
1339+ computer .write_clipboard ,
1340+ )
11771341
11781342
11791343class AsyncComputerResourceWithStreamingResponse :
@@ -1202,6 +1366,9 @@ def __init__(self, computer: AsyncComputerResource) -> None:
12021366 self .press_key = async_to_streamed_response_wrapper (
12031367 computer .press_key ,
12041368 )
1369+ self .read_clipboard = async_to_streamed_response_wrapper (
1370+ computer .read_clipboard ,
1371+ )
12051372 self .scroll = async_to_streamed_response_wrapper (
12061373 computer .scroll ,
12071374 )
@@ -1211,3 +1378,6 @@ def __init__(self, computer: AsyncComputerResource) -> None:
12111378 self .type_text = async_to_streamed_response_wrapper (
12121379 computer .type_text ,
12131380 )
1381+ self .write_clipboard = async_to_streamed_response_wrapper (
1382+ computer .write_clipboard ,
1383+ )
0 commit comments