Skip to content

Commit 1cbb849

Browse files
feat(api): api update
1 parent e42da7c commit 1cbb849

34 files changed

+495
-400
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -35,31 +35,17 @@ jobs:
3535
- name: Run lints
3636
run: ./scripts/lint
3737

38-
build:
38+
upload:
3939
if: github.repository == 'stainless-sdks/browserbase-python' && (github.event_name == 'push' || github.event.pull_request.head.repo.fork)
4040
timeout-minutes: 10
41-
name: build
41+
name: upload
4242
permissions:
4343
contents: read
4444
id-token: write
4545
runs-on: depot-ubuntu-24.04
4646
steps:
4747
- uses: actions/checkout@v4
4848

49-
- name: Install Rye
50-
run: |
51-
curl -sSf https://rye.astral.sh/get | bash
52-
echo "$HOME/.rye/shims" >> $GITHUB_PATH
53-
env:
54-
RYE_VERSION: '0.44.0'
55-
RYE_INSTALL_OPTION: '--yes'
56-
57-
- name: Install dependencies
58-
run: rye sync --all-features
59-
60-
- name: Run build
61-
run: rye build
62-
6349
- name: Get GitHub OIDC Token
6450
id: github-oidc
6551
uses: actions/github-script@v6

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 18
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browserbase%2Fbrowserbase-e2ed1b5267eeff92982918505349017b9155da2c7ab948787ab11cf9068af1b8.yml
3-
openapi_spec_hash: 77cba4a3c422b7378ecc7d57d84ff0b1
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browserbase%2Fbrowserbase-fe7af3b907d79ac271560c1d2e887ed741cfcc08cb8b75596094411a2091e223.yml
3+
openapi_spec_hash: 999fb6ba05cd9be138ff94b787957ce9
44
config_hash: b3ca4ec5b02e5333af51ebc2e9fdef1b

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ from browserbase import Browserbase
134134
client = Browserbase()
135135

136136
session = client.sessions.create(
137-
project_id="projectId",
137+
project_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
138138
browser_settings={},
139139
)
140140
print(session.browser_settings)

api.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,64 +3,64 @@
33
Types:
44

55
```python
6-
from browserbase.types import Context, ContextCreateResponse, ContextUpdateResponse
6+
from browserbase.types import ContextCreateResponse, ContextRetrieveResponse, ContextUpdateResponse
77
```
88

99
Methods:
1010

1111
- <code title="post /v1/contexts">client.contexts.<a href="./src/browserbase/resources/contexts.py">create</a>(\*\*<a href="src/browserbase/types/context_create_params.py">params</a>) -> <a href="./src/browserbase/types/context_create_response.py">ContextCreateResponse</a></code>
12-
- <code title="get /v1/contexts/{id}">client.contexts.<a href="./src/browserbase/resources/contexts.py">retrieve</a>(id) -> <a href="./src/browserbase/types/context.py">Context</a></code>
12+
- <code title="get /v1/contexts/{id}">client.contexts.<a href="./src/browserbase/resources/contexts.py">retrieve</a>(id) -> <a href="./src/browserbase/types/context_retrieve_response.py">ContextRetrieveResponse</a></code>
1313
- <code title="put /v1/contexts/{id}">client.contexts.<a href="./src/browserbase/resources/contexts.py">update</a>(id) -> <a href="./src/browserbase/types/context_update_response.py">ContextUpdateResponse</a></code>
1414

1515
# Extensions
1616

1717
Types:
1818

1919
```python
20-
from browserbase.types import Extension
20+
from browserbase.types import ExtensionCreateResponse, ExtensionRetrieveResponse
2121
```
2222

2323
Methods:
2424

