First connector call, fast
One SDK. One spec file. Your AI agent connected to the MENA (and Gmail) before your coffee cools.
- 1 Install
- 2 Load spec
- 3 Authorize
- 4 Execute
- 5 Live!
1
Install the SDK
The Wassl SDK bundles the connector runtime, vault, and spec loader.
npm
npm install @wasl/sdk @wasl/runtime Prerequisites: Node.js ≥ 20 (TS) · Python ≥ 3.11 (Python)
2
Choose a connector
Pick one to try. Each connector is a YAML spec that describes auth, actions, and rate limits.
TypeScript
import { Connectors } from "@wasl/sdk";
const client = await Connectors.fromDir("./connectors"); // loads gmail.yaml
console.log(client.list().map(c => c.id));
// ["gmail"] 🌍
Gmail Global · OAuth2 · Communication
Spec files are bundled with the SDK. Place any
.yaml spec in a
./connectors/ directory and the SDK discovers them automatically.
GitHub repo coming soon.
3
Authorize
Generate an OAuth2 URL. Your user authenticates once; Wassl handles token storage and refresh.
TypeScript
const { url, state } = client.authorize("gmail", {
clientId: process.env.GMAIL_CLIENT_ID!,
redirectUri: "https://myapp.com/auth/callback",
scopes: ["gmail.send", "gmail.readonly"],
});
// Redirect your user to `url`, then exchange the code on callback.
console.log("Auth URL:", url); Sandbox credentials: Register for STC Pay sandbox ·
Google Cloud Console for Gmail.
Both provide test environments with no real money or email sent.
4
Execute your first action
One call to run any action on any connector. Wassl handles retries, rate limits, and token refresh.
TypeScript
const result = await client.execute(
"gmail",
"get_profile",
{},
{ token: process.env.GMAIL_ACCESS_TOKEN! },
);
// { status: 200, body: { emailAddress: "alice@example.com", ... }, attempts: 1 }
console.log("Inbox belongs to:", result.body.emailAddress); ✓
You're live
Your first connector call just went through. Wassl logged the latency, success rate, and retry count. Head to the status page to see it land.