@butterbase/sdk 2.3.4 → 2.5.0
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.
- package/README.md +339 -339
- package/dist/admin/types.d.ts +17 -3
- package/dist/admin/types.d.ts.map +1 -1
- package/package.json +51 -51
package/README.md
CHANGED
|
@@ -1,339 +1,339 @@
|
|
|
1
|
-
# @butterbase/sdk
|
|
2
|
-
|
|
3
|
-
Universal TypeScript SDK for Butterbase - works in browser, Node.js, and Deno environments.
|
|
4
|
-
|
|
5
|
-
## Installation
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install @butterbase/sdk
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Quick Start
|
|
12
|
-
|
|
13
|
-
```typescript
|
|
14
|
-
import { createClient } from '@butterbase/sdk';
|
|
15
|
-
|
|
16
|
-
// Initialize client.
|
|
17
|
-
// apiUrl is the same regardless of which region your app lives in —
|
|
18
|
-
// requests are routed to the right region automatically.
|
|
19
|
-
const butterbase = createClient({
|
|
20
|
-
appId: 'app_abc123',
|
|
21
|
-
apiUrl: 'https://api.butterbase.ai',
|
|
22
|
-
anonKey: 'your-anon-key' // Optional, for public access
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
// Query data
|
|
26
|
-
const { data, error } = await butterbase
|
|
27
|
-
.from('posts')
|
|
28
|
-
.select('*')
|
|
29
|
-
.eq('status', 'published')
|
|
30
|
-
.order('created_at', { ascending: false })
|
|
31
|
-
.limit(10);
|
|
32
|
-
|
|
33
|
-
// Insert data
|
|
34
|
-
const { data, error } = await butterbase
|
|
35
|
-
.from('posts')
|
|
36
|
-
.insert({ title: 'Hello World', content: 'My first post' });
|
|
37
|
-
|
|
38
|
-
// Update data
|
|
39
|
-
const { data, error } = await butterbase
|
|
40
|
-
.from('posts')
|
|
41
|
-
.update({ status: 'archived' })
|
|
42
|
-
.eq('id', '123');
|
|
43
|
-
|
|
44
|
-
// Delete data
|
|
45
|
-
const { data, error } = await butterbase
|
|
46
|
-
.from('posts')
|
|
47
|
-
.delete()
|
|
48
|
-
.eq('id', '123');
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Migration from 0.x to 1.0
|
|
52
|
-
|
|
53
|
-
**Breaking Change:** The `authUrl` parameter has been removed. All auth endpoints now run on the same URL as the API.
|
|
54
|
-
|
|
55
|
-
**Before (0.x):**
|
|
56
|
-
```typescript
|
|
57
|
-
const butterbase = createClient({
|
|
58
|
-
appId: 'app_abc123',
|
|
59
|
-
apiUrl: 'https://api.butterbase.ai',
|
|
60
|
-
authUrl: 'https://auth.butterbase.com', // ❌ No longer needed
|
|
61
|
-
});
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
**After (1.0):**
|
|
65
|
-
```typescript
|
|
66
|
-
const butterbase = createClient({
|
|
67
|
-
appId: 'app_abc123',
|
|
68
|
-
apiUrl: 'https://api.butterbase.ai', // ✅ All endpoints use this URL
|
|
69
|
-
});
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
## Authentication
|
|
73
|
-
|
|
74
|
-
Sessions are automatically persisted to `localStorage` and restored on page refresh. Access tokens are automatically refreshed before they expire.
|
|
75
|
-
|
|
76
|
-
```typescript
|
|
77
|
-
// Sign up
|
|
78
|
-
const { data, error } = await butterbase.auth.signUp({
|
|
79
|
-
email: 'user@example.com',
|
|
80
|
-
password: 'secure123'
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
// Sign in (session is automatically persisted)
|
|
84
|
-
const { data, error } = await butterbase.auth.signIn({
|
|
85
|
-
email: 'user@example.com',
|
|
86
|
-
password: 'secure123'
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
// Get current user (works after page refresh)
|
|
90
|
-
const { data: user } = await butterbase.auth.getUser();
|
|
91
|
-
|
|
92
|
-
// Sign out (clears persisted session)
|
|
93
|
-
await butterbase.auth.signOut();
|
|
94
|
-
|
|
95
|
-
// Refresh session manually (uses stored refresh token if none provided)
|
|
96
|
-
const { data } = await butterbase.auth.refreshSession();
|
|
97
|
-
|
|
98
|
-
// OAuth
|
|
99
|
-
const { url } = butterbase.auth.signInWithOAuth({
|
|
100
|
-
provider: 'google',
|
|
101
|
-
redirectTo: 'http://localhost:3000/callback'
|
|
102
|
-
});
|
|
103
|
-
window.location.href = url;
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
### Auth State Changes
|
|
107
|
-
|
|
108
|
-
Subscribe to authentication events to react to sign-ins, sign-outs, and token refreshes:
|
|
109
|
-
|
|
110
|
-
```typescript
|
|
111
|
-
const { unsubscribe } = butterbase.onAuthStateChange((event, session) => {
|
|
112
|
-
// event: 'SIGNED_IN' | 'SIGNED_OUT' | 'TOKEN_REFRESHED' | 'SESSION_RESTORED'
|
|
113
|
-
console.log(event, session?.user);
|
|
114
|
-
});
|
|
115
|
-
|
|
116
|
-
// Stop listening
|
|
117
|
-
unsubscribe();
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
### React Usage
|
|
121
|
-
|
|
122
|
-
```typescript
|
|
123
|
-
import { useEffect, useState } from 'react';
|
|
124
|
-
import { butterbase } from './lib';
|
|
125
|
-
|
|
126
|
-
function App() {
|
|
127
|
-
const [user, setUser] = useState(null);
|
|
128
|
-
|
|
129
|
-
useEffect(() => {
|
|
130
|
-
// Session is auto-restored — check current state
|
|
131
|
-
const session = butterbase.sessionManager.getSession();
|
|
132
|
-
if (session) setUser(session.user);
|
|
133
|
-
|
|
134
|
-
// React to future auth changes
|
|
135
|
-
const { unsubscribe } = butterbase.onAuthStateChange((event, session) => {
|
|
136
|
-
setUser(session?.user ?? null);
|
|
137
|
-
});
|
|
138
|
-
return unsubscribe;
|
|
139
|
-
}, []);
|
|
140
|
-
}
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
### Custom Storage
|
|
144
|
-
|
|
145
|
-
By default, the SDK uses `localStorage` with an in-memory fallback for SSR/Node.js environments. You can provide a custom storage adapter:
|
|
146
|
-
|
|
147
|
-
```typescript
|
|
148
|
-
import { createClient, MemorySessionStorage } from '@butterbase/sdk';
|
|
149
|
-
|
|
150
|
-
// Memory-only (no persistence)
|
|
151
|
-
const butterbase = createClient({
|
|
152
|
-
appId: 'app_abc123',
|
|
153
|
-
apiUrl: 'https://api.butterbase.ai',
|
|
154
|
-
persistSession: false,
|
|
155
|
-
});
|
|
156
|
-
|
|
157
|
-
// Custom storage adapter (e.g., for React Native)
|
|
158
|
-
const butterbase = createClient({
|
|
159
|
-
appId: 'app_abc123',
|
|
160
|
-
apiUrl: 'https://api.butterbase.ai',
|
|
161
|
-
sessionStorage: myCustomStorage, // implements { getItem, setItem, removeItem }
|
|
162
|
-
});
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
## Storage
|
|
166
|
-
|
|
167
|
-
```typescript
|
|
168
|
-
// Upload file
|
|
169
|
-
const { data, error } = await butterbase.storage.upload(file);
|
|
170
|
-
|
|
171
|
-
// Get download URL
|
|
172
|
-
const { data } = await butterbase.storage.getDownloadUrl(objectId);
|
|
173
|
-
|
|
174
|
-
// List files
|
|
175
|
-
const { data: objects } = await butterbase.storage.list();
|
|
176
|
-
|
|
177
|
-
// Delete file
|
|
178
|
-
await butterbase.storage.delete(objectId);
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
## Functions
|
|
182
|
-
|
|
183
|
-
```typescript
|
|
184
|
-
// Invoke serverless function
|
|
185
|
-
const { data, error } = await butterbase.functions.invoke('my-function', {
|
|
186
|
-
body: { key: 'value' },
|
|
187
|
-
method: 'POST'
|
|
188
|
-
});
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
## Query Builder
|
|
192
|
-
|
|
193
|
-
### Operators
|
|
194
|
-
|
|
195
|
-
- `eq(column, value)` - Equal to
|
|
196
|
-
- `neq(column, value)` - Not equal to
|
|
197
|
-
- `gt(column, value)` - Greater than
|
|
198
|
-
- `gte(column, value)` - Greater than or equal to
|
|
199
|
-
- `lt(column, value)` - Less than
|
|
200
|
-
- `lte(column, value)` - Less than or equal to
|
|
201
|
-
- `like(column, pattern)` - Pattern matching (case-sensitive)
|
|
202
|
-
- `ilike(column, pattern)` - Pattern matching (case-insensitive)
|
|
203
|
-
- `in(column, values)` - Value in array
|
|
204
|
-
- `is(column, value)` - Is null/true/false
|
|
205
|
-
|
|
206
|
-
### Modifiers
|
|
207
|
-
|
|
208
|
-
- `select(columns)` - Select specific columns
|
|
209
|
-
- `order(column, options)` - Order results
|
|
210
|
-
- `limit(count)` - Limit results
|
|
211
|
-
- `offset(count)` - Skip results
|
|
212
|
-
|
|
213
|
-
## Usage in Deno
|
|
214
|
-
|
|
215
|
-
```typescript
|
|
216
|
-
import { createClient } from 'npm:@butterbase/sdk';
|
|
217
|
-
|
|
218
|
-
const butterbase = createClient({
|
|
219
|
-
appId: Deno.env.get('BUTTERBASE_APP_ID')!,
|
|
220
|
-
apiUrl: Deno.env.get('BUTTERBASE_API_URL')!,
|
|
221
|
-
});
|
|
222
|
-
|
|
223
|
-
// Use in serverless functions
|
|
224
|
-
export async function handler(req: Request, ctx: any) {
|
|
225
|
-
const { data } = await butterbase.from('posts').select('*');
|
|
226
|
-
return Response.json({ data });
|
|
227
|
-
}
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
## TypeScript Support
|
|
231
|
-
|
|
232
|
-
The SDK is fully typed with TypeScript. All methods return `ButterbaseResponse<T>` with proper type inference:
|
|
233
|
-
|
|
234
|
-
```typescript
|
|
235
|
-
interface Post {
|
|
236
|
-
id: string;
|
|
237
|
-
title: string;
|
|
238
|
-
content: string;
|
|
239
|
-
status: 'draft' | 'published';
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
const { data, error } = await butterbase
|
|
243
|
-
.from<Post>('posts')
|
|
244
|
-
.select('*')
|
|
245
|
-
.eq('status', 'published');
|
|
246
|
-
|
|
247
|
-
// data is typed as Post[] | null
|
|
248
|
-
// error is typed as Error | null
|
|
249
|
-
```
|
|
250
|
-
|
|
251
|
-
## Integrations
|
|
252
|
-
|
|
253
|
-
Connect third-party services to your app and execute actions on behalf of your users.
|
|
254
|
-
|
|
255
|
-
### Admin configuration (API key)
|
|
256
|
-
|
|
257
|
-
```typescript
|
|
258
|
-
// Enable a toolkit
|
|
259
|
-
await bb.integrations.configure('gmail', { displayName: 'Gmail' });
|
|
260
|
-
|
|
261
|
-
// List enabled integrations
|
|
262
|
-
const { data } = await bb.integrations.getConfig();
|
|
263
|
-
|
|
264
|
-
// Disable a toolkit
|
|
265
|
-
await bb.integrations.disable('gmail');
|
|
266
|
-
|
|
267
|
-
// Search available toolkits
|
|
268
|
-
const { data } = await bb.integrations.listAvailable({ search: 'salesforce' });
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
### End-user OAuth flow (user JWT)
|
|
272
|
-
|
|
273
|
-
```typescript
|
|
274
|
-
// Generate connect URL — redirect the user to authUrl
|
|
275
|
-
const { data } = await bb.integrations.connect('gmail', {
|
|
276
|
-
redirectUrl: 'https://yourapp.com/settings',
|
|
277
|
-
});
|
|
278
|
-
window.location.href = data.authUrl;
|
|
279
|
-
|
|
280
|
-
// List user's connected accounts
|
|
281
|
-
const { data } = await bb.integrations.listConnections();
|
|
282
|
-
|
|
283
|
-
// Disconnect an account
|
|
284
|
-
await bb.integrations.disconnect(connectionId);
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
### Executing tools
|
|
288
|
-
|
|
289
|
-
```typescript
|
|
290
|
-
// List tools for a toolkit
|
|
291
|
-
const { data } = await bb.integrations.getTools('gmail');
|
|
292
|
-
// data[0] = { name: 'GMAIL_SEND_EMAIL', description: '...', parameters: { ... } }
|
|
293
|
-
|
|
294
|
-
// Execute a tool (user JWT auth)
|
|
295
|
-
const { data } = await bb.integrations.execute('GMAIL_SEND_EMAIL', {
|
|
296
|
-
to: 'user@example.com',
|
|
297
|
-
subject: 'Hello',
|
|
298
|
-
body: 'Sent via Butterbase integrations.',
|
|
299
|
-
});
|
|
300
|
-
|
|
301
|
-
// Execute on behalf of a user (API key + userId, e.g. in a cron)
|
|
302
|
-
const { data } = await bb.integrations
|
|
303
|
-
.asUser('user-uuid')
|
|
304
|
-
.execute('GOOGLECALENDAR_EVENTS_LIST', { timeMin: new Date().toISOString() });
|
|
305
|
-
```
|
|
306
|
-
|
|
307
|
-
## Error handling
|
|
308
|
-
|
|
309
|
-
All client methods return `{ data, error }`. When the backend returned a
|
|
310
|
-
recognizable agent-friendly error, `error` is a typed `ButterbaseError`
|
|
311
|
-
subclass (`AuthError`, `ValidationError`, `NotFoundError`, `QuotaError`,
|
|
312
|
-
`NetworkError`) carrying `code`, `status`, `remediation`, and `details`.
|
|
313
|
-
|
|
314
|
-
```typescript
|
|
315
|
-
import {
|
|
316
|
-
ButterbaseClient, ErrorCodes,
|
|
317
|
-
AuthError, NotFoundError, QuotaError,
|
|
318
|
-
} from '@butterbase/sdk';
|
|
319
|
-
|
|
320
|
-
const r = await client.from('posts').select('*').execute();
|
|
321
|
-
|
|
322
|
-
if (r.error instanceof NotFoundError) {
|
|
323
|
-
console.error('Missing table:', r.error.remediation);
|
|
324
|
-
}
|
|
325
|
-
if (r.error?.code === ErrorCodes.AUTH_INVALID_API_KEY) {
|
|
326
|
-
// rotate the key
|
|
327
|
-
}
|
|
328
|
-
if (r.error instanceof QuotaError) {
|
|
329
|
-
console.error(`Quota hit (${r.error.code}): ${r.error.remediation}`);
|
|
330
|
-
}
|
|
331
|
-
```
|
|
332
|
-
|
|
333
|
-
The full set of codes lives in `ErrorCodes` (re-exported from
|
|
334
|
-
`@butterbase/shared`). Use `parseApiError(status, body)` if you're wrapping
|
|
335
|
-
fetch yourself and want to dispatch to the same typed classes.
|
|
336
|
-
|
|
337
|
-
## License
|
|
338
|
-
|
|
339
|
-
MIT
|
|
1
|
+
# @butterbase/sdk
|
|
2
|
+
|
|
3
|
+
Universal TypeScript SDK for Butterbase - works in browser, Node.js, and Deno environments.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @butterbase/sdk
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { createClient } from '@butterbase/sdk';
|
|
15
|
+
|
|
16
|
+
// Initialize client.
|
|
17
|
+
// apiUrl is the same regardless of which region your app lives in —
|
|
18
|
+
// requests are routed to the right region automatically.
|
|
19
|
+
const butterbase = createClient({
|
|
20
|
+
appId: 'app_abc123',
|
|
21
|
+
apiUrl: 'https://api.butterbase.ai',
|
|
22
|
+
anonKey: 'your-anon-key' // Optional, for public access
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
// Query data
|
|
26
|
+
const { data, error } = await butterbase
|
|
27
|
+
.from('posts')
|
|
28
|
+
.select('*')
|
|
29
|
+
.eq('status', 'published')
|
|
30
|
+
.order('created_at', { ascending: false })
|
|
31
|
+
.limit(10);
|
|
32
|
+
|
|
33
|
+
// Insert data
|
|
34
|
+
const { data, error } = await butterbase
|
|
35
|
+
.from('posts')
|
|
36
|
+
.insert({ title: 'Hello World', content: 'My first post' });
|
|
37
|
+
|
|
38
|
+
// Update data
|
|
39
|
+
const { data, error } = await butterbase
|
|
40
|
+
.from('posts')
|
|
41
|
+
.update({ status: 'archived' })
|
|
42
|
+
.eq('id', '123');
|
|
43
|
+
|
|
44
|
+
// Delete data
|
|
45
|
+
const { data, error } = await butterbase
|
|
46
|
+
.from('posts')
|
|
47
|
+
.delete()
|
|
48
|
+
.eq('id', '123');
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Migration from 0.x to 1.0
|
|
52
|
+
|
|
53
|
+
**Breaking Change:** The `authUrl` parameter has been removed. All auth endpoints now run on the same URL as the API.
|
|
54
|
+
|
|
55
|
+
**Before (0.x):**
|
|
56
|
+
```typescript
|
|
57
|
+
const butterbase = createClient({
|
|
58
|
+
appId: 'app_abc123',
|
|
59
|
+
apiUrl: 'https://api.butterbase.ai',
|
|
60
|
+
authUrl: 'https://auth.butterbase.com', // ❌ No longer needed
|
|
61
|
+
});
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**After (1.0):**
|
|
65
|
+
```typescript
|
|
66
|
+
const butterbase = createClient({
|
|
67
|
+
appId: 'app_abc123',
|
|
68
|
+
apiUrl: 'https://api.butterbase.ai', // ✅ All endpoints use this URL
|
|
69
|
+
});
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Authentication
|
|
73
|
+
|
|
74
|
+
Sessions are automatically persisted to `localStorage` and restored on page refresh. Access tokens are automatically refreshed before they expire.
|
|
75
|
+
|
|
76
|
+
```typescript
|
|
77
|
+
// Sign up
|
|
78
|
+
const { data, error } = await butterbase.auth.signUp({
|
|
79
|
+
email: 'user@example.com',
|
|
80
|
+
password: 'secure123'
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
// Sign in (session is automatically persisted)
|
|
84
|
+
const { data, error } = await butterbase.auth.signIn({
|
|
85
|
+
email: 'user@example.com',
|
|
86
|
+
password: 'secure123'
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
// Get current user (works after page refresh)
|
|
90
|
+
const { data: user } = await butterbase.auth.getUser();
|
|
91
|
+
|
|
92
|
+
// Sign out (clears persisted session)
|
|
93
|
+
await butterbase.auth.signOut();
|
|
94
|
+
|
|
95
|
+
// Refresh session manually (uses stored refresh token if none provided)
|
|
96
|
+
const { data } = await butterbase.auth.refreshSession();
|
|
97
|
+
|
|
98
|
+
// OAuth
|
|
99
|
+
const { url } = butterbase.auth.signInWithOAuth({
|
|
100
|
+
provider: 'google',
|
|
101
|
+
redirectTo: 'http://localhost:3000/callback'
|
|
102
|
+
});
|
|
103
|
+
window.location.href = url;
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Auth State Changes
|
|
107
|
+
|
|
108
|
+
Subscribe to authentication events to react to sign-ins, sign-outs, and token refreshes:
|
|
109
|
+
|
|
110
|
+
```typescript
|
|
111
|
+
const { unsubscribe } = butterbase.onAuthStateChange((event, session) => {
|
|
112
|
+
// event: 'SIGNED_IN' | 'SIGNED_OUT' | 'TOKEN_REFRESHED' | 'SESSION_RESTORED'
|
|
113
|
+
console.log(event, session?.user);
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
// Stop listening
|
|
117
|
+
unsubscribe();
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### React Usage
|
|
121
|
+
|
|
122
|
+
```typescript
|
|
123
|
+
import { useEffect, useState } from 'react';
|
|
124
|
+
import { butterbase } from './lib';
|
|
125
|
+
|
|
126
|
+
function App() {
|
|
127
|
+
const [user, setUser] = useState(null);
|
|
128
|
+
|
|
129
|
+
useEffect(() => {
|
|
130
|
+
// Session is auto-restored — check current state
|
|
131
|
+
const session = butterbase.sessionManager.getSession();
|
|
132
|
+
if (session) setUser(session.user);
|
|
133
|
+
|
|
134
|
+
// React to future auth changes
|
|
135
|
+
const { unsubscribe } = butterbase.onAuthStateChange((event, session) => {
|
|
136
|
+
setUser(session?.user ?? null);
|
|
137
|
+
});
|
|
138
|
+
return unsubscribe;
|
|
139
|
+
}, []);
|
|
140
|
+
}
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Custom Storage
|
|
144
|
+
|
|
145
|
+
By default, the SDK uses `localStorage` with an in-memory fallback for SSR/Node.js environments. You can provide a custom storage adapter:
|
|
146
|
+
|
|
147
|
+
```typescript
|
|
148
|
+
import { createClient, MemorySessionStorage } from '@butterbase/sdk';
|
|
149
|
+
|
|
150
|
+
// Memory-only (no persistence)
|
|
151
|
+
const butterbase = createClient({
|
|
152
|
+
appId: 'app_abc123',
|
|
153
|
+
apiUrl: 'https://api.butterbase.ai',
|
|
154
|
+
persistSession: false,
|
|
155
|
+
});
|
|
156
|
+
|
|
157
|
+
// Custom storage adapter (e.g., for React Native)
|
|
158
|
+
const butterbase = createClient({
|
|
159
|
+
appId: 'app_abc123',
|
|
160
|
+
apiUrl: 'https://api.butterbase.ai',
|
|
161
|
+
sessionStorage: myCustomStorage, // implements { getItem, setItem, removeItem }
|
|
162
|
+
});
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
## Storage
|
|
166
|
+
|
|
167
|
+
```typescript
|
|
168
|
+
// Upload file
|
|
169
|
+
const { data, error } = await butterbase.storage.upload(file);
|
|
170
|
+
|
|
171
|
+
// Get download URL
|
|
172
|
+
const { data } = await butterbase.storage.getDownloadUrl(objectId);
|
|
173
|
+
|
|
174
|
+
// List files
|
|
175
|
+
const { data: objects } = await butterbase.storage.list();
|
|
176
|
+
|
|
177
|
+
// Delete file
|
|
178
|
+
await butterbase.storage.delete(objectId);
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
## Functions
|
|
182
|
+
|
|
183
|
+
```typescript
|
|
184
|
+
// Invoke serverless function
|
|
185
|
+
const { data, error } = await butterbase.functions.invoke('my-function', {
|
|
186
|
+
body: { key: 'value' },
|
|
187
|
+
method: 'POST'
|
|
188
|
+
});
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## Query Builder
|
|
192
|
+
|
|
193
|
+
### Operators
|
|
194
|
+
|
|
195
|
+
- `eq(column, value)` - Equal to
|
|
196
|
+
- `neq(column, value)` - Not equal to
|
|
197
|
+
- `gt(column, value)` - Greater than
|
|
198
|
+
- `gte(column, value)` - Greater than or equal to
|
|
199
|
+
- `lt(column, value)` - Less than
|
|
200
|
+
- `lte(column, value)` - Less than or equal to
|
|
201
|
+
- `like(column, pattern)` - Pattern matching (case-sensitive)
|
|
202
|
+
- `ilike(column, pattern)` - Pattern matching (case-insensitive)
|
|
203
|
+
- `in(column, values)` - Value in array
|
|
204
|
+
- `is(column, value)` - Is null/true/false
|
|
205
|
+
|
|
206
|
+
### Modifiers
|
|
207
|
+
|
|
208
|
+
- `select(columns)` - Select specific columns
|
|
209
|
+
- `order(column, options)` - Order results
|
|
210
|
+
- `limit(count)` - Limit results
|
|
211
|
+
- `offset(count)` - Skip results
|
|
212
|
+
|
|
213
|
+
## Usage in Deno
|
|
214
|
+
|
|
215
|
+
```typescript
|
|
216
|
+
import { createClient } from 'npm:@butterbase/sdk';
|
|
217
|
+
|
|
218
|
+
const butterbase = createClient({
|
|
219
|
+
appId: Deno.env.get('BUTTERBASE_APP_ID')!,
|
|
220
|
+
apiUrl: Deno.env.get('BUTTERBASE_API_URL')!,
|
|
221
|
+
});
|
|
222
|
+
|
|
223
|
+
// Use in serverless functions
|
|
224
|
+
export async function handler(req: Request, ctx: any) {
|
|
225
|
+
const { data } = await butterbase.from('posts').select('*');
|
|
226
|
+
return Response.json({ data });
|
|
227
|
+
}
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
## TypeScript Support
|
|
231
|
+
|
|
232
|
+
The SDK is fully typed with TypeScript. All methods return `ButterbaseResponse<T>` with proper type inference:
|
|
233
|
+
|
|
234
|
+
```typescript
|
|
235
|
+
interface Post {
|
|
236
|
+
id: string;
|
|
237
|
+
title: string;
|
|
238
|
+
content: string;
|
|
239
|
+
status: 'draft' | 'published';
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
const { data, error } = await butterbase
|
|
243
|
+
.from<Post>('posts')
|
|
244
|
+
.select('*')
|
|
245
|
+
.eq('status', 'published');
|
|
246
|
+
|
|
247
|
+
// data is typed as Post[] | null
|
|
248
|
+
// error is typed as Error | null
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
## Integrations
|
|
252
|
+
|
|
253
|
+
Connect third-party services to your app and execute actions on behalf of your users.
|
|
254
|
+
|
|
255
|
+
### Admin configuration (API key)
|
|
256
|
+
|
|
257
|
+
```typescript
|
|
258
|
+
// Enable a toolkit
|
|
259
|
+
await bb.integrations.configure('gmail', { displayName: 'Gmail' });
|
|
260
|
+
|
|
261
|
+
// List enabled integrations
|
|
262
|
+
const { data } = await bb.integrations.getConfig();
|
|
263
|
+
|
|
264
|
+
// Disable a toolkit
|
|
265
|
+
await bb.integrations.disable('gmail');
|
|
266
|
+
|
|
267
|
+
// Search available toolkits
|
|
268
|
+
const { data } = await bb.integrations.listAvailable({ search: 'salesforce' });
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### End-user OAuth flow (user JWT)
|
|
272
|
+
|
|
273
|
+
```typescript
|
|
274
|
+
// Generate connect URL — redirect the user to authUrl
|
|
275
|
+
const { data } = await bb.integrations.connect('gmail', {
|
|
276
|
+
redirectUrl: 'https://yourapp.com/settings',
|
|
277
|
+
});
|
|
278
|
+
window.location.href = data.authUrl;
|
|
279
|
+
|
|
280
|
+
// List user's connected accounts
|
|
281
|
+
const { data } = await bb.integrations.listConnections();
|
|
282
|
+
|
|
283
|
+
// Disconnect an account
|
|
284
|
+
await bb.integrations.disconnect(connectionId);
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### Executing tools
|
|
288
|
+
|
|
289
|
+
```typescript
|
|
290
|
+
// List tools for a toolkit
|
|
291
|
+
const { data } = await bb.integrations.getTools('gmail');
|
|
292
|
+
// data[0] = { name: 'GMAIL_SEND_EMAIL', description: '...', parameters: { ... } }
|
|
293
|
+
|
|
294
|
+
// Execute a tool (user JWT auth)
|
|
295
|
+
const { data } = await bb.integrations.execute('GMAIL_SEND_EMAIL', {
|
|
296
|
+
to: 'user@example.com',
|
|
297
|
+
subject: 'Hello',
|
|
298
|
+
body: 'Sent via Butterbase integrations.',
|
|
299
|
+
});
|
|
300
|
+
|
|
301
|
+
// Execute on behalf of a user (API key + userId, e.g. in a cron)
|
|
302
|
+
const { data } = await bb.integrations
|
|
303
|
+
.asUser('user-uuid')
|
|
304
|
+
.execute('GOOGLECALENDAR_EVENTS_LIST', { timeMin: new Date().toISOString() });
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
## Error handling
|
|
308
|
+
|
|
309
|
+
All client methods return `{ data, error }`. When the backend returned a
|
|
310
|
+
recognizable agent-friendly error, `error` is a typed `ButterbaseError`
|
|
311
|
+
subclass (`AuthError`, `ValidationError`, `NotFoundError`, `QuotaError`,
|
|
312
|
+
`NetworkError`) carrying `code`, `status`, `remediation`, and `details`.
|
|
313
|
+
|
|
314
|
+
```typescript
|
|
315
|
+
import {
|
|
316
|
+
ButterbaseClient, ErrorCodes,
|
|
317
|
+
AuthError, NotFoundError, QuotaError,
|
|
318
|
+
} from '@butterbase/sdk';
|
|
319
|
+
|
|
320
|
+
const r = await client.from('posts').select('*').execute();
|
|
321
|
+
|
|
322
|
+
if (r.error instanceof NotFoundError) {
|
|
323
|
+
console.error('Missing table:', r.error.remediation);
|
|
324
|
+
}
|
|
325
|
+
if (r.error?.code === ErrorCodes.AUTH_INVALID_API_KEY) {
|
|
326
|
+
// rotate the key
|
|
327
|
+
}
|
|
328
|
+
if (r.error instanceof QuotaError) {
|
|
329
|
+
console.error(`Quota hit (${r.error.code}): ${r.error.remediation}`);
|
|
330
|
+
}
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
The full set of codes lives in `ErrorCodes` (re-exported from
|
|
334
|
+
`@butterbase/shared`). Use `parseApiError(status, body)` if you're wrapping
|
|
335
|
+
fetch yourself and want to dispatch to the same typed classes.
|
|
336
|
+
|
|
337
|
+
## License
|
|
338
|
+
|
|
339
|
+
MIT
|
package/dist/admin/types.d.ts
CHANGED
|
@@ -105,7 +105,19 @@ export interface FunctionTrigger {
|
|
|
105
105
|
type: FunctionTriggerType;
|
|
106
106
|
config?: Record<string, unknown>;
|
|
107
107
|
}
|
|
108
|
-
export
|
|
108
|
+
export type AgentToolMode = 'read_only' | 'read_write';
|
|
109
|
+
export type AgentToolExposedTo = 'developer_only' | 'end_user';
|
|
110
|
+
export interface AgentToolFields {
|
|
111
|
+
/** When true, the function is exposed to agents as a tool. */
|
|
112
|
+
agent_tool?: boolean;
|
|
113
|
+
/** Description shown to the LLM (max 500 chars). */
|
|
114
|
+
agent_tool_description?: string | null;
|
|
115
|
+
/** read_only (default) | read_write. read_write requires HITL approval. */
|
|
116
|
+
agent_tool_mode?: AgentToolMode | null;
|
|
117
|
+
/** developer_only (default) | end_user. */
|
|
118
|
+
agent_tool_exposed_to?: AgentToolExposedTo | null;
|
|
119
|
+
}
|
|
120
|
+
export interface DeployFunctionParams extends AgentToolFields {
|
|
109
121
|
name: string;
|
|
110
122
|
code: string;
|
|
111
123
|
description?: string;
|
|
@@ -113,14 +125,16 @@ export interface DeployFunctionParams {
|
|
|
113
125
|
timeoutMs?: number;
|
|
114
126
|
memoryLimitMb?: number;
|
|
115
127
|
trigger?: FunctionTrigger;
|
|
128
|
+
/** Canonical multi-trigger array. At most one trigger per type. */
|
|
129
|
+
triggers?: FunctionTrigger[];
|
|
116
130
|
}
|
|
117
|
-
export interface FunctionSummary {
|
|
131
|
+
export interface FunctionSummary extends AgentToolFields {
|
|
118
132
|
id: string;
|
|
119
133
|
name: string;
|
|
120
134
|
description?: string;
|
|
121
135
|
url?: string;
|
|
122
136
|
status?: string;
|
|
123
|
-
|
|
137
|
+
triggers?: FunctionTrigger[];
|
|
124
138
|
deployedAt?: string;
|
|
125
139
|
lastInvoked?: string;
|
|
126
140
|
lastStatus?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/admin/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/admin/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@butterbase/sdk",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "Universal TypeScript SDK for Butterbase",
|
|
5
|
-
"license": "Apache-2.0",
|
|
6
|
-
"homepage": "https://butterbase.ai",
|
|
7
|
-
"repository": {
|
|
8
|
-
"type": "git",
|
|
9
|
-
"url": "https://github.com/
|
|
10
|
-
"directory": "packages/sdk"
|
|
11
|
-
},
|
|
12
|
-
"publishConfig": {
|
|
13
|
-
"access": "public"
|
|
14
|
-
},
|
|
15
|
-
"type": "module",
|
|
16
|
-
"main": "./dist/index.js",
|
|
17
|
-
"types": "./dist/index.d.ts",
|
|
18
|
-
"exports": {
|
|
19
|
-
".": {
|
|
20
|
-
"types": "./dist/index.d.ts",
|
|
21
|
-
"import": "./dist/index.js"
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
"files": [
|
|
25
|
-
"dist"
|
|
26
|
-
],
|
|
27
|
-
"scripts": {
|
|
28
|
-
"build": "tsc -b",
|
|
29
|
-
"dev": "tsc -b --watch",
|
|
30
|
-
"test": "vitest run"
|
|
31
|
-
},
|
|
32
|
-
"keywords": [
|
|
33
|
-
"butterbase",
|
|
34
|
-
"backend",
|
|
35
|
-
"baas",
|
|
36
|
-
"database",
|
|
37
|
-
"auth",
|
|
38
|
-
"storage"
|
|
39
|
-
],
|
|
40
|
-
"dependencies": {
|
|
41
|
-
"@butterbase/shared": "^0.
|
|
42
|
-
},
|
|
43
|
-
"devDependencies": {
|
|
44
|
-
"typescript": "^5.7.0",
|
|
45
|
-
"@types/node": "^22.0.0",
|
|
46
|
-
"vitest": "^3.1.1"
|
|
47
|
-
},
|
|
48
|
-
"peerDependencies": {
|
|
49
|
-
"typescript": ">=5.0.0"
|
|
50
|
-
}
|
|
51
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@butterbase/sdk",
|
|
3
|
+
"version": "2.5.0",
|
|
4
|
+
"description": "Universal TypeScript SDK for Butterbase",
|
|
5
|
+
"license": "Apache-2.0",
|
|
6
|
+
"homepage": "https://butterbase.ai",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/butterbase-ai/butterbase",
|
|
10
|
+
"directory": "packages/sdk"
|
|
11
|
+
},
|
|
12
|
+
"publishConfig": {
|
|
13
|
+
"access": "public"
|
|
14
|
+
},
|
|
15
|
+
"type": "module",
|
|
16
|
+
"main": "./dist/index.js",
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
18
|
+
"exports": {
|
|
19
|
+
".": {
|
|
20
|
+
"types": "./dist/index.d.ts",
|
|
21
|
+
"import": "./dist/index.js"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"files": [
|
|
25
|
+
"dist"
|
|
26
|
+
],
|
|
27
|
+
"scripts": {
|
|
28
|
+
"build": "tsc -b",
|
|
29
|
+
"dev": "tsc -b --watch",
|
|
30
|
+
"test": "vitest run"
|
|
31
|
+
},
|
|
32
|
+
"keywords": [
|
|
33
|
+
"butterbase",
|
|
34
|
+
"backend",
|
|
35
|
+
"baas",
|
|
36
|
+
"database",
|
|
37
|
+
"auth",
|
|
38
|
+
"storage"
|
|
39
|
+
],
|
|
40
|
+
"dependencies": {
|
|
41
|
+
"@butterbase/shared": "^0.3.0"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"typescript": "^5.7.0",
|
|
45
|
+
"@types/node": "^22.0.0",
|
|
46
|
+
"vitest": "^3.1.1"
|
|
47
|
+
},
|
|
48
|
+
"peerDependencies": {
|
|
49
|
+
"typescript": ">=5.0.0"
|
|
50
|
+
}
|
|
51
|
+
}
|