@elevasis/sdk 0.7.11 → 0.7.12
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/dist/cli.cjs +1 -1
- package/dist/index.d.ts +18 -3
- package/package.json +1 -1
- package/reference/_navigation.md +4 -2
- package/reference/concepts.mdx +3 -21
- package/reference/framework/tutorial-system.mdx +16 -16
- package/reference/index.mdx +21 -64
- package/reference/platform-tools/adapters-integration.mdx +342 -0
- package/reference/platform-tools/adapters-platform.mdx +494 -0
- package/reference/platform-tools/index.mdx +23 -159
- package/reference/templates/index.mdx +47 -0
- package/reference/platform-tools/adapters.mdx +0 -907
package/dist/cli.cjs
CHANGED
|
@@ -43883,7 +43883,7 @@ function wrapAction(commandName, fn) {
|
|
|
43883
43883
|
// package.json
|
|
43884
43884
|
var package_default = {
|
|
43885
43885
|
name: "@elevasis/sdk",
|
|
43886
|
-
version: "0.7.
|
|
43886
|
+
version: "0.7.12",
|
|
43887
43887
|
description: "SDK for building Elevasis organization resources",
|
|
43888
43888
|
type: "module",
|
|
43889
43889
|
bin: {
|
package/dist/index.d.ts
CHANGED
|
@@ -4752,21 +4752,36 @@ interface CreateCampaignParams {
|
|
|
4752
4752
|
name: string;
|
|
4753
4753
|
sequences?: Array<{
|
|
4754
4754
|
steps: Array<{
|
|
4755
|
-
|
|
4756
|
-
|
|
4757
|
-
variants
|
|
4755
|
+
type?: string;
|
|
4756
|
+
delay?: number;
|
|
4757
|
+
variants: Array<{
|
|
4758
4758
|
subject: string;
|
|
4759
4759
|
body: string;
|
|
4760
|
+
v_disabled?: boolean;
|
|
4760
4761
|
}>;
|
|
4761
4762
|
}>;
|
|
4762
4763
|
}>;
|
|
4763
4764
|
email_list?: string[];
|
|
4765
|
+
campaign_schedule?: {
|
|
4766
|
+
schedules: Array<{
|
|
4767
|
+
name: string;
|
|
4768
|
+
timing: {
|
|
4769
|
+
from: string;
|
|
4770
|
+
to: string;
|
|
4771
|
+
};
|
|
4772
|
+
days: Record<string, boolean>;
|
|
4773
|
+
timezone: string;
|
|
4774
|
+
}>;
|
|
4775
|
+
};
|
|
4764
4776
|
daily_limit?: number;
|
|
4777
|
+
daily_max_leads?: number;
|
|
4765
4778
|
stop_on_reply?: boolean;
|
|
4766
4779
|
stop_on_auto_reply?: boolean;
|
|
4780
|
+
stop_for_company?: boolean;
|
|
4767
4781
|
track_opens?: boolean;
|
|
4768
4782
|
track_clicks?: boolean;
|
|
4769
4783
|
text_only?: boolean;
|
|
4784
|
+
first_email_text_only?: boolean;
|
|
4770
4785
|
}
|
|
4771
4786
|
/**
|
|
4772
4787
|
* Create campaign result
|
package/package.json
CHANGED
package/reference/_navigation.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# SDK Reference Navigation
|
|
2
2
|
|
|
3
|
-
Auto-generated from reference file frontmatter.
|
|
3
|
+
Auto-generated from reference file frontmatter. 30 files indexed.
|
|
4
4
|
|
|
5
5
|
All paths are relative to `node_modules/@elevasis/sdk/reference/`.
|
|
6
6
|
|
|
@@ -39,7 +39,8 @@ All paths are relative to `node_modules/@elevasis/sdk/reference/`.
|
|
|
39
39
|
|
|
40
40
|
| Resource | Location | Description | When to Load |
|
|
41
41
|
| --- | --- | --- | --- |
|
|
42
|
-
|
|
|
42
|
+
| Integration Adapters | `platform-tools/adapters-integration.mdx` | Type-safe wrappers for third-party integrations -- Attio, Stripe, Notion, Google Sheets, Instantly, SignatureAPI, Resend, Dropbox, Apify, Gmail, Mailso, and Tomba -- with full autocomplete and compile-time checking | Using typed adapters for integration tools, or needs to know what integration adapter methods are available |
|
|
43
|
+
| Platform Adapters | `platform-tools/adapters-platform.mdx` | Type-safe singleton adapters for built-in platform services -- scheduler, storage, LLM, PDF, approval, notifications, acqDb, execution, and email -- no credentials required | Using platform service adapters (scheduler, storage, llm, pdf, approval, acqDb, notifications, execution, email) |
|
|
43
44
|
| Platform Tools | `platform-tools/index.mdx` | Access 70+ tools across integration adapters and platform services from your SDK workflows -- typed adapters, credential security model, and working code examples | Connecting to external services |
|
|
44
45
|
|
|
45
46
|
## Resources
|
|
@@ -56,6 +57,7 @@ All paths are relative to `node_modules/@elevasis/sdk/reference/`.
|
|
|
56
57
|
| --- | --- | --- | --- |
|
|
57
58
|
| Template: Data Enrichment | `templates/data-enrichment.mdx` | LLM-powered enrichment of existing database records -- read rows, enrich each with an LLM, write results back to Supabase | Applying the data-enrichment workflow template |
|
|
58
59
|
| Template: Email Sender | `templates/email-sender.mdx` | Transactional email via Resend with template support -- send styled emails to one or multiple recipients | Applying the email-sender workflow template |
|
|
60
|
+
| Templates | `templates/index.mdx` | Ready-to-use workflow templates for common automation patterns -- web scraping, data enrichment, email sending, lead scoring, PDF generation, text classification, and recurring jobs | (not specified) |
|
|
59
61
|
| Template: Lead Scorer | `templates/lead-scorer.mdx` | LLM-based lead scoring with Supabase storage -- receive a lead, score it with an LLM, store the result | Applying the lead-scorer workflow template |
|
|
60
62
|
| Template: PDF Generator | `templates/pdf-generator.mdx` | PDF generation from structured data with platform storage upload -- render a PDF from a template and upload to platform storage | Applying the pdf-generator workflow template |
|
|
61
63
|
| Template: Recurring Job | `templates/recurring-job.mdx` | Scheduler-triggered periodic workflow -- run a task on a schedule (daily, weekly, hourly, or custom cron) | Applying the recurring-job workflow template |
|
package/reference/concepts.mdx
CHANGED
|
@@ -92,29 +92,11 @@ type MyInput = z.infer<typeof myInput>;
|
|
|
92
92
|
|
|
93
93
|
## The Execution Model
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
Each execution creates an ephemeral worker thread from your deployed bundle. The platform validates input against your Zod schema, runs your handler, and returns the result. Workers are terminated immediately after completion -- there is no persistent server.
|
|
96
96
|
|
|
97
|
-
|
|
98
|
-
2. The platform creates a temporary server just for this execution
|
|
99
|
-
3. Your code runs on that server
|
|
100
|
-
4. The result is sent back
|
|
101
|
-
5. The temporary server is deleted
|
|
97
|
+
Key implications: files written to disk disappear after execution, logs appear only after the execution completes (no streaming), and each execution is fully isolated with no shared state between runs. Outbound network access is unrestricted. Memory is capped at 256MB per worker; execution timeout is 300s for workflows and 600s for agents.
|
|
102
98
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
| What You Might Expect | What Actually Happens | Why |
|
|
106
|
-
| --------------------------- | ------------------------------------- | ----------------------------- |
|
|
107
|
-
| Files I create persist | Files disappear after execution | The server is temporary |
|
|
108
|
-
| I can see logs in real-time | Logs appear after execution completes | No streaming from workers |
|
|
109
|
-
| My code runs on my computer | Your code runs on Elevasis servers | That is what "deploy" means |
|
|
110
|
-
| I can use unlimited memory | 256MB memory limit per execution | Prevents runaway processes |
|
|
111
|
-
| Executions share state | Each execution is independent | No shared memory between runs |
|
|
112
|
-
| I can call external APIs | Yes, outbound network is unrestricted | Workers have internet access |
|
|
113
|
-
|
|
114
|
-
### What "completed" vs "failed" Means
|
|
115
|
-
|
|
116
|
-
- **completed** -- Your code ran successfully and returned output
|
|
117
|
-
- **failed** -- Something went wrong: your code threw an error, timed out (300s default), or ran out of memory
|
|
99
|
+
For the complete execution lifecycle, concurrency model, observability, and resource limits, see [Runtime](runtime.mdx).
|
|
118
100
|
|
|
119
101
|
---
|
|
120
102
|
|
|
@@ -68,11 +68,11 @@ Assessed during `/meta init`. Two independent dimensions.
|
|
|
68
68
|
|
|
69
69
|
### automation dimension
|
|
70
70
|
|
|
71
|
-
| Level | Context Loading
|
|
72
|
-
| ---------- |
|
|
73
|
-
| `none` | Glossary, Workflow overview, Platform Tools Overview only. Skip Zod, Execution Model, Design Decisions.
|
|
74
|
-
| `low-code` | All concept sections. Zapier/Make mapping. `adapters.mdx` on-demand.
|
|
75
|
-
| `custom` | All docs listed per-lesson and per-module.
|
|
71
|
+
| Level | Context Loading | Delivery | Verification |
|
|
72
|
+
| ---------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------- |
|
|
73
|
+
| `none` | Glossary, Workflow overview, Platform Tools Overview only. Skip Zod, Execution Model, Design Decisions. | Agent writes all code. No code shown to user. Analogies throughout. | CLI primary. Agent runs `elevasis-sdk exec` and narrates results. |
|
|
74
|
+
| `low-code` | All concept sections. Zapier/Make mapping. `adapters-integration.mdx` / `adapters-platform.mdx` on-demand. | Map to Zapier/Make equivalents. Show code with explanations. | CLI primary. |
|
|
75
|
+
| `custom` | All docs listed per-lesson and per-module. | Full technical content, code-first. | CLI primary. |
|
|
76
76
|
|
|
77
77
|
### platformNavigation dimension
|
|
78
78
|
|
|
@@ -153,17 +153,17 @@ Each lesson: (1) announce title and goal, (2) explain concept per skill level, (
|
|
|
153
153
|
|
|
154
154
|
Modules are available any time -- no core path prerequisite. After completing a module the full menu table is shown again.
|
|
155
155
|
|
|
156
|
-
| # | Module | Reference Docs
|
|
157
|
-
| --- | ---------------- |
|
|
158
|
-
| 11 | `hitl` | `command-center.mdx` (Command Queue)
|
|
159
|
-
| 12 | `schedules` | `command-center.mdx` (Task Scheduler)
|
|
160
|
-
| 13 | `notifications` | `adapters.mdx` (notifications, email)
|
|
161
|
-
| 14 | `integrations` | `platform-tools/index.mdx` (Credential Security), `adapters.mdx` | Real adapter from `identity.md`. Full end-to-end with OAuth or API key credential. | Adapter pattern, credential scoping, external call error handling |
|
|
162
|
-
| 15 | `error-handling` | `patterns.mdx` (error handling), `troubleshooting.mdx`
|
|
163
|
-
| 16 | `workflows` | `patterns.mdx` (store, logging, organization)
|
|
164
|
-
| 17 | `composition` | `command-center.mdx` (Command View), `patterns.mdx`
|
|
165
|
-
| 18 | `llm` | `adapters.mdx` (llm singleton)
|
|
166
|
-
| 19 | `agents` | `framework/agent.mdx`
|
|
156
|
+
| # | Module | Reference Docs | Build | Key Concepts |
|
|
157
|
+
| --- | ---------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
|
|
158
|
+
| 11 | `hitl` | `command-center.mdx` (Command Queue) | Approval gate with `approval.create()`. Full lifecycle: trigger -> Command Queue -> approve/reject -> resume. | `approval` adapter, pending state, Command Queue UI |
|
|
159
|
+
| 12 | `schedules` | `command-center.mdx` (Task Scheduler) | All three schedule types: Recurring, Relative, Absolute. `scheduler` adapter for in-workflow. | Cron syntax, schedule types, Task Scheduler UI |
|
|
160
|
+
| 13 | `notifications` | `adapters-platform.mdx` (notifications, email) | Notification + email steps. Alerts on completion. | `notifications` singleton, `email` singleton |
|
|
161
|
+
| 14 | `integrations` | `platform-tools/index.mdx` (Credential Security), `adapters-integration.mdx` | Real adapter from `identity.md`. Full end-to-end with OAuth or API key credential. | Adapter pattern, credential scoping, external call error handling |
|
|
162
|
+
| 15 | `error-handling` | `patterns.mdx` (error handling), `troubleshooting.mdx` | Workflow demonstrating all three error types. `try/catch`, `context.logger`, recovery. | `ExecutionError`, `PlatformToolError`, `ToolingError` |
|
|
163
|
+
| 16 | `workflows` | `patterns.mdx` (store, logging, organization) | Refactor with `context.store`, `context.logger`, domain directories. Advanced schema patterns. | `context.store`, `context.logger`, schema depth |
|
|
164
|
+
| 17 | `composition` | `command-center.mdx` (Command View), `patterns.mdx` | Two workflows: first triggers second with `execution.trigger()`. Declare relationship. | `execution.trigger`, relationship declarations, Command View edges |
|
|
165
|
+
| 18 | `llm` | `adapters-platform.mdx` (llm singleton) | `llm.generate()` with structured output. Model selection and temperature. | `llm` singleton, structured output, temperature |
|
|
166
|
+
| 19 | `agents` | `framework/agent.mdx` | Agent definition with tools. LLM tool calling. Agent vs workflow comparison. | Agent definition, tool registration, execution trace |
|
|
167
167
|
|
|
168
168
|
---
|
|
169
169
|
|
package/reference/index.mdx
CHANGED
|
@@ -6,6 +6,8 @@ loadWhen: "First session or new to the SDK"
|
|
|
6
6
|
|
|
7
7
|
`@elevasis/sdk` lets you build workflows, agents, and resources in TypeScript and deploy them to the Elevasis platform with a single command. The developer experience is Vercel-style: write TypeScript, validate locally, deploy -- the platform handles execution, tool access, and observability. You never manage infrastructure. Zod 4.1 is the only peer dependency.
|
|
8
8
|
|
|
9
|
+
Workflows are step-based automations with typed inputs and outputs. Agents are autonomous AI resources with access to platform tools. Both are defined in TypeScript, exported from a single entry point, and deployed with `elevasis-sdk deploy`. Resources appear in AI Studio immediately after a successful deploy.
|
|
10
|
+
|
|
9
11
|
## Quick Start
|
|
10
12
|
|
|
11
13
|
```bash
|
|
@@ -15,77 +17,28 @@ pnpm install
|
|
|
15
17
|
elevasis-sdk deploy
|
|
16
18
|
```
|
|
17
19
|
|
|
18
|
-
After `pnpm dlx @elevasis/sdk init`, your project is scaffolded with a working echo workflow, config file, TypeScript setup, and a `CLAUDE.md` that gives Claude Code full awareness of the SDK.
|
|
19
|
-
|
|
20
|
-
Here is a minimal workflow definition:
|
|
21
|
-
|
|
22
|
-
```ts
|
|
23
|
-
import type { WorkflowDefinition, OrganizationResources } from '@elevasis/sdk';
|
|
24
|
-
import { z } from 'zod';
|
|
25
|
-
|
|
26
|
-
const greetInput = z.object({ name: z.string() });
|
|
27
|
-
const greetOutput = z.object({ message: z.string() });
|
|
28
|
-
|
|
29
|
-
type GreetInput = z.infer<typeof greetInput>;
|
|
30
|
-
|
|
31
|
-
const greetWorkflow: WorkflowDefinition = {
|
|
32
|
-
config: {
|
|
33
|
-
resourceId: 'greet',
|
|
34
|
-
name: 'Greet',
|
|
35
|
-
type: 'workflow',
|
|
36
|
-
description: 'Returns a greeting for the given name',
|
|
37
|
-
version: '1.0.0',
|
|
38
|
-
status: 'dev',
|
|
39
|
-
},
|
|
40
|
-
contract: {
|
|
41
|
-
inputSchema: greetInput,
|
|
42
|
-
outputSchema: greetOutput,
|
|
43
|
-
},
|
|
44
|
-
steps: {
|
|
45
|
-
greet: {
|
|
46
|
-
id: 'greet',
|
|
47
|
-
name: 'Build greeting',
|
|
48
|
-
description: 'Returns a greeting message',
|
|
49
|
-
handler: async (input) => {
|
|
50
|
-
const { name } = input as GreetInput;
|
|
51
|
-
return { message: `Hello, ${name}!` };
|
|
52
|
-
},
|
|
53
|
-
inputSchema: greetInput,
|
|
54
|
-
outputSchema: greetOutput,
|
|
55
|
-
next: null,
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
entryPoint: 'greet',
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
const org: OrganizationResources = {
|
|
62
|
-
workflows: [greetWorkflow],
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
export default org;
|
|
66
|
-
```
|
|
20
|
+
After `pnpm dlx @elevasis/sdk init`, your project is scaffolded with a working echo workflow, config file, TypeScript setup, and a `CLAUDE.md` that gives Claude Code full awareness of the SDK.
|
|
67
21
|
|
|
68
22
|
## What You Can Build
|
|
69
23
|
|
|
70
|
-
- **Workflows** -- Step-based automation with typed inputs and outputs. Steps can be linear, conditional, or branching. Each step is a plain async function.
|
|
24
|
+
- **Workflows** -- Step-based automation with typed inputs and outputs. Steps can be linear, conditional, or branching. Each step is a plain async function. See [Resources](resources/index.mdx) for the complete definition API.
|
|
71
25
|
- **Agents** -- Autonomous AI resources with access to platform tools. Agents run in the worker runtime with full LLM access and platform tool support. Use `--async` when executing agents to avoid HTTP timeout limits on long-running runs.
|
|
72
26
|
|
|
73
27
|
## Platform Tools
|
|
74
28
|
|
|
75
|
-
Inside any workflow step, import
|
|
29
|
+
Inside any workflow step or agent, import from `@elevasis/sdk/worker` to call platform tools via typed adapters:
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
import { createAttioAdapter, scheduler, llm } from '@elevasis/sdk/worker'
|
|
76
33
|
|
|
77
|
-
|
|
78
|
-
|
|
34
|
+
const attio = createAttioAdapter('my-attio')
|
|
35
|
+
const records = await attio.listRecords({ object: 'deals' })
|
|
79
36
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
method: 'send',
|
|
83
|
-
params: { to: 'user@example.com', subject: 'Hello', body: 'World' },
|
|
84
|
-
credential: 'my-gmail-credential',
|
|
85
|
-
});
|
|
37
|
+
await scheduler.createSchedule({ ... })
|
|
38
|
+
const result = await llm.generate({ messages: [...] })
|
|
86
39
|
```
|
|
87
40
|
|
|
88
|
-
The platform exposes 70+ tools across 12 integration adapters -- Gmail, Stripe, Google Sheets, Notion, and more. Credentials are managed server-side; API keys never cross the execution boundary.
|
|
41
|
+
The platform exposes 70+ tools across 12 integration adapters -- Gmail, Stripe, Google Sheets, Notion, and more. Credentials are managed server-side; API keys never cross the execution boundary.
|
|
89
42
|
|
|
90
43
|
See [Platform Tools](platform-tools/index.mdx) for the full catalog.
|
|
91
44
|
|
|
@@ -104,7 +57,7 @@ See [Platform Tools](platform-tools/index.mdx) for the full catalog.
|
|
|
104
57
|
|
|
105
58
|
- [Resources](resources/index.mdx) - Workflow and agent definition patterns, Zod schemas, step types, and routing
|
|
106
59
|
- [Platform Tools](platform-tools/index.mdx) - Full catalog of 70+ tools, integration adapters, and credential management
|
|
107
|
-
- [
|
|
60
|
+
- [Credential Security](platform-tools/index.mdx#credential-security) - Three-layer credential model, HTTP tool patterns, and credential management
|
|
108
61
|
|
|
109
62
|
### Reference
|
|
110
63
|
|
|
@@ -114,6 +67,11 @@ See [Platform Tools](platform-tools/index.mdx) for the full catalog.
|
|
|
114
67
|
- [Deployment](deployment/index.mdx) - Deploy pipeline, versioning, bundle upload, and registry registration
|
|
115
68
|
- [Runtime](runtime.mdx) - Worker execution model, concurrency, timeouts, cancellation, resource limits, and v1 limitations
|
|
116
69
|
|
|
70
|
+
### Typed Adapters
|
|
71
|
+
|
|
72
|
+
- [Integration Adapters](platform-tools/adapters-integration.mdx) - All 12 integration adapters: Attio, Stripe, Notion, Google Sheets, Resend, and more
|
|
73
|
+
- [Platform Adapters](platform-tools/adapters-platform.mdx) - All 9 platform service adapters: scheduler, storage, llm, pdf, approval, and more
|
|
74
|
+
|
|
117
75
|
### Framework
|
|
118
76
|
|
|
119
77
|
- [Development Framework](framework/index.mdx) - How Claude Code helps you build: project structure, agent integration, memory, and documentation
|
|
@@ -122,10 +80,9 @@ See [Platform Tools](platform-tools/index.mdx) for the full catalog.
|
|
|
122
80
|
|
|
123
81
|
### More
|
|
124
82
|
|
|
125
|
-
- [Documentation](framework/index.mdx#resource-documentation) - Writing and deploying MDX documentation alongside your resources
|
|
126
83
|
- [Troubleshooting](troubleshooting.mdx) - Static error catalog for CLI, deployment, schema, and runtime failures
|
|
127
|
-
- [Roadmap](roadmap.mdx) - Planned features including
|
|
84
|
+
- [Roadmap](roadmap.mdx) - Planned features including error taxonomy, retry semantics, circuit breaker, and metrics
|
|
128
85
|
|
|
129
86
|
---
|
|
130
87
|
|
|
131
|
-
**Last Updated:** 2026-
|
|
88
|
+
**Last Updated:** 2026-03-19
|
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Integration Adapters
|
|
3
|
+
description: Type-safe wrappers for third-party integrations -- Attio, Stripe, Notion, Google Sheets, Instantly, SignatureAPI, Resend, Dropbox, Apify, Gmail, Mailso, and Tomba -- with full autocomplete and compile-time checking
|
|
4
|
+
loadWhen: "Using typed adapters for integration tools, or needs to know what integration adapter methods are available"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Integration adapters are factory functions that bind a credential once and return a typed object with all methods available for that service. They wrap `platform.call()` with full TypeScript autocomplete and compile-time method checking.
|
|
8
|
+
|
|
9
|
+
All integration adapters are imported from `@elevasis/sdk/worker`. For platform service adapters (scheduler, storage, llm, etc.), see [Platform Adapters](adapters-platform.mdx).
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
import {
|
|
13
|
+
createAttioAdapter, createStripeAdapter, createNotionAdapter,
|
|
14
|
+
createGoogleSheetsAdapter, createInstantlyAdapter,
|
|
15
|
+
createSignatureApiAdapter, createResendAdapter, createDropboxAdapter,
|
|
16
|
+
createApifyAdapter, createGmailAdapter, createMailsoAdapter,
|
|
17
|
+
createTombaAdapter,
|
|
18
|
+
} from '@elevasis/sdk/worker'
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Quick Reference
|
|
24
|
+
|
|
25
|
+
| Import | Methods | Category |
|
|
26
|
+
| --------------------------------- | ------- | ------------------- |
|
|
27
|
+
| `createAttioAdapter(cred)` | 12 | CRM |
|
|
28
|
+
| `createGoogleSheetsAdapter(cred)` | 13 | Spreadsheets |
|
|
29
|
+
| `createNotionAdapter(cred)` | 8 | Knowledge Base |
|
|
30
|
+
| `createStripeAdapter(cred)` | 6 | Payments |
|
|
31
|
+
| `createInstantlyAdapter(cred)` | 5 | Email Campaigns |
|
|
32
|
+
| `createSignatureApiAdapter(cred)` | 4 | eSignature |
|
|
33
|
+
| `createTombaAdapter(cred)` | 3 | Email Discovery |
|
|
34
|
+
| `createResendAdapter(cred)` | 2 | Transactional Email |
|
|
35
|
+
| `createDropboxAdapter(cred)` | 2 | File Storage |
|
|
36
|
+
| `createApifyAdapter(cred)` | 1 | Web Scraping |
|
|
37
|
+
| `createGmailAdapter(cred)` | 1 | Email (Gmail) |
|
|
38
|
+
| `createMailsoAdapter(cred)` | 1 | Email Verification |
|
|
39
|
+
|
|
40
|
+
Multiple adapters with different credentials work simultaneously:
|
|
41
|
+
|
|
42
|
+
```typescript
|
|
43
|
+
const prodAttio = createAttioAdapter('prod-attio')
|
|
44
|
+
const testAttio = createAttioAdapter('test-attio')
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Attio CRM Adapter
|
|
50
|
+
|
|
51
|
+
Factory pattern -- bind a credential once, use 12 typed methods.
|
|
52
|
+
|
|
53
|
+
```typescript
|
|
54
|
+
const attio = createAttioAdapter('my-attio-credential')
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Methods
|
|
58
|
+
|
|
59
|
+
| Method | Params | Returns |
|
|
60
|
+
| ----------------- | ----------------------- | ----------------------- |
|
|
61
|
+
| `createRecord` | `CreateRecordParams` | `CreateRecordResult` |
|
|
62
|
+
| `updateRecord` | `UpdateRecordParams` | `UpdateRecordResult` |
|
|
63
|
+
| `listRecords` | `QueryRecordsParams` | `QueryRecordsResult` |
|
|
64
|
+
| `getRecord` | `GetRecordParams` | `GetRecordResult` |
|
|
65
|
+
| `deleteRecord` | `DeleteRecordParams` | `DeleteRecordResult` |
|
|
66
|
+
| `listObjects` | none | `ListObjectsResult` |
|
|
67
|
+
| `listAttributes` | `ListAttributesParams` | `ListAttributesResult` |
|
|
68
|
+
| `createAttribute` | `CreateAttributeParams` | `CreateAttributeResult` |
|
|
69
|
+
| `updateAttribute` | `UpdateAttributeParams` | `UpdateAttributeResult` |
|
|
70
|
+
| `createNote` | `CreateNoteParams` | `CreateNoteResult` |
|
|
71
|
+
| `listNotes` | `ListNotesParams` | `ListNotesResult` |
|
|
72
|
+
| `deleteNote` | `DeleteNoteParams` | `DeleteNoteResult` |
|
|
73
|
+
|
|
74
|
+
### Examples
|
|
75
|
+
|
|
76
|
+
```typescript
|
|
77
|
+
// Create a company record
|
|
78
|
+
const company = await attio.createRecord({
|
|
79
|
+
object: 'companies',
|
|
80
|
+
values: {
|
|
81
|
+
name: [{ value: 'Acme Corp' }],
|
|
82
|
+
domains: [{ domain: 'acme.com' }],
|
|
83
|
+
},
|
|
84
|
+
})
|
|
85
|
+
|
|
86
|
+
// Query deals with filters
|
|
87
|
+
const deals = await attio.listRecords({
|
|
88
|
+
object: 'deals',
|
|
89
|
+
filter: {
|
|
90
|
+
operator: 'and',
|
|
91
|
+
filters: [
|
|
92
|
+
{ field: 'stage', operator: 'equals', value: 'proposal' },
|
|
93
|
+
],
|
|
94
|
+
},
|
|
95
|
+
sorts: [{ field: 'created_at', direction: 'desc' }],
|
|
96
|
+
limit: 20,
|
|
97
|
+
})
|
|
98
|
+
|
|
99
|
+
// Create a note on a record
|
|
100
|
+
await attio.createNote({
|
|
101
|
+
parentObject: 'deals',
|
|
102
|
+
parentRecordId: 'rec_abc123',
|
|
103
|
+
title: 'Discovery call notes',
|
|
104
|
+
content: 'Key takeaways from the call...',
|
|
105
|
+
})
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Google Sheets Adapter
|
|
111
|
+
|
|
112
|
+
Factory pattern -- 13 methods including workflow-friendly helpers (`getRowByValue`, `upsertRow`, `filterRows`).
|
|
113
|
+
|
|
114
|
+
```typescript
|
|
115
|
+
const sheets = createGoogleSheetsAdapter('my-google-credential')
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Methods
|
|
119
|
+
|
|
120
|
+
| Method | Params | Returns |
|
|
121
|
+
| ------------------------ | ------------------------------ | ------------------------------ |
|
|
122
|
+
| `readSheet` | `ReadSheetParams` | `ReadSheetResult` |
|
|
123
|
+
| `writeSheet` | `WriteSheetParams` | `WriteSheetResult` |
|
|
124
|
+
| `appendRows` | `AppendRowsParams` | `AppendRowsResult` |
|
|
125
|
+
| `clearRange` | `ClearRangeParams` | `ClearRangeResult` |
|
|
126
|
+
| `getSpreadsheetMetadata` | `GetSpreadsheetMetadataParams` | `GetSpreadsheetMetadataResult` |
|
|
127
|
+
| `batchUpdate` | `BatchUpdateParams` | `BatchUpdateResult` |
|
|
128
|
+
| `getHeaders` | `GetHeadersParams` | `GetHeadersResult` |
|
|
129
|
+
| `getLastRow` | `GetLastRowParams` | `GetLastRowResult` |
|
|
130
|
+
| `getRowByValue` | `GetRowByValueParams` | `GetRowByValueResult` |
|
|
131
|
+
| `updateRowByValue` | `UpdateRowByValueParams` | `UpdateRowByValueResult` |
|
|
132
|
+
| `upsertRow` | `UpsertRowParams` | `UpsertRowResult` |
|
|
133
|
+
| `filterRows` | `FilterRowsParams` | `FilterRowsResult` |
|
|
134
|
+
| `deleteRowByValue` | `DeleteRowByValueParams` | `DeleteRowByValueResult` |
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## Notion Adapter
|
|
139
|
+
|
|
140
|
+
Factory pattern -- 8 methods for page and block operations.
|
|
141
|
+
|
|
142
|
+
```typescript
|
|
143
|
+
const notion = createNotionAdapter('my-notion-credential')
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Methods
|
|
147
|
+
|
|
148
|
+
| Method | Params | Returns |
|
|
149
|
+
| ----------------- | ----------------------- | ----------------------- |
|
|
150
|
+
| `listAllPages` | none | `ListAllPagesResult` |
|
|
151
|
+
| `readPage` | `ReadPageParams` | `ReadPageResult` |
|
|
152
|
+
| `createPage` | `CreatePageParams` | `CreatePageResult` |
|
|
153
|
+
| `updatePageTitle` | `UpdatePageTitleParams` | `UpdatePageTitleResult` |
|
|
154
|
+
| `appendBlocks` | `AppendBlocksParams` | `AppendBlocksResult` |
|
|
155
|
+
| `updateBlocks` | `UpdateBlocksParams` | `UpdateBlocksResult` |
|
|
156
|
+
| `deletePage` | `DeletePageParams` | `DeletePageResult` |
|
|
157
|
+
| `deleteBlocks` | `DeleteBlocksParams` | `DeleteBlocksResult` |
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Stripe Adapter
|
|
162
|
+
|
|
163
|
+
Factory pattern -- 6 methods for payment links and checkout sessions.
|
|
164
|
+
|
|
165
|
+
```typescript
|
|
166
|
+
const stripe = createStripeAdapter('my-stripe-credential')
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Methods
|
|
170
|
+
|
|
171
|
+
| Method | Params | Returns |
|
|
172
|
+
| ----------------------- | ----------------------------- | ----------------------------- |
|
|
173
|
+
| `createPaymentLink` | `CreatePaymentLinkParams` | `CreatePaymentLinkResult` |
|
|
174
|
+
| `getPaymentLink` | `GetPaymentLinkParams` | `GetPaymentLinkResult` |
|
|
175
|
+
| `updatePaymentLink` | `UpdatePaymentLinkParams` | `UpdatePaymentLinkResult` |
|
|
176
|
+
| `listPaymentLinks` | `ListPaymentLinksParams` | `ListPaymentLinksResult` |
|
|
177
|
+
| `createAutoPaymentLink` | `CreateAutoPaymentLinkParams` | `CreateAutoPaymentLinkResult` |
|
|
178
|
+
| `createCheckoutSession` | `CreateCheckoutSessionParams` | `CreateCheckoutSessionResult` |
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Instantly Adapter
|
|
183
|
+
|
|
184
|
+
Factory pattern -- 5 methods for email campaign management.
|
|
185
|
+
|
|
186
|
+
```typescript
|
|
187
|
+
const instantly = createInstantlyAdapter('my-instantly-credential')
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Methods
|
|
191
|
+
|
|
192
|
+
| Method | Params | Returns |
|
|
193
|
+
| ----------------------- | ----------------------------- | ----------------------------- |
|
|
194
|
+
| `sendReply` | `SendReplyParams` | `SendReplyResult` |
|
|
195
|
+
| `removeFromSubsequence` | `RemoveFromSubsequenceParams` | `RemoveFromSubsequenceResult` |
|
|
196
|
+
| `getEmails` | `GetEmailsParams` | `GetEmailsResult` |
|
|
197
|
+
| `updateInterestStatus` | `UpdateInterestStatusParams` | `UpdateInterestStatusResult` |
|
|
198
|
+
| `addToCampaign` | `AddToCampaignParams` | `AddToCampaignResult` |
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## SignatureAPI Adapter
|
|
203
|
+
|
|
204
|
+
Factory pattern -- 4 methods for eSignature envelope operations.
|
|
205
|
+
|
|
206
|
+
```typescript
|
|
207
|
+
const signatureApi = createSignatureApiAdapter('my-signatureapi-credential')
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
### Methods
|
|
211
|
+
|
|
212
|
+
| Method | Params | Returns |
|
|
213
|
+
| ------------------ | ------------------------ | ------------------------ |
|
|
214
|
+
| `createEnvelope` | `CreateEnvelopeParams` | `CreateEnvelopeResult` |
|
|
215
|
+
| `voidEnvelope` | `VoidEnvelopeParams` | `VoidEnvelopeResult` |
|
|
216
|
+
| `downloadDocument` | `DownloadDocumentParams` | `DownloadDocumentResult` |
|
|
217
|
+
| `getEnvelope` | `GetEnvelopeParams` | `GetEnvelopeResult` |
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
## Tomba Adapter
|
|
222
|
+
|
|
223
|
+
Factory pattern -- 3 methods for email discovery and verification.
|
|
224
|
+
|
|
225
|
+
```typescript
|
|
226
|
+
const tomba = createTombaAdapter('elevasis-tomba')
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
**Credential type:** `api-key-secret` (requires both API Key and API Secret)
|
|
230
|
+
|
|
231
|
+
### Methods
|
|
232
|
+
|
|
233
|
+
| Method | Params | Returns |
|
|
234
|
+
| --------------- | -------------------------- | -------------------------- |
|
|
235
|
+
| `emailFinder` | `TombaEmailFinderParams` | `TombaEmailFinderResult` |
|
|
236
|
+
| `domainSearch` | `TombaDomainSearchParams` | `TombaDomainSearchResult` |
|
|
237
|
+
| `emailVerifier` | `TombaEmailVerifierParams` | `TombaEmailVerifierResult` |
|
|
238
|
+
|
|
239
|
+
### Examples
|
|
240
|
+
|
|
241
|
+
```typescript
|
|
242
|
+
// Find email by name + domain
|
|
243
|
+
const found = await tomba.emailFinder({
|
|
244
|
+
domain: 'stripe.com',
|
|
245
|
+
firstName: 'John',
|
|
246
|
+
lastName: 'Doe',
|
|
247
|
+
})
|
|
248
|
+
|
|
249
|
+
// List all emails at a domain (up to 10)
|
|
250
|
+
const results = await tomba.domainSearch({ domain: 'stripe.com' })
|
|
251
|
+
|
|
252
|
+
// Verify a known email address
|
|
253
|
+
const verified = await tomba.emailVerifier({ email: 'john@stripe.com' })
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## Resend Adapter
|
|
259
|
+
|
|
260
|
+
Factory pattern -- 2 methods for transactional email.
|
|
261
|
+
|
|
262
|
+
```typescript
|
|
263
|
+
const resend = createResendAdapter('my-resend-credential')
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
### Methods
|
|
267
|
+
|
|
268
|
+
| Method | Params | Returns |
|
|
269
|
+
| ----------- | ----------------------- | ----------------------- |
|
|
270
|
+
| `sendEmail` | `ResendSendEmailParams` | `ResendSendEmailResult` |
|
|
271
|
+
| `getEmail` | `ResendGetEmailParams` | `ResendGetEmailResult` |
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
275
|
+
## Dropbox Adapter
|
|
276
|
+
|
|
277
|
+
Factory pattern -- 2 methods for file operations.
|
|
278
|
+
|
|
279
|
+
```typescript
|
|
280
|
+
const dropbox = createDropboxAdapter('my-dropbox-credential')
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### Methods
|
|
284
|
+
|
|
285
|
+
| Method | Params | Returns |
|
|
286
|
+
| -------------- | -------------------- | -------------------- |
|
|
287
|
+
| `uploadFile` | `UploadFileParams` | `UploadFileResult` |
|
|
288
|
+
| `createFolder` | `CreateFolderParams` | `CreateFolderResult` |
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
## Apify Adapter
|
|
293
|
+
|
|
294
|
+
Factory pattern -- 1 method for running web scraping actors.
|
|
295
|
+
|
|
296
|
+
```typescript
|
|
297
|
+
const apify = createApifyAdapter('my-apify-credential')
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### Methods
|
|
301
|
+
|
|
302
|
+
| Method | Params | Returns |
|
|
303
|
+
| ---------- | ---------------- | ---------------- |
|
|
304
|
+
| `runActor` | `RunActorParams` | `RunActorResult` |
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## Gmail Adapter
|
|
309
|
+
|
|
310
|
+
Factory pattern -- 1 method for sending email via Gmail API.
|
|
311
|
+
|
|
312
|
+
```typescript
|
|
313
|
+
const gmail = createGmailAdapter('my-gmail-credential')
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
### Methods
|
|
317
|
+
|
|
318
|
+
| Method | Params | Returns |
|
|
319
|
+
| ----------- | ---------------------- | ---------------------- |
|
|
320
|
+
| `sendEmail` | `GmailSendEmailParams` | `GmailSendEmailResult` |
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
## Mailso Adapter
|
|
325
|
+
|
|
326
|
+
Factory pattern -- 1 method for email verification.
|
|
327
|
+
|
|
328
|
+
```typescript
|
|
329
|
+
const mailso = createMailsoAdapter('my-mailso-credential')
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
### Methods
|
|
333
|
+
|
|
334
|
+
| Method | Params | Returns |
|
|
335
|
+
| ------------- | ------------------------- | ------------------------- |
|
|
336
|
+
| `verifyEmail` | `MailsoVerifyEmailParams` | `MailsoVerifyEmailResult` |
|
|
337
|
+
|
|
338
|
+
---
|
|
339
|
+
|
|
340
|
+
For platform service adapters (scheduler, storage, llm, pdf, approval, acqDb, notifications, execution, email), see [Platform Adapters](adapters-platform.mdx).
|
|
341
|
+
|
|
342
|
+
**Last Updated:** 2026-03-05
|