Skip to content

Commit 5867532

Browse files
feat(api): api update
1 parent 151d56b commit 5867532

29 files changed

+1304
-512
lines changed

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 22
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browser-use%2Fbrowser-use-86040fd18419e7b4e0947660d9c0ff1abe21550528d2d2a549736cd16f85a92d.yml
3-
openapi_spec_hash: 7c5de9d0f633db35fd9e250fcc834d1f
1+
configured_endpoints: 21
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browser-use%2Fbrowser-use-9ff5409663c58ae9e3ecc9ac764956189e3a70600f5ba1b961bb1dedf0208271.yml
3+
openapi_spec_hash: 9865acb75430d9b799502acbae860df0
44
config_hash: 99e0e445bc20c5723030c315bab52940

README.md

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -25,33 +25,26 @@ pip install browser-use-sdk
2525
The full API of this library can be found in [api.md](api.md).
2626

2727
```python
28-
import os
2928
from browser_use_sdk import BrowserUse
3029

3130
client = BrowserUse(
32-
api_key=os.environ.get("BROWSER_USE_API_KEY"), # This is the default and can be omitted
31+
api_key="My API Key",
3332
)
3433

3534
tasks = client.tasks.list()
3635
print(tasks.items)
3736
```
3837

39-
While you can provide an `api_key` keyword argument,
40-
we recommend using [python-dotenv](https://pypi.org/project/python-dotenv/)
41-
to add `BROWSER_USE_API_KEY="My API Key"` to your `.env` file
42-
so that your API Key is not stored in source control.
43-
4438
## Async usage
4539

4640
Simply import `AsyncBrowserUse` instead of `BrowserUse` and use `await` with each API call:
4741

4842
```python
49-
import os
5043
import asyncio
5144
from browser_use_sdk import AsyncBrowserUse
5245

5346
client = AsyncBrowserUse(
54-
api_key=os.environ.get("BROWSER_USE_API_KEY"), # This is the default and can be omitted
47+
api_key="My API Key",
5548
)
5649

5750

@@ -112,7 +105,9 @@ Nested parameters are dictionaries, typed using `TypedDict`, for example:
112105
```python
113106
from browser_use_sdk import BrowserUse
114107

115-
client = BrowserUse()
108+
client = BrowserUse(
109+
api_key="My API Key",
110+
)
116111

117112
task_view = client.tasks.create(
118113
task="x",
@@ -134,7 +129,9 @@ All errors inherit from `browser_use_sdk.APIError`.
134129
import browser_use_sdk
135130
from browser_use_sdk import BrowserUse
136131

137-
client = BrowserUse()
132+
client = BrowserUse(
133+
api_key="My API Key",
134+
)
138135

139136
try:
140137
client.tasks.list()
@@ -175,6 +172,7 @@ from browser_use_sdk import BrowserUse
175172

176173
# Configure the default for all requests:
177174
client = BrowserUse(
175+
api_key="My API Key",
178176
# default is 2
179177
max_retries=0,
180178
)
@@ -193,12 +191,14 @@ from browser_use_sdk import BrowserUse
193191

194192
# Configure the default for all requests:
195193
client = BrowserUse(
194+
api_key="My API Key",
196195
# 20 seconds (default is 1 minute)
197196
timeout=20.0,
198197
)
199198

200199
# More granular control:
201200
client = BrowserUse(
201+
api_key="My API Key",
202202
timeout=httpx.Timeout(60.0, read=5.0, write=10.0, connect=2.0),
203203
)
204204

@@ -243,7 +243,9 @@ The "raw" Response object can be accessed by prefixing `.with_raw_response.` to
243243
```py
244244
from browser_use_sdk import BrowserUse
245245

246-
client = BrowserUse()
246+
client = BrowserUse(
247+
api_key="My API Key",
248+
)
247249
response = client.tasks.with_raw_response.list()
248250
print(response.headers.get('X-My-Header'))
249251

@@ -318,6 +320,7 @@ import httpx
318320
from browser_use_sdk import BrowserUse, DefaultHttpxClient
319321

320322
client = BrowserUse(
323+
api_key="My API Key",
321324
# Or use the `BROWSER_USE_BASE_URL` env var
322325
base_url="http://my.test.server.example.com:8083",
323326
http_client=DefaultHttpxClient(
@@ -340,7 +343,9 @@ By default the library closes underlying HTTP connections whenever the client is
340343
```py
341344
from browser_use_sdk import BrowserUse
342345

343-
with BrowserUse() as client:
346+
with BrowserUse(
347+
api_key="My API Key",
348+
) as client:
344349
# make requests here
345350
...
346351

api.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,18 @@ from browser_use_sdk.types import (
77
LlmModel,
88
TaskStatus,
99
TaskView,
10-
TaskRetrieveResponse,
1110
TaskListResponse,
1211
TaskRetrieveLogsResponse,
13-
TaskRetrieveOutputFileResponse,
1412
)
1513
```
1614

1715
Methods:
1816

1917
- <code title="post /tasks">client.tasks.<a href="./src/browser_use_sdk/resources/tasks.py">create</a>(\*\*<a href="src/browser_use_sdk/types/task_create_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/task_view.py">TaskView</a></code>
20-
- <code title="get /tasks/{task_id}">client.tasks.<a href="./src/browser_use_sdk/resources/tasks.py">retrieve</a>(task_id, \*\*<a href="src/browser_use_sdk/types/task_retrieve_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/task_retrieve_response.py">TaskRetrieveResponse</a></code>
18+
- <code title="get /tasks/{task_id}">client.tasks.<a href="./src/browser_use_sdk/resources/tasks.py">retrieve</a>(task_id) -> <a href="./src/browser_use_sdk/types/task_view.py">TaskView</a></code>
2119
- <code title="patch /tasks/{task_id}">client.tasks.<a href="./src/browser_use_sdk/resources/tasks.py">update</a>(task_id, \*\*<a href="src/browser_use_sdk/types/task_update_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/task_view.py">TaskView</a></code>
2220
- <code title="get /tasks">client.tasks.<a href="./src/browser_use_sdk/resources/tasks.py">list</a>(\*\*<a href="src/browser_use_sdk/types/task_list_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/task_list_response.py">TaskListResponse</a></code>
2321
- <code title="get /tasks/{task_id}/logs">client.tasks.<a href="./src/browser_use_sdk/resources/tasks.py">retrieve_logs</a>(task_id) -> <a href="./src/browser_use_sdk/types/task_retrieve_logs_response.py">TaskRetrieveLogsResponse</a></code>
24-
- <code title="get /tasks/{task_id}/output-files/{file_name}">client.tasks.<a href="./src/browser_use_sdk/resources/tasks.py">retrieve_output_file</a>(file_name, \*, task_id) -> <a href="./src/browser_use_sdk/types/task_retrieve_output_file_response.py">TaskRetrieveOutputFileResponse</a></code>
2522

2623
# Sessions
2724

@@ -49,7 +46,7 @@ Methods:
4946

5047
- <code title="post /sessions/{session_id}/public-share">client.sessions.public_share.<a href="./src/browser_use_sdk/resources/sessions/public_share.py">create</a>(session_id) -> <a href="./src/browser_use_sdk/types/sessions/share_view.py">ShareView</a></code>
5148
- <code title="get /sessions/{session_id}/public-share">client.sessions.public_share.<a href="./src/browser_use_sdk/resources/sessions/public_share.py">retrieve</a>(session_id) -> <a href="./src/browser_use_sdk/types/sessions/share_view.py">ShareView</a></code>
52-
- <code title="delete /sessions/{session_id}/public-share">client.sessions.public_share.<a href="./src/browser_use_sdk/resources/sessions/public_share.py">delete</a>(session_id) -> object</code>
49+
- <code title="delete /sessions/{session_id}/public-share">client.sessions.public_share.<a href="./src/browser_use_sdk/resources/sessions/public_share.py">delete</a>(session_id) -> None</code>
5350

5451
# BrowserProfiles
5552

@@ -65,7 +62,7 @@ Methods:
6562
- <code title="get /browser-profiles/{profile_id}">client.browser_profiles.<a href="./src/browser_use_sdk/resources/browser_profiles.py">retrieve</a>(profile_id) -> <a href="./src/browser_use_sdk/types/browser_profile_view.py">BrowserProfileView</a></code>
6663
- <code title="patch /browser-profiles/{profile_id}">client.browser_profiles.<a href="./src/browser_use_sdk/resources/browser_profiles.py">update</a>(profile_id, \*\*<a href="src/browser_use_sdk/types/browser_profile_update_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/browser_profile_view.py">BrowserProfileView</a></code>
6764
- <code title="get /browser-profiles">client.browser_profiles.<a href="./src/browser_use_sdk/resources/browser_profiles.py">list</a>(\*\*<a href="src/browser_use_sdk/types/browser_profile_list_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/browser_profile_list_response.py">BrowserProfileListResponse</a></code>
68-
- <code title="delete /browser-profiles/{profile_id}">client.browser_profiles.<a href="./src/browser_use_sdk/resources/browser_profiles.py">delete</a>(profile_id) -> object</code>
65+
- <code title="delete /browser-profiles/{profile_id}">client.browser_profiles.<a href="./src/browser_use_sdk/resources/browser_profiles.py">delete</a>(profile_id) -> None</code>
6966

7067
# AgentProfiles
7168

@@ -81,4 +78,4 @@ Methods:
8178
- <code title="get /agent-profiles/{profile_id}">client.agent_profiles.<a href="./src/browser_use_sdk/resources/agent_profiles.py">retrieve</a>(profile_id) -> <a href="./src/browser_use_sdk/types/agent_profile_view.py">AgentProfileView</a></code>
8279
- <code title="patch /agent-profiles/{profile_id}">client.agent_profiles.<a href="./src/browser_use_sdk/resources/agent_profiles.py">update</a>(profile_id, \*\*<a href="src/browser_use_sdk/types/agent_profile_update_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/agent_profile_view.py">AgentProfileView</a></code>
8380
- <code title="get /agent-profiles">client.agent_profiles.<a href="./src/browser_use_sdk/resources/agent_profiles.py">list</a>(\*\*<a href="src/browser_use_sdk/types/agent_profile_list_params.py">params</a>) -> <a href="./src/browser_use_sdk/types/agent_profile_list_response.py">AgentProfileListResponse</a></code>
84-
- <code title="delete /agent-profiles/{profile_id}">client.agent_profiles.<a href="./src/browser_use_sdk/resources/agent_profiles.py">delete</a>(profile_id) -> object</code>
81+
- <code title="delete /agent-profiles/{profile_id}">client.agent_profiles.<a href="./src/browser_use_sdk/resources/agent_profiles.py">delete</a>(profile_id) -> None</code>

src/browser_use_sdk/_client.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -117,12 +117,6 @@ def __init__(
117117
def qs(self) -> Querystring:
118118
return Querystring(array_format="comma")
119119

120-
@property
121-
@override
122-
def auth_headers(self) -> dict[str, str]:
123-
api_key = self.api_key
124-
return {"X-Browser-Use-API-Key": api_key}
125-
126120
@property
127121
@override
128122
def default_headers(self) -> dict[str, str | Omit]:
@@ -291,12 +285,6 @@ def __init__(
291285
def qs(self) -> Querystring:
292286
return Querystring(array_format="comma")
293287

294-
@property
295-
@override
296-
def auth_headers(self) -> dict[str, str]:
297-
api_key = self.api_key
298-
return {"X-Browser-Use-API-Key": api_key}
299-
300288
@property
301289
@override
302290
def default_headers(self) -> dict[str, str | Omit]:

0 commit comments

Comments
 (0)