25-
- <code title="post /v1/extensions">client.extensions.<a href="./src/browserbase/resources/extensions.py">create</a>(\*\*<a href="src/browserbase/types/extension_create_params.py">params</a>) -> <a href="./src/browserbase/types/extension.py">Extension</a></code>
26-
- <code title="get /v1/extensions/{id}">client.extensions.<a href="./src/browserbase/resources/extensions.py">retrieve</a>(id) -> <a href="./src/browserbase/types/extension.py">Extension</a></code>
25+
- <code title="post /v1/extensions">client.extensions.<a href="./src/browserbase/resources/extensions.py">create</a>(\*\*<a href="src/browserbase/types/extension_create_params.py">params</a>) -> <a href="./src/browserbase/types/extension_create_response.py">ExtensionCreateResponse</a></code>
26+
- <code title="get /v1/extensions/{id}">client.extensions.<a href="./src/browserbase/resources/extensions.py">retrieve</a>(id) -> <a href="./src/browserbase/types/extension_retrieve_response.py">ExtensionRetrieveResponse</a></code>
2727
- <code title="delete /v1/extensions/{id}">client.extensions.<a href="./src/browserbase/resources/extensions.py">delete</a>(id) -> None</code>
2828

2929
# Projects
3030

3131
Types:
3232

3333
```python
34-
from browserbase.types import Project, ProjectUsage, ProjectListResponse
34+
from browserbase.types import ProjectRetrieveResponse, ProjectListResponse, ProjectUsageResponse
3535
```
3636

3737
Methods:
3838

39-
- <code title="get /v1/projects/{id}">client.projects.<a href="./src/browserbase/resources/projects.py">retrieve</a>(id) -> <a href="./src/browserbase/types/project.py">Project</a></code>
39+
- <code title="get /v1/projects/{id}">client.projects.<a href="./src/browserbase/resources/projects.py">retrieve</a>(id) -> <a href="./src/browserbase/types/project_retrieve_response.py">ProjectRetrieveResponse</a></code>
4040
- <code title="get /v1/projects">client.projects.<a href="./src/browserbase/resources/projects.py">list</a>() -> <a href="./src/browserbase/types/project_list_response.py">ProjectListResponse</a></code>
41-
- <code title="get /v1/projects/{id}/usage">client.projects.<a href="./src/browserbase/resources/projects.py">usage</a>(id) -> <a href="./src/browserbase/types/project_usage.py">ProjectUsage</a></code>
41+
- <code title="get /v1/projects/{id}/usage">client.projects.<a href="./src/browserbase/resources/projects.py">usage</a>(id) -> <a href="./src/browserbase/types/project_usage_response.py">ProjectUsageResponse</a></code>
4242

4343
# Sessions
4444

4545
Types:
4646

4747
```python
4848
from browserbase.types import (
49-
Session,
50-
SessionLiveURLs,
5149
SessionCreateResponse,
5250
SessionRetrieveResponse,
51+
SessionUpdateResponse,
5352
SessionListResponse,
53+
SessionDebugResponse,
5454
)
5555
```
5656

5757
Methods:
5858

5959
- <code title="post /v1/sessions">client.sessions.<a href="./src/browserbase/resources/sessions/sessions.py">create</a>(\*\*<a href="src/browserbase/types/session_create_params.py">params</a>) -> <a href="./src/browserbase/types/session_create_response.py">SessionCreateResponse</a></code>
6060
- <code title="get /v1/sessions/{id}">client.sessions.<a href="./src/browserbase/resources/sessions/sessions.py">retrieve</a>(id) -> <a href="./src/browserbase/types/session_retrieve_response.py">SessionRetrieveResponse</a></code>
61-
- <code title="post /v1/sessions/{id}">client.sessions.<a href="./src/browserbase/resources/sessions/sessions.py">update</a>(id, \*\*<a href="src/browserbase/types/session_update_params.py">params</a>) -> <a href="./src/browserbase/types/session.py">Session</a></code>
61+
- <code title="post /v1/sessions/{id}">client.sessions.<a href="./src/browserbase/resources/sessions/sessions.py">update</a>(id, \*\*<a href="src/browserbase/types/session_update_params.py">params</a>) -> <a href="./src/browserbase/types/session_update_response.py">SessionUpdateResponse</a></code>
6262
- <code title="get /v1/sessions">client.sessions.<a href="./src/browserbase/resources/sessions/sessions.py">list</a>(\*\*<a href="src/browserbase/types/session_list_params.py">params</a>) -> <a href="./src/browserbase/types/session_list_response.py">SessionListResponse</a></code>
63-
- <code title="get /v1/sessions/{id}/debug">client.sessions.<a href="./src/browserbase/resources/sessions/sessions.py">debug</a>(id) -> <a href="./src/browserbase/types/session_live_urls.py">SessionLiveURLs</a></code>
63+
- <code title="get /v1/sessions/{id}/debug">client.sessions.<a href="./src/browserbase/resources/sessions/sessions.py">debug</a>(id) -> <a href="./src/browserbase/types/session_debug_response.py">SessionDebugResponse</a></code>
6464

