-
Notifications
You must be signed in to change notification settings - Fork 13
docs(agent-connectors): add Canva, Mailgun, Postmark, Resend, SendGrid, and Zoho CRM connectors #932
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
docs(agent-connectors): add Canva, Mailgun, Postmark, Resend, SendGrid, and Zoho CRM connectors #932
Changes from 1 commit
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 41 additions & 0 deletions
41
src/components/templates/agent-connectors/_setup-canva.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,41 @@ | ||
| import { Steps, Aside, Badge } from '@astrojs/starlight/components' | ||
|
|
||
| Register your Scalekit environment with the Canva connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows: | ||
|
|
||
| <Steps> | ||
| 1. ### Create a Canva integration | ||
|
|
||
| - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **Canva** and click **Create**. | ||
| - Go to [Canva Developer Portal](https://www.canva.com/developers/) > **Your integrations** and click **Create an integration**. | ||
| - Choose **Public** or **Private** based on who should be able to install it, then enter an integration name (for example, `Agent Connect`). | ||
|
|
||
|  | ||
|
|
||
| 2. ### Get client credentials | ||
|
|
||
| - On the **Configuration** page, under **Credentials**, copy the **Client ID**. | ||
| - Click **Generate a secret** to create a **Client Secret**, then copy it. Canva only shows the secret once — store it securely. | ||
|
|
||
| 3. ### Set up auth redirects | ||
|
|
||
| - In the Scalekit dashboard, on the connection you created, copy the redirect URI. It looks like `https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback`. | ||
| - In the Canva Developer Portal, go to **Authentication** in the left menu. Under **Authorized redirects**, click **Add another URL**, paste the redirect URI from Scalekit, and save. | ||
|
|
||
|  | ||
|
|
||
| <Aside type="note" title="Multiple redirect URLs"> | ||
| Add one redirect URL per Scalekit environment (for example, one for development and one for production). Canva sends users back to whichever URL matches the request, so keep each environment's connection using its own redirect URI. | ||
| </Aside> | ||
|
|
||
| 4. ### Add credentials in Scalekit | ||
|
|
||
| - In the Scalekit dashboard, open the connection you created and enter: | ||
| - Client ID (from step 2) | ||
| - Client Secret (from step 2) | ||
| - Scopes (see [Canva Connect API scopes reference](https://www.canva.dev/docs/connect/appendix/scopes/) — grant only what your agent needs, for example `design:content:read` and `design:content:write`) | ||
| - Click **Save**. | ||
|
|
||
| 5. ### Submit for review <Badge text="Required for production" /> | ||
|
|
||
| Canva integrations start in **Draft** and only work for accounts on your own team. Before other users can connect, go to **Submit for review** in the Canva Developer Portal and follow the checklist to move your integration to production. | ||
| </Steps> |
20 changes: 20 additions & 0 deletions
20
src/components/templates/agent-connectors/_setup-mailgun.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| import { Steps } from '@astrojs/starlight/components' | ||
|
|
||
| Register your Scalekit environment with the Mailgun connector so Scalekit can authenticate requests on your behalf. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows: | ||
|
|
||
| <Steps> | ||
| 1. ### Create an API key | ||
|
|
||
| - Go to [Mailgun](https://app.mailgun.com/) > **Settings** > **API Keys**. | ||
| - Under **Mailgun API keys**, click **Create key**. Give it a descriptive name, for example `Agent Auth`. | ||
|
|
||
|  | ||
|
|
||
| - Copy the key. Mailgun shows the full key only once at creation — store it securely. | ||
|
|
||
| 2. ### Add the key in Scalekit | ||
|
|
||
| - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **Mailgun** and click **Create**. | ||
| - Paste the API key you copied in step 1. | ||
| - Click **Save**. | ||
| </Steps> |
20 changes: 20 additions & 0 deletions
20
src/components/templates/agent-connectors/_setup-postmark.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| import { Steps, Aside } from '@astrojs/starlight/components' | ||
|
|
||
| Register your Scalekit environment with the Postmark connector so Scalekit can authenticate requests on your behalf. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows: | ||
|
|
||
| <Steps> | ||
| 1. ### Get your server API token | ||
|
|
||
| - Go to [Postmark](https://account.postmarkapp.com/) and open the server you want to connect. | ||
| - Go to the **API Tokens** tab. Postmark creates a default **Server API token** for every server — copy it, or click **Create token** for a dedicated one, for example named `Agent Auth`. | ||
|
|
||
| <Aside type="note" title="Server tokens are scoped per server"> | ||
| A Server API token only works for that server's messages and templates. If your agent needs to send from multiple servers, create a Scalekit connection per server token. | ||
| </Aside> | ||
|
|
||
| 2. ### Add the token in Scalekit | ||
|
|
||
| - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **Postmark** and click **Create**. | ||
| - Paste the Server API token you copied in step 1. | ||
| - Click **Save**. | ||
| </Steps> |
24 changes: 24 additions & 0 deletions
24
src/components/templates/agent-connectors/_setup-resend.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| import { Steps, Aside } from '@astrojs/starlight/components' | ||
|
|
||
| Register your Scalekit environment with the Resend connector so Scalekit can authenticate requests on your behalf. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows: | ||
|
|
||
| <Steps> | ||
| 1. ### Create an API key | ||
|
|
||
| - Go to [Resend](https://resend.com/) > **API Keys** and click **Create API Key**. | ||
| - Give it a descriptive name, for example `Agent Auth`, and choose the permission level your agent needs (**Full access** or **Sending access**). | ||
|
|
||
| 2. ### Copy the key | ||
|
|
||
| - Resend shows the key exactly once. Click the eye icon to reveal it, then copy it and store it securely. | ||
|
|
||
| <Aside type="caution" title="This key is shown only once"> | ||
| If you navigate away before copying it, you'll need to delete the key and create a new one — Resend never displays a key's value again after creation. | ||
| </Aside> | ||
|
|
||
| 3. ### Add the key in Scalekit | ||
|
|
||
| - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **Resend** and click **Create**. | ||
| - Paste the API key you copied in step 2. | ||
| - Click **Save**. | ||
| </Steps> |
29 changes: 29 additions & 0 deletions
29
src/components/templates/agent-connectors/_setup-sendgrid.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| import { Steps, Aside } from '@astrojs/starlight/components' | ||
|
|
||
| Register your Scalekit environment with the SendGrid connector so Scalekit can authenticate requests on your behalf. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows: | ||
|
|
||
| <Steps> | ||
| 1. ### Create an API key | ||
|
|
||
| - Go to [SendGrid](https://app.sendgrid.com/) > **Settings** > **API Keys** and click **Create key**. | ||
| - Choose **Full Access** (or **Restricted Access** with the permissions your agent needs) and give it a descriptive name, for example `Agent Auth`. | ||
|
|
||
|  | ||
|
|
||
| 2. ### Copy the key | ||
|
|
||
| - Click **Create & View**. SendGrid shows the key exactly once. | ||
| - Copy it immediately and store it securely — you can't view it again after leaving this screen. | ||
|
|
||
|  | ||
|
|
||
| <Aside type="caution" title="This key is shown only once"> | ||
| If you navigate away before copying it, you'll need to delete the key and create a new one. SendGrid never displays a key's value again after creation. | ||
| </Aside> | ||
|
|
||
| 3. ### Add the key in Scalekit | ||
|
|
||
| - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **SendGrid** and click **Create**. | ||
| - Paste the API key you copied in step 2. | ||
| - Click **Save**. | ||
| </Steps> |
35 changes: 35 additions & 0 deletions
35
src/components/templates/agent-connectors/_setup-zohocrm.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| import { Steps, Aside, Badge } from '@astrojs/starlight/components' | ||
|
|
||
| Register your Scalekit environment with the Zoho CRM connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows: | ||
|
|
||
| <Steps> | ||
| 1. ### Set up auth redirects | ||
|
|
||
| - In [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **Zoho CRM** and click **Create**. Copy the redirect URI. It looks like `https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback`. | ||
| - Go to [Zoho API Console](https://api-console.zoho.com/) and click **Add Client** > **Server-based Applications**. | ||
| - Enter a **Client Name** and **Homepage URL**. Under **Authorized Redirect URIs**, paste the redirect URI from Scalekit, then click **Create**. | ||
|
|
||
|  | ||
|
|
||
| 2. ### Get client credentials | ||
|
|
||
| - On the app you created, go to the **Client Secret** tab. | ||
| - Copy the **Client ID** and **Client Secret**. Zoho only shows the full secret once — store it securely. | ||
|
|
||
| 3. ### Match your Zoho data center <Badge text="Multi-DC accounts only" /> | ||
|
|
||
| Zoho hosts accounts in different regional data centers (`zoho.com`, `zoho.eu`, `zoho.in`, and others). If your users sign in from a data center other than the default, enable it here so their tokens resolve correctly. | ||
|
|
||
| - Go to the **Settings** tab on your app. | ||
| - Under **Multi-DC**, enable the data centers your users belong to (for example, **EU (zoho.eu)** or **IN (zoho.in)**). | ||
|
|
||
|  | ||
|
|
||
| 4. ### Add credentials in Scalekit | ||
|
|
||
| - In the Scalekit dashboard, open the connection you created and enter: | ||
| - Client ID (from step 2) | ||
| - Client Secret (from step 2) | ||
| - Scopes (see [Zoho CRM OAuth scopes reference](https://www.zoho.com/crm/developer/docs/api/v7/scopes.html) — grant only what your agent needs, for example `ZohoCRM.modules.ALL`) | ||
| - Click **Save**. | ||
| </Steps> | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,84 @@ | ||
| --- | ||
| title: 'Canva connector' | ||
| tableOfContents: true | ||
| description: 'Connect to Canva''s Connect API to manage designs, assets, folders, brand templates, comments, autofills, exports, and analytics on the user''s behalf via...' | ||
| sidebar: | ||
| label: 'Canva' | ||
| overviewTitle: 'Quickstart' | ||
| connectorIcon: https://cdn.scalekit.com/sk-connect/assets/provider-icons/canva.svg | ||
| connectorAuthType: OAuth 2.0 | ||
| connectorCategories: [Design, Collaboration] | ||
| head: | ||
| - tag: style | ||
| content: | | ||
| .sl-markdown-content h2 { | ||
| font-size: var(--sl-text-xl); | ||
| } | ||
| .sl-markdown-content h3 { | ||
| font-size: var(--sl-text-lg); | ||
| } | ||
| --- | ||
|
|
||
| import ToolList from '@/components/ToolList.astro' | ||
| import { tools } from '@/data/agent-connectors/canva' | ||
| import { Steps, Tabs, TabItem } from '@astrojs/starlight/components' | ||
| import { AgentKitCredentials } from '@components/templates' | ||
| import { SetupCanvaSection } from '@components/templates' | ||
| import { QuickstartGenericOauthSection } from '@components/templates' | ||
|
|
||
| <Steps> | ||
|
|
||
| 1. ### Install the SDK | ||
|
|
||
| <Tabs syncKey="tech-stack"> | ||
| <TabItem label="Node.js"> | ||
| ```bash frame="terminal" | ||
| npm install @scalekit-sdk/node | ||
| ``` | ||
| </TabItem> | ||
| <TabItem label="Python"> | ||
| ```bash frame="terminal" | ||
| pip install scalekit | ||
| ``` | ||
| </TabItem> | ||
| </Tabs> | ||
|
|
||
| Full SDK reference: [Node.js](/agentkit/sdks/node/) | [Python](/agentkit/sdks/python/) | ||
|
|
||
| 2. ### Set your credentials | ||
|
|
||
| <AgentKitCredentials /> | ||
|
|
||
| 3. ### Set up the connector | ||
|
|
||
| Register your Canva credentials with Scalekit so it handles the token lifecycle. You do this once per environment. | ||
|
|
||
| <details> | ||
| <summary>Dashboard setup steps</summary> | ||
|
|
||
| <SetupCanvaSection /> | ||
|
|
||
| </details> | ||
|
|
||
| 4. ### Authorize and make your first call | ||
|
|
||
| <QuickstartGenericOauthSection connector="canva" toolName="canva_brand_template_list" providerName="Canva" /> | ||
|
|
||
| </Steps> | ||
|
|
||
| ## What you can do | ||
|
|
||
| Connect this agent connector to let your agent: | ||
|
|
||
| - **Get user profile, user me, user capabilities** — Get the profile of the Canva user associated with the connected access token | ||
| - **Create resize, merge, folder** — Starts a new asynchronous job to create a resized copy of a design | ||
| - **Update folder, asset** — Update a Canva folder's details using its folder ID | ||
| - **List folder items, design pages, design** — List the items inside a Canva folder, including each item's type (design, folder, image, or brand_template) | ||
| - **Move folder item** — Move an item (a folder, design, image asset, or brand template) to another folder in Canva | ||
| - **Delete folder, asset** — Delete a Canva folder using its folder ID | ||
|
|
||
| ## Tool list | ||
|
|
||
| Use the exact tool names from the **Tool list** below when you call `execute_tool`. If you're not sure which name to use, list the tools available for the current user first. | ||
|
|
||
| <ToolList tools={tools} /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,79 @@ | ||
| --- | ||
| title: 'Mailgun connector' | ||
| tableOfContents: true | ||
| description: 'Connect to Mailgun to send transactional and marketing email, manage domains and DNS/DKIM security, mailing lists, suppressions (bounces, complaints...' | ||
| sidebar: | ||
| label: 'Mailgun' | ||
| overviewTitle: 'Quickstart' | ||
| connectorIcon: https://cdn.scalekit.com/sk-connect/assets/provider-icons/mailgun.svg | ||
| connectorAuthType: API Key | ||
| connectorCategories: [Communication, Marketing] | ||
| head: | ||
| - tag: style | ||
| content: | | ||
| .sl-markdown-content h2 { | ||
| font-size: var(--sl-text-xl); | ||
| } | ||
| .sl-markdown-content h3 { | ||
| font-size: var(--sl-text-lg); | ||
| } | ||
| --- | ||
|
|
||
| import ToolList from '@/components/ToolList.astro' | ||
| import { tools } from '@/data/agent-connectors/mailgun' | ||
| import { Steps, Tabs, TabItem } from '@astrojs/starlight/components' | ||
| import { AgentKitCredentials } from '@components/templates' | ||
| import { SetupMailgunSection } from '@components/templates' | ||
|
|
||
| <Steps> | ||
|
|
||
| 1. ### Install the SDK | ||
|
|
||
| <Tabs syncKey="tech-stack"> | ||
| <TabItem label="Node.js"> | ||
| ```bash frame="terminal" | ||
| npm install @scalekit-sdk/node | ||
| ``` | ||
| </TabItem> | ||
| <TabItem label="Python"> | ||
| ```bash frame="terminal" | ||
| pip install scalekit | ||
| ``` | ||
| </TabItem> | ||
| </Tabs> | ||
|
|
||
| Full SDK reference: [Node.js](/agentkit/sdks/node/) | [Python](/agentkit/sdks/python/) | ||
|
|
||
| 2. ### Set your credentials | ||
|
|
||
| <AgentKitCredentials /> | ||
|
|
||
| 3. ### Set up the connector | ||
|
|
||
| Register your Mailgun credentials with Scalekit so it can authenticate requests on your behalf. You do this once per environment. | ||
|
|
||
| <details> | ||
| <summary>Dashboard setup steps</summary> | ||
|
|
||
| <SetupMailgunSection /> | ||
|
|
||
| </details> | ||
|
|
||
| </Steps> | ||
|
|
||
| ## What you can do | ||
|
|
||
| Connect this agent connector to let your agent: | ||
|
|
||
| - **List users, unsubscribes, tags** — Get the users on your Mailgun account, with optional filtering by role and pagination | ||
| - **Get users, unsubscribes** — Get the account's own user details for the API key used to authenticate this request, including name, email, role, activation/disabled status, two-factor auth status, and preferences | ||
| - **Delete unsubscribes, tags, subaccounts** — Remove a single email address from a Mailgun domain's unsubscribe (suppression) list | ||
| - **Create unsubscribes, subaccounts, smtp credentials** — Add an email address to a Mailgun domain's unsubscribe (suppression) list, so future deliveries to it are suppressed for the given tag (or all of the domain's mail if no tag is given) | ||
| - **Clear unsubscribes, smtp credentials, domain templates** — Clear (delete) every unsubscribe email address recorded for a Mailgun domain | ||
| - **Update tags, subaccounts** — Update the description of a tag associated with a Mailgun sending domain | ||
|
|
||
| ## Tool list | ||
|
|
||
| Use the exact tool names from the **Tool list** below when you call `execute_tool`. If you're not sure which name to use, list the tools available for the current user first. | ||
|
|
||
| <ToolList tools={tools} /> |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.