boxline-sdk 1.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- boxline/__init__.py +180 -0
- boxline/_async_client.py +2089 -0
- boxline/_base.py +267 -0
- boxline/_client.py +2083 -0
- boxline/_errors.py +404 -0
- boxline/_pagination.py +126 -0
- boxline/_version.py +3 -0
- boxline/_webhooks.py +137 -0
- boxline/py.typed +0 -0
- boxline/types.py +1502 -0
- boxline_sdk-1.1.0.dist-info/METADATA +568 -0
- boxline_sdk-1.1.0.dist-info/RECORD +14 -0
- boxline_sdk-1.1.0.dist-info/WHEEL +4 -0
- boxline_sdk-1.1.0.dist-info/licenses/LICENSE +21 -0
boxline/__init__.py
ADDED
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
"""Boxline: cloud browsers and shell sandboxes for AI agents.
|
|
2
|
+
|
|
3
|
+
from boxline import Boxline
|
|
4
|
+
|
|
5
|
+
bx = Boxline() # reads BOXLINE_API_KEY and BOXLINE_API_URL
|
|
6
|
+
with bx.sessions.create(shell=True) as s:
|
|
7
|
+
s.goto("https://example.com")
|
|
8
|
+
print(s.content()["title"])
|
|
9
|
+
print(s.exec("uname -a")["stdout"])
|
|
10
|
+
|
|
11
|
+
``AsyncBoxline`` has the same methods to ``await``. Connect Playwright to a session with
|
|
12
|
+
``chromium.connect_over_cdp(s.connect_url)``.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
from . import types
|
|
16
|
+
from ._async_client import (
|
|
17
|
+
AsyncAgent,
|
|
18
|
+
AsyncApiKeys,
|
|
19
|
+
AsyncAuth,
|
|
20
|
+
AsyncBoxline,
|
|
21
|
+
AsyncContexts,
|
|
22
|
+
AsyncCrawl,
|
|
23
|
+
AsyncExecStream,
|
|
24
|
+
AsyncExtensions,
|
|
25
|
+
AsyncFiles,
|
|
26
|
+
AsyncKeyboard,
|
|
27
|
+
AsyncMouse,
|
|
28
|
+
AsyncProject,
|
|
29
|
+
AsyncSecrets,
|
|
30
|
+
AsyncSession,
|
|
31
|
+
AsyncSessionFiles,
|
|
32
|
+
AsyncSessions,
|
|
33
|
+
AsyncTasks,
|
|
34
|
+
AsyncWebhooks,
|
|
35
|
+
)
|
|
36
|
+
from ._base import IDEMPOTENT_POSTS, NOT_GIVEN, RequestOptions, is_idempotent_post, retry_delay
|
|
37
|
+
from ._client import Agent, ApiKeys, Auth, Boxline, Contexts, Crawl, ExecStream, Extensions, Files, Keyboard, Mouse, Project, Secrets, Session, SessionFiles, Sessions, Tasks, Webhooks
|
|
38
|
+
from ._errors import (
|
|
39
|
+
AuthenticationError,
|
|
40
|
+
BoxlineConnectionError,
|
|
41
|
+
BoxlineError,
|
|
42
|
+
BoxlineTimeoutError,
|
|
43
|
+
CaptchaTimeoutError,
|
|
44
|
+
CrossSiteRequestError,
|
|
45
|
+
ErrorCode,
|
|
46
|
+
ExtensionDeniedError,
|
|
47
|
+
FeatureNotInPlanError,
|
|
48
|
+
IdempotencyInProgressError,
|
|
49
|
+
IdempotencyMismatchError,
|
|
50
|
+
InvalidCursorError,
|
|
51
|
+
InvalidExtensionError,
|
|
52
|
+
LimitReachedError,
|
|
53
|
+
MachineTooOldError,
|
|
54
|
+
MissingVariablesError,
|
|
55
|
+
ModelRefusedError,
|
|
56
|
+
NotContinuableError,
|
|
57
|
+
NotFoundError,
|
|
58
|
+
OutOfViewportError,
|
|
59
|
+
PageTimeoutError,
|
|
60
|
+
NotAWebPageError,
|
|
61
|
+
PageUnreachableError,
|
|
62
|
+
PayloadExpiredError,
|
|
63
|
+
PayloadTooLargeError,
|
|
64
|
+
PlanLimitError,
|
|
65
|
+
ProjectSuspendedError,
|
|
66
|
+
RateLimitError,
|
|
67
|
+
SearchUnavailableError,
|
|
68
|
+
SecretExistsError,
|
|
69
|
+
SecretNotAllowedError,
|
|
70
|
+
SessionNotRunningError,
|
|
71
|
+
TooManyMessagesError,
|
|
72
|
+
RunNotLiveError,
|
|
73
|
+
TooManySecretValuesError,
|
|
74
|
+
VariablesWithExtensionsError,
|
|
75
|
+
WebhookDisabledError,
|
|
76
|
+
WebhookSignatureError,
|
|
77
|
+
WebhooksUnavailableError,
|
|
78
|
+
WebhookUrlNotAllowedError,
|
|
79
|
+
make_error,
|
|
80
|
+
)
|
|
81
|
+
from ._webhooks import SIGNATURE_HEADER as WEBHOOK_SIGNATURE_HEADER
|
|
82
|
+
from ._webhooks import TOLERANCE_SECONDS as WEBHOOK_TOLERANCE_SECONDS
|
|
83
|
+
from ._webhooks import verify_webhook, webhook_signature_header
|
|
84
|
+
from ._pagination import AsyncPage, AsyncPager, Page, Pager
|
|
85
|
+
from ._version import __version__
|
|
86
|
+
|
|
87
|
+
__all__ = [
|
|
88
|
+
"Agent",
|
|
89
|
+
"ApiKeys",
|
|
90
|
+
"AsyncAgent",
|
|
91
|
+
"AsyncApiKeys",
|
|
92
|
+
"AsyncAuth",
|
|
93
|
+
"AsyncBoxline",
|
|
94
|
+
"AsyncContexts",
|
|
95
|
+
"AsyncCrawl",
|
|
96
|
+
"AsyncExecStream",
|
|
97
|
+
"AsyncExtensions",
|
|
98
|
+
"AsyncFiles",
|
|
99
|
+
"AsyncKeyboard",
|
|
100
|
+
"AsyncMouse",
|
|
101
|
+
"AsyncPage",
|
|
102
|
+
"AsyncPager",
|
|
103
|
+
"AsyncProject",
|
|
104
|
+
"AsyncSecrets",
|
|
105
|
+
"AsyncSession",
|
|
106
|
+
"AsyncSessionFiles",
|
|
107
|
+
"AsyncSessions",
|
|
108
|
+
"AsyncTasks",
|
|
109
|
+
"AsyncWebhooks",
|
|
110
|
+
"Auth",
|
|
111
|
+
"AuthenticationError",
|
|
112
|
+
"Boxline",
|
|
113
|
+
"BoxlineConnectionError",
|
|
114
|
+
"BoxlineError",
|
|
115
|
+
"BoxlineTimeoutError",
|
|
116
|
+
"CaptchaTimeoutError",
|
|
117
|
+
"CrossSiteRequestError",
|
|
118
|
+
"Contexts",
|
|
119
|
+
"Crawl",
|
|
120
|
+
"ErrorCode",
|
|
121
|
+
"ExecStream",
|
|
122
|
+
"ExtensionDeniedError",
|
|
123
|
+
"Extensions",
|
|
124
|
+
"FeatureNotInPlanError",
|
|
125
|
+
"Files",
|
|
126
|
+
"IDEMPOTENT_POSTS",
|
|
127
|
+
"IdempotencyInProgressError",
|
|
128
|
+
"IdempotencyMismatchError",
|
|
129
|
+
"InvalidCursorError",
|
|
130
|
+
"InvalidExtensionError",
|
|
131
|
+
"Keyboard",
|
|
132
|
+
"LimitReachedError",
|
|
133
|
+
"MachineTooOldError",
|
|
134
|
+
"MissingVariablesError",
|
|
135
|
+
"ModelRefusedError",
|
|
136
|
+
"Mouse",
|
|
137
|
+
"NOT_GIVEN",
|
|
138
|
+
"NotContinuableError",
|
|
139
|
+
"NotFoundError",
|
|
140
|
+
"OutOfViewportError",
|
|
141
|
+
"SessionNotRunningError",
|
|
142
|
+
"TooManyMessagesError",
|
|
143
|
+
"RunNotLiveError",
|
|
144
|
+
"Page",
|
|
145
|
+
"PageTimeoutError",
|
|
146
|
+
"NotAWebPageError",
|
|
147
|
+
"PageUnreachableError",
|
|
148
|
+
"PayloadExpiredError",
|
|
149
|
+
"PayloadTooLargeError",
|
|
150
|
+
"Pager",
|
|
151
|
+
"PlanLimitError",
|
|
152
|
+
"Project",
|
|
153
|
+
"ProjectSuspendedError",
|
|
154
|
+
"RateLimitError",
|
|
155
|
+
"RequestOptions",
|
|
156
|
+
"SearchUnavailableError",
|
|
157
|
+
"SecretExistsError",
|
|
158
|
+
"SecretNotAllowedError",
|
|
159
|
+
"Secrets",
|
|
160
|
+
"Session",
|
|
161
|
+
"SessionFiles",
|
|
162
|
+
"VariablesWithExtensionsError",
|
|
163
|
+
"Sessions",
|
|
164
|
+
"Tasks",
|
|
165
|
+
"TooManySecretValuesError",
|
|
166
|
+
"WEBHOOK_SIGNATURE_HEADER",
|
|
167
|
+
"WEBHOOK_TOLERANCE_SECONDS",
|
|
168
|
+
"WebhookDisabledError",
|
|
169
|
+
"WebhookSignatureError",
|
|
170
|
+
"WebhookUrlNotAllowedError",
|
|
171
|
+
"Webhooks",
|
|
172
|
+
"WebhooksUnavailableError",
|
|
173
|
+
"__version__",
|
|
174
|
+
"is_idempotent_post",
|
|
175
|
+
"make_error",
|
|
176
|
+
"retry_delay",
|
|
177
|
+
"types",
|
|
178
|
+
"verify_webhook",
|
|
179
|
+
"webhook_signature_header",
|
|
180
|
+
]
|