6565
## Downloads
6666

@@ -73,7 +73,7 @@ Methods:
7373
Types:
7474

7575
```python
76-
from browserbase.types.sessions import SessionLog, LogListResponse
76+
from browserbase.types.sessions import LogListResponse
7777
```
7878

7979
Methods:
@@ -85,7 +85,7 @@ Methods:
8585
Types:
8686

8787
```python
88-
from browserbase.types.sessions import SessionRecording, RecordingRetrieveResponse
88+
from browserbase.types.sessions import RecordingRetrieveResponse
8989
```
9090

9191
Methods:

scripts/utils/upload-artifact.sh

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
#!/usr/bin/env bash
22
set -exuo pipefail
33

4-
FILENAME=$(basename dist/*.whl)
5-
6-
RESPONSE=$(curl -X POST "$URL?filename=$FILENAME" \
4+
RESPONSE=$(curl -X POST "$URL" \
75
-H "Authorization: Bearer $AUTH" \
86
-H "Content-Type: application/json")
97

@@ -14,13 +12,13 @@ if [[ "$SIGNED_URL" == "null" ]]; then
1412
exit 1
1513
fi
1614

17-
UPLOAD_RESPONSE=$(curl -v -X PUT \
18-
-H "Content-Type: binary/octet-stream" \
19-
--data-binary "@dist/$FILENAME" "$SIGNED_URL" 2>&1)
15+
UPLOAD_RESPONSE=$(tar -cz . | curl -v -X PUT \
16+
-H "Content-Type: application/gzip" \
17+
--data-binary @- "$SIGNED_URL" 2>&1)
2018

2119
if echo "$UPLOAD_RESPONSE" | grep -q "HTTP/[0-9.]* 200"; then
2220
echo -e "\033[32mUploaded build to Stainless storage.\033[0m"
23-
echo -e "\033[32mInstallation: pip install 'https://pkg.stainless.com/s/browserbase-python/$SHA/$FILENAME'\033[0m"
21+
echo -e "\033[32mInstallation: pip install 'https://pkg.stainless.com/s/browserbase-python/$SHA'\033[0m"
2422
else
2523
echo -e "\033[31mFailed to upload artifact.\033[0m"
2624
exit 1

src/browserbase/resources/contexts.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
async_to_streamed_response_wrapper,
1717
)
1818
from .._base_client import make_request_options
19-
from ..types.context import Context
2019
from ..types.context_create_response import ContextCreateResponse
2120
from ..types.context_update_response import ContextUpdateResponse
21+
from ..types.context_retrieve_response import ContextRetrieveResponse
2222

2323
__all__ = ["ContextsResource", "AsyncContextsResource"]
2424

@@ -89,9 +89,9 @@ def retrieve(
8989
extra_query: Query | None = None,
9090
extra_body: Body | None = None,
9191
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
92-
) -> Context:
92+
) -> ContextRetrieveResponse:
9393
"""
94-
Context
94+
Get a Context
9595
9696
Args:
9797
extra_headers: Send extra headers
@@ -109,7 +109,7 @@ def retrieve(
109109
options=make_request_options(
110110
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
111111
),
112-
cast_to=Context,
112+
cast_to=ContextRetrieveResponse,
113113
)
114114

115115
def update(
@@ -124,7 +124,7 @@ def update(
124124
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
125125
) -> ContextUpdateResponse:
126126
"""
127-
Update Context
127+
Update a Context
128128
129129
Args:
130130
extra_headers: Send extra headers
@@ -212,9 +212,9 @@ async def retrieve(
212212
extra_query: Query | None = None,
213213
extra_body: Body | None = None,
214214
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
215-
) -> Context:
215+
) -> ContextRetrieveResponse:
216216
"""
217-
Context
217+
Get a Context
218218
219219
Args:
220220
extra_headers: Send extra headers
@@ -232,7 +232,7 @@ async def retrieve(
232232
options=make_request_options(
233233
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
234234
),
235-
cast_to=Context,
235+
cast_to=ContextRetrieveResponse,
236236
)
237237

238238
async def update(
@@ -247,7 +247,7 @@ async def update(
247247
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
248248
) -> ContextUpdateResponse:
249249
"""
250-
Update Context
250+
Update a Context
251251
252252
Args:
253253
extra_headers: Send extra headers

src/browserbase/resources/extensions.py

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@
1818
async_to_streamed_response_wrapper,
1919
)
2020
from .._base_client import make_request_options
21-
from ..types.extension import Extension
21+
from ..types.extension_create_response import ExtensionCreateResponse
22+
from ..types.extension_retrieve_response import ExtensionRetrieveResponse
2223

2324
__all__ = ["ExtensionsResource", "AsyncExtensionsResource"]
2425

@@ -53,7 +54,7 @@ def create(
5354
extra_query: Query | None = None,
5455
extra_body: Body | None = None,
5556
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
56-
) -> Extension:
57+
) -> ExtensionCreateResponse:
5758
"""
5859
Upload an Extension
5960
@@ -79,7 +80,7 @@ def create(
7980
options=make_request_options(
8081
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
8182
),
82-
cast_to=Extension,
83+
cast_to=ExtensionCreateResponse,
8384
)
8485

8586
def retrieve(
@@ -92,9 +93,9 @@ def retrieve(
9293
extra_query: Query | None = None,
9394
extra_body: Body | None = None,
9495
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
95-
) -> Extension:
96+
) -> ExtensionRetrieveResponse:
9697
"""
97-
Extension
98+
Get an Extension
9899
99100
Args:
100101
extra_headers: Send extra headers
@@ -112,7 +113,7 @@ def retrieve(
112113
options=make_request_options(
113114
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
114115
),
115-
cast_to=Extension,
116+
cast_to=ExtensionRetrieveResponse,
116117
)
117118

118119
def delete(
@@ -127,7 +128,7 @@ def delete(
127128
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
128129
) -> None:
129130
"""
130-
Delete Extension
131+
Delete an Extension
131132
132133
Args:
133134
extra_headers: Send extra headers
@@ -180,7 +181,7 @@ async def create(
180181
extra_query: Query | None = None,
181182
extra_body: Body | None = None,
182183
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
183-
) -> Extension:
184+
) -> ExtensionCreateResponse:
184185
"""
185186
Upload an Extension
186187
@@ -206,7 +207,7 @@ async def create(
206207
options=make_request_options(
207208
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
208209
),
209-
cast_to=Extension,
210+
cast_to=ExtensionCreateResponse,
210211
)
211212

212213
async def retrieve(
@@ -219,9 +220,9 @@ async def retrieve(
219220
extra_query: Query | None = None,
220221
extra_body: Body | None = None,
221222
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
222-
) -> Extension:
223+
) -> ExtensionRetrieveResponse:
223224
"""
224-
Extension
225+
Get an Extension
225226
226227
Args:
227228
extra_headers: Send extra headers
@@ -239,7 +240,7 @@ async def retrieve(
239240
options=make_request_options(
240241
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
241242
),
242-
cast_to=Extension,
243+
cast_to=ExtensionRetrieveResponse,
243244
)
244245

245246
async def delete(
@@ -254,7 +255,7 @@ async def delete(
254255
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
255256
) -> None:
256257
"""
257-
Delete Extension
258+
Delete an Extension
258259
259260
Args:
260261
extra_headers: Send extra headers

0 commit comments

Comments
 (0)