# Channel agents
Source: https://docs.noclick.com/agents/channel-agents
Build chat-style agents on Slack, Telegram, WhatsApp, or email: a trigger delivers each message, a send tool replies.
A channel agent listens on a messaging service and replies in place. The pattern uses two nodes of the same service, because one node cannot be both a trigger and a tool provider:
1. **Trigger in**: a node with the service's trigger operation (for example Telegram **Receive Webhook Messages**, Slack **On Channel Message** or **On App Mention**, WhatsApp **Receive Message**) wired into the agent's left input.
2. **Reply out**: a second node of the same service wired as a [tool provider](/agents/tools) with send operations allowlisted (for example Slack **Send Message to Channel**).
## How a turn works
Each incoming message is delivered to the agent as an event alongside its standing instructions from the **Message** field. The event is an account of what happened rather than the payload the service sent: the service and the kind of event, who it came from and where, the message itself, and the reply IDs (chat ID, channel and thread), so the agent passes those to its send tool to answer in the right place.
Chat triggers (Telegram, Slack, WhatsApp, Discord, Microsoft Teams, and more) also set the [conversation key](/agents/conversations) automatically (per chat, per thread), so follow-up messages continue the same conversation with memory.
### What the turn looks like in chat
Open the agent's chat and a turn that a trigger started is shown as the message that started it, laid out the way that app lays it out, under a caption naming the app, the trigger node's label if you gave it one, and the trigger operation, for example **Slack · Support channel · On app mention**.
Where a message view does not fit, such as a schedule tick or a notification carrying only IDs, the account the agent read is shown instead, with the event itself behind an **Event payload** toggle.
Your standing instructions stay in the **Message** field, rather than appearing in the chat as a message you never sent.
### Photos and files on WhatsApp
When someone sends a photo, voice note, or document to a WhatsApp trigger, the file is saved to the workflow's resources as the message arrives and the agent receives a download link with the file type and name. The caption arrives as the message text. Nodes wired downstream of the trigger read the same link from the trigger output.
Files above 25 MB are not saved, and neither are files the provider has already dropped. In both cases the agent is told the media could not be retrieved, so it can ask the sender to resend rather than answer around a file it cannot see.
### Discord channels
Connect Discord with the **Discord Bot Install** credential so NoClick's bot joins your server, choosing the server during the Discord sign-in, then pick **On Channel Message** (every message, optionally scoped to one channel and the threads opened in it, or to a category and every channel under it) or **On Bot Mention** (only messages that @-mention the bot). Messages from other bots and webhooks are skipped unless you turn **Ignore bot messages** off, which keeps automated channels from flooding the agent. Each channel and thread is its own conversation, and the event names the channel and message so the agent's send tool can answer in place. A message posted in a thread names the thread and the channel it was opened under, and tells the agent where to read the thread's earlier messages.
### Slack channels
Slack sends channel events only to apps that are in the channel, so a Slack trigger on a channel the app was never invited to hears nothing. The trigger's **Status** field says so when that is the case, and offers a **Join #channel** button for a public channel. In a private channel, invite the app from Slack with the command the status names. See [App events](/triggers/app-events).
Add an AI Agent node, click **Add trigger** in its panel, and pick the service and trigger type. Connect credentials.
In **Message**, describe the agent's job and tell it to reply using its send tool, quoting the chat or thread from the incoming event.
Click **Add tool**, pick the same service, and allowlist the send operations the agent may use.
Send a message on the channel and watch the run in [execution logs](/editor/execution-logs), including each tool call the agent made.
## Email is a special case
There is no user-wirable email send node for arbitrary recipients. Instead, when an [inbound email trigger](/triggers/email) is wired directly into an agent, the agent automatically gains a locked `email__reply` tool:
* The recipient and threading are derived server-side from the email that fired the run; the agent only writes the reply body.
* Replies are capped at 5 per run, are only valid within 48 hours of the inbound message, and each send costs 0.01 credits.
## When the channel goes quiet
A WhatsApp QR connection can be dropped by the provider, and then no message reaches the trigger. NoClick emails you when that happens and marks the credential **Disconnected** wherever it is shown. Re-scan the QR code for that same credential to bring it back. See [When a connection drops](/credentials/connecting#when-a-connection-drops).
Running the WhatsApp **Receive Message** step by hand never returns a message, because real messages arrive through the trigger rather than the step. On a healthy connection the run reports that there was no live event. On a dropped one it fails and tells you to re-scan.
Slack message triggers do not filter bot-authored messages. An agent that posts into the same channel it triggers on will trigger itself in a loop. Trigger on **On App Mention**, reply into a different channel, or instruct the agent so its replies cannot re-match the trigger.
## Next steps
How per-chat and per-thread memory works.
Reserve an inbound address on noclick.app.
# Conversations and memory
Source: https://docs.noclick.com/agents/conversations
Keep agent context across runs with conversation keys, set automatically by channel triggers or manually with references.
Agents persist their chat history. The **Conversation Key** field (under **Advanced** in the agent's config panel) controls which history a run continues: same key, same conversation. All six harnesses persist history, including the CLI agents.
## How keys work
* Histories are scoped to the workflow and the agent node, then to the key. Two agents never share a conversation, even with the same key value.
* If no key is set, each manual run or chat session stands on its own history thread.
* The key can be a static string or a reference like `{{nodeId.field}}`, so you can derive it from upstream data, for example one conversation per customer ID.
## Channel triggers set the key automatically
When a channel trigger is wired directly into the agent, the fired event supplies the key:
| Trigger | Automatic key |
| --------------------------- | ---------------------------------------------------------------------------------------------- |
| Telegram message | The chat ID, so each chat is its own conversation |
| Slack message | Channel + thread for channel messages, channel for DMs, so each thread is its own conversation |
| [Alarm](/agents/scheduling) | The key captured when the agent scheduled the alarm |
A fired trigger's key takes priority over the configured **Conversation Key**, so a Telegram agent with a fallback key still keeps per-chat threads.
A thread a trigger started is also named after the event, so the agent's history list reads as the channel or the sender the message came from rather than the first line of your standing instructions.
## Resetting a conversation
Change the key. A new value starts a fresh history; switching back to an old value resumes that thread. There is no separate clear button: the key is the identity of the conversation.
## Changing the model mid-thread
Picking a different model changes nothing until you send. On that send, the conversation goes to the model you picked and carries on:
* **Same harness**, for example two of the built-in LLM agent's models or two Claude Code models: the thread continues as it is, whichever provider each model belongs to.
* **A different CLI harness**, for example Claude Code to Codex: the thread is moved into the new harness's own session store first, so it resumes there with every message in place and each tool call still paired to what it returned. Any of the five CLI agents can hand a conversation to any of the others. The first message after the move starts a new sandbox, so it takes longer than a follow-up.
* **Between the built-in LLM agent and a CLI agent**: the built-in agent keeps its history in NoClick rather than in a session store of its own, so there is nothing to move. The recent turns ride along with your message as context the new model reads, about 4,000 characters of them, trimmed from the oldest end. The same happens in the rare case where a thread cannot be moved.
It is the same conversation either way: the transcript stays, the key stays, and carried context is never shown as a dump in the chat.
Picking a thread in **History** opens it and nothing else. The model in the **Model** dropdown is the one your next message runs, on the thread you opened.
The [filesystem node](/agents/files-and-repos) has a **Per Conversation Key** volume mode that gives each conversation its own isolated storage, useful when each user of a channel agent needs separate files.
## Next steps
Threaded Slack and Telegram agents that remember each chat.
Reference syntax for dynamic conversation keys.
# Files and repositories
Source: https://docs.noclick.com/agents/files-and-repos
Give agents persistent storage with the filesystem node and authenticated GitHub repo access in their sandbox.
Every agent on a workflow has a Linux sandbox with a shell and a `/workspace` folder. In a chat, that folder is kept per conversation and survives across runs, so an agent's saved notes and files are still there when it wakes up again. The **Filesystem** node adds a named persistent volume to any agent, and a GitHub tool provider can clone repositories into the sandbox with authenticated git.
## The sandbox shell
Every agent can run shell commands. The built-in LLM agent gets an `execute_bash` tool, and the five CLI harnesses have a shell of their own. The sandbox starts the first time the agent actually runs a command, so an agent that only ever answers in chat never starts one.
A [test run](/agents/test-runs) answers shell commands with made-up output like any other tool call, so a rehearsal never starts a real sandbox.
## The filesystem node
Wire a **Filesystem** node from its top handle into the agent's bottom handle, or add it from the agent's **Add tool** palette. The agent gets a mounted volume whose contents persist across runs, under a name and a mount path you choose.
| Setting | What it does |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Volume Mode** | **Shared (all executions)**: one volume for every run. **Per Conversation Key (isolated per user)**: a separate volume per [conversation key](/agents/conversations) |
| **Mount Path** | Where the volume appears inside the sandbox (default `/workspace`). It has to be an absolute folder path, and a missing leading slash is added for you, so `assets` is saved as `/assets` |
| **Files** | A browser in the node's config panel for inspecting what the agent has stored, and for uploading files into the volume |
In **Per Conversation Key** mode the node's file browser reads and writes the shared base volume, not any one chat's volume. The panel says so, and a conversation's own files are in that chat's **Files** menu.
## What persists, what doesn't
* Files under the **Mount Path** persist across runs (and across harnesses, since the volume is keyed to the workflow and node).
* Everything outside the mount path is ephemeral and wiped after each run.
* Without a filesystem node, an agent in a chat still keeps its `/workspace` folder across runs, one folder per conversation, so its saved notes and files survive a restart. Wiring a filesystem node makes that storage explicit and lets you choose its volume mode and browse its files.
* A manual run with no conversation gets scratch disk instead, wiped when the run ends.
## Browse saved files from chat
Every agent chat has a **Files** menu that lists what the agent saved in the current conversation's workspace. Open a file to preview it in place (text, markdown, code, or an image) or download it with one click. Files the agent just wrote can take a few seconds to show up, and a refresh button reloads the list.
To remove a file, click the trash button on its row and confirm on the row itself. The file is deleted from the workspace, so the agent no longer sees it either.
Agents keep their scratch work out of this list. Temporary scripts and intermediate downloads go to a scratch folder that is wiped after the run, and `/workspace` holds the files meant for you.
## Give an agent a file to work on
You can put files into a workspace yourself, so the agent finds them there on its next turn:
* In an agent chat, click the upload button in the **Files** menu header. The files land in that conversation's workspace.
* In a filesystem node's config panel, click **Upload** in the file browser. The files land in that node's volume.
Each upload shows its progress as it transfers, and a single file can be up to 100 MB.
To point the agent at one of these files, type `@` in the chat and pick it from the list that appears. The file's full path is inserted into your message. Arrow keys move through the list, `Enter` or `Tab` accepts the highlighted file, and `Esc` closes it.
## Publish a file to a URL
Agents have an `upload_file` tool. Give it the path to any file the sandbox can read and it uploads the file to the workflow's resource storage and returns a public URL, so the agent can share a generated image, attach a report to an email, or pass the file to a downstream node. Every agent has it, on every harness, whether or not a filesystem node or a repository mount is wired.
## GitHub repository mounts
A GitHub node wired as a [tool provider](/agents/tools) has a **Mount repositories** section in its panel. Click **+ Add repository**, pick a repo from the dropdown (it lists what the connected credential can access), and optionally a branch.
At the start of every run, each repo is cloned into the agent's sandbox with push access. Inside the sandbox, both `git` and the `gh` CLI are authenticated with the node's credential, so the agent can commit, push, and open pull requests.
Repo working trees are wiped after the run unless a filesystem node is attached. Have the agent commit and push its work rather than leaving changes on disk.
Prefer the GitHub node's allowlisted API tools for issue and PR operations; they are audited per call. The authenticated `gh` CLI is the fallback for anything the tools don't cover. Use fine-grained personal access tokens to limit what a mounted credential can reach.
## Environment variables
You can give an agent its own environment variables so it can call APIs that NoClick has no node for. Open the agent's **Credentials** panel, expand **Advanced**, and under **Environment variables** create a set: name the set, then add each variable as a name and value (for example `STRIPE_KEY`). The set is saved as a reusable credential, so you can link the same one to more than one agent.
Each variable is available in the agent's sandbox shell, so the agent can reference it directly:
```bash theme={null}
curl -H "Authorization: Bearer $STRIPE_KEY" https://api.stripe.com/v1/charges
```
When you edit a set, the variable names are prefilled but the values are not. Saved values are never shown again, so re-enter a value to keep it and leave it blank only when you mean to remove that variable.
The AI builder can also request these for you. When it decides an agent needs a variable that is not set yet, it asks for it in the builder chat with the names it needs prefilled, and you enter the values there. It only asks when no node exists for the API the agent has to call.
Variable names are not written into the agent's prompt, but the agent can print a value by running a command in its sandbox. Scope each key to only what the agent needs, the same way you would a mounted repository token. For a secret the agent must never see, wire an HTTP Request node as a tool provider instead.
## Next steps
Pair per-conversation volumes with conversation keys.
See which harnesses run in a sandbox.
# Agents and MCP
Source: https://docs.noclick.com/agents/mcp
Proxy an external MCP server's tools to your agents, or give an agent NoClick's own workflow-building tools.
Agents can use tools from MCP (Model Context Protocol) servers in two directions: pull in an external server's tools with the **MCP Server** node, or give the agent NoClick's own tools with the **NoClick** node.
## External MCP servers
Add an **MCP Server** node, set its **Server URL**, and wire it into the agent's bottom handle like any other tool provider. At run time the node connects to the server, discovers its tools, and exposes them to the agent.
| Setting | What it does |
| ----------------------- | ------------------------------------------------- |
| **Server URL** | The external MCP server endpoint |
| **Transport Type** | Streamable HTTP (default) or SSE |
| **Authentication Type** | None, API key, or OAuth; custom headers supported |
| **Tool Prefix** | Optional prefix added to discovered tool names |
| **Tool Filter** | Optional list restricting which tools are exposed |
The built-in LLM agent does not support external MCP servers. Pick one of the CLI harnesses (Claude Code, Codex, OpenCode, OpenClaw, Hermes) for the agent that uses them. See the [capability matrix](/agents/models#capability-matrix).
The MCP Server node is either-or: with a **Server URL** set it proxies that external server. With integration nodes wired into its own bottom handle instead, it becomes a hosted server that exposes your tools to the outside world. See [Hosted MCP servers](/mcp/hosted-servers) for that direction.
## The NoClick node
The **NoClick** node gives an agent NoClick's own tools: creating, editing, and running workflows. Wire it into the agent's bottom handle and pick a scope:
| Scope | What the agent can touch |
| ---------------------- | ----------------------------------------------------------- |
| **All workflows** | Every workflow in your account, including creating new ones |
| **This workflow only** | Only the workflow the agent lives in |
| **Specific workflows** | A list of workflow IDs you provide |
When scoped, tools that only make sense globally are hidden and the workflow ID is injected automatically, so the agent cannot wander outside its scope.
## Next steps
Expose your own integrations as an MCP server other clients can call.
Wire integrations directly, without an MCP server in between.
# Models and harnesses
Source: https://docs.noclick.com/agents/models
Run agents on any LLM, or on Claude Code, Codex, OpenCode, OpenClaw, or Hermes, including with your existing Claude, ChatGPT, Copilot, or SuperGrok subscription.
The **Model** dropdown on the agent node picks both the model and the harness it runs in. The five CLI coding agents are pinned at the top of the list; every other entry runs on the built-in LLM agent.
Changing the model on an agent that already has a chat leaves that thread alone until you send, and the conversation then moves to the model you picked rather than starting over. See [Changing the model mid-thread](/agents/conversations#changing-the-model-mid-thread).
You can also name a model when you ask the [AI builder](/builder/overview) for an agent, for example "a Claude agent that answers support email", and it sets the **Model** field to match. The builder does not put a model or vendor name in the agent's own name or instructions, because that text would go stale the moment you switch models.
## The six harnesses
| Harness | Models | Good for |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| **Built-in LLM agent** (default) | Any LiteLLM model string, plus the OpenCode Zen and Go catalogs (default `openrouter/openai/gpt-5.6-luna`) | Fast tool-calling agents inside workflows |
| **Claude Code** | The CLI's public aliases (`fable`, `opus`, `sonnet`, `haiku`; default `sonnet`) or a pinned model id | Coding and long multi-step tasks in a sandbox |
| **Codex** | The models the pinned Codex CLI's picker serves (default `gpt-5.6-luna`), plus `gpt-5-codex` for API-key auth | Coding tasks with OpenAI models |
| **OpenCode** | Multi-provider catalog (default `opencode/deepseek-v4-flash-free`), including GitHub Copilot and xAI models | Mixing providers, Copilot and SuperGrok subscriptions |
| **OpenClaw** | Any tool-capable chat model in `provider/model` format | A sandboxed CLI runtime on the model of your choice |
| **Hermes** | Any tool-capable chat model (default `openrouter/openai/gpt-5.6-luna`) | General-purpose agent with 68+ built-in tools, optional browser automation |
The **Codex** dropdown lists the models the Codex CLI running in the sandbox offers in its own picker, in the order Codex ranks them, so new ones appear there as OpenAI ships them, with nothing to change on your side. Models OpenAI has hidden or retired are left out, and an agent already saved on a retired one keeps running.
The **Claude Code** dropdown lists every alias that CLI publishes, with the one it recommends first, and shows the model each alias currently points at, for example `opus (claude-opus-5)`.
The built-in LLM agent's model runs in-process, and it starts a sandbox only when it actually runs a shell command. The five CLI agents each run in a cloud sandbox that stays warm between turns, so follow-up replies are fast and one agent can hold several conversations at once. A small indicator on the agent node shows how many sandboxes it is currently holding. Sandbox time on the CLI agents is billed at 0.05 credits per minute of uptime, even on your own key or subscription. See [What costs credits](/billing/costs).
A sandbox shuts down about a minute after the agent goes idle and starts again on your next message, and it never lives longer than four hours. A turn that stops producing output for 30 minutes is stopped as stalled, and the chat reports it as a lost turn you can send again. See [Common errors](/troubleshooting/common-errors).
Hermes and OpenClaw need models that support tool calling. Reasoning-only models like DeepSeek R1 will not work.
## Reading the model list
Two tags in the picker tell you what a row actually is:
| Tag | Meaning |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **CLI Agent** | The row is one of the five coding agent CLIs running in a sandbox, not a single model. It appears on Codex, Claude Code, OpenCode, OpenClaw, and Hermes. |
| **Free** | The provider serves this model at no cost. Free models sort above paid ones, and searching for "free" finds them even when the model name does not contain the word. |
A **Free** tag is set only from the provider's own published pricing, so it means the provider charges nothing. Sandbox time for the CLI agents is billed either way.
### OpenCode Zen and Go models
The `opencode/` and `opencode-go/` models run on the built-in LLM agent, in-process, so no sandbox time is billed for them. They are separate from the **OpenCode** CLI harness, which shares their icon but carries the **CLI Agent** tag.
Both catalogs use one OpenCode key. Connect it in the agent's **Credentials** tab; NoClick checks the key when you save it. Zen's free models then run at no cost to you, and paid ones are billed by OpenCode rather than in NoClick credits.
## The CLI agents run on your own key
All five CLI agents need an API key or an AI subscription of your own, whichever sub-model you pick. NoClick credits fund the built-in LLM agent's models and the sandbox time, not the CLI agents' model usage. Connect the key or subscription in the agent node's **Credentials** tab; until you do, the node is marked incomplete on the canvas and its config panel says credentials are required.
## The key has to match the model
An agent node can hold connected keys for several providers at once. The one that runs is the key belonging to the provider of the model in the **Model** dropdown, so switching models cannot leave a run using the key for the model you switched away from.
When nothing attached matches the selected model, the run behaves as if no key were attached. Models NoClick serves on its own keys still run and are billed in credits, and models that need your own key stop with a missing credential. Connect the matching key in the node's **Credentials** tab.
## Use your existing AI subscription
Instead of API keys or NoClick credits, you can authenticate a harness with the AI subscription you already pay for. Subscription-authenticated runs do not consume NoClick LLM credits; usage counts against your provider plan's limits. Sandbox time for the CLI agents is still billed (see [What costs credits](/billing/costs)).
### Claude Code with your Claude account
Works with Claude Pro, Max, Teams, and Enterprise.
Open the agent node and pick **Claude Code** in the **Model** dropdown.
In the node's credentials section, click **Connect with Claude account**. A browser tab opens on claude.ai to authorize NoClick.
After you authorize, Claude shows an authorization code. Copy it, paste it into the **Paste authorization code** field, and confirm.
Where you already have a Claude connection saved and none is selected on the node, **Use saved connection** attaches it without signing in again. With one selected, the button reads **Reconnect selected Claude account** and the sign-in refreshes that connection in place rather than creating a second one, which is what you want when a connection stopped working. To add a different account, connect again from the connected state.
The credential limit on your plan is checked before the browser tab opens, so you are told to select an existing connection while the authorization code is still unspent. A sign-in that fails part way asks you to check your saved connections before starting another, because the code Claude showed you can only be used once.
### Codex with your ChatGPT account
Works with a ChatGPT plan that includes Codex: Plus, Pro, Business, Edu, or Enterprise. Requires device code auth enabled in your ChatGPT security settings.
ChatGPT Free does not include Codex. A Free-plan sign-in is turned down at the end of the connection, and NoClick tells you to use a plan that includes Codex or connect an OpenAI API key instead.
Pick **Codex** in the **Model** dropdown.
Click **Connect with ChatGPT account**. NoClick shows a short device code and opens the verification page.
Enter the code on the OpenAI verification page and approve. NoClick detects the approval automatically.
NoClick checks that the completed sign-in carries the identity token Codex uses to reach ChatGPT. OpenAI does not always return one, so NoClick fetches it before saving the connection and asks you to sign in again if it cannot. On a connection you made earlier, an identity token that is missing or has expired is refreshed on the agent's next run.
### GitHub Copilot and xAI SuperGrok (via OpenCode)
Pick **OpenCode** as the model, then choose a GitHub Copilot or xAI sub-model. The credentials section offers **Connect with GitHub Copilot** (requires a paid Copilot subscription) or **Connect with xAI SuperGrok** (requires a SuperGrok subscription). Both use the same device code flow as Codex: a code appears, you enter it on the provider's verification page, and NoClick completes the connection.
## Capability matrix
| Capability | Built-in LLM agent | Claude Code | Codex | OpenCode | OpenClaw | Hermes |
| ------------------------------------------------- | ------------------ | ----------- | ----- | -------- | -------- | ------ |
| Runs in a cloud sandbox | On demand | Yes | Yes | Yes | Yes | Yes |
| [Filesystem node](/agents/files-and-repos) | Yes | Yes | Yes | Yes | Yes | Yes |
| [GitHub repo mounts](/agents/files-and-repos) | Yes | Yes | Yes | Yes | Yes | Yes |
| [External MCP servers](/agents/mcp) | No | Yes | Yes | Yes | Yes | Yes |
| [Integration tools](/agents/tools) | Yes | Yes | Yes | Yes | Yes | Yes |
| [Alarms](/agents/scheduling) | Yes | Yes | Yes | Yes | Yes | Yes |
| [Conversation persistence](/agents/conversations) | Yes | Yes | Yes | Yes | Yes | Yes |
## Next steps
Wire integrations into the agent's bottom handle.
Persistent storage and authenticated repo access in the sandbox.
# AI agents overview
Source: https://docs.noclick.com/agents/overview
Add an AI Agent node, give it instructions, and wire in tools and triggers so it can reason and act inside your workflow.
The AI Agent node runs a model that decides its own steps at run time. You write instructions in the **Message** field, wire in tools and triggers, and the agent reasons about the input and acts using the tools you allowed.
## Agent or deterministic nodes?
Use regular nodes when the steps are always the same: fetch a row, transform it, post a message. Use an agent when the steps depend on the input, for example triaging messages, deciding which records to update, or doing research that takes a variable number of tool calls.
Agents consume credits for model usage unless you [connect your own AI subscription](/agents/models). Deterministic integration nodes running on your own credentials cost nothing.
## The three handles
```
(input) ──▶ ┌──────────┐ ──▶ (output)
data + triggers │ AI Agent │ response to
└──────────┘ downstream nodes
▲
(tools)
integration nodes, MCP servers,
filesystem, alarms
```
| Handle | Direction | What connects there |
| ------ | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| Left | Input | Output from upstream nodes, and triggers that fire the agent |
| Right | Output | The agent's final response, available to downstream nodes |
| Bottom | Tools | Tool providers: [integrations](/agents/tools), [MCP servers](/agents/mcp), [filesystem](/agents/files-and-repos), [alarms](/agents/scheduling) |
Tool providers connect from their own top handle into the agent's bottom handle. You can drag these edges yourself, or use the **Add trigger** and **Add tool** buttons in the agent's config panel, which open a searchable palette and handle the wiring for you.
The palette searches each service by what it does, not only by its name. Type "every day" to find the **Schedule** trigger, or "create issue" to see Linear, Jira, and GitHub. Once you pick a service, its list of triggers or actions is searchable the same way.
## Key settings
| Field | What it does |
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **System Prompt** | Instructions defining how the agent behaves |
| **Message** | The task or question. When a trigger is wired in, the fired event is delivered alongside this message, so write standing instructions here, not the event itself. Required unless a trigger feeds the agent, in which case the event is the turn and you can leave it empty |
| **Temperature** | Creativity level, 0.0 (focused) to 2.0 (creative) |
| **Conversation Key** | Same key = same conversation across runs. See [Conversations](/agents/conversations) |
| **Show in Interface** | Surfaces the agent as a fullscreen chat in the workflow's Interface tab. On by default for new agents |
An agent with a trigger wired in and an empty **Message** has nothing to work from when you start the run yourself, because a manual run delivers no event. It stops with an error that says so. Fire the trigger for real, or write a **Message** for the times you run it by hand.
## Capabilities
Every agent chat has a **Settings** panel with a **Capabilities** section that controls two things the agent can do on its own. Both are on by default.
| Capability | What it does |
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Workflow edits** | The agent can propose a change to the workflow it runs in. In an interface chat the change arrives as a **Proposed workflow edit** card for you to approve or dismiss. On a trigger run it can make the change headlessly. |
| **Email updates** | When you are away, the agent can email you questions, links to connect an account, and failure reports at your account email. Reply to the email to answer it. |
Email updates go to your account email, up to one per workflow run and 10 per day per agent. An agent running inside a [loop](/logic/loops) cannot email you at all, because one message per item would fill your inbox; use a notification node downstream if you want per-item delivery. Every email includes a link to turn them off for that agent, and you can toggle the capability off any time in the chat **Settings**.
## Attach images and files
The agent chat in the workflow's **Interface** tab accepts attachments. Add them with the paperclip button, by pasting an image from your clipboard, or by dropping files onto the composer. Images show as thumbnails you can hover to enlarge, other files show as chips, and both stay on the message when you reload.
* Images are sent to the model directly, so any model that can read images sees them.
* Non-image files are passed as URLs the agent fetches when it needs the contents. The CLI coding agents download them inside their sandbox.
* On [image and video models](/agents/models), an attached image is used as input rather than described: image models treat it as a reference image, and Veo and Kling use the first attached image as the video's starting frame when you have not set one.
* A message can be attachments only, with no text.
## Next steps
Choose between the built-in LLM agent and five CLI coding agents, or connect your Claude or ChatGPT subscription.
Turn any integration node into a set of agent tools with an operation allowlist.
Build chat-style agents on Slack, Telegram, WhatsApp, or email.
Keep context across runs with conversation keys.
Watch the agent handle a staged event with every tool call simulated.
# Agent scheduling with alarms
Source: https://docs.noclick.com/agents/scheduling
Let an agent schedule its own future wake-ups with the alarm node, one-off or recurring, and continue the conversation when they fire.
The **Alarm** node lets an agent schedule its own future runs. Wire it from its top handle into the agent's bottom handle, like a tool, add it from the agent's **Add tool** palette, or ask the [AI builder](/builder/editing) for it by name. The agent gets four tools:
| Tool | What it does |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `schedule_alarm` | Set an alarm: a countdown (`30s`, `5m`, `2h`, `1d`), a specific ISO 8601 datetime, or a recurring cron expression (`0 9 * * 1`). Includes a message the agent will receive when it fires |
| `list_alarms` | List active alarms with their schedule IDs, next run times, and messages |
| `cancel_alarm` | Delete an alarm by schedule ID |
| `update_alarm` | Enable or disable an alarm, or change its message |
## What happens when an alarm fires
The workflow runs and the agent wakes with the stored message delivered as an event in its turn, alongside its standing instructions from the **Message** field. The alarm also carries the [conversation key](/agents/conversations) that was active when it was scheduled, so the agent resumes the same conversation with full context of why it set the alarm.
The alarm node's config panel shows an **Active Alarms** viewer so you can inspect and audit what the agent has scheduled.
## Watching for an update that never comes
An alarm is also how an agent notices silence. A message trigger only fires when something arrives, so nothing on its own can tell you that the daily report from one site is late.
For that, `schedule_alarm` takes two more arguments:
| Argument | What it is for |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `watch_key` | A stable name for the thing being watched, such as the site or report the update is expected from |
| `observed_at` | The real timestamp of the update the agent just saw, with its timezone. Left out when arming the first deadline, before anything has arrived |
Reusing the same `watch_key` replaces that watch's deadline rather than adding a second one. An update that turns up late or twice cannot push the deadline back or wake the agent again, because the watch keeps the latest update it has seen and discards anything older. A watch needs a countdown or a datetime with a timezone; a cron expression is refused, since a recurring schedule cannot express one next deadline.
The first deadline is armed before any update has arrived, so a site that has never reported is noticed too. Until one is armed, the [Setup](/editor/setup) check reports that the missing-update watch has no deadline yet instead of calling the workflow ready, and once armed it lists each deadline with the last update it saw.
## Example: a daily research agent
Create an agent, wire in an **Alarm** node, and wire a send tool (for example a Slack node with **Send Message to Channel** allowlisted) so the agent can deliver results.
In **Message**: "You are a research assistant. When asked to monitor a topic, schedule a daily alarm. When an alarm fires, research the topic and post a summary to Slack."
Run the agent once with a request like "track AI agent frameworks every morning at 9". The agent calls `schedule_alarm` with the cron `0 9 * * *` and a message describing the task.
Each morning the alarm fires, the agent wakes with its own note, does the research, and posts the summary. Ask it to stop and it calls `cancel_alarm`.
Alarms are for agent self-scheduling. To run a whole workflow on a fixed schedule you define yourself, use a [schedule trigger](/triggers/schedules) instead.
# Share an agent
Source: https://docs.noclick.com/agents/sharing
Mint a public chat link for one agent so anyone can talk to it without an account, with every run billed to you.
You can give anyone a public page to chat with a single agent, no login required. It runs your saved workflow behind the scenes, so the visitor gets the agent's tools and instructions without seeing the canvas. Every run bills to you, the workflow owner.
## Create a link
Turn on **Show in Interface** on the agent node, then open its fullscreen chat from the workflow's **Interface** tab.
Click the **Share** button in the chat header. The **Share agent** dialog mints a public link of the form `https://noclick.com/a/{id}`.
Click **Copy** and send the link to anyone. Opening it drops them straight into a chat with your agent.
Only the workflow owner can create or manage the link. Collaborators on a shared workflow do not get this button, since every message spends the owner's credits.
## What the visitor sees
The public page is chat only:
* The agent's name and icon at the top, and a row of the tools it can use.
* The same transcript and message box as the in-app chat.
* A thread that persists in their browser, with **New chat** to start a fresh one.
* A **Powered by NoClick** badge that links back to NoClick.
Visitors never see your canvas, your model choice, or your credentials. They cannot change the agent or read anyone else's thread; each browser gets its own conversation.
## Pause or reset the link
Open the **Share agent** dialog again to manage the link:
* **Link active** turns the page on or off. While it is paused, visitors are turned away.
* **Reset link** generates a new URL and disables the current one immediately. Use this if a link was shared too widely. Anyone still on the old URL loses access, so send out the new one.
## Who pays
Every message runs as you and bills to your credit balance through the same [credit gates](/billing/costs) as your own runs. If your balance runs out, the shared agent stops responding until you top up. Pause or reset the link to cut off spending at any time.
## Share a run instead of the agent
To show someone what the agent does without giving them a chat box, share a finished [test run](/agents/test-runs) instead. That mints a read-only page of one run: the event, the steps, and the outcome. Nothing executes when it is opened and nothing bills.
## Next steps
Give your agent the integrations it needs before you share it.
Rehearse the agent, then share the run as a read-only page.
Expose a workflow's tools to Claude, ChatGPT, and Cursor instead.
# Test runs
Source: https://docs.noclick.com/agents/test-runs
Run your agent against a staged event where every tool call is answered with made-up data, so nothing reaches your real accounts.
A test run puts your real agent in front of a fake event. Your model, your prompt, and your wiring all run for real, but every tool call the agent makes is answered with made-up data instead of going to your accounts. Shell commands are answered the same way, so a test run never starts a real sandbox. Nothing is sent, nothing is written, and nothing is deleted.
That lets you answer the question you actually have before an agent goes live: given a message like this, what would it do?
## Start a test run
Turn on **Show in Interface** on the agent node, then open its fullscreen chat from the workflow's **Interface** tab.
Click **Test** in the chat header. The chat is replaced by the **Test Run** screen.
Choose the staged event to run against, then start the run. The agent works through it while the trace fills in: what it was thinking, which tools it called, and what it would have sent.
You can also reach a test run from the **Setup** tab, where it is the last step. Click **Exit Testing** to go back to the chat, or **Talk to your agent** once a run finishes.
Testing does not wait for setup to be complete. Because the tool calls are answered by the simulation, an agent with nothing connected yet still runs end to end.
## Staged situations
The situation is the event the agent wakes up on. Gmail, Slack, Discord, WhatsApp, and Telegram triggers ship written situations covering the cases those channels really see. Every other trigger gets a sample built from your own graph.
Situations render in the shape they would really arrive in, so a WhatsApp message looks like WhatsApp and a Gmail message looks like an email.
You can edit the staged message in place. The edit is real: the agent receives the payload as you rewrote it, so you can push it toward the awkward case you are worried about.
## Several runs per agent
Use **New run** to keep more than one situation on hand, and the pencil to rename them. A run is a saved test, so an agent can carry a small suite: the happy path, the refund request, the person who asks to be left alone.
Runs are stored with the workflow, which means they travel with it. Publish the workflow as a template and whoever takes a copy gets your test suite along with the agent.
The AI builder can write these for you. Ask it to add a test for a case and it authors the situation, then runs it.
## What is simulated, and what is not
The Test Run screen leads with a line saying the whole thing is a simulation, and every answered tool call carries a **simulated** pill. Outbound messages show as what would have been sent rather than as sent.
Real: the agent, its model, its prompt, its tools, and the decisions it makes.
Simulated: every answer coming back from a tool, and every outbound message.
## Share a finished run
Click **Share this run** at the end of a finished run to mint a read-only page at `https://noclick.com/r/{id}` and copy the link. Anyone with the link can open it, with no account needed.
The page is a static snapshot of the run you just watched, headed by the same line saying the data is simulated. Nothing executes when it is opened, nothing bills, and later edits to your workflow never leak into it. Only the workflow owner can create one.
## What it costs
The agent's own model usage is billed the way any agent run is billed. The simulated world's replies run on NoClick's models and are billed separately under the **Agent Testing** category, so you can tell rehearsal spend apart from your agent's spend in [Usage](/billing/usage-dashboard).
## Next steps
The checklist a workflow works through before it goes live.
Give people a public chat page for one agent.
Wire an agent into Slack, WhatsApp, or Telegram.
Take a copy of a published agent.
# Tools from integrations
Source: https://docs.noclick.com/agents/tools
Turn any integration node into agent tools by wiring it into the agent's bottom handle and allowlisting operations.
Most integration nodes (about 58 types) can act as tool providers for an agent. Instead of running one fixed operation, the node exposes the operations you allowlist as tools the agent calls on demand: `linear__create_issue`, `slack__send_message_to_channel`, and so on.
## Wire a tool provider
Drag an edge from the integration node's top handle to the agent's bottom handle. Or click **Add tool** in the agent's config panel and pick the service from the palette, which creates and wires the node for you. The palette matches on what a service can do as well as its name, so "create issue" finds Linear, Jira, and GitHub.
Once wired, the node's config panel switches from a single-operation form to an operation allowlist. Search for actions, or use the quick selects: **Read-only** (list/get/search actions, no mutations), **All**, or **Clear**. For services with a long list of actions, the **Show selected** toggle filters the list down to just the ones you have allowlisted. The same picker appears in the setup view when you set up a tool-provider node.
For operations that act on a typed resource ID, expand **Limit to specific...** under the operation and pick which documents, sheets, or other records the agent may act on. The agent can then use that operation only against the resources you pinned. When a create operation makes a new resource, its ID is added to the matching scope for you, so the agent can immediately read back what it just created.
A value already saved in one of those fields on the node counts as a limit too. A chat, channel, or record left in the node's own config is what the agent gets for that field, rather than a default it can replace, which is what keeps an alert going to the one recipient you chose. Change the value and it applies on the agent's next turn.
Attach the service credential as usual. The agent calls every tool with this credential. If every action you allowed can run on [NoClick's own keys](/billing/costs), no credential is asked for and the node is not marked incomplete. Allowing one action that does need an account puts the requirement back.
Each allowlisted operation becomes a tool named `{service}__{operation}`. The agent also gets one automatic `{service}__lookup_options` tool for looking up IDs (channels, projects, sheets) so it can fill ID parameters without guessing.
## Rules
* **A tool provider is tools-only.** It cannot also feed its output into normal dataflow nodes, and it cannot have a trigger operation selected.
* **Use two nodes of the same service** when you need both roles, for example one Slack node with a trigger operation wired into the agent's input and a second Slack node wired as a tool provider with send operations allowlisted. This is the [channel agent](/agents/channel-agents) pattern.
* **Multiple providers of the same service** on one agent are fine: tool names get label-derived suffixes and the node and credential labels appear in tool descriptions so the agent can tell them apart.
* **Tools are scoped per agent.** Two agents on the same canvas only see the tools wired into their own bottom handle.
* **A tool provider does not run on its own.** Its **Run** button is off, because its actions run when the agent or your MCP client calls them. Run the agent instead, or use a [test run](/agents/test-runs) to see the calls it makes.
Every tool call an agent makes is recorded. Open a run in [execution logs](/editor/execution-logs) and click the agent node to see each call's arguments, result, and duration. The **Agents** card on your [Dashboard](/getting-started/dashboard) lists these calls across all your runs, grouped by turn, with the agent's model, each call's inputs and result, and the final response.
## Next steps
Give agents tools from external MCP servers or from NoClick itself.
Combine a trigger node and a send-tool node of the same service.
# Interface blocks
Source: https://docs.noclick.com/apps/blocks
Reference for every interface block: forms, media, tables, file uploads, and custom components.
The block palette in the [Interface tab](/apps/overview) groups blocks into three categories: **Input**, **Display**, and **Interactive**. Drag a block onto the grid or click it to add it. Each block is backed by an interface node on the canvas, so you can wire workflow data into it.
## Input blocks
| Block | What it does | Key configuration |
| -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Form** | A multi-field form that is also a persistent value store. Values edited in the block are saved with the workflow and output on every run, so downstream nodes can reference them as `{{node-id.field_name}}` even without a submission. Submitting starts a workflow run from the form node, and the public **Form URL** (the **Copy link** button on the block header) lets anyone submit it from a hosted page. See [Forms](/triggers/forms). | **Form Fields**: each field has a name (used in references), type (`string`, `number`, `boolean`, `object`, `array`, `list`, `select`, `schedule`, `credential`, `file`), label, description, required flag, options for select fields, and a default value. **Form Title** and **Form Description** appear on the hosted page. |
## Display blocks
| Block | What it does | Key configuration |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| **Multimedia** | Shows any file and picks the right viewer for it: an image, an audio waveform, a video player, a PDF, or a download card. It detects the kind from the file's type. After a run, the URL from the connected node's output takes priority; otherwise it shows the configured source or an uploaded file. | **Source URL**, **File Name**, or an uploaded file (drag and drop onto the block). |
| **Table** | Tabular data grid (AG Grid). Shows a saved dataset, data from an upstream node, or inline JSON rows. | **Data** (inline JSON array or a reference to upstream output), or a dataset picked from your workflow resources. |
| **HTML / React** | Renders custom HTML or a React/JSX component with Tailwind, npm packages, and SDK access. Fullscreen by default. | **Content** (HTML mode) or **JSX Source** (React mode), **Fullscreen** (Yes/No). See [Custom components](/apps/custom-components). |
## Interactive blocks
| Block | What it does | Key configuration |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| **File Upload** | Drop zone with a file picker. Uploaded files are stored as workflow resources, and their resource IDs are available to the workflow. Each file is listed with its size, a **Copy link** button for its permanent URL, and a button to remove it. | **Accepted Types**, **Max Size (MB)** (default 10). |
Every upload surface shows how far a transfer has got, as a percentage and a bar: the File Upload and Multimedia blocks, form file fields, the agent chat composer, and the media pickers in a node's config panel. If an upload fails, the row says why instead of spinning. A single file can be up to 100 MB.
There is one more block that never appears in the palette: **Agent Chat**. New AI agents appear here as a fullscreen chat tab by default. Toggle **Show in Interface** on an agent node (or click the **Chat** pill on the node) to control whether it shows. The chat takes image and file attachments from the paperclip button, a paste, or a drag and drop onto the composer. It sizes itself to the space it has rather than the window, so when a builder drawer or a split view is open, or you are on a phone, its header buttons collapse to icons and **Settings** opens as a sheet over the chat instead of narrowing it. See [AI agents](/agents/overview).
# Custom components
Source: https://docs.noclick.com/apps/custom-components
Run fully custom React components in your app with the HTML / React block.
The **HTML / React** block renders your own code inside the interface. It has two modes:
* **HTML**: raw HTML rendered as-is.
* **JSX / React**: a full React component. JSX is transpiled automatically, Tailwind CSS classes work out of the box, and npm packages resolve via esm.sh imports.
Components run in a sandboxed iframe with the `@noclick/sdk` available, so they can execute the workflow, read node outputs, and react to run results. This is how dashboards, custom forms, and complete app frontends are built on NoClick; the AI builder typically writes these components for you when you describe the app you want.
Custom components are fullscreen by default; set the block's **Fullscreen** option to **No** to place it on the grid alongside other blocks.
For the full component API, including SDK calls, imports, and working examples, see the [custom components SDK guide](/sdk/custom-components). To put a component on the public web, see [Publishing apps](/apps/publishing).
# App interfaces
Source: https://docs.noclick.com/apps/overview
Build a user-facing app on top of any workflow with interface blocks in the Interface tab.
Every workflow can have an app interface: a screen with forms, tables, media, and custom components that sits on top of the workflow's logic. You build it in the **Interface** tab (shortcut `I`) in the canvas top bar, next to the **Workflow** tab (shortcut `W`).
## Blocks are interface nodes
The Interface tab and the canvas are two views of the same thing. Every block on the grid is an interface node on the workflow canvas:
* Dropping a block onto the grid creates the matching node on the canvas.
* Deleting a block removes its node, and deleting the node removes the block.
* Connecting workflow nodes into an interface node feeds the block data. A Multimedia block wired to an image generation node shows the generated image after a run.
Drag a block from the palette onto the grid, or click it to add it. See [Interface blocks](/apps/blocks) for what each block does.
## The grid
Blocks sit on a free-form grid. Drag a block to move it, drag its edges to resize it, and the grid prevents overlaps by pushing neighbors out of the way. On narrow screens the grid reflows to fewer columns so blocks wrap instead of shrinking.
## Fullscreen blocks and tabs
Some blocks take over the whole view instead of sitting on the grid:
* **HTML / React** blocks are fullscreen by default. Set the block's **Fullscreen** option to **No** to place it on the grid instead.
* **Agent Chat** blocks (an agent node with **Show in Interface** enabled) are always fullscreen.
When you mix fullscreen blocks with grid blocks, a tab bar appears: a **Default** tab for the grid plus one tab per fullscreen block. Click the active tab's name to rename it, and drag tabs to reorder them. A single fullscreen block with an empty grid fills the view directly, with no tab bar.
## Next steps
Reference for every block type and its configuration.
Build fully custom React UIs with the HTML / React block.
Put your app on a public noclick.app subdomain.
Let the AI builder generate the interface for you.
# Publishing apps
Source: https://docs.noclick.com/apps/publishing
Publish a workflow interface to the web at your own noclick.app subdomain.
Publishing puts a workflow's custom component on the public web at `https://{subdomain}.noclick.app`. Anyone with the link can open the app and use it, no NoClick account required.
Publishing works for **HTML / React** blocks (custom components). Other block types stay inside the editor; build the user-facing surface as a custom component to publish it.
## Publish a workflow interface
On the **Workflow** tab, click the **Publish** pill at the top right of the HTML/React block's header.
The same dialog opens from the white **Publish** button at the top right of the **Interface** tab, or from the **Publish to web** banner.
The **Publish to Web** dialog asks for a URL in the form `https://[subdomain].noclick.app`. Availability is checked live as you type: you'll see **Available**, **Already taken**, or a reminder to use lowercase letters, numbers, and hyphens (3-63 characters).
Click **Publish**. Your app goes live at the chosen URL, and the dialog shows a **Copy Link** button.
Once an app is live, the AI builder and your agents can see its address. Ask either one for the app's URL and you get the live link back.
## What visitors can do
Visitors interact with the published app exactly as it appears in your Interface tab. Form submissions and component actions run the underlying workflow on your behalf, using your connected credentials and your credit balance. A small "Built with NoClick" badge appears in the corner of every published page.
Publishing makes this interface and all workflow resources (data, credentials, files) accessible to anyone with the link. Do not publish workflows containing sensitive data.
## Update or unpublish
A published app is a snapshot. Edits to the component do not go live until you republish:
* Open the publish dialog again to see the **Published App** view, then click **Update** to push the latest version.
* Click **Unpublish** to take the app down. To move to a different subdomain, unpublish first, then publish again with the new name.
All your published apps are listed under **Settings → Published Apps**, where you can open, copy, or unpublish each one.
Custom domains are not supported yet; published apps live on `noclick.app` subdomains.
# What costs credits
Source: https://docs.noclick.com/billing/costs
Which actions consume NoClick credits, what each one costs, and what is free.
Credits are NoClick's usage currency. 1 credit covers \$0.25 of underlying provider cost. Your plan grants a monthly credit allowance ([Plans](/billing/plans)), and [top-ups](/billing/top-ups) add more.
Two rules apply to every run:
* A run needs a minimum balance of 0.20 credits to start. A turn on a CLI coding agent needs 1 credit, because its sandbox bills for as long as the turn runs.
* Workflows in an organization bill the organization owner's credit pool, regardless of who runs them.
## What costs credits
Credits are only spent when NoClick pays a provider on your behalf.
### AI builder generations
Every AI builder generation or edit runs large language models on NoClick's keys. The token cost of each generation is deducted from your credits.
### Agent and LLM calls
Agent nodes and in-workflow LLM calls that use NoClick-provided models are charged by token usage at the model's rate. Runs authenticated with your own API key or AI subscription are not charged (see below).
### Test runs
A [test run](/agents/test-runs) answers each of your agent's tool calls with a made-up reply, and producing those replies runs a model on NoClick's key. That part is charged by token usage and reported separately as **Agent Testing**, so it stays distinct from the agent's own model usage. The agent's own turn is billed as any agent run is, including not at all when it runs on your own key or AI subscription.
### Image generation
Image generation with NoClick-keyed models costs credits based on the provider's per-image price. Imagen images are charged at Google's rates; Kling images cost \$0.014 to \$0.028 per image depending on the model.
### Video generation
Video models are priced by the provider per second or per clip:
| Model | Provider cost |
| -------------------- | -------------------------------------------------------- |
| Veo 2.0 | \$0.35 per second |
| Veo 3.0 / 3.1 | \$0.50 per second |
| Veo 3.0 / 3.1 Fast | \$0.15 per second |
| Kling v3 family | \$0.084 to \$0.126 per second, by model and mode |
| Kling v2.6 and older | \$0.14 to \$0.98 per clip (5s or 10s), by model and mode |
### X (Twitter) API
X bills per resource returned, not per request, and NoClick passes that through by operation type:
| Operation type | Provider cost |
| --------------------------------------------- | ------------------- |
| Reading posts (timelines, search, lookups) | \$0.005 per post |
| User lookups (profiles, followers, following) | \$0.010 per user |
| Creating a post | \$0.010 per post |
| Likes, retweets, follows | \$0.015 per action |
| Reading direct messages | \$0.010 per message |
| Sending direct messages | \$0.015 per message |
Only successful responses are billed. A read that returns zero results costs nothing.
### Email sends
Every outbound email costs a flat 0.01 credits. This applies to both the send-email node and an agent's automatic `email__reply` tool on [email-triggered runs](/triggers/email).
### Web search without your own key
Some search nodes run on NoClick's keys when you have no account connected, so you can use them without signing up with the provider. Each call is metered from what the provider charges NoClick and deducted from your credits.
| Node | Operations covered |
| ---------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| Exa | **Search**, **Get Contents**, **Answer**, **Find Similar** |
| Perplexity | **Create Chat Completion**, **Academic Search (Chat)**, **SEC Filings Search (Chat)**, **Structured JSON Output (Chat)**, **Search the Web** |
Connect your own key on the node to switch back to being billed by the provider. Both nodes' other operations, such as Exa's agent runs, websets, and monitors, and Perplexity's async jobs, embeddings, and account operations, always need your own key.
### Web scraping
The Instagram and LinkedIn scraper nodes run on NoClick's scraping infrastructure (Apify), and Reddit's **Get Subreddit Posts** reads public posts on NoClick's infrastructure too. Each scrape is metered and deducted from your credits based on what the provider charges NoClick: the job's cost for Instagram and LinkedIn, and the number of requests made for Reddit.
A scrape that fails part way is still metered for the work the provider already did, so a step that ends in an error can still use a small number of credits.
### Serverless function compute
The Serverless Function node's Python runtime runs in a cloud sandbox on NoClick's compute. That run is metered and deducted from your credits based on the CPU cores, memory, and GPU you reserve and how long it runs. A run is billed even if it errors or times out, since the compute was still used. JavaScript functions run in-process and are free (see below). See [Code](/logic/code).
### CLI coding agent sandbox time
The CLI coding agents (Claude Code, Codex, OpenCode, OpenClaw, and Hermes) run in a cloud sandbox that NoClick provides. Sandbox time is charged at 0.05 credits per minute of uptime, billed per turn. This applies even when the agent runs on your own API key or AI subscription, since the sandbox is NoClick's compute. The built-in LLM agent runs in-process and has no sandbox charge. See [Models and harnesses](/agents/models).
A turn needs 1 credit to start, and the sandbox is stopped mid-turn once your credits are used up, so a long conversation cannot run your balance below zero. Anything the agent saved to its workspace survives the stop.
The sandbox also shuts itself down about a minute after the agent goes idle, and never lives longer than four hours. A turn that stops producing output entirely is treated as stalled after 30 minutes and stopped, so a turn that fails to finish cannot keep billing uptime. See [Common errors](/troubleshooting/common-errors) for what that looks like in the chat.
## What's free
* **Integration nodes on your own credentials.** Sending a Slack message, updating a sheet, or creating a Linear issue with your connected account costs no credits.
* **Your own API keys (BYOK).** When a node or agent uses an API key you provide, the provider bills you directly and NoClick charges nothing.
* **AI-subscription agent runs.** Agents connected to your Claude (Pro, Max, Teams, Enterprise), ChatGPT (Plus, Pro), GitHub Copilot, or SuperGrok account run on that subscription, governed by the provider's plan limits. See [Agent models](/agents/models). The model usage is free, but CLI coding agents still bill for sandbox time (see above).
* **JavaScript serverless functions.** JavaScript code in the Serverless Function node runs in-process and is free. Python functions run in a cloud sandbox whose compute is billed (see above).
* **The built-in LLM agent's sandbox.** The in-process LLM agent has no sandbox charge. Only CLI coding agent sandbox time and Python serverless function compute are billed (see above).
## Next steps
* [Plans](/billing/plans)
* [Credit top-ups](/billing/top-ups)
* [Usage dashboard](/billing/usage-dashboard)
# Email notifications
Source: https://docs.noclick.com/billing/notifications
Email alerts for workflow failures, credit balance, and a weekly activity digest.
NoClick can email you about your account and workflows. Every alert goes to your account email, and you choose which types you receive in **Settings → Notifications**.
## Alert types
| Type | When you get it |
| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Workflow failures | A workflow that runs on its own (from a schedule, webhook, inbound email, the API, or an MCP call) fails. The email names the workflow, the node that failed, and the error. |
| Credit balance | Your credits run low, a run is blocked because your balance reached zero, or a CLI coding agent's sandbox is stopped mid-turn for the same reason. The email names the workflow that was blocked. |
| Credential disconnections | A connected account stops working and has to be reconnected. |
| Channel disconnections | A live connection drops, so incoming messages stop reaching your workflows. NoClick checks WhatsApp phone links and Discord bot installations, and the email names the connection and what to do about it, such as re-scanning the QR code or adding the bot back to the server. A connection that comes back on its own shortly after gets a follow-up under the same setting, telling you there is nothing to do and, on WhatsApp, not to re-scan a link that is working again. |
| Paused schedules | A [schedule](/triggers/schedules) is paused because its runs kept failing the same way. The email names the workflow, the paused trigger, and the error, and you get at most one per trigger per day. |
| Weekly digest | A Monday summary of your runs, failures, and credits used over the past week. |
Manual runs do not send a failure email. Their errors show on the canvas while you work. Failure alerts cover only workflows that run without you watching.
## Managing your alerts
Go to **Settings → Notifications**. Each alert type has its own toggle.
Switch any type off to stop receiving those emails. Changes save as you toggle them.
Every alert email also carries a one-click unsubscribe link for its type, so you can opt out straight from your inbox.
## Next steps
* [What costs credits](/billing/costs)
* [Credit top-ups](/billing/top-ups)
* [Usage dashboard](/billing/usage-dashboard)
# Plans
Source: https://docs.noclick.com/billing/plans
Compare the Free, Plus, Pro, and Enterprise plans and manage your subscription.
NoClick has four plans: Free, Plus, Pro, and Enterprise. Every plan includes the visual editor, the AI builder, and all integrations. Paid plans raise your credit allowance and remove resource limits.
## Plan comparison
| | Free | Plus | Pro | Enterprise |
| -------------------------------- | --------- | ------------------- | ------------------- | ---------- |
| Price | \$0 | \$25/mo or \$180/yr | \$50/mo or \$360/yr | Custom |
| Credits per month | 25 | 100 | 100 | Unlimited |
| Daily credit cap | 5 per day | None | None | None |
| Workflows | 5 | 25 | Unlimited | Unlimited |
| Credentials per node type | 1 | 3 | Unlimited | Unlimited |
| Version checkpoints per workflow | 3 | 10 | Unlimited | Unlimited |
| Saved outputs per type | 3 | 10 | Unlimited | Unlimited |
| Team members | 3 | 3 | 5 | Unlimited |
| Organizations | 1 | 1 | 3 | Unlimited |
Plan credits reset each calendar month. The Free plan is additionally capped at 5 credits per day. See [What costs credits](/billing/costs) for how credits are spent.
Not sure which plan fits? The **Estimate your month** section on the [pricing page](https://noclick.com/pricing) asks a few questions about how you plan to use NoClick, then shows where your credits would go, the plan that covers it, and the monthly total.
On the Free plan, emails sent through the Gmail and Outlook nodes include a small "Sent from NoClick" footer. Paid plans send without it.
## Monthly vs yearly billing
Yearly billing saves 40% compared to paying monthly: Plus is \$180/yr (equivalent to \$15/mo) and Pro is \$360/yr (equivalent to \$30/mo). You can switch between monthly and yearly with the **Monthly** / **Yearly** toggle wherever plans are shown.
## Enterprise
Enterprise adds SSO/SAML, unlimited team members, whitelabeling, and dedicated support, with custom pricing. Click **Talk to Sales** in **Settings → Billing** to get in touch.
## Shopify App Store installs
If you installed NoClick on a Shopify store from the Shopify App Store, your account runs on the Free plan and stays there. Paid plans and recurring credit top-ups are not offered through that channel, so **Settings → Billing** shows a **Free Plan** card saying so instead of the upgrade cards, and the upgrade prompts elsewhere in the app carry the same message. The Free plan limits in the table above still apply, so reaching the workflow limit means deleting a workflow rather than upgrading. See [Shopify](/integrations/shopify).
## Upgrading
Go to **Settings → Billing**. Your current plan is shown at the top, with upgrade cards for the plans above it.
Use the **Monthly** / **Yearly** toggle on the upgrade card, then click **Upgrade to Plus** or **Upgrade to Pro**.
You are redirected to Stripe checkout. The new plan applies as soon as payment completes.
While signed in, the **Upgrade to Plus** and **Upgrade to Pro** buttons on the pricing page take you to your dashboard and open the same purchase popup, so you can start from either place.
## Managing your subscription
On a paid plan, **Settings → Billing** shows a **Manage Subscription** button next to your current plan. It opens the Stripe customer portal, where you can update your payment method, view invoices, change your billing interval, or cancel.
When you cancel, your plan stays active until the end of the period you have already paid for, then your account moves to Free. The renewal or expiry date is shown next to your plan badge in **Settings → Billing**.
Organization plans are billed separately from personal plans. Organization owners and admins manage them from the organization's settings. See [Organizations](/collaboration/organizations).
## Next steps
* [What costs credits](/billing/costs)
* [Credit top-ups](/billing/top-ups)
* [Usage dashboard](/billing/usage-dashboard)
# Credit top-ups
Source: https://docs.noclick.com/billing/top-ups
Add a recurring credit top-up on top of your plan's monthly allowance.
A top-up is a recurring subscription that stacks extra credits on top of your plan's monthly allowance. Top-ups are available on paid plans (Plus and Pro).
Top-ups are not available on the Free plan. Free usage is bound by the 5 credits/day cap, so extra credits would not unlock more usage. [Upgrade your plan](/billing/plans) instead.
## Tiers
| Credits per month | Monthly | Yearly |
| ----------------- | ------- | -------- |
| 20 | \$5 | \$50 |
| 40 | \$10 | \$100 |
| 100 | \$25 | \$250 |
| 200 | \$50 | \$500 |
| 400 | \$98 | \$1,000 |
| 800 | \$196 | \$2,000 |
| 1,200 | \$294 | \$3,000 |
| 2,000 | \$480 | \$4,900 |
| 3,000 | \$700 | \$7,000 |
| 5,000 | \$1,100 | \$11,000 |
| 7,500 | \$1,640 | \$16,000 |
| 10,000 | \$2,150 | \$21,000 |
Larger tiers and yearly billing cost less per credit; the picker shows the discount on each tier.
## How top-up credits reset
Top-up credits reset every month, even on yearly billing. A yearly top-up is 12 monthly quotas: each month you get the tier's credits fresh, and unused credits do not roll over.
## Buying a top-up
Go to **Settings → Billing**. The credit top-up card sits under your plan. You can also open the same picker by clicking your credit balance in the navigation bar, or preview plan plus top-up totals on the pricing page.
The **Add credits** dialog lists every tier with its monthly and yearly price.
Choose a tier and billing interval, then complete checkout. The credits are available immediately.
## Changing or cancelling a top-up
With an active top-up, the card in **Settings → Billing** shows your current tier and renewal date.
* **Move to a larger tier**: click **Change tier** and pick a bigger one. The upgrade takes effect immediately and starts a new cycle.
* **Downgrade or cancel**: click **Manage** to open the Stripe customer portal.
## Next steps
* [What costs credits](/billing/costs)
* [Usage dashboard](/billing/usage-dashboard)
# Usage dashboard
Source: https://docs.noclick.com/billing/usage-dashboard
Track credit spend by category, model, and time period in Settings → Usage.
The usage dashboard in **Settings → Usage** shows where your credits go: charts over time, per-category and per-model breakdowns, and a live event log. All values are in credits.
## Credits remaining
The top of the dashboard shows **Credits remaining** as used-versus-cap for the current month (for example `87.50 / 100`), combining your plan allowance and any active [top-up](/billing/top-ups).
## Usage categories
Every charge falls into one of six categories:
| Category | What it covers |
| --------------- | ---------------------------------------------------------------------------------- |
| AI Builder | AI builder generations and edits |
| Agent / LLM | Agent nodes and in-workflow LLM calls |
| Agent Testing | The simulated world that answers tool calls during a [test run](/agents/test-runs) |
| Third-party API | Metered APIs such as X and scraping |
| Compute (CPU) | CLI coding agent sandbox time and serverless function CPU compute |
| Compute (GPU) | Serverless function GPU time |
## Charts and views
Two toggles control the main chart:
* **Bar** / **Pie**: a stacked cost-over-time bar chart, or a donut showing each slice's share of total spend.
* **By Resource** / **By Model**: group spend by the categories above, or by individual model and service (for example a specific LLM, Veo, or a scraper).
The legend is sorted by spend with a total per entry; hovering an entry highlights it in the chart. Summary cards below the chart show **Total Cost** and per-category totals for the selected period.
## Date ranges
Use the **7d** / **30d** / **90d** presets, or the date picker next to them to select any custom range.
## Recent usage events
The **Recent Usage Events** table lists your charges with timestamp, category, resource, count (for example tokens), and cost. New events appear in real time while your workflows run, so you can watch a run's spend as it happens.
Search the table by resource name and filter it by category to narrow the list. The table scrolls through your full history rather than showing only the most recent rows, and live events respect whichever filters you have active.
## Top models and services
The **Top Models & Services** table ranks the most expensive entries in the selected period by day, with tokens and cost per row. Use it to spot which model or service drives your spend.
## Next steps
* [What costs credits](/billing/costs)
* [Credit top-ups](/billing/top-ups)
* [Plans](/billing/plans)
# When the builder asks
Source: https://docs.noclick.com/builder/asks
The AI builder pauses and shows a form when it needs an account connection or a value only you know. Answer it and the build resumes.
When the builder hits something it cannot decide on its own, it pauses and opens a form above the chat input instead of guessing. There are two kinds of questions.
## Credential asks
If a node needs an account and you do not have a usable one connected, the builder asks you to connect it inline. The form shows the same connect flow as the node's credential panel, so you can complete an OAuth sign-in or paste an API key without leaving the chat.
This covers both kinds of service: the ones you sign in to and the ones that take a key you paste, such as Exa, Firecrawl, Perplexity, Resend, Twilio, Postgres, and the vector databases.
The builder only asks when it has to. If you already have exactly one matching account connected, it attaches that account automatically and moves on. It also does not ask for a node that can run on [NoClick's own keys](/billing/costs), or for an operation that needs no account at all.
## Input asks
For values only you know, the builder asks with the most helpful input it can:
* **Live pickers** that load options from your connected account, like which spreadsheet, channel, or database to use
* **Multiple choice** when it wants you to pick between options, with an "Other" field for your own answer. When several options can apply at once, they become checkboxes under a **Select all that apply** hint and you can tick as many as you need
* **Free text** for anything else
Some fields offer a shortcut instead of an answer. When a picker is for a resource you can create, like a spreadsheet, a board, a database, or a repository, it includes a **Create new** button that has the builder create one for you and use it, so you do not have to set it up first.
## Answering
Multiple questions batch into a step-by-step form ("Step 1 of 3"). Required steps are marked with an asterisk. Click **Next** to advance and **Continue** on the last step to submit. Use **Back** to return to an earlier question.
Click **Skip** to pass on the current question and move to the next one. The builder continues with whatever you have answered so far.
You can type a reply in the chat input instead of using the form, for example "use the second one" or "I don't have that account, do it without it". Any fields you already filled in carry over with your reply, so you never repeat an answer.
Once you answer, the build resumes from where it paused. If you close the workflow mid-question, the form reopens the next time you return to it.
# Editing with the builder
Source: https://docs.noclick.com/builder/editing
Iterate on an existing workflow by describing changes in plain language. The builder edits in place and keeps the rest of your graph intact.
The builder is not just for the first draft. With a workflow open, the chat input switches to edit mode ("Editing: your workflow name") and anything you type is applied to that workflow.
Describe the change the way you would to a teammate:
* "Add a filter so only emails from customers get through"
* "Post the summary to #general instead of #random"
* "Make the schedule run hourly on weekdays"
## Your existing nodes are preserved
The builder reads your current workflow and makes targeted changes. It adds, reconfigures, rewires, or removes only what your request needs; every other node, connection, and setting stays as it is. The chat shows a card for each node it touched so you can see exactly what changed.
Before a large rework, save a snapshot from the **Versions** panel (shortcut `V`) so you can restore the workflow if you do not like the result. See [Version history](/editor/version-history).
## It can read what past runs produced
The builder can look at the output a node stored on earlier runs, so questions about what actually happened are answered from your data instead of guessed. It lists a node's recent outputs newest first, with the time, what started that run, and whether the run finished, then opens the one it needs and reads a single field out of it.
That makes questions like "which number messaged the WhatsApp trigger this morning" or "what did the summary step return on the run that failed" worth asking. A trigger with nothing stored says no delivery has been recorded, and an output left behind by a manual run of a trigger that waits for events is marked as such, so an empty test is never read as a real message. When the newest run failed at the step you asked about, the builder reports the error that run recorded rather than asking you to run the node first.
## It checks references against your real data
When the builder fills a field with a [reference](/editor/data-references) to an upstream step, it compares that reference against the shape that step's output actually has: the latest output stored in this workflow, or the shape learned from earlier runs of the same operation. A reference to a key that is not there is rejected as it is written, with the keys the output does hold, and the same check runs again before the builder tells you it is done.
That matters because a required field whose reference resolves to nothing fails the step at run time, so catching it while building saves a failed first run. A step whose output shape is not known yet is never judged, so a node that has never run does not get flagged.
## When to edit on the canvas instead
Direct canvas editing is the better tool when you already know the exact change:
* Setting one field to a precise value, especially from a dropdown you can see
* Rewiring a single connection or repositioning nodes
* Quick toggles like disabling a node
Hand edits are instant and free, while every builder message runs a generation that [uses credits](/builder/models). Use the builder for changes that span several nodes or that you would rather describe than configure; see [Configuring nodes](/editor/configuring-nodes) for the manual side.
# Models and credits
Source: https://docs.noclick.com/builder/models
The AI builder runs on models managed by NoClick and bills each generation to your credit balance under the AI Builder category.
## What powers the builder
The builder runs on models that NoClick selects and manages. There is nothing to set up: no API keys to provide and no model to pick. This is separate from [AI agent nodes](/agents/models) inside your workflows, where you choose the model (and can even use your own Claude or ChatGPT subscription).
## What it costs
Every message you send to the builder runs a generation, and generations use credits from your plan's monthly budget. The cost scales with the work involved, so a small edit costs less than building a large workflow from scratch.
| Plan | Credits per month |
| ---------- | ------------------ |
| Free | 25 (max 5 per day) |
| Plus | 100 |
| Pro | 100 |
| Enterprise | Unlimited |
Credits are shared across everything that uses them, including workflow runs with NoClick-provided AI. See [Understanding costs](/billing/costs) for the full model and [Plans](/billing/plans) for what each tier includes.
Editing the canvas by hand never uses credits. Only builder generations and credit-billed workflow runs do.
## Tracking builder usage
Open **Settings → Usage** to see what the builder has consumed. Builder generations appear under the **AI Builder** category, with charts, a recent events table, and your remaining credits. See the [usage dashboard](/billing/usage-dashboard) for details.
# AI builder
Source: https://docs.noclick.com/builder/overview
Describe what you want in plain language and the AI builder assembles the workflow: nodes, connections, and configuration.
The AI builder is a chat that turns plain-language requests into working workflows. It lives in the chat sidebar, available from the dashboard and alongside the workflow canvas. Press `/` anywhere in the dashboard to open it.
## Describe what you want
Type the outcome you are after, for example:
* "Reply to customer support emails using my docs"
* "Summarize my Slack channels every morning"
* "Scrape Hacker News and post top stories to Discord"
* "Generate weekly KPI reports from Postgres"
An empty canvas also shows a prompt box with suggestions. Submitting it hands your request to the builder in the sidebar.
## What the builder does
From one request, the builder:
* Adds the right nodes and wires them together
* Picks each node's operation and fills in its configuration
* Attaches your credentials when the choice is unambiguous (if you have exactly one matching connected account, it is attached automatically)
* Pauses and asks you when it needs something only you can provide, like connecting an account or picking a specific spreadsheet (see [When the builder asks](/builder/asks))
* Checks each node's configuration against what a run accepts before reporting the workflow as finished, and repairs what it finds
* Looks things up for itself while it builds. If you paste an API URL or a sample payload, it can fetch the URL and inspect the real response rather than wiring a node blind. It has no access to your connected accounts while it does this
* Reports a build as finished only when it confirms completion itself. A run that stops early or reaches its turn limit ends as incomplete and says so, and any changes it already made to the canvas stay
While it works, the chat shows progress steps and cards for each node it touches, and the nodes appear on the canvas live. The builder also builds interfaces: with the Interface tab open, describing a form, dashboard, or chat UI produces an interface for the workflow.
The chat follows whichever workflow you have open, and each workflow keeps its own conversation. You can also ask the builder to find, open, or create workflows by name.
## Adding context to your message
You can paste content directly into the chat input:
* Pasted images attach inline (useful for sketches or reference screenshots)
* Long pasted text (more than 10 lines) collapses into a compact tag so it does not flood the input
* With a workflow open, drag a field from a node's output into the chat to reference that exact value in your request
## Next steps
Credential and input questions, and how to answer them.
Iterate on an existing workflow in plain language.
Reusable context the builder loads automatically.
What powers the builder and what it costs.
# Skills
Source: https://docs.noclick.com/builder/skills
Give the AI builder reusable instructions and reference material that it loads automatically when relevant.
Skills are reusable context for the builder: writing guidelines, domain knowledge, conventions your team follows, or a reference workflow to imitate. Once a skill is enabled, the builder considers it on every message and loads the ones relevant to your request, so you do not have to repeat yourself in every prompt.
## Creating a skill
The **Skills** section lists your skills and any shared with you.
Enter a name (for example "Apple-style copy guidelines") and click **Create**. The editor opens immediately.
On the **Content** tab:
* **Description**: a few sentences on when and why the builder should use this skill. The builder reads descriptions to decide which skills to load, so make this specific.
* **Text body**: the instructions themselves. Prose, examples, code samples, anything the builder should follow.
The **Workflow** tab opens a canvas where you can build an example workflow into the skill. The builder studies it as a reference, including exact node configurations, when building something similar.
## Enabling and disabling
Each skill row has a toggle. Enabled skills are available to the builder; disabled ones are excluded entirely. Turn a skill off when you want to keep it around but stop it from influencing builds.
## Sharing skills
Click the **Share** button on a skill to share it with specific people or organizations. Skills shared with you appear in a "Shared with me" section. They are read-only, and their toggle mutes or unmutes them just for you without affecting the owner.
# Changelog
Source: https://docs.noclick.com/changelog
New features and improvements in NoClick.
Everything new in NoClick, day by day.
## Setup says what has actually arrived
The **Setup** tab now ends with a check on the workflow itself. It reports one of six states: setup unfinished, configured but unverified, registered and waiting for a real input, a reporting deadline armed, a real input received, or nothing automatic wired at all. When an input has arrived it names the node, when it arrived, and what the run did with it, and a **Refresh** button rechecks without reloading the page. It also says outright that a Test Run is simulated and that a send the provider accepted is not proof it was delivered. See [Setup](/editor/setup).
* A trigger registers only once the path it starts can run. A trigger whose workflow is still missing an account, an agent's instructions, or a required field no longer shows as live while nothing could have run. Fix what is missing and the trigger registers itself the next time the workflow saves.
* A WhatsApp trigger that could not register says why, for example that the saved phone link is disconnected and needs reconnecting, and the message clears once a later attempt succeeds.
* A trigger run that carried no event stops there. A push trigger you run by hand reports that it is waiting for a message and no longer hands an agent an empty turn to spend credits on. Branches that do not depend on that trigger still run.
## An agent fed by a trigger does not need a Message
**Message** is where you write an agent's standing instructions, and it is still required when nothing feeds the agent. When a trigger is wired into the agent, the event that arrives is the turn, so **Message** can be left empty and the node is no longer marked incomplete for it. Running such an agent by hand, with no event and no standing instructions, fails with an error saying so rather than running on nothing. See [AI agents overview](/agents/overview).
## Other changes
* An agent can hold a named deadline per thing it watches. `schedule_alarm` takes a `watch_key` for the site or report being monitored and an `observed_at` for the real time of the update it just saw. Reusing the key replaces that watch's deadline, so a late or duplicate copy of an older update cannot postpone an alert or wake the agent twice. Setup shows each armed deadline, and says when a missing-update check has none yet. See [Agent scheduling with alarms](/agents/scheduling).
* A value already saved in a resource field on a tool-provider node now limits the agent to that value. An account, chat, or channel pinned on the node is enforced when the agent calls the tool, not just offered as a default it could replace. Changing it applies on the agent's next turn. See [Tools from integrations](/agents/tools).
* You can reconnect a saved Claude account in place. With the connection selected, the button reads **Reconnect selected Claude account** and the sign-in refreshes that connection instead of adding another. Where one saved connection exists and none is selected, **Use saved connection** attaches it in a click. If your plan's credential limit is already reached, NoClick says so before sending you to claude.ai, rather than after you have spent a one-time authorization code. See [Models and harnesses](/agents/models).
* The AI builder can see which accounts are already connected when you ask it to edit or autofill. The snapshot it works from used to leave out each node's attached account, along with whether the node was disabled or holding a test output, so it could ask you to connect something you had already connected. See [Editing with the builder](/builder/editing).
* Fields that do not apply to the account you connected are hidden. A WhatsApp trigger on a QR connection no longer shows **Verify Token (Optional)**, which only the Cloud API uses, and the trigger's **Webhook URL** is read-only, since NoClick fills it in. See [WhatsApp](/integrations/whatsapp).
* A WhatsApp disconnection email waits for the link to stay down. A restart at the provider flaps every connection for well under a minute, and you used to be told to re-scan a link that was about to come back, which adds a second device link to the phone. NoClick now waits out a short blip before it checks, and if the connection recovers after an email went out, a follow-up tells you it healed itself and not to re-scan. See [Email notifications](/billing/notifications).
* Several messages arriving at once no longer disturb an agent whose sandbox is still starting. A burst delivered while the agent was cold could stop the sandbox mid-start and lose the turns attached to it.
* A turn lost because its sandbox was replaced is now recorded as a failed run with the reason, instead of sitting in history looking delivered.
* A CLI agent with no account connected says which credential it needs. It used to fail with a message about model and tool limits, which pointed at the wrong thing.
## Switch models and keep the conversation
Moving an agent between Claude Code, Codex, OpenCode, OpenClaw, and Hermes used to end the thread it was on. Your next message started a new conversation with the recent turns pasted in as background. The conversation now moves into the harness you picked and carries on: the same thread, with each tool call still paired to what it returned, so the agent resumes where it left off rather than reading a summary of it. See [Conversations and memory](/agents/conversations).
* Any of the five CLI agents can hand a conversation to any of the others. The built-in LLM agent keeps its history in NoClick rather than in a session store of its own, so switching between it and a CLI agent still carries the recent turns across as context, about 4,000 characters of them, trimmed from the oldest end.
* Picking a thread in **History** now only opens it. It used to set the agent's **Model** to whatever that thread last ran on, changing the model you were about to run without telling you. The model stays the one you picked, and your next message runs it on the thread you opened.
* History rows no longer carry a tag naming the harness a thread ran on.
* The first message after a harness switch starts a new sandbox, so it takes longer than a follow-up. Messages after it are back to warm-sandbox speed.
## Agents read the event, not the envelope
A trigger wired into an agent used to hand it everything the service sent. A Slack message arrived as the whole delivery around it: verification tokens, authorization blocks, and a second copy of the text in Slack's own block format. The agent now reads a short account of what happened instead: the service and the kind of event, who it came from and where, the content itself, and the IDs it needs to reply in the right place. See [Channel agents](/agents/channel-agents).
* The triggers agents are usually wired to each write their own account of an event: Slack, Discord, Telegram, WhatsApp, inbound email, Gmail, Outlook, GitHub, GitLab, Linear, Jira, Notion, Trello, Asana, ClickUp, monday, Google Calendar, Forms, Sheets and Drive, Typeform, HubSpot, Shopify, Zendesk, Intercom, Stripe, Calendly, PagerDuty, Sentry, PostHog, Datadog, Honeycomb, Mailgun, Resend, Loops, schedules, and plain webhooks. Any other trigger gets the general shaping: the delivery wrapper opened, empty and internal fields dropped, and the rest held to a readable size.
* In the agent's chat, a turn that a trigger started is shown as the message that started it, laid out the way that app lays it out, under a caption naming the app, the node's label if you gave it one, and the trigger, for example **Slack · Support channel · On app mention**. Where a message view does not fit, such as a schedule tick, the account the agent read is shown with the event itself behind an **Event payload** toggle.
* The thread takes its name from the event, so the history list reads as the channel or the sender the message came from. Your standing instructions stay in the **Message** field, rather than appearing in the chat as a message you never sent.
## Other changes
* Facebook triggers check every delivery. **Verify Token** and **App Secret** are both required now: Meta's subscription handshake completes only when the token matches, and an event is accepted only when its signature checks out against the app secret. Fill in both on any Facebook trigger that is missing one, or it stops receiving events. **Verify Token** is masked like a password. See [Facebook](/integrations/facebook).
## A missing value stops the step
A required field holding a reference like `{{ $('trigger').chat_id }}` used to be passed on as an empty value when the referenced output had no such key. The step reported success and nothing arrived. That field now fails the step, and the error names the field, the reference, and the keys the referenced node's output actually has, so you can fix it without opening the run. See [Data references](/editor/data-references).
* The error reads `Required field 'to' is empty`, followed by what went wrong: the referenced node has no key by that name, and the list of keys it does have. A key that exists but holds null is reported as null, which reads differently and usually means a different fix.
* A reference read during a manual run of a trigger that waits for events says there is no live event in this run, and that firing the workflow for real is how to test that path.
* Optional fields are unchanged. A reference that resolves to nothing there leaves the field at its default, as before.
* Sending a WhatsApp message to an empty recipient stops with a message naming the chat id to reference instead, rather than being accepted and never delivered. See [WhatsApp](/integrations/whatsapp).
## Other changes
* Fields that take a yes or no answer are a dropdown. They used to be an open text box that accepted any wording and then failed the run on wording the step could not read. The dropdown offers **Yes**, **No**, and the field's own default, and a field holding a `{{ }}` reference keeps the text box. See [Configuring nodes](/editor/configuring-nodes).
* The AI builder checks references against your real data as it writes them. When it fills a field with a reference to a key that node's output does not carry, it is told so along with the keys the output does have, both as it writes the field and before it finishes, so a workflow it hands you is less likely to fail on its first run. See [Editing with the builder](/builder/editing).
* Ask the builder what a step returned on a run that failed at that step, and it reports the error the run recorded instead of asking you to run the node first.
* The builder can add an **Alarm** or **Filesystem** node when you ask for one. Neither was in the list of nodes it could see, so asking it to let an agent schedule its own wake-ups used to get the answer that no such node exists. See [Agent scheduling with alarms](/agents/scheduling) and [Files and repositories](/agents/files-and-repos).
## A Slack trigger tells you when it cannot hear the channel
Slack sends channel events only to apps that are members of the channel. A trigger on a channel NoClick was never invited to used to read **Active** and never fire. Registration now checks, and the trigger's **Status** field carries the verdict. When the app is not in the channel, the status turns amber and says so, with a **Join #channel** button next to it on a public channel. A private channel names the invite to run instead, since only a person can add an app to one. See [App events](/triggers/app-events).
* The node is marked incomplete on the canvas, counted by the incomplete pill at the bottom left, and named in the **Setup** tab. It never holds up a run you start yourself, because a manual run does not wait for Slack to deliver anything.
* Your [Dashboard](/getting-started/dashboard) lists it under **Needs you** as not receiving events, with that same fix as the button on the row and **Open trigger** next to it. **Open trigger** now opens the workflow with the trigger selected and its settings showing.
* Ask the AI builder why a workflow is not running and it reads the same verdict, so it answers that the trigger is registered but not receiving events rather than calling it active.
* A check that cannot reach Slack changes nothing. A trigger is never called broken on a failed check.
## Other changes
* A Discord message trigger can watch a whole category. Pick one in **Channel** and messages in every channel under it, and in the threads opened in those channels, start runs. Categories now read as **Name (category)** in the picker and are ordered the way Discord's sidebar orders them, so a category is no longer mistaken for a channel and left silent.
* A Slack message that started a run is shown as a Slack message in the run results **What came in** frame: the channel it was posted in, who posted it, the time, and the text with mentions, channel links, and link labels written the way you read them in Slack. A bot post's attachments and the names of shared files are part of what came in, a reply is marked as being in a thread, and a channel notice such as someone joining reads as that notice instead of an empty message. See [Running and testing](/editor/running-and-testing).
* Connecting Instagram completes again. The connect window now reports success only once the connection is saved, an authorization that Instagram cut off from the page that opened it still lands, and cancelling and clicking **Connect** again starts a fresh attempt. New connections use Instagram's own sign-in, and Instagram accounts you connected through Facebook keep working as they are. See [Instagram](/integrations/instagram).
* **Create Comment Thread** and **Create Reply** on Canva designs post your text again. Both were stopping with an error about a missing message field.
* A new PostHog connection asks for everything the node uses: reading groups, reading and writing organization members, and writing session recordings. PostHog was dropping those permissions because NoClick declared them under a name PostHog does not read. Reconnect a PostHog credential you connected earlier to pick them up.
## Reddit posts come back whole
**Get Subreddit Posts** reads Reddit directly now. Each post comes back with its full text and HTML, permalink, creation and edit times, score, total comment count, flair, media links, and the community's URL, description, and member count. It still needs no connected Reddit account, and it still runs on your credits. See [Reddit](/integrations/reddit).
* Set **Fetch Comments** to **Yes** for a sample of comments and their nested replies, sized by **Comments per Post** (1 to 100, 10 by default). `num_comments` stays the total Reddit reports for the post, and `comment_count` counts what actually came back.
* **Time Period** applies to top and controversial sorting on every read. **Content Detail** and **Proxy Mode** are gone, and steps you already saved keep running on the new reader.
* A read that fails or comes back incomplete fails the step, instead of reporting success with nothing in it.
## Other changes
* The Instagram and LinkedIn scraping steps fail the same way. A scrape that fails, is cut short, or returns records the node cannot read stops the run and names the reason, rather than handing an empty list to the next step. See [Common errors](/troubleshooting/common-errors).
* A message that arrived with a photo, video, voice note, or document keeps it in the run results **What came in** frame. Pictures and video show in the bubble, a voice note gets a player you can listen to, and a document shows as a chip with its filename. A shared location or contact card reads as one line naming the place or the person, and a WhatsApp sender's phone number is shown in place of an opaque id. See [Running and testing](/editor/running-and-testing).
* The AI builder can read what earlier runs stored. Ask what a trigger received or what a step returned, and it lists that node's recent outputs newest first, then opens the run it needs. A trigger with nothing stored says no delivery has been recorded, and an output left behind by a manual run of a waiting trigger is marked as such. See [Editing with the builder](/builder/editing).
## A failing schedule pauses itself
A scheduled workflow that kept failing the same way used to mint another failed run on every tick, for as long as the schedule ran. NoClick now pauses it: when the last five runs from that schedule have all failed with an identical error, spread over at least 30 minutes, the trigger node is switched off and the schedule stops. See [Schedules](/triggers/schedules).
* You get one email naming the workflow, the paused trigger, the error, and when it was paused. **Paused schedules** is its own toggle in **Settings → Notifications**, and you get at most one of these per trigger per day. See [Email notifications](/billing/notifications).
* The paused trigger appears on your [Dashboard](/getting-started/dashboard) under **Needs you** and on the **Triggers** card, named and marked as paused with the error next to it. A trigger you switched off yourself stays hidden, as before.
* Fix what the error names, then enable the trigger node again to resume the schedule. If the same failure comes back, the schedule pauses again on the first repeat.
* Running out of credits never pauses a schedule. Topping up resumes the runs on its own.
* A short provider outage does not reach the bar: the failures have to be identical and sustained for half an hour.
## Other changes
* Pressing **Run** on an integration node that is wired as a [tool provider](/agents/tools) no longer fails with an error about a missing action. The button is off, and says the node provides tools and its actions run when the agent or your MCP client calls them. Run the agent instead. Asking NoClick to run that node from an MCP client gets the same explanation back.
* A step inside a loop that fails is recorded as failed. Some failures were read as successes, so the loop carried on with the failed step's output and stored it as that item's result. See [Loops](/logic/loops).
* A loop stops when your credits run out, including loops nested inside another loop, instead of working through the rest of the items and failing each one.
* The nodes on a loop's **After Loop** handle run once. A loop nested inside another loop could run them a second time.
* Agents that run on a saved model credential work again. Since the previous release, an agent using an OpenRouter key or a Codex, Claude Code, or OpenCode sign-in failed at the start of every run with an error about its credential type.
## Instagram comments and messages start runs
The Instagram node has two new triggers, **On Comment** and **On Message**. A comment someone leaves on the connected account's posts, or a direct message they send it, starts a run as it arrives. Both need the **Login** connection, and Instagram pushes each event to NoClick signed, so nothing is polled.
Leave the filters blank to listen across the whole account, set **Media ID** on **On Comment** to watch one post, or **Sender ID** on **On Message** to hear one sender. Comments the account wrote itself and echoes of messages it sent are skipped, so a reply your workflow posts cannot start it again. Running either step by hand reports that no event was delivered, because events reach the workflow through the trigger. See [Instagram](/integrations/instagram) and [App events](/triggers/app-events).
## Other changes
* Instagram's new **Get Comment** operation reads one comment by its ID, with the author and the post it sits on. Reading a single comment used to mean listing every comment on the post and picking it out.
* **List Conversations** in Instagram takes a **Participant ID**, the Instagram-scoped ID of one person, and returns the direct message conversation with them instead of the whole list.
* **Publish Photo Post** waits for Instagram to finish fetching your image before it publishes. Publishing could fail with a message saying the media was not available, because a photo container is not ready the moment Instagram hands back its ID. Reels already waited this way.
* Signing in with Instagram's **Login** option finishes and saves the connection, and NoClick can refresh it later. Connecting could stop with nothing saved.
* An Instagram **Login** connection is treated as one everywhere it is used, including when an AI agent calls an Instagram operation as a tool. Its token could be sent to Facebook's API instead, which rejects it. See [Agent tools](/agents/tools).
* Sending an agent a second message while it is still working no longer leaves it stuck as working. When the agent takes several messages into one turn, the reply is matched to the messages it actually read, and **Inputs consumed** in the run's results lists them. See [Running and testing](/editor/running-and-testing).
## Your MCP server link has a real success signal
The connect status for a workflow that hosts an MCP server now answers two questions separately instead of showing one spinner for both. A **Link ready** line names how many tools the link serves right now, with a few of them by name, read straight from your workflow with no client involved. Under it, the client line reads **Waiting for your agent to connect** until a client calls in, then **Connected** with the client's name, how many tools it was served, and which ones it can call. See [Create your own MCP server](/mcp/hosted-servers).
* The waiting line names what makes that client connect. Most clients only write the config when you run their add command and open the connection when a session starts, so the usual fix is to start or restart the client rather than to wait.
* After 45 seconds the panel offers that client's own check command, such as `claude mcp list` or `opencode mcp list`. Those commands list the servers and connect at the same time, so running one turns the status green.
* The status also sits on the node. The **Connect externally** header of an MCP Server node reads **Connected**, with the client and the tool count, for anyone who opens the workflow later, so you do not have to run the Setup finale again to check.
* When NoClick cannot read handshakes for a moment, the panel says it cannot check rather than reporting that nothing has connected. The link keeps serving either way.
* The client setup guides are re-verified. Claude's custom connectors live under **Customize → Connectors**, Zed connects to a remote URL without a bridge, and VS Code adds the server with `code --add-mcp`.
## Other changes
* The **Codex** model dropdown lists the models the pinned Codex CLI's own picker serves, in the order Codex ranks them. Models OpenAI has hidden or retired are no longer offered, and an agent already saved on a retired model keeps running. See [Models and harnesses](/agents/models).
* The **Claude Code** model dropdown lists every alias the CLI publishes, with the one it recommends first, so `fable` is offered alongside `opus`, `sonnet`, and `haiku`. New agents start on `sonnet`.
* Both CLI dropdowns show plain model ids again. The Codex labels had picked up Codex's one-line model descriptions, which the picker printed a second time under each row and the closed field repeated as a sentence.
* A **Discord Bot Install** credential whose bot is still in your server reads as connected again. Working Discord connections were being labeled **Disconnected** in the credential picker and flagged on the node's **Credentials** tab, with WhatsApp re-scan instructions under them. A Discord connection the bot really has been removed from is still reported. See [When a connection drops](/credentials/connecting#when-a-connection-drops).
* When a connection really has dropped, the message on the node's **Credentials** tab now says how to repair that connection: re-scan the QR code for a WhatsApp credential, or add NoClick's bot back to the server for a Discord one. It used to give WhatsApp instructions whatever the connection was.
* The **Codex** model list offers OpenAI's newest models. The list comes from the Codex CLI that runs in the sandbox and picks up new model ids as OpenAI ships them, so nothing to change on your side. See [Models and harnesses](/agents/models).
* A Discord **On Channel Message** or **On Bot Mention** trigger scoped to one channel now fires for messages posted in the threads opened in that channel. Discord delivers a thread message under the thread's own id, so a reply inside a thread the agent had started was measured against the channel id and dropped. Leaving **Channel** empty was the only way to hear those replies. See [Channel agents](/agents/channel-agents).
* A message from a thread names the thread and the channel it sits under, and tells the agent where to read the thread's earlier messages before it answers. The thread stays its own conversation, as it did before.
## The Feed is now a Dashboard
The **Feed** tab in the top navigation becomes **Dashboard**: one page for what is happening across your workspace, with a card for each area and a full page behind every card. **Needs you** replaces the approvals queue and now also carries questions the AI builder parked, edits an agent proposed to its own workflow, accounts someone still has to connect, connections that stopped working, and triggers that failed to register. You answer each one where it sits, with the same fields and pickers the workflow itself would show you. See [Dashboard](/getting-started/dashboard).
The other cards are **Runs**, **Agents**, **Upcoming**, **Files**, **Credentials**, **Triggers**, **Credits**, and **Notifications**. Press `G` then `D` to open the Dashboard, or `G` then `I` to land on **Needs you**.
* **Runs** charts the last 14 days and lists your workflows by run count, with failures called out. Click a row to open that workflow, or a single run to see its results.
* **Files** gathers workflow uploads, agent workspaces, and the builder's scratch folder in one place, previews images, video, audio, and datasets without leaving the page, and lets you upload or delete wherever you have write access.
* **Agents** shows sandboxes that are up now and each agent's latest turns, with the message that came in, the messages the agent sent, and every tool call it made.
* The section you drilled into is remembered while you visit other tabs. The back button, browser Back, or `Esc` leaves it.
## Discord messages can start an agent
The Discord node has two new triggers, **On Channel Message** and **On Bot Mention**, and a message reaches your workflow within seconds of being posted. Connect Discord with the **Discord Bot Install** credential so NoClick's bot is in your server, then leave **Channel** empty to listen to the whole server or pick one channel. **Ignore bot messages** is on by default, so posts from other bots and webhooks do not wake the agent. Each channel and thread is its own conversation. See [Channel agents](/agents/channel-agents).
* A Discord message in run results reads as a message: who wrote it, the channel and server by name, mentions as names, and attachments by filename. A slash command reads as its invocation.
* A **Test Run** on a Discord-triggered agent ships a written **Channel question** situation, so the rehearsal looks like a real Discord message instead of a generic sample. See [Test runs](/agents/test-runs).
* An **On Slash Command** trigger fires only for the server its connection was installed into. A connection made with your own bot token still covers every server that bot is in.
* A Discord connection reads as disconnected once the bot is removed from its server, in the credential picker, in workflow validation, and to an agent asking about its own workflow, with reconnecting named as the fix.
## Other changes
* A Microsoft work or school account in an organization that does not let people approve apps for themselves can now be connected. Under the **Connect** button on any Microsoft node, an admin clicks **approve NoClick for your organization**, and Microsoft grants the permissions once for the whole directory. Everyone else connects normally afterwards, and the **Need admin approval** error now points at that button. See [Connecting accounts](/credentials/connecting).
* The disconnection email covers every connection type NoClick can check, not just WhatsApp, and names what to reconnect. A Discord server that removed the bot gets its own email, once per connection per day at most. See [Email notifications](/billing/notifications).
* Uninstalling NoClick from a Shopify store marks that store's connection as disconnected instead of leaving it looking healthy. Installing again from the Shopify App Store reconnects the same connection, and the permissions NoClick records are the ones Shopify actually granted.
* The **After Cursor** field on Shopify's GraphQL product, order, customer, and collection queries works. Those queries also return the page information Shopify sends back, so you can page through more results than one call returns.
* The **What came in** section of a run's results shows the message the agent turn actually took in. A turn from a chat agent could show something else there: a note left behind by an earlier manual run, or a message from a different conversation. When several messages feed one turn, the section marks the one it shows as the latest of them, and **Inputs consumed** carries the rest. See [Running and testing](/editor/running-and-testing).
* A manual run of a trigger that waits for an incoming event now reads as one line saying nothing was delivered. The explanation used to appear as a message, as though someone had sent it.
* **Also ran** counts only the nodes that ran. A node the run read data from without running it, such as a file upload left disconnected on the canvas, no longer appears there.
* An agent turn that never comes back shows in your run history as a failed run, with an error saying the turn was lost and that sending another message retries it. Those turns used to leave no run behind at all.
* A Slack or WhatsApp agent that stopped reacting to messages works again. NoClick caps how many runs one channel or chat can start in a five minute window, so a reply loop with another bot cannot run away, and that counter could stop resetting. Once it did, every later message in that conversation was accepted and then dropped, with no run in Logs to show for it. The counter now rolls over as intended, and one that is already stuck clears itself on the next message. See [Channel agents](/agents/channel-agents).
* The working indicator in an agent chat stops when the answer does. A finished turn could keep the agent showing as working under a reply that had already arrived in full, and it stayed that way until you reloaded the page.
* Connecting a ChatGPT account to a **Codex** agent now checks that the sign-in carries the identity token Codex needs to reach ChatGPT. OpenAI does not always return one, and without it the connection saved but the agent ran against the OpenAI API instead, so its turns failed with an authorization error. NoClick fetches the missing token before finishing, and asks you to sign in again if it cannot. See [Models and harnesses](/agents/models).
* A ChatGPT account you connected earlier repairs itself. When the identity token on an existing connection is missing or has expired, NoClick refreshes it on the agent's next run, so a Codex agent that stopped working starts again without you reconnecting it.
* Connecting a ChatGPT account to a **Codex** agent stops with an explanation when that account is on the ChatGPT Free plan, which does not include Codex. The sign-in used to complete, and every turn then failed with a bare authorization error from OpenAI. Sign in with a plan that includes Codex (Plus, Pro, Business, Edu, or Enterprise), or attach an OpenAI API key instead. See [Models and harnesses](/agents/models).
* The **Next Run** countdown on a schedule keeps counting down after a run fires. On a schedule that fires faster than the countdown could refresh itself, it could stop at **Running...** and stay there until you reopened the node. See [Schedules](/triggers/schedules).
* Re-scanning the QR code for a WhatsApp number you already connected keeps its triggers running. The scan reconnects the credential you have, but the workflows waiting on incoming messages went quiet afterwards, while the node still reported the trigger as registered. See [Connecting accounts](/credentials/connecting).
* A WhatsApp number you just scanned reads as connected right away. For up to a minute after a scan it could show an amber **Disconnected** label in the credential picker, and a trigger on it refused to register for as long as it did.
* A node's **Credentials** tab no longer opens a QR code when you already have a WhatsApp connection to pick. It offers a **Connect a different WhatsApp number** button instead, so a spare code does not invite a re-scan you did not need. A code still appears on its own when you have no WhatsApp credential yet, or when the one attached to the node has dropped and the scan will reconnect it. See [Credential problems](/troubleshooting/credentials).
## Shopify runs on the GraphQL Admin API
Shopify requires apps published on its App Store to use the GraphQL Admin API, so a store you connect with **OAuth** now runs the node's GraphQL operations and all 7 of its triggers. That covers the blog and article operations, the prebuilt queries for products, orders, customers, inventory, collections, and fulfillment orders, and **Execute Custom Graphql Query** and **Execute Custom Graphql Mutation**, which reach the rest of the Admin API within the permissions you approved.
The node's older operations still run on a store connected with an **Access token**, or with OAuth through [your own Shopify app](/credentials/custom-oauth). Pick one of them on a store connected with NoClick's app and the operation stops and asks you to choose a GraphQL operation or connect your own app. See [Shopify](/integrations/shopify).
The six blog operations moved across as part of this, so **List Blogs**, **List Blog Articles**, **Get Blog Article by Id**, **Create Blog Article**, **Update Blog Article**, and **Delete Blog Article** now run on a store connected with OAuth.
## Shopify operations that could never work were removed
Fourteen operations left the Shopify node: the five **Price Rule** operations, the three **Discount Code** operations, the five **Gift Card** operations, and **Create Draft Order with Graphql**. Each one needed a store permission NoClick does not ask for, so every call returned a permission error instead of doing anything. They no longer appear in the operation picker, and the node now lists 102 operations. A workflow still set to one of them needs a different approach.
## NoClick opens inside your Shopify admin
Opening NoClick from the admin of a store that installed it from the Shopify App Store now shows a NoClick page inside Shopify. It names the store, shows the connection as **Connected** and **Ready for workflows**, and has an **Open NoClick workspace** button for building and running the workflows themselves. See [Shopify](/integrations/shopify).
## Install NoClick from the Shopify App Store
You can now install NoClick on a Shopify store starting from Shopify. Shopify asks you to approve the store permissions first, then you sign in to NoClick, and the store lands in your account as a connected Shopify credential named after the shop. It is ready to attach to any Shopify node, so you do not have to connect the store a second time from the node's config panel. Installing again on the same store updates that connection rather than creating a second one. See [Shopify](/integrations/shopify).
An account that installed NoClick this way stays on the Free plan. Paid plans and recurring credit top-ups are not offered through that channel, so **Settings → Billing** shows a **Free Plan** card explaining this instead of the upgrade options, and the upgrade prompts elsewhere in the app say the same. Everything else works as it does on any Free account, including the 25 monthly credits and the 5 workflow limit. See [Plans](/billing/plans).
## Fixes
* The Shopify node's six GraphQL query operations run again. **Query Products with Graphql**, **Query Orders with Graphql**, **Query Customers with Graphql**, **Query Collections with Graphql**, **Query Inventory with Graphql**, and **Query Fulfillment Orders with Graphql** all failed with an internal error before the request reached Shopify. The four that take a **Search Query** field now send what you typed in it, so `vendor:Nike` or `status:OPEN` filters the results as described. See [Shopify](/integrations/shopify).
* A Shopify connection renews itself. New connections receive a short-lived access token that NoClick refreshes on its own before it expires. If Shopify refuses the refresh, the error asks you to reconnect the store rather than reporting a generic failure. Connections made before this keep working unchanged.
## Shopify blog articles
The Shopify node can now work with your store's blog. **List Blogs** finds the blog to write to, **List Blog Articles** and **Get Blog Article by Id** read what is there, and **Create Blog Article**, **Update Blog Article**, and **Delete Blog Article** change it. An article carries a title, an HTML body, an author, tags, a summary, a featured image with its alt text, and whether it is **Published** or **Hidden**, so an agent can draft a post and leave it hidden for you to review. See [Shopify](/integrations/shopify).
Reading and writing blog content is a new permission, so reconnect your Shopify account before using these operations.
## Connect a Shopify store by its domain
The **Store name** field now takes your storefront's own domain, such as `your-shop.com`, or the admin address you copied from your browser. NoClick reads the store handle behind it, so you no longer have to know the `my-store` part of `my-store.myshopify.com` before you can connect. If no store can be found for what you entered, the error says where the handle appears in your Shopify admin URL.
## Fixes
* Connecting Firecrawl checks your key against Firecrawl before the credential is saved. A key the provider rejects shows Firecrawl's own message instead of a green tick, and a working key lists the monitors on the account as proof of what it reached. See [Firecrawl](/integrations/firecrawl).
* Connecting Shopify with your own Shopify app uses the client ID and secret you entered. They were being dropped, so the connection ran on NoClick's shared app instead. See [Bring your own OAuth app](/credentials/custom-oauth).
* An external MCP server that answers over a held-open stream now reaches your agent. Servers of that shape used to leave the agent with none of their tools for the whole session, and could leave it stuck rather than answering. See [MCP servers](/agents/mcp).
* The Shopify **Access token** connection is marked as being for custom apps created before January 2026. Shopify stopped issuing permanent Admin API tokens to new apps, so a new store connects with OAuth. See [Shopify](/integrations/shopify).
## Narrow a schedule to the hours, days, and months you want
The **Schedule** node's picker now reads as one sentence you can edit in place: "Every 30 minutes · all day · every day · all year". Click **all day** to set a from and to time, click **every day** to pick the weekdays it runs on, and click **all year** to limit it to a range of dates in the month, a range of months, or both. Stacked limits all have to match, so "every 30 minutes, from 9:00 AM to 6:00 PM, on weekdays, from the 1st to the 15th, from March to October" runs exactly that and nothing else. See [Schedules](/triggers/schedules).
The words in the sentence adapt to the frequency you picked. Second, minute, and hour schedules take all three limits, a daily schedule takes the day and date limits, and weekly and monthly schedules take the months. Switching frequency drops the limits the new one cannot carry. Every limit clears back in place from the same popover, and the summary line under the picker restates the whole schedule in plain language.
## Schedules follow your timezone through daylight saving
Run times, time windows, and day boundaries are now evaluated directly in the timezone you pick on the node. A 9:00 AM schedule fires at 9:00 AM local time year round instead of moving by an hour when the clocks change.
## Fixes
* Restoring a workflow from the trash or from a version checkpoint brings back every schedule on a Schedule node, with its timezone and its limits intact. A node holding several schedules used to come back with one.
* Time windows are inclusive at both ends, so a schedule that runs to `6:00 PM` still fires the 6:00 PM tick.
## Run results read as a story
The popup that opens when a run finishes now walks through the run in reading order instead of listing node outputs one at a time. **What came in** shows the event that started the run in its own app's frame, so a WhatsApp message looks like a WhatsApp message and an invoice looks like an invoice. **What the agent did** lists the agent's tool calls with the time each one took and the detail that matters on the row, such as the channel a message went to, and any row opens to show what it was **Called with** and what it **Returned**. **What went out** frames each message the agent sent the way its destination shows it. An agent that worked and chose to send nothing says so in its own words, and a failed run shows the error with a way to fix it instead of a verdict. See [Running and testing](/editor/running-and-testing).
The run switcher at the top of the popup reads **Latest run** and opens your run history: each row has its status, what fired the run, how long it took, how many nodes ran, and the error on runs that failed. It stays reachable while a run's results are still loading and on a workflow that has never run, so history no longer dead-ends.
## Mention a workspace file in an agent chat
Type `@` in an agent chat and a list of the conversation's workspace files appears. Pick one and its full path is inserted into your message, so you can point the agent at a file without typing the path out. Arrow keys move through the list, `Enter` or `Tab` accepts the highlighted file, and `Esc` closes it.
You can also delete files now. Each row in the **Files** menu has a trash button that asks you to confirm on the row itself before the file is removed from the workspace. See [Files and repositories](/agents/files-and-repos).
## Fixes
* The built-in LLM agent has the `upload_file` tool at all times. It used to appear only when a filesystem node or a GitHub repository mount was wired, so an agent could write a file in its sandbox and then have no way to turn it into a shareable URL. See [Files and repositories](/agents/files-and-repos).
* A shell command with very large output no longer breaks a conversation. One oversized result could grow past the model's context limit and get saved into the conversation, after which every later message failed, including a plain "hi". Command output is now trimmed before the agent sees it, keeping the beginning and the end, and conversations already affected recover on their own.
* An agent gets more steps within a single turn, so a long chain of tool calls is no longer cut short with a max turns error.
* An agent keeps its scratch work out of your way. Temporary scripts and intermediate downloads go to a scratch folder, and `/workspace` holds the finished files, so the chat's **Files** menu lists what you asked for rather than the byproducts.
* The **Copy** label in the Setup tab's connect step no longer paints over long terminal commands. The command scrolls underneath the label instead, and its last characters stay readable. See [Create your own MCP server](/mcp/hosted-servers).
## Every agent can run shell commands
Every agent on a workflow now has a Linux sandbox with a shell, whether or not you have wired a filesystem node to it. The sandbox starts the first time the agent actually runs a command, so an agent that only ever answers in chat never starts one. In a chat, the agent's `/workspace` folder is kept per conversation and survives across runs. See [Files and repositories](/agents/files-and-repos).
A test run answers shell commands with made-up output like every other tool call, so a rehearsal never starts a real sandbox. See [Test runs](/agents/test-runs).
The AI builder can look things up for itself while it builds too. Paste an API URL or a sample payload and it can fetch the URL and inspect the real response instead of wiring a node blind. It has no access to your connected accounts while it does this. See [AI builder](/builder/overview).
## Put your own files into an agent's workspace
You can now upload files into a workspace yourself, so the agent finds them there on its next turn. In an agent chat, use the upload button in the **Files** menu header, and the files land in that conversation's workspace. In a filesystem node's config panel, use **Upload** in the file browser, and they land in that node's volume. See [Files and repositories](/agents/files-and-repos).
## Uploads show how far they have got
Every place you upload a file now shows a percentage and a progress bar instead of a spinner: interface blocks, form file fields, the agent chat composer, the filesystem node's file browser, the chat **Files** menu, and the media pickers in a node's config panel. An upload that fails says why on its own row. See [Interface blocks](/apps/blocks).
A single file can be up to 100 MB everywhere, workspace uploads included.
## Fixes
* Files in the **File Upload** block are listed as one contained list, each row with its size and a **Copy link** button that copies the file's permanent URL. The last row's remove button is clickable again, having sat underneath the block's resize handle. See [Interface blocks](/apps/blocks).
* Reconnecting NoClick to ChatGPT works again. ChatGPT changes its callback address between connector versions, and that stopped every re-authorization. See [Connect to an AI assistant](/mcp/setup).
* **Connect Instagram Account** opens the sign-in window again instead of reporting an unknown provider. See [Instagram](/integrations/instagram).
* An HTTP Request node wired into an agent as a tool can send a body again. Its POST, PUT, PATCH, and DELETE tools now take the body, form fields, and content type, so the agent's requests are no longer sent empty. See [Tools from integrations](/agents/tools).
* A filesystem node's **Mount Path** accepts what you type: a missing leading slash is added for you, so `assets` is saved as `/assets`. A path that cannot be fixed is refused when you save it rather than failing the agent's next turn. The node also says which volume its file browser is reading when the node is in per-conversation mode. See [Files and repositories](/agents/files-and-repos).
* **Add Table** in Google Sheets keeps your column headers. Converting a range with typed columns used to rename them to Column 1, Column 2, and so on. See [Google Sheets](/integrations/google-sheets).
* **Fetch Spreadsheet Metadata** in Google Sheets has a new **Include Structure** option that also returns each sheet's tables, charts, slicers, filter views, protected and banded ranges, and conditional formatting rules, plus the spreadsheet's named ranges. It is off by default because the response is much larger. See [Google Sheets](/integrations/google-sheets).
* Meta's ads, business, catalog, and lead ads operations now appear in the operation picker, and a new **Subscribe Page Webhooks** operation subscribes a Page so the lead ads trigger receives events without setting it up by hand. **Create Live Video** and **End Live Video** have been removed from Facebook. See [Meta](/integrations/meta) and [Facebook](/integrations/facebook).
* Instagram's **Get Account Insights** and **Get Media Insights** work on their default metrics again. Instagram retired the metrics they used to ask for, so both failed until you replaced them. See [Instagram](/integrations/instagram).
* Template pages for a specific coding agent, such as a template with Codex, load again instead of returning a not found error.
* Permanently deleting a workflow stops any run still in progress first. If a run does not stop in time the workflow stays in the trash and you are asked to try again, so a deleted workflow cannot keep acting.
* A channel disconnection is emailed once. Two copies could arrive when the provider delivered the same event twice. See [Email notifications](/billing/notifications).
## Connect Instagram without a Facebook Page
Instagram has a second connection type, **Login**, which signs you in with an Instagram professional account. Nothing has to be linked to a Facebook Page, and there are no keys to copy. The **System user token** and **Page access token** options are unchanged.
Hashtag search, product tagging, and business discovery only exist on the Facebook route, so on a **Login** connection those six operations stop with a message telling you to connect through Facebook instead. See [Instagram](/integrations/instagram).
## Fixes
* Template pages, shared workflow links, and workspace invite links load again. They returned the same error over the same period. See [Using templates](/templates/using) and [Sharing a workflow](/collaboration/sharing).
* Interfaces the AI builder writes come out filled in again. Since August 20 the builder had been finishing the shape of a workflow without filling in the nodes it added, which left interface components empty. See [Building with AI](/builder/overview).
* The Test Run screen no longer spins forever when an agent replies with structured output, and it starts the test run you asked for instead of the first one on the workflow. See [Test runs](/agents/test-runs).
* **Get Mentioned Media** and **Get Mentioned Comments** in Instagram work again. They now take the id of the media or comment you were mentioned in, which arrives in Instagram's mentions webhook. Both previously failed with an error from Instagram.
* Keyboard shortcuts work again in the workflow editor. A few seconds after a page load they stopped responding, so `N`, the `W` `I` `L` `S` `V` view switches, arrow key selection, `Enter`, `Esc`, `Shift` + `R` to run the workflow, the config panel's `X` and `Y`, and `Cmd` + `Enter` to run a node all did nothing. `[` in the workflow list was affected too. See [Keyboard shortcuts](/editor/shortcuts).
## Your webhook can return whatever you want
A Webhook trigger set to **When Last Node Finishes** used to hand the caller NoClick's own record of the last node's run, with your data buried inside it. Now the last node decides the response. Return an object with a `status`, an optional `headers` map, and an optional `body`, and the caller gets exactly that: a JSON body is sent as JSON, a string body is served as a web page unless your headers say otherwise, and a status with no body works for redirects.
A Serverless Function node that returns a plain string serves it as an HTML page, so a workflow can answer a request with a real REST payload or a real page. Nodes that return anything else keep the previous response. See [Webhooks](/triggers/webhooks).
## Named inputs work as plain variables in JavaScript
In the Serverless Function node, an input named `data` is now just `data` in your JavaScript, the way it already was in Python. `inputs.data` still works, and your own `const data = ...` still takes precedence. Code the AI builder wrote against the documented input names used to stop with `ReferenceError: 'data' is not defined`. See [Code](/logic/code).
## Other changes
* The AI builder and your agents now know the public URLs your workflow already has. Ask either one for the address of a published app or a hosted MCP server and you get the live link instead of being told the node has no URL. The builder mints the MCP link if the node does not have one yet, and asking an agent only reads what exists. See [Publishing](/apps/publishing) and [Create your own MCP server](/mcp/hosted-servers).
* A tool call to your [hosted MCP server](/mcp/hosted-servers) that fails now comes back to the client as an error, carrying the message the service gave and the HTTP status. Failures used to arrive looking like successful results, so a connected assistant kept guessing instead of reporting the problem.
* The pricing page has an **Estimate your month** section that asks a few questions about how you plan to use NoClick, then shows where the credits go, which plan covers it, and what you would pay a month. See [Plans](/billing/plans).
* The integrations catalog at [noclick.com/integrations](https://noclick.com/integrations) has a new look, and Calendly, Facebook, Threads, Klaviyo, BambooHR, Sentry, Honeycomb, Elasticsearch, PostHog, and Basedash now sit under their real category instead of an unnamed group at the bottom. The Form entry links to its page again.
* The blog at [noclick.com/blog](https://noclick.com/blog) opens on the three newest stories, then lists the full archive, with topic filters and search.
## The home page runs the product
The home page at [noclick.com](https://noclick.com) now shows three parts of NoClick working, in order: an agent handling messages from the apps you already use, the builder turning a prompt into a workflow, and the run record showing every tool call and result afterwards. Each one is the real interface, not a picture of it.
Below them is the list of what NoClick can do and one **Start Free** button.
## See what setup involves before you start
Every page under [noclick.com/agents](https://noclick.com/agents) now has a **Setup** section under the hero that walks the whole path before you commit to it: choose whether the agent runs **On your computer** or **In the cloud**, pick what it can do in each app, then sign in to each app once.
The last step follows your choice. **On your computer** ends on the exact command that connects your coding agent to NoClick, shown with a placeholder link because setup mints the real one. **In the cloud** ends on signing in to the coding agent NoClick runs for you.
## Facebook, Meta, and Threads
* Dropdowns load again. Choosing a Page in Facebook, an ad account in Meta, or one of your posts in Threads failed with "Failed to load options", which left pasting the ID by hand as the only way through. See [Facebook](/integrations/facebook), [Meta](/integrations/meta), and [Threads](/integrations/threads).
* Facebook actions that work on a Page, including posts, comments, reactions, insights, Messenger, and webhook subscriptions, now use that Page's own access token. They previously failed with an error about needing a Page access token even when the account had the right permissions.
* Four Facebook actions that could never run were removed: **Create Album**, **Block User**, **Get Call-To-Actions**, and **Get Page Tabs**. The node keeps 64 actions, including all 11 triggers. A saved workflow still set to one of them will stop with a configuration error.
* When a Meta action fails, the error now carries the reason Meta gives for it, plus the field it objected to and the trace id. An ad that cannot be created because the account has no payment method used to report only "Invalid parameter".
* **Localized Items Batch** runs again in Meta. The item type it requires is now its own **Item Type** field rather than something you had to know to add under **Additional Fields**.
* **List Leadgen Forms** runs again in Meta. It now fetches the Page's own access token first, which is what that call needs.
* The home page opens on a new animated hero. The prompt box is still the first thing on it, so you can describe the work you want done and start building from there. The footer that runs across noclick.com now groups its links by product, the coding agents you can run an agent on, community, and legal.
* Signing in and creating an account have been redesigned, both as full pages and as the panel that opens when you do something that needs an account. The ways in are unchanged: Google, an email and password, or your company's identity provider.
* Agent template pages and the pages at [noclick.com/agents](https://noclick.com/agents) share a new layout. On a template page, the sections you scroll through are the same, and the agents suggested at the bottom now show each workflow's real canvas, the preview the gallery cards use. See [Using templates](/templates/using).
## Find a template by the work it does
The [Agent Templates](https://noclick.com/templates) gallery now opens on a search box and a set of filters. Search by job, outcome, app, or node, then narrow by category (Sales, Support, Marketing, Operations, or Engineering), by the apps and nodes a template uses, or by the trigger that starts it.
Every card previews the template's real canvas, drawn from its saved nodes and connections, so you can see the shape of a workflow before opening it. **Show more templates** loads the catalog in batches, and a search always covers all of it. See [Using templates](/templates/using).
## Zoom connects again, with only the actions that work
Connecting a Zoom account works again. NoClick was sending the list of permissions it wanted to Zoom's consent screen, which Zoom rejects for this app. Permissions now come from the Zoom app itself, so the consent screen loads and the connection completes.
We also removed 416 Zoom actions that could never run: 286 needed Zoom account admin permissions this integration does not hold, and 118 pointed at Zoom endpoints that do not exist. The node keeps 1,224 actions, including all 96 triggers. A saved workflow still set to a removed action now stops with a configuration error naming the problem, where before it failed with an error from Zoom. See [Zoom](/integrations/zoom).
## Fixes and smaller changes
* An agent that emails you sends at most one email per workflow run, and it cannot email you from inside an iteration, where one message per item would fill your inbox. The limit of 10 per day per agent is unchanged. See [Agents](/agents/overview).
* The AI builder no longer reports a build as finished unless it confirms completion itself. A run that stops early or reaches its turn limit now ends as incomplete and keeps the changes it already made, instead of reporting success on a canvas it never touched.
* Running a template's staged conversation from its page works while you are signed out, including for templates whose agent runs on a coding CLI. Those runs use the NoClick default model, since the template ships no key of its own.
* The error page has been redesigned, with clearer actions to open your dashboard, reload, or go back, and a stack trace you can show and hide.
## Test runs: watch your agent work before anything is live
Click **Test** in an agent's chat header to run it against a staged event. Your real agent runs on your real model and prompt, but every tool call it makes is answered with made-up data, so nothing reaches your accounts and nothing is sent. The screen says so up front, and every answered call carries a **simulated** pill.
Gmail, Slack, WhatsApp, and Telegram triggers ship written situations to test against, and every other trigger gets an editable sample. You can rewrite the staged message in place, keep several named runs per agent, and share a finished run as a read only page anyone can open. See [Test runs](/agents/test-runs).
## A Setup tab that knows what is still missing
The canvas has a permanent **Setup** tab (shortcut `S`) that reads your workflow and lists what it still needs: accounts to connect, variables to fill, actions to pick, which agent runs it, and a Test Run at the end. Two nodes for the same service ask for one account, not two, and connecting once covers both.
Setup ends on something you can act on. For a workflow that hosts an MCP server, that is the connect step for your coding agent with a live check that flips to **Connected** the moment your client calls in. For everything else, it is a Test Run. See [Setup](/editor/setup).
## Variables that survive a copy
Declare values once under **Settings > Variables** and reference them from any node config as `{{vars.name}}`. A bound field shows the resolved value and edits write back to the variable, so you change it in one place.
Mark a variable per user and its value is cleared whenever someone copies your workflow, which turns it into a question their Setup asks. That is how a template can ask a new owner for their repository or their channel instead of quietly running against yours. See [Workflow variables](/editor/workflow-variables).
## Templates hand you a guided setup
Template pages are now built around the agent. Each one previews the real canvas, lists the services setup will ask you to connect and the questions it will ask, and shows the staged conversations the template ships so you can see the agent work before you take a copy. Click **Use this agent** and your copy opens straight into full screen setup. The gallery is now **Agent Templates**.
## Fixes and smaller changes
* A dropdown that loads its options from a connected account now fills itself when the account offers exactly one choice, so a workspace with a single project or calendar stops asking. See [Configuring nodes](/editor/configuring-nodes).
* Usage now reports the simulated world behind a test run under its own **Agent Testing** category, kept separate from your agent's own model usage. See [Usage dashboard](/billing/usage-dashboard).
* Starting from an agent page asks where the agent should run and what it can do in each app before you create an account, and the choices carry into your workspace.
## The key an agent runs on matches the model you picked
An agent node can hold connected keys for more than one provider, and switching the **Model** could leave an earlier key attached. That key was used anyway, so the run failed on a rejected or missing API key even when the right key was connected.
NoClick now runs the agent on the credential belonging to the provider of the model you picked. A key for any other provider is ignored, and the run behaves as if nothing were attached: models NoClick serves on its own keys keep running on credits, and models that need your own key stop with a missing credential you can fix in the node's **Credentials** tab. See [Models and harnesses](/agents/models).
## Fixes and smaller changes
* Agents on Gemini 3 models can use tools again. Every turn where the agent called a tool failed with an argument error from Google, which left agents answering channel messages silent. See [Give your agent tools](/agents/tools).
## Questions that take more than one answer
When the AI builder asks you to choose between options and more than one can apply, the choices are now checkboxes under a **Select all that apply** hint instead of letting you pick a single option. Tick as many as you need and the builder receives them all.
Questions where only one answer makes sense still show round options and take one pick, so the form tells you which kind you are answering. See [When the builder asks](/builder/asks).
## Fixes and smaller changes
* Errors now say what actually went wrong. When a page failed, the error screen reported a fault in itself rather than the underlying problem, which also left connecting an MCP client while signed out showing "Unexpected Server Error" instead of taking you to the sign-in page. See [Setting up NoClick MCP](/mcp/setup).
* The indicator that shows the AI is working is now an animated orb, and it reflects the work in progress as the builder reads schemas, adds nodes, and connects them.
## Signing in to Cloudflare works again
Connecting Cloudflare by signing in failed with a message about an invalid scope. NoClick was asking for one permission Cloudflare does not define, and Cloudflare rejects the whole request at the first permission it does not recognize, so the connection never completed. That permission is gone and the sign-in finishes.
Connecting also asks for offline access now, which is what Cloudflare needs before it will issue the token that keeps a connection working past its first hour. Reconnect an existing Cloudflare credential to pick that up. See [Cloudflare](/integrations/cloudflare).
## Cloudflare operations that were calling the wrong address
These operations returned a routing error on every run and now reach the right Cloudflare endpoint:
* The three Zaraz operations: **Get Zaraz Config**, **Update Zaraz Config**, and **Publish Zaraz Config**.
* All eight **Secrets Store** operations, covering both the stores and the secrets inside them.
* The four R2 custom domain operations: **List**, **Create**, **Update**, and **Delete R2 Custom Domain**.
* **Get Vectorize Vectors By IDs** and **Delete Vectorize Vectors By IDs**.
* **Get Fonts Settings** and **Update Fonts Settings**.
* **Get Secondary DNS Config** and **Update Secondary DNS Config**.
* **Dismiss Attack Surface Issue**.
Three more were reaching Cloudflare but sending a request it would not accept:
* **Create Image Direct Upload Url** sends a form upload, the only format Cloudflare Images takes for it.
* **Create Ai Gateway** and **Update Ai Gateway** send every field Cloudflare requires. Update reads the gateway first and changes only the fields you set, because Cloudflare replaces the whole gateway on each write.
Three operations are gone: **Get Account Analytics**, **Get R2 Bucket Usage Summary**, and **Get Web Analytics Summary**. Cloudflare serves that data only through an analytics API that refuses a credential you create by signing in, so they could not return anything. Cloudflare is now at 591 operations.
## Fixes and smaller changes
* Pipedrive connects with an API token. Signing in with a Pipedrive account is not offered while Pipedrive reviews the NoClick app, and workflows already connected that way keep running. See [Pipedrive](/integrations/pipedrive).
* Connecting PostHog by signing in works. PostHog fetches NoClick's app details from a published address without following redirects, and the address NoClick published redirected, so PostHog refused the connection as an invalid client. See [PostHog](/integrations/posthog).
* A Google DV360 step that fails on authentication now says the connected Google account may not be linked to a Display & Video 360 user profile. The message from Google read as a broken credential, when the credential was fine and the account simply had no DV360 access. See [Credential problems](/troubleshooting/credentials).
* A part of the app that fails to load in the background just after a release now recovers with a single reload rather than leaving the page broken. Safari and Firefox describe that failure in wording NoClick did not recognize before. The reload happens at most once every 30 seconds, so a load blocked for some other reason cannot loop.
## Chat with us from inside NoClick
A chat bubble now sits in the bottom right of the app and of noclick.com, so you can ask a question without leaving what you are working on. When you are signed in, the conversation carries your email and plan, so we can see which account we are looking at.
* The bubble stays off the pages your own users see: shared agent links, builder input links, public workflow and share pages, credential request links, and embedded canvas previews.
* The **Get Started** checklist that used to sit in that corner of the canvas is gone, along with the tour that came with it. The walkthroughs for inviting a teammate, publishing, and the agent chat are unchanged.
Asking in [Discord](https://discord.gg/sHC2mrnss8) still works the same way. See [FAQ](/getting-started/faq).
## Fixes and smaller changes
* A node that could not be deleted deletes again. Selecting it and pressing `Backspace`, or using its delete button, did nothing, and undo and redo stopped responding on that canvas until you reloaded the page. A node that reached the canvas without a position broke both, and one is now repaired as it arrives. See [The canvas](/editor/canvas).
* An agent the AI builder runs to test it keeps the tools wired into it. The run dropped the connection between the agent and the services feeding it, so the agent executed with none of the actions you had allowed and reported that it had no tools. See [Agent tools](/agents/tools).
* The check that stops the builder from ending a turn after only describing what it is about to do now applies at any point in a build. It stood down once it had fired earlier in the conversation, and read a message sent mid-build as a question rather than as work still owed. See [How the builder works](/builder/overview).
## Integrations request the permissions their operations need
What NoClick asks for when you connect a service is now derived from what each operation actually calls, checked across every service that connects by sign-in. Operations that could only ever fail, because a permission they needed was never requested, now have it. Each integration's page lists the exact set NoClick requests.
A connection keeps only the permissions you granted when you made it, so reconnect the credential to pick up the new ones. See [Credential problems](/troubleshooting/credentials).
* **Jira** adds one permission that revives 52 operations across fields, screens, workflows, issue types, and other project configuration. See [Jira](/integrations/jira).
* **GitHub** adds the permissions behind its 15 gist operations and its organization reads, 25 operations in total. See [GitHub](/integrations/github-rest).
* **PagerDuty** was requesting four permission names PagerDuty does not define. They are replaced with the real ones, alongside event rules and incident workflow instances, covering 22 operations. See [PagerDuty](/integrations/pagerduty).
* **PostHog** adds session recording writes, group reads, and organization member reads and writes. **Airtable** adds record comments, and **Sentry** adds team administration.
* **Slack** asks for more permissions too, including the one its **On App Mention** trigger needs. Tagging the bot in a channel could not start a run before, because the event permission was never requested. See [Slack](/integrations/slack).
Slack's 104 admin operations now carry an **Enterprise Grid** badge in the operation picker, and 7 Slack Connect operations an **Admin install** badge. Slack refuses to install an app that asks for those permissions on an ordinary workspace, so they run on a **Bot Token** credential from your own Slack app rather than on the sign-in flow. The badge appears when you pick the operation, instead of the operation failing on its first run. See [Configuring nodes](/editor/configuring-nodes).
Two operations that a connection you make yourself can never be granted are gone: LinkedIn's **Get Post** and **List User Posts**, which need a permission LinkedIn grants to approved partners only, and Dropbox's **Permanently Delete File**, which is limited to Dropbox Business apps.
## 145 Cloudflare operations start working
145 Cloudflare operations were selectable in the picker but had nothing behind them, so every run returned "Unknown action". They now call the Cloudflare API: addressing and BYOIP prefixes, Intel and Security Center, Workers AI, Log Explorer and Logpull, Magic Transit, Radar AI, Calls and Realtime, Analytics Engine SQL, URL Scanner, Bot Management, and R2 event notifications. See [Cloudflare](/integrations/cloudflare).
Operations that need a plan you may not have are labeled in the picker: 45 are marked **Enterprise**, 7 **Paid**, and 3 **Beta**.
## Scheduled triggers catch what arrives while you set them up
Triggers that poll on a schedule, like Google Forms **On Form Response**, Google Sheets **On New Row**, and Gmail **Poll for New Emails**, now start watching as soon as their configuration is complete and treat anything that arrives after that as new. Before, the schedule could be created before the trigger had its required fields, which produced a failed run every interval while you were still filling in the panel, and the first poll after that counted everything already there, including the test entry you had just submitted, as history.
* The schedule is created only once the trigger's required fields are filled in, so ticks during setup no longer appear as failed runs in the **Logs** tab.
* A turn where the AI builder or the MCP server fills in the last required field now registers the trigger, so "your trigger is set up" means it is listening.
* Pointing a trigger at a different form, sheet, or mailbox starts a fresh baseline for the new resource instead of firing for everything already in it. Edits that do not change what the trigger watches, including the ones the AI builder makes while finishing a workflow, no longer reset what it has already seen.
* Running the workflow yourself delivers newly polled items to an AI agent wired to the trigger, the same as a scheduled run. A poll that finds nothing new still runs nothing downstream, manual runs included.
* Changing a node away from its trigger operation removes its schedule, and a trigger whose registration never landed is repaired on its own within a day. See [App events](/triggers/app-events).
## The agent interface fits narrow screens
The agent chat in a workflow's **Interface** tab now lays itself out from the width it actually has, rather than the width of the window. When something else takes up the screen, like the builder drawer or a split view, the chat keeps its full width and **Settings** opens as a sheet over it instead of splitting the row.
* **History**, **Files**, **Share**, and **Settings** in the chat header collapse to icons when the header is too narrow for their labels.
* The History, Files, and model pickers open as full-width sheets on phones instead of cramped dropdowns.
* Tablets in portrait use the single-column tab layout, so the navbar and canvas are no longer squeezed into a sliver.
## Fixes and smaller changes
* 125 HubSpot operations returned their result nested one level deeper than every other node. If a workflow of yours reaches through an extra step to read a HubSpot result, remove that step from the reference. The families affected are pipelines, properties, lists, CMS, HubDB, marketing, users, and account info.
* HubSpot **Create Support Ticket** works with just a subject again. It failed unless you also supplied a pipeline and stage, and now defaults to the standard support pipeline.
* Jira gets 14 fixes: six operations called endpoints that do not exist and reported the failure as a permissions problem, three crashed on an empty response, three were missing a required field, and two bulk operations were hitting the create endpoint instead of edit and delete.
* A Jira trigger left with its filter blank now registers. The field says to leave it blank to match every issue, but Jira rejected the empty filter, so the trigger never started listening.
* Confluence **Create Inline Comment** works. It was never able to run, because it did not send the anchor Confluence requires.
* Zoom, PagerDuty, Confluence, QuickBooks, and PostHog steps report an error on the node when a numeric field gets something that is not a number, instead of the step crashing.
* Slack operations that only work with your personal token, including reminders, do not disturb, search, profile, and stars, now use it.
* Microsoft credentials are named for the service you connected, so Word, Excel, OneDrive, and the rest each count separately against your per-service credential limit instead of sharing one.
* The Zoom and Intercom sign-in windows hand the connection back to the tab you started it from, so the credential is created instead of the window sitting there.
* Microsoft Teams **Create Team** returns the new team's ID.
## Honeycomb is now an integration
The Honeycomb node brings your observability data into workflows, with 88 operations across events, datasets and columns, boards, queries, markers, triggers, SLOs and burn alerts, and the v2 management API. Connect with a Honeycomb API key or a management key, and pick the US or EU region. See [Honeycomb](/integrations/honeycomb).
* Two triggers start a workflow when Honeycomb alerts: **On Trigger Fired** and **On Burn Alert**. NoClick registers the webhook recipient for you, and can attach it to an existing trigger or burn alert.
* Dropdowns load your real datasets, boards, columns, markers, SLOs, and recipients, so you pick by name instead of pasting IDs.
## Find an agent's triggers and tools by what they do
The **Add trigger** and **Add tool** palettes on an agent node now search each service's description, its aliases, and the actions it can perform, not just its name. Searching for "schedule", "timer", or "every day" finds the **Schedule** trigger, and "create issue" surfaces Linear, Jira, and GitHub. See [AI agents](/agents/overview).
Services also carry the same name here as on the canvas. **Schedule** used to be listed as "Trigger Cron" and **X** as "Twitter", and about a third of the catalog appeared under a name that did not match the one you see everywhere else. Once you pick a service, its list of triggers is searchable by keyword too.
## Fixes and smaller changes
* The AI builder no longer ends a build after only describing what it is about to do. A first message that produced a plan, no nodes, and no error now continues into the work. The check also applies right after you answer one of the builder's questions, which is where a run was most likely to stop with your answer unused. See [How the builder works](/builder/overview).
* Asking the builder for an agent on a specific model now sets that model. Naming Claude used to give you an agent called "Claude" running the default model instead. Agents are also no longer named after a model vendor, since that name goes stale as soon as you switch models. See [Models and harnesses](/agents/models).
* Credentials you connect while the builder is working stay attached. A connected account could disappear from the workflow seconds later, and the builder would then ask you to connect it again.
* Triggers from PostHog, Sentry, Honeycomb, Calendly, Klaviyo, and BambooHR now reach an agent they are wired into. The run used to fail the moment the trigger fired. See [Channel agents](/agents/channel-agents).
* Asana, Fellow, and Monday.com webhook deliveries now work. Every delivery failed, which for Asana also blocked the handshake that finishes registration.
* Cloudflare alerts now reach your workflow, and every alert type is accepted rather than a few.
* Zendesk's OAuth option is hidden while its Marketplace app is in review. Connect Zendesk with an API token in the meantime. Connections you already made with OAuth keep working. See [Zendesk](/integrations/zendesk).
* The "get your credentials" links for Apollo and MongoDB Atlas Admin point at the right pages again. The Atlas link had started returning a 404.
## A stalled agent turn no longer bills for hours
A CLI coding agent's sandbox is billed for as long as it stays up, so a turn that started and never delivered a reply used to keep costing 0.05 credits per minute until the four-hour sandbox limit. Those turns now end: the sandbox shuts down as soon as the agent's process is gone, and a turn that produces no output at all for 30 minutes is treated as stalled and stopped. See [What costs credits](/billing/costs).
* The chat reports the turn as lost and unlocks, so you can send the message again, instead of showing a reply that is still coming and never arrives. See [Common errors](/troubleshooting/common-errors).
* Files the agent saved to its workspace survive the stop, as they do for any other sandbox shutdown.
* A turn that is genuinely quiet for 30 minutes, for example one long build inside a single command that prints nothing, is stopped as well and has to be sent again.
## Fixes and smaller changes
* An agent's tools now keep working for the whole conversation. In a long session, integration tools, MCP servers, and NoClick's own agent tools used to stop responding after about an hour and report that they needed re-authorization, which left the agent explaining what it could not do rather than doing it. See [Agent tools](/agents/tools).
## Your WhatsApp agent can open photos and files
A photo, voice note, or document sent to a WhatsApp-triggered agent now arrives as a link the agent can download, along with the file type and name. The message caption comes through as the text. Media used to reach the agent as a placeholder with nothing behind it. See [Channel agents](/agents/channel-agents).
* Files up to 25 MB are saved to your workflow's resources at the moment the message arrives, so the link keeps working for the whole run.
* Larger files, and files the provider no longer holds, are reported to the agent as media it could not retrieve, so it can ask the sender to resend instead of guessing.
* Nodes wired downstream of the WhatsApp trigger read the same link from the trigger output.
## Fixes and smaller changes
* Expressions written in another automation tool's syntax are now rejected when the AI builder or an MCP client saves them, with a message showing the NoClick form. Accessors like `$input`, `$node[...]`, and `.item.json` after `$('node')` used to save without complaint and then fail every run. See [Data references](/editor/data-references).
* A WhatsApp connection that has dropped no longer costs the \$0.99 monthly connection fee for the hours it is down. Billing resumes when you re-scan the QR code. See [Connecting accounts](/credentials/connecting).
* After a delay in processing, recurring charges now catch up on at most 48 hours, so a stalled charge cannot land as one large deduction. A charge that fails also no longer holds up the rest.
## Attach images and files to an agent chat
The agent chat in the **Interface** tab now takes attachments. Click the paperclip, paste an image from your clipboard, or drop files onto the composer. Images become thumbnails you can hover to enlarge, other files become chips, and both stay on the message when you reload the page. See [AI agents](/agents/overview).
* Attached images now reach models that can see them. Images used to be dropped on the built-in LLM agent, so a model that could read them never got them. The five CLI coding agents fetch attachments from their sandbox instead.
* Attaching an image to an image or video model uses it as input rather than describing it: image models treat it as a reference image, and Veo and Kling use it as the first frame of the video when you have not set one.
* You can send an attachment with no text at all.
## One Form node instead of three
The form trigger, the interface form, and the settings form are now a single **Form** node. It renders as a live form in the Interface tab, carries the public **Form URL** that starts a run when someone submits it, and stores values that feed downstream nodes on every run. Workflows built with the older nodes keep working and now show up as the unified Form node. See [Forms](/triggers/forms).
* A **Copy link** button on the form block header hands you the public form URL without opening the config panel.
* Values you type into the form block are saved with the workflow and output on every run, so a form doubles as a settings panel. Fields can now carry a **default value** and use the `schedule` and `list` types.
* The form node carries the trigger treatment on the canvas: the amber bolt badge, the next step hint, and the run from here, pin, and disable controls. Multimedia and File Upload blocks get the next step hint too.
## WhatsApp tells you when its connection drops
A WhatsApp QR connection can die on the provider's side, when the phone unlinks the device or WhatsApp logs the session out. Incoming messages stop arriving and nothing used to say so. NoClick now emails you when a connection drops, and every surface that reads your credentials reports it. See [Connecting accounts](/credentials/connecting).
* Re-scanning the QR code reconnects the credential you already have instead of creating a second one, so you are not charged the \$0.99 monthly connection fee twice. Scanning the same phone again also rebinds to your existing credential. Repeated fresh scans were what got some accounts logged out of every linked device.
* A credential whose connection has dropped is labeled **Disconnected** in the credential picker, and the node's **Credentials** tab tells you to re-scan that same credential.
* The new **Channel disconnections** toggle in **Settings → Notifications** controls these emails. See [Email notifications](/billing/notifications).
* Running a WhatsApp **Receive Message** step by hand on a dead connection now fails with re-scan instructions. On a healthy connection it reports that there is no live event instead of returning empty data that looked like a successful delivery.
* Ask an AI agent or the AI builder about a workflow and it now sees which of your connected accounts are disconnected, instead of reporting them all as fine.
## Fixes and smaller changes
* Undo can no longer empty your canvas. Pressing `Cmd` + `Z` enough times used to walk a loaded workflow back to a blank graph and save it that way. Undo now stops at the workflow as it loaded. Undo and redo also stay out of text fields, so `Cmd` + `Z` in the builder chat or a config field undoes your typing again. See [Keyboard shortcuts](/editor/shortcuts).
* New agent nodes now default to the **gpt-5.6-luna** model instead of a mini model. Agents you have already configured are unchanged. See [Models and harnesses](/agents/models).
* OpenCode Zen and OpenCode Go models are now in the model picker and run on the built-in LLM agent, with no sandbox and no sandbox time to pay for. Connect an OpenCode key in the agent's **Credentials** tab.
* The model picker labels models the provider serves at no cost with a **Free** tag, sorts them above paid models, and finds them when you search for "free" even when the model name does not contain the word. The five CLI coding agents carry a **CLI Agent** tag so they are not mistaken for single models.
* Credential forms now use the same **Required** and **Optional** badges as node fields, replacing the red asterisk. Required fields stay amber until you fill them. See [Connecting accounts](/credentials/connecting).
* A HubSpot permission error now tells you which problem you have. When your connection already carries the permission the operation needs, the message says your HubSpot plan does not include the feature rather than asking you to reconnect for a permission you already granted.
* HubSpot workflow listing, website content search, file upload, and data imports work again. **Upload File** now imports from a URL you give it, and **Create Data Import** takes a **File Url** field pointing at the CSV to import.
* HubSpot drops 2 more operations a connected account cannot run: **Create Communication Channel**, which HubSpot only allows to be read, and **Refresh Access Token**, which NoClick already does for you. See [HubSpot](/integrations/hubspot).
* The AI builder no longer tells you a workflow with a live trigger and a missing credential "won't run". It runs on schedule and fails every time until you connect the account, and the builder now says so or offers to disable the trigger.
* A workflow left named "Untitled" because its automatic naming failed now gets named on a later builder turn. A name you typed yourself is never overwritten.
* The AI builder's check of custom interface components no longer reports an error in your code that came from its own checker, which used to send the builder into patch loops that removed working features.
## HubSpot steps report failures instead of hiding them
A HubSpot operation that HubSpot rejected, for a permission you do not have or a record that does not exist, used to come back marked as a success with the real error buried inside the step's output. Those steps now fail, so the run stops at the problem and the error shows on the node. If a HubSpot workflow of yours looked like it was working, check its recent runs.
* HubSpot now asks for the permissions its operations actually need. The core CRM permissions stay required, and everything past them, such as HubDB, files, lists, sequences, marketing campaigns, and custom objects, is requested as optional, so the connection still installs on accounts whose HubSpot plan does not include them. Reconnect your HubSpot credential to grant the new permissions, since an existing connection keeps only what it was granted when you made it. See [HubSpot](/integrations/hubspot).
* HubSpot drops 16 operations that a connected HubSpot account cannot run: the four **Webhook Subscription** operations, three **Calling Extension** and two **Video Extension** operations, the five **Social Post** operations, **List Social Media Channels**, and **Get Search Settings**. The seven HubSpot triggers are unaffected.
* More HubSpot operations now work against a live account. The HubDB row and table operations, blog post and blog author creation, website page creation and updates, and the marketing events, files, audit logs, goals, sequences, business units, and website content listings all return data instead of erroring.
## Slack, HubSpot, and Discord triggers register themselves
A Slack, HubSpot, or Discord trigger now starts listening as soon as it is part of your workflow, including when the AI builder added it. The subscription used to be created only when you opened the node's config panel, so a workflow you never opened looked ready and quietly missed its events. Existing workflows are repaired on their own within a day. The node's **Status** field says what it is listening to. See [App events](/triggers/app-events).
* Ask the AI builder or an agent about one of these triggers and it now tells you registration is automatic and there is no webhook URL to paste, instead of walking you through a manual setup that does not apply.
* A trigger whose **Status** field showed a registration error now clears it once the trigger is listening again, rather than keeping stale text.
* The **Upgrade to Plus** and **Upgrade to Pro** buttons on the pricing page now open the purchase popup on your dashboard. They used to leave you on the dashboard with nothing open. See [Plans](/billing/plans).
* Opening the credits popup yourself, from the command palette or by clicking your credit balance, no longer claims you reached your credit limit. That message now appears only when a run actually ran out of credits.
## Web search without connecting an account
Exa and Perplexity now run their search operations on NoClick's keys when the node has no account connected. Add the node, pick one of the covered operations, and it runs, with the cost coming out of your NoClick credits instead of asking you for an API key first. On Exa that covers **Search**, **Get Contents**, **Answer**, and **Find Similar**. On Perplexity it covers **Create Chat Completion**, **Academic Search (Chat)**, **SEC Filings Search (Chat)**, **Structured JSON Output (Chat)**, and **Search the Web**. Connect your own key whenever you prefer to be billed by the provider directly. See [What costs credits](/billing/costs).
* A node that can run this way now says so in its **Credentials** tab: a green **Usage-based billing available - credentials optional** marker sits above the picker, and with nothing attached the tab reads **Using NoClick's usage-based billing (no credentials needed)**. Connecting your own key stays one click away in the same place. See [Connecting accounts](/credentials/connecting).
* Running out of NoClick credits no longer points you at your model provider. The message now says your NoClick balance is the one that ran out, and its **Add credits** button opens the credits popup right where the error is shown instead of loading a new page. Buttons that link to a provider's billing page are now limited to agent nodes, so another service whose own error text happens to mention credits no longer offers one. See [Common errors](/troubleshooting/common-errors).
* A CLI coding agent's sandbox now stops once your credits are used up, rather than running on past a zero balance. You get the credit balance email naming the workflow it was working on. Starting a turn on a CLI agent now needs at least 1 credit, so a turn that does start has room to finish.
* The AI builder now asks for API keys, not only for account sign-ins. Nodes that authenticate with a key you paste, such as Exa, Firecrawl, Perplexity, Resend, Twilio, Postgres, and the vector databases, were skipped before, so the builder could hand you a workflow that could not run. See [When the builder asks](/builder/asks).
* The AI builder now checks every node's configuration against what a run accepts before it reports the workflow as finished, and repairs what it finds. A field left empty where the node needs a value is corrected during the build instead of failing on your first run.
* The **Credentials** tab no longer turns red on a node wired into an agent as a tool provider when none of the operations you allowed needs a credential.
* A WhatsApp connection that is no longer linked to your phone now shows an amber **Disconnected** label in the credential picker, instead of looking healthy until a run fails. Disconnected credentials sort below the working ones, and NoClick skips them when it picks a credential for a node on its own. A dropped pairing has no reconnect, so delete it and scan a fresh QR code. See [Credential problems](/troubleshooting/credentials).
* Deleting a Klaviyo credential now revokes the access it was granted, so the NoClick app stops showing as installed on your Klaviyo account. Nothing to clean up on Klaviyo's side afterwards. See [Connecting credentials](/credentials/connecting).
* Denying the permissions on Klaviyo's consent screen now returns a message that says what happened and tells you to connect again and click **Allow**, rather than a raw error code.
* The Run popup no longer offers interface blocks that start nothing, such as a standalone app or a display block, as places a run can start from. A block that feeds other nodes, like a form leading into Slack, is still offered. A workflow whose only entry point is an agent goes straight to the opening message screen again. See [Running and testing](/editor/running-and-testing).
## Run checks your steps before it starts
Pressing **Run** now opens a popup that lists every step still missing something: a required field, an action, a connected account, or the operations an agent is allowed to call on a tool. You fill each one in the popup, using the same controls the config panel uses, and connecting an account no longer closes it and costs you your place. Nothing is blocked: the button reads **Run anyway** while anything is unfilled, and turns into **Run** once it is all there. The same check runs before a single node run and before **Run from here**, covering the nodes those runs actually touch.
## Choose where a run starts
When a workflow has more than one entry point, the popup lists them so you can untick the branches you do not want this time. Each row names what it leads to, such as "Then Slack, Gmail" or "Uses Telegram". An agent entry point comes with a box for its opening message, prefilled from the node's own message, and when that agent is the only thing you run, its answers land in the chat, which opens as soon as the run starts.
* When a model provider rejects an agent run, the error now reads as a sentence and offers the fix. A rejected key gets an **Open credentials** button, an account with no API credits gets a link to that provider's billing page, and a plan cap or a provider outage says which one it is. Each message states that the balance in question is the provider's, not your NoClick credits, and the provider's original text is kept below it.
* Changing an agent's model no longer empties the chat. The thread stays put until you send, and if the new model runs on a different harness or a different provider, the next message starts a fresh conversation that carries the earlier turns as context. Picking another model on the same provider continues the same thread and runs the model the picker shows.
* Connecting a provider with your own OAuth app now shows the exact redirect URI to add on the provider's side, ready to copy, both in the node's **Credentials** tab and on a credential request page. Available for Google Business Profile, QuickBooks, and Shopify.
* After you connect Google Business Profile, NoClick checks that your Google Cloud project can reach the Business Profile API and tells you if it cannot, with a link to apply for access or to enable the API in your project. That check used to happen on the first run.
* QuickBooks drops the **Custom Payments REST Request** operation and no longer asks for the payments permission when you connect. Invoices, customers, bills, and the recorded payment and bill payment entities are unchanged. See [QuickBooks](/integrations/quickbooks).
* Pipedrive drops six operations that could never work through a NoClick connection: the four **Channels** operations and the two video call provider links under **System**. See [Pipedrive](/integrations/pipedrive).
* Agent nodes running on a CLI coding agent (Claude Code, Codex, OpenCode, OpenClaw, or Hermes) now tell you when no key or AI subscription is connected. The node is marked incomplete on the canvas and its config panel says credentials are required. OpenCode and Hermes gave no warning at all before, so the first sign of the problem was a failed run.
* The **Setup** tab (shortcut `S`) now appears only for a template that ships a guided setup, and it goes away once you finish that setup. Unfilled required fields no longer open a second, whole-workflow wizard. Fix them in the node's config panel instead, and use the amber pill at the bottom of the canvas to step through every node that still needs something.
* Opening a node that is missing required fields flashes the amber banner at the top of its config panel, so you can see what is left to fill in without looking for it.
* Uninstalling the NoClick app from your Pipedrive account now removes the Pipedrive credential you signed in with, so nothing stays connected on our side. Credentials you created with a Pipedrive API token are not affected.
* When the AI builder pauses to ask you a question, the workflow it has built so far is now saved right away. Your nodes stay on the canvas while you answer, and the builder continues from where it paused instead of rebuilding.
* The first click on **Add trigger** or **Add tool** under an agent's message now opens the picker. It used to take two clicks.
## One block for every kind of file
The Image, Audio, Video, and File blocks are now a single **Multimedia** block. Add it to an interface, point it at a file or wire it to a node's output, and it shows the right viewer for whatever it receives: an image, an audio waveform, a video player, a PDF, or a download card. Interface blocks now live in the same node palette as everything else, so there is no separate palette to switch to.
## More of Salesforce
The Salesforce node grows from 56 operations to 161, and adds 17 triggers that start a workflow when something changes in your org. New areas include files and attachments, single and mass email, Chatter, approvals, reports and dashboards, bulk jobs, and running Apex. See [Salesforce](/integrations/salesforce).
* Agents that chat on WhatsApp, Discord, Microsoft Teams, and other channels now reply to the right person and keep a separate memory per conversation. Replies that used to go nowhere now deliver.
* Custom components the AI builder creates now match your active light or dark theme and read as distinct designs instead of one default look. The builder also checks that a component's package imports resolve before it ships, so generated components are less likely to fail to load.
* The AI builder can now ask you for an agent's environment variables when it decides the agent needs one, and you fill in the values right in the builder chat.
* Each interface node now shows its own name on its Interface tab, so two blocks of the same kind read as distinct named tabs instead of both showing the generic type.
## Google Display & Video 360
Connect Google DV360 to your workflows. The node covers advertisers, campaigns, insertion orders, line items, creatives, targeting, channels, audiences, and Bid Manager reporting, and it includes a trigger that starts a workflow when a report run finishes. Sign in with a Google account that has Display & Video 360 access. See [Google DV360](/integrations/dv360) for the full operation list.
## Environment variables for agents
You can now give an AI agent its own environment variables so it can call APIs that have no dedicated node. In the agent's **Credentials** panel, expand **Advanced** and add a set of names and values under **Environment variables**. Each variable is available in the agent's sandbox shell, so the agent can reference it directly, like `$STRIPE_KEY` in a `curl` command. Saved values are hidden and can be reused across agents. The agent can read a value by running a command, so scope each key to only what it needs. See [Files and repositories](/agents/files-and-repos).
## Create a resource while the builder asks
When the AI builder asks you to pick a resource like a board, a database, a repository, or a warehouse, and there is a way to create a new one, the question now offers a **Create new** shortcut. Click it and the builder makes the resource for you and fills it in, so you do not have to leave the chat to set one up first. This used to work only for Google Sheets and now covers resource pickers across the node catalog.
## Read and send email attachments
Your workflows and agents can now work with email attachments everywhere email happens. When an email arrives, or when you fetch a single message, its attachments come through with their name, type, and size, and the text inside small documents is pulled out for you automatically, so an agent can read an attached invoice or contract with no extra step. You can also attach files to the emails you send from Gmail, Outlook, Resend, Mailgun, the Send Email node, and an agent's reply, using workflow files or URLs, up to 10 MB per file and 20 MB per email.
Scanned PDFs with no text layer can be read with AI text extraction. It is used only when you ask for it, costs 0.02 credits per page, and is capped at 20 pages per document. Reading the text already inside a document stays free.
* Dropping an edge anywhere on a node's body now connects it to the right handle, so you no longer have to land exactly on the small connection dot.
* Moving between pages now shows a thin progress bar at the top edge when a page takes a moment to load.
## Let your agent email you when you are away
Agents can now email you while you are away, and this is on by default. When an agent needs an answer, wants to hand you a link to connect an account, or hits a failure it cannot get past, it emails you at your account email. Reply to the email to answer, and the conversation picks up from there. You can turn this off for any agent in the chat **Settings** under **Capabilities**, or from the opt-out link in any of those emails.
* Reopening a workflow's run results now shows the most recent run instead of an older one that was still in view.
* The list of steps an agent took in a chat reply stays in place after you refresh the page or switch tabs.
* An agent no longer runs when a step feeding into it has failed, so it stops instead of acting on missing or error data.
* Real-time collaborative editing syncs reliably again.
## Browse and download the files your agent saved
Every agent chat now has a **Files** menu that lists the files the agent saved in this conversation. Open a file to preview it in place, whether it is text, markdown, code, or an image, and download any file with one click. Files the agent just wrote can take a few seconds to appear, and a refresh button reloads the list.
## Let an agent suggest an edit to its own workflow
Agents can now propose a change to the workflow they run in. The suggestion arrives in the chat as a **Proposed workflow edit** card. Choose **Send to builder** to open the builder with the change ready to apply, or **Dismiss** to skip it.
* When you delete a credential, NoClick now lists the workflows that use it and warns that deleting it will deactivate their triggers and break those nodes until you connect a new one, so you confirm with full context.
* Connecting an account now shows an error if the sign-in popup closes or fails, instead of leaving you on a spinner.
* Public shared agent chats no longer show a spurious "still working on the previous message" error when you send a quick follow-up, and long conversations keep the message box in view instead of scrolling it away.
* Agent replies read more cleanly: the run-results popup formats markdown instead of showing raw text, and messages that mention dollar amounts no longer render as math.
* You can scroll up in the builder chat while a reply is streaming without being pulled back to the bottom.
## Automate Meta ads and business tools
NoClick now includes Meta with 156 operations across the Marketing and Ads API, Conversions API, Business Management, Product Catalogs, and Lead Ads. It also adds 8 triggers that start a workflow when a new lead comes in, an ad has issues, creative fatigues, or Meta sends ad recommendations. Connect with a Meta access token. See [Meta](/integrations/meta).
## Run email and SMS marketing with Klaviyo
NoClick now includes Klaviyo with 107 operations across profiles, lists, segments, campaigns, flows, events, metrics, templates, catalogs, and coupons. It also adds 33 triggers that start a workflow when a Klaviyo event happens. Connect with a private API key or by signing in with your Klaviyo account. See [Klaviyo](/integrations/klaviyo).
## Manage dashboards and data with Basedash
NoClick now includes Basedash with 74 operations across dashboards, charts, data sources, saved SQL, AI chats, automations, and member administration. Connect with an API key. See [Basedash](/integrations/basedash).
## Wire nodes by dropping them onto the canvas
When you drag a node from the palette, you can now drop it straight onto a target to wire it up. Drop it on an agent to add it as a tool, on the plus on an edge to splice it into that connection, or on a node's trailing plus to chain it after that node. Dropping on empty canvas still places the node on its own.
* **Instagram** adds direct messaging with 7 new operations: send a message, send an attachment, send a reaction, mark a message seen, and list or fetch conversations and messages. It now has 36 operations. See [Instagram](/integrations/instagram).
* **Facebook** adds Reels, live video, and Stories: publish and list Reels, start and end a live video, and publish photo and video Stories. It now has 68 operations. See [Facebook](/integrations/facebook).
* **Notion** now has 32 operations and adds triggers that start a workflow when a page is created or updated, a comment is added, or a database is created. Page, user, and block fields now load their options for you to pick from a list instead of asking you to paste IDs. See [Notion](/integrations/notion).
* **PostHog** adds 9 destination operations for its customer data platform, bringing it to 102 operations. See [PostHog](/integrations/posthog).
* Polling triggers now record a baseline the first time they run, so turning one on no longer floods your workflow with the existing backlog. Only activity after you enable the trigger starts a run.
* You can now remove your own access to a credential someone shared with you. Deleting a credential outright is limited to its owner.
## Automate Facebook Pages and Messenger
NoClick now includes Facebook with 62 operations across Pages, posts, media, comments and reactions, insights, and Messenger. It also adds 11 triggers that start a workflow when something happens on your Page, like a new post or comment, a mention, a rating, or an incoming Messenger message. Connect with a Page or user access token. See [Facebook](/integrations/facebook).
## Start workflows on Outlook email
The Outlook node adds 4 email triggers. Start a workflow when a new email arrives, when an email is updated (read, flagged, or recategorized), when an email is deleted, or on any of these changes. Each trigger watches the mail folder you choose. See [Outlook](/integrations/outlook).
## Track errors with Sentry
NoClick now includes Sentry with 64 operations across organizations, projects, teams, issues, events, releases, alerts, cron monitors, dashboards, and Discover queries. It also adds 2 triggers that start a workflow when a project alert fires or a new error event comes in. Connect with an auth token or by signing in with your Sentry account. See [Sentry](/integrations/sentry).
## Manage HR data with BambooHR
NoClick now includes BambooHR with 51 operations across employees, employee tables, time off, time tracking, reports, files, and metadata. It also adds 5 triggers that start a workflow when a BambooHR event happens. Connect with an API key or by signing in with your BambooHR account. See [BambooHR](/integrations/bamboohr).
## Sign in to Apollo
You can now connect Apollo by signing in with your Apollo account, alongside the existing API key. Apollo fields like owners, stages, sequences, and email accounts now load their options for you to choose from instead of asking you to paste IDs.
## Track product analytics with PostHog
NoClick now includes PostHog with 93 operations across events, feature flags, persons, cohorts, insights, dashboards, surveys, experiments, session recordings, and more. It also adds 15 triggers that start a workflow when a PostHog event happens, like a pageview, a survey response, or a feature flag being called. Connect with a personal API key, a project API key for sending events, or by signing in with your PostHog account. See [PostHog](/integrations/posthog).
## Search that understands separate words
Search boxes across NoClick now match on separate words in any order. Typing "pull opened" finds "On Pull Request Opened" even though the words are not next to each other. This works when you add a trigger or tool to an agent, browse workflows, pick credentials, and in other lists.
## Switch between light and dark mode anywhere
Light and dark mode now work on every page, not just the dashboard. Signed in, pick your theme from your avatar menu in the top navigation. Signed out, use the Sun and Moon toggle in the top bar. Choose light, dark, or system to follow your device setting, and NoClick remembers your choice on your next visit.
## Three new integrations
* **Calendly** adds Calendly with 40 operations across users, event types, scheduled events, invitees, no-shows, and organization management, plus 8 triggers that start a workflow when a Calendly event happens. Connect with your Calendly account or a personal access token. See [Calendly](/integrations/calendly).
* **OneLake** adds OneLake (Microsoft Fabric) with 34 operations across files, tables, shortcuts, settings, and data access security, plus a trigger that runs when a new file appears under a OneLake path. Sign in with a Microsoft account that has access to a Fabric workspace. See [OneLake](/integrations/onelake).
* **Threads** adds Threads by Meta with 29 operations across publishing, replies, insights, profiles, and search, plus 5 triggers that start a workflow when something happens on Threads. Connect with a Threads access token. See [Threads](/integrations/threads).
## Sign in to Cloudflare and react to more events
You can now connect Cloudflare by signing in with your Cloudflare account, alongside the existing API token and API key options. Cloudflare also gains nine new triggers, so a workflow can react to load balancer health changes, waiting room activity, Page Shield alerts, Zero Trust gateway events, email routing issues, Workers deployments, new D1 rows, and KV key updates.
## Get told when a connection is revoked
When a service revokes one of your connected accounts and NoClick can no longer use it, the person who owns that connection now gets an email so they can reconnect it. Before, only the workflow that failed was notified, which often was not the person who could fix it.
## Manage your Outlook calendars
The Outlook node now covers your calendars, not just your inbox. You can create, update, and delete calendars and calendar groups, read a date range with calendar view, and sync changes over time with the calendar view delta. You can also forward calendar events, add and download event attachments, look at your reminder view, and manage who a calendar is shared with through calendar sharing permissions. Free/busy schedules and meeting time suggestions round it out. See [Outlook](/integrations/outlook).
## Start a workflow when your Outlook calendar changes
Outlook adds four triggers so a workflow can run the moment a calendar event changes: on any change, or specifically when an event is created, updated, or deleted. Pick the one you want, connect your Outlook account, and the workflow fires when a matching event happens.
## Three new integrations
* **Zoom** adds Zoom with 1640 operations across 34 categories, including meetings, webinars, users, cloud recordings, Zoom Phone call logs, and Team Chat, plus 96 triggers that start a workflow when a Zoom event fires. Sign in with your Zoom account to connect. See [Zoom](/integrations/zoom).
* **QuickBooks** adds QuickBooks Online with 157 operations across 43 categories, covering invoices, customers, vendors, bills, payments, items, accounts, and reports, plus 119 triggers that start a workflow when an entity changes. Sign in with your QuickBooks account to connect. See [QuickBooks](/integrations/quickbooks).
* **Elasticsearch** adds Elasticsearch with 31 operations across search, documents, and index management, including vector kNN search and a file upload that chunks, embeds, and indexes your content. Connect with an API key. See [Elasticsearch](/integrations/elasticsearch).
## Share an agent with a public chat link
Open an agent's fullscreen chat and click **Share** to mint a public link anyone can chat with, no account needed. The visitor sees the agent, a row of the tools it can use, and a full chat with its own thread. Every run bills to you, the workflow owner. You can pause the link or reset it to a fresh URL, and the old one stops working right away. See [Share an agent](/agents/sharing).
## Connect more credentials from a shared link
A credential link someone sends you now asks for the same details as connecting in the app, like your Shopify store or Atlassian site, so the connection no longer stops partway. You can also connect WhatsApp by scanning a QR code, and sign in to Codex, Claude Code, GitHub Copilot, and xAI straight from the link.
## Workflow previews on your cards
Your workflow list now shows a real diagram of each workflow on its card instead of an abstract thumbnail, so you can recognize a flow at a glance. Disabled and mocked nodes are marked, and each agent shows its harness icon.
## Two new integrations
* **GoHighLevel** adds GoHighLevel (LeadConnector) with 647 operations across 41 categories, including contacts, conversations, opportunities, calendars, campaigns, and invoices, plus 74 triggers that start a workflow when something happens in your account. Connect with a private integration token. See [GoHighLevel](/integrations/gohighlevel).
* **Voyage AI** adds Voyage AI with 14 operations across text and multimodal embeddings, contextualized chunk embeddings, reranking, file management, and batch inference. Connect with an API key. See [Voyage AI](/integrations/voyage).
## More Google Business Profile operations
Google Business Profile grows from 4 to 26 operations. You can now read and update locations and their attributes, create and manage local posts with view and click insights, upload and delete photos, reply to and delete review replies, manage place action links, and read performance metrics and search keywords. Sign in with Google to connect.
## New Microsoft Teams triggers
Microsoft Teams now has dedicated triggers instead of one generic notification. **On Channel Message** fires when someone posts in a channel you pick, **On Chat Message** fires on a new message in a chat, and **On Change Notification (Advanced)** subscribes to any Microsoft Graph resource you enter.
## Six new integrations
* **Snowflake** adds Snowflake with 376 operations across databases, schemas, tables, warehouses, tasks, streams, pipes, functions, and roles, including dynamic and Iceberg tables, plus 1 trigger that runs a SQL query on a schedule and emits only new rows. Connect with a programmatic access token and your account URL. See [Snowflake](/integrations/snowflake).
* **Databricks** adds Databricks with 391 operations across clusters, jobs, SQL warehouses, Unity Catalog, MLflow, notebooks, files, and identity and access, plus 5 triggers that start a workflow on job and pipeline events. Connect with a personal access token and your workspace URL. See [Databricks](/integrations/databricks).
* **Atlas Admin** adds MongoDB Atlas administration with 266 operations across clusters, cloud backups, serverless and flex clusters, search indexes, data federation, and Atlas Streams, plus 6 triggers that start a workflow on Atlas events. Connect with an Atlas service account. See [Atlas Admin](/integrations/atlas-admin).
* **Google BigQuery** adds BigQuery with 39 operations across queries, jobs, datasets, tables, routines, and models, plus 1 trigger that runs a scheduled query and emits only new rows. Sign in with Google, or connect a service account key. See [Google BigQuery](/integrations/bigquery).
* **Microsoft Teams** adds Microsoft Teams with 38 operations across teams, channels, channel messages, chats, members, meetings, and presence, plus 1 trigger that fires on new chat and channel messages. Sign in with your Microsoft work or school account. See [Microsoft Teams](/integrations/microsoft-teams).
* **Google Translate** adds Google Translate with 13 operations across text translation, language detection, romanization, glossaries, and document and batch translation, plus 1 trigger that fires when a batch job finishes. Connect with a Google API key for Basic operations, or sign in with Google for Advanced operations. See [Google Translate](/integrations/google-translate).
## Three new integrations
* **MongoDB** adds MongoDB with 38 operations across documents, aggregation, collections, indexes, Atlas Search, and Atlas Vector Search. One operation uploads a document file, chunks and embeds it, and stores it for retrieval. Connect with your MongoDB Atlas or self-hosted connection string. See [MongoDB](/integrations/mongodb).
* **Google PageSpeed** adds Google PageSpeed Insights with 15 operations that run Lighthouse and Chrome UX Report analyses for a URL and return scores, Core Web Vitals, lab metrics, and improvement opportunities. Connect with a Google API key. See [Google PageSpeed](/integrations/pagespeed).
* **Webflow** adds Webflow with 95 operations across sites, pages, CMS collections and items, forms, assets, ecommerce, and comments, plus 14 triggers that start a workflow on Webflow events. Sign in with your Webflow account. See [Webflow](/integrations/webflow).
## Read and reply to WhatsApp messages
The WhatsApp node can now read your chats when you connect it by QR code. New operations read a chat's message history, list your contacts, mark a chat as read, and edit a message you already sent. You can reply directly to a specific message, and a chat picker lets you choose a conversation by name instead of typing a number. Agents with WhatsApp as a tool can look up chats the same way.
## A smoother agent chat
* When an agent run stops, the error banner now explains what went wrong and offers one-click fixes. **Add credential** opens a popup to connect or select credentials, and **Change model** opens the full model picker with search, provider filters, and favorites.
* Clicking the model name at the top of the chat opens that same model picker, the one the canvas agent node uses.
* A run that fails no longer shows leftover output from an earlier run, and a stuck run now clears with a clear error instead of spinning.
## Six new integrations
* **Milvus** adds the Milvus and Zilliz Cloud vector database with 37 operations across similarity search, collections, partitions, and indexes. One operation uploads a document file, chunks and embeds it, and stores it in a single step. Connect with a token and your cluster URI. See [Milvus](/integrations/milvus).
* **Chroma** adds the Chroma vector database with 36 operations. You can search by plain text that Chroma embeds for you, or upload a document file in one step. Connect with an API token. See [Chroma](/integrations/chroma).
* **Weaviate** adds the Weaviate vector database with 14 operations across search, objects, and collections. Search by text when your collection has a vectorizer, or upload a document file in one step. Connect with an API key and your cluster URL. See [Weaviate](/integrations/weaviate).
* **Tableau** adds Tableau with 349 operations across projects, workbooks, views, data sources, users, and webhooks, plus 20 triggers that start a workflow on Tableau events. Connect with a personal access token. See [Tableau](/integrations/tableau).
* **Google AppSheet** adds AppSheet with 12 operations to read and write app table data, plus 5 triggers that fire when a bot posts a data change. Connect with an application access key. See [Google AppSheet](/integrations/appsheet).
* **LaunchDarkly** adds LaunchDarkly with 208 operations across feature flags, environments, segments, experiments, and members, plus 1 trigger that fires on account activity. Connect with an API access token. See [LaunchDarkly](/integrations/launchdarkly).
## Agents are ready to chat right away
New AI agents now show in the workflow's Interface tab by default, so you can chat with one the moment it is built. After the AI builder finishes a workflow with a chat agent, a one-time walkthrough points you to the Interface tab to try it. You can still turn **Show in Interface** off for background agents, and existing workflows are unchanged.
## Smarter workflow runs and builder questions
* Running a workflow by hand now replays a webhook or inbound-email trigger's last received event, so the rest of the flow has real data to test against instead of failing on a missing trigger payload. A trigger that has never fired runs as before.
* The AI builder asks fewer questions and offers clickable choices instead of blank text boxes, so you can set up a workflow with a few clicks.
* The WhatsApp trigger now ignores status and story updates, channel posts, and the connected number's own outgoing messages. A new option lets you include group chats when you want them.
## Serverless compute now costs credits
The Serverless Function node's Python runtime runs in a cloud sandbox, and that compute now costs credits based on the CPU, memory, and GPU you reserve and how long the run takes. GPU runs are charged too. A run is billed even if it errors or times out, since the compute was still used. JavaScript functions run in-process and stay free. See [What costs credits](/billing/costs).
## New integration
* **Freshsales** adds the Freshworks CRM with 65 operations and 1 trigger across contacts, accounts, deals, tasks, appointments, notes and activities, search, selectors, and marketing lists. A trigger starts a workflow when Freshsales sends a webhook event. Connect with your account domain and an API key. See [Freshsales](/integrations/freshsales).
## Six new integrations
* **PagerDuty** adds incident management, on-call schedules, services, users, and the Events API with 248 operations and 1 trigger that starts a workflow on incident events. Connect with OAuth or a REST API key. See [PagerDuty](/integrations/pagerduty).
* **Qdrant** adds the Qdrant vector database with 18 operations across similarity search, collections, and points. One operation uploads a document file, chunks and embeds it, and stores it in a single step. Connect with an API key. See [Qdrant](/integrations/qdrant).
* **Upstash Vector** adds the Upstash vector database with 11 operations. You can search and insert by plain text that Upstash embeds for you, or upload a document file in one step. Connect with an API key. See [Upstash Vector](/integrations/upstash-vector).
* **Google Meet** adds meeting spaces, conference records, participants, recordings, and transcripts with 19 operations and 1 trigger that fires when a meeting ends. Connect with Google. See [Google Meet](/integrations/google-meet).
* **Expensify** adds expense reports, policies, and exports with 16 operations and 1 trigger that fires on new reports. Connect with your Expensify partner credentials. See [Expensify](/integrations/expensify).
* **PhantomBuster** adds Phantoms, containers, scripts, and lead storage with 63 operations and 1 trigger that fires when a Phantom finishes. Connect with an API key. See [PhantomBuster](/integrations/phantombuster).
## Usage dashboard search and filters
The Recent Usage Events table in **Settings → Usage** now has search and category filters and scrolls through your full history instead of showing only the latest rows. Live events still land in your charts and totals as they happen, and they respect whichever filters you have active. See [Usage dashboard](/billing/usage-dashboard).
## Smarter credential prompts in the builder
When the AI builder creates a workflow with an agent that runs on a CLI coding agent, it now asks you to connect that agent's credential before calling the workflow ready, so you no longer hit a disconnected-credential error on your first run.
## Four new integrations
* **Pinecone** adds the Pinecone vector database with 22 operations across indexes, vectors, documents, bulk imports, and inference. One operation uploads a document file, chunks and embeds it, and upserts it in a single step. Connect with an API key. See [Pinecone](/integrations/pinecone).
* **Zendesk** connects your support desk with 326 operations and 21 triggers across tickets, users, organizations, and the help center. Connect with OAuth, an API token, or Conversations credentials. See [Zendesk](/integrations/zendesk).
* **Pipedrive** adds the Pipedrive CRM with 324 operations and 31 triggers across deals, persons, organizations, activities, leads, and products. Connect with OAuth or an API token. See [Pipedrive](/integrations/pipedrive).
* **Confluence** adds Atlassian Confluence with 46 operations and 1 trigger across pages, blog posts, spaces, comments, and attachments. Connect with OAuth. See [Confluence](/integrations/confluence).
## Faster CLI coding agents
The CLI coding agents (Claude Code, Codex, OpenCode, OpenClaw, and Hermes) now keep a warm sandbox between turns instead of starting fresh each time, so replies come back faster and one agent can hold several conversations at once. A small indicator on the agent node shows how many sandboxes it is currently holding, with a live note while a turn is running. See [Models and harnesses](/agents/models).
## Sandbox time now costs credits
CLI coding agents run in a cloud sandbox that NoClick provides, and that sandbox time is now charged at 0.05 credits per minute of uptime, billed per turn. This applies even when the agent runs on your own API key or AI subscription, since the sandbox is NoClick's compute. The built-in LLM agent runs in-process and has no sandbox charge. See [What costs credits](/billing/costs).
## Four new integrations
* **Attio** adds the Attio CRM with 66 operations and 6 triggers across records, objects, attributes, lists, notes, tasks, comments, and files. Connect with OAuth or an API key. See [Attio](/integrations/attio).
* **Firecrawl** brings web scraping, crawling, mapping, search, and structured extraction with 53 operations and 5 triggers for async job and monitor events. Connect with an API key. See [Firecrawl](/integrations/firecrawl).
* **Intercom** connects your support workspace with 53 operations and 4 triggers across contacts, conversations, tickets, companies, and messaging. Connect with OAuth or an access token. See [Intercom](/integrations/intercom).
* **Trello** adds boards, lists, cards, checklists, members, and labels with 42 operations and 2 triggers. Connect with your Trello API key and token. See [Trello](/integrations/trello).
## Right-click menus on the canvas
Right-click anywhere on the workflow canvas to open a context menu. On empty canvas you get **Add node**, **Add sticky note**, **Paste**, **Select all**, **Auto-layout**, and **Fit view**. Right-click a node for **Open**, **Run from this node**, **Duplicate**, **Copy**, **Cut**, **Disable** or **Enable**, **Rename**, and **Delete**. Right-click a multi-node selection to apply **Duplicate**, **Copy**, **Cut**, **Disable**/**Enable**, or **Delete** to every selected node at once. See [The workflow canvas](/editor/canvas).
## Limit an agent tool to specific resources
When you allowlist an operation on a tool-provider node, you can now pin it to specific resource IDs. Expand **Limit to specific...** under an operation and pick which documents, sheets, or other records the agent may act on. When a create operation makes a new resource, its ID is added to the matching scope for you, so the agent can immediately read back what it just created. See [Tools from integrations](/agents/tools).
## Six new integrations
* **ClickHouse** joins the node library with 31 operations and a trigger for managing ClickHouse Cloud: organizations, services, query endpoints, backups, ClickPipes, API keys, members, and usage metrics. Connect with an API key. See [ClickHouse](/integrations/clickhouse).
* **Extend** adds document AI automation with 96 operations and a run-completed trigger: upload files, then parse, extract, classify, split, and edit them, and manage extractors and workflow runs. Connect with an API key. See [Extend](/integrations/extend).
* **Fathom** brings the AI meeting notetaker to your workflows with 14 operations and a new-meeting trigger: list meetings, pull recording summaries and transcripts, list teams, and manage webhooks. Connect with an API key. See [Fathom](/integrations/fathom).
* **Fellow** adds the AI meeting assistant with 21 operations and 5 triggers for recordings, notes, and action items, so a workflow can react to a new AI note or an assigned action item. Connect with an API key. See [Fellow](/integrations/fellow).
* **Hex** connects the Hex data and BI platform with 29 operations and a trigger: run projects, check run status, manage sharing and embedding, and administer users, groups, and collections. Connect with an API key. See [Hex](/integrations/hex).
* **Sigma Computing** adds 40 operations and a trigger for workbooks, members, teams, connections, and workspaces, including exporting and materializing workbooks. See [Sigma Computing](/integrations/sigma).
## Connect beehiiv
The **beehiiv** node joins the node library, so you can manage your newsletter from a workflow: read and update subscriptions, create and schedule posts, pull post and poll stats, manage segments and custom fields, and enroll subscribers in automations. A publication picker on every operation lets you choose which publication to work with.
beehiiv also adds focused triggers that start a workflow when something happens in your publication, including a new subscriber, a confirmed subscriber, a sent or scheduled post, a survey response, and subscription changes. Each trigger listens only for its own event, so a workflow runs only when the thing you care about happens. Connect beehiiv with an API key. See [beehiiv](/integrations/beehiiv).
## More ways to add agent tools
The **Add tool** palette on an agent node now lists the **Alarm**, **Filesystem**, and **Tool** nodes alongside integrations and **MCP server**. Pick one and it is created, wired into the agent, and opened to its own config step, so you no longer have to drop the node on the canvas and draw the edge by hand. See [Tools from integrations](/agents/tools), [Agent scheduling](/agents/scheduling), and [Files and repositories](/agents/files-and-repos).
## Publish files from any agent sandbox
An agent that runs in a sandbox now always has an `upload_file` tool that publishes a file from the sandbox to a public URL, so it can share a generated image, attach a report to an email, or pass a file to a downstream node. The five CLI harnesses always run in a sandbox, and the built-in agent runs in one whenever a filesystem node or a repository mount is wired, so you no longer need a filesystem node just to publish a file.
## Transform values inline with JavaScript expressions
Any config field can now run a JavaScript expression inside `{{ }}`, so you can reshape an upstream value, split a string, map a list, do arithmetic, or pick between options right in the field instead of adding a separate code node for one line of work.
Anything inside `{{ }}` that uses a `$`-accessor runs as JavaScript at execution time: use `$('node-id')` or `$('Node Label')` for another node's output, `$json` for the single upstream output, and `$vars` for workflow variables. Helpers `$if(condition, a, b)` and `$ifEmpty(value, fallback)` are also available. For example, `{{ $('form').emails.split(",")[0].trim() }}` takes the first email from a comma-separated list. While a field holds an expression, a live preview under it shows the computed result, and chips insert the available accessors. Plain `{{node-id.field}}` references keep working as before. See [Data references](/editor/data-references).
## Three new integrations
Three services join the node library:
* **fal** for running model-inference endpoints across image, video, audio, and text generation, plus platform and queue-lifecycle operations, with 14 operations and a trigger that fires when a queued job completes. Connect with an API key. See [fal](/integrations/fal).
* **Brandfetch** for brand intelligence: brand lookups, AI-ready brand context, search, transaction identification, and logo CDN URLs, with 15 operations and a trigger for brand-change events. Connect with an API key. See [Brandfetch](/integrations/brandfetch).
* **Findymail** for B2B email and phone enrichment, lead discovery, intent signals, and contact-list management, with 37 operations and a trigger. Connect with an API key. See [Findymail](/integrations/findymail).
## Create a workflow from list view
The **New Workflow** button is back in the workflow browser's header bar, next to **New Folder**, so you can start a new workflow from both grid and list views.
## Seven new integrations
Seven services join the node library:
* **Google Cloud Storage** for object storage, with 89 operations across buckets, objects, IAM, ACLs, folders, HMAC keys, and Pub/Sub notifications, plus a trigger that polls for new objects. Connect with your Google account or a service account key. See [Google Cloud Storage](/integrations/google-cloud-storage).
* **Monday.com** for work management, with 68 operations across boards, items, columns, groups, docs, files, and tags, plus a board-event trigger. Connect with your Monday.com account or an API token. See [Monday.com](/integrations/monday).
* **Datadog** for observability, with 53 operations across monitors, events, metrics, logs, dashboards, incidents, downtimes, SLOs, and synthetics, plus a trigger for new events. Connect with your Datadog API and application keys. See [Datadog](/integrations/datadog).
* **Loops** for email marketing, with 46 operations across contacts, contact properties, events, transactional emails, campaigns, and mailing lists, plus a trigger. Connect with an API key. See [Loops](/integrations/loops).
* **Parallel** for AI web search and research, with 31 operations across search, content extraction, tasks, task groups, FindAll, and monitors, plus a completion trigger. Connect with an API key or your Parallel account. See [Parallel](/integrations/parallel).
* **Exa** for AI web search, with 25 operations across search, content retrieval, answers, agent runs, websets, and monitors, plus a trigger. Connect with an API key. See [Exa](/integrations/exa).
* **Reducto** for document intelligence, with 18 operations to parse, extract, split, classify, edit, and pipeline documents, plus a job-completion trigger. Connect with an API key. See [Reducto](/integrations/reducto).
## Route a workflow's failures to another workflow
A new **On error, run another workflow** setting lets one workflow hand its failures to another. Open the canvas menu, choose **Settings**, and pick a workflow that has an On Error node. When the first workflow fails, the second one's On Error node fires with the error payload, so you can centralize alerts and recovery in one place. See [Error handling](/logic/error-handling).
## Insert a node in the middle of an edge
Hover any dataflow edge to find a new insert button at its midpoint. Click it, pick a node, and it drops in between, rewiring the connection from source to new node to target in one step.
* The Feedback button in the top navigation lets you send feedback, report a bug, or share an idea without leaving your workflow.
* Trashed workflows no longer count toward your workflow limit, so deleting a workflow frees up a slot right away.
* Auto-layout now frames the whole workflow after tidying it up, and tells you when everything is already laid out.
## Three new integrations
Three services join the node library:
* **Asana** for project management, with 122 operations across tasks, projects, sections, portfolios, goals, custom fields, comments, attachments, and more, plus a trigger that starts a workflow when an Asana resource changes. Connect with your Asana account or a personal access token. See [Asana](/integrations/asana).
* **Devin** for AI software engineering, with 19 operations across sessions, knowledge, playbooks, secrets, and attachments, plus a trigger that fires when a session finishes. Use it to start Devin sessions, send follow-up messages, and manage knowledge and playbooks. Connect with an API key. See [Devin](/integrations/devin).
* **Firestore** for Google Cloud document storage, with 56 operations across documents, queries, transactions, batch writes, databases, and indexes, plus a trigger that fires when documents are created or updated. Connect with your Google account, a service account key, or a Firebase ID token. See [Firestore](/integrations/firestore).
## Six new integrations
Six services join the node library:
* **Stripe** for payments, with 491 operations across customers, charges, checkout, invoices, subscriptions, payouts, and more, plus 56 triggers that start a workflow on Stripe events. Connect with your Stripe account or an API key. See [Stripe](/integrations/stripe).
* **ClickUp** for project management, with 160 operations across tasks, lists, docs, goals, time tracking, and custom fields, plus a webhook trigger. Connect with your ClickUp account or a personal token. See [ClickUp](/integrations/clickup).
* **GitLab** for source control, with 83 operations across projects, issues, merge requests, CI/CD, releases, and repositories, plus two triggers. Connect with your GitLab account or an access token. See [GitLab](/integrations/gitlab).
* **Mailgun** for email, with 37 operations across messages, mailing lists, templates, routes, suppressions, and validation, plus nine triggers for delivery events. Connect with an API key. See [Mailgun](/integrations/mailgun).
* **Box** for file storage, with 29 operations across files, folders, comments, tasks, sharing, and search, plus a webhook trigger. Connect with your Box account or a developer token. See [Box](/integrations/box).
* **Perplexity** for AI search, with 15 operations across chat, search, models, and embeddings. Connect with an API key. See [Perplexity](/integrations/perplexity).
## Pin and disable nodes from the canvas
Hover any automation node to find two new buttons on its left edge. **Pin** saves the node's last output as mock data, so steps that follow keep running without re-executing it, and **Disable** skips the node at run time. Both stay highlighted while active, so you can see and undo them without hovering.
## See what your agents did in the Feed
The Feed has a new **Agents** tab that lists every tool call your agents make, grouped by run, with the agent's model, each call's inputs and result, and the final response. Click a credential to open it in the editor.
* **Loop over array references in one click.** The **Loop over each item** button now appears for plain references like `{{node.items}}` and indexed references, not just list-mapping syntax. Click it to add an Iteration node wired to loop over the array. See [Loops](/logic/loops).
* **Split Out arrives ready to loop.** Dropping a Split Out node now also adds a paired Iteration node wired to its output, so a list fans out into per-item steps without extra setup. See [Filter, split, and merge](/logic/filter-merge).
* **Clearer TikTok publishing errors.** Failed TikTok posts now report TikTok's specific error code and log id, so you can tell why a post was rejected.
## Map, geocode, and check the weather with Google Maps
The new **Google Maps** node connects to Google Maps Platform with an API key. It covers 33 operations across geocoding and reverse geocoding, places search and details, routing and distance, address validation, time zones and elevation, and roads, along with air quality, pollen, weather, and solar data. See [Google Maps](/integrations/google-maps).
## Schedule meetings with Cal.com
The new **Cal.com** node manages bookings, event types, availability, and schedules. Its **On Booking Event** trigger can start a workflow when a booking is created, rescheduled, cancelled, paid, and more, and you choose which events fire it. Connect with your Cal.com account or an API key. See [Cal.com](/integrations/cal-com).
* When you click into a node's config field, **Show previous nodes** and **Show output** buttons now appear right away. Open either panel to drag in a value from an earlier step or check this node's own output, without having to type first.
## Use files anywhere, or just paste a URL
Nodes that take an image, video, audio file, or document now have an **Upload** button next to the field. Upload a file from your computer, paste a URL, or drag a reference to a file from an earlier step. Uploaded files are stored and turned into a link, so they work the same way everywhere. This covers nodes like YouTube, X, Telegram, WhatsApp, Discord, Instagram, Shopify, Notion, and more.
Files that nodes produce are now usable links too. When a node downloads or generates a file, like audio from ElevenLabs, a document from Word or Google Drive, or an attachment from Jira, its output is a link you can drop straight into an upload field, instead of a long block of encoded text.
* **New Split Out node.** Turn a list into one item per element, so you can fan a list out and handle each entry on its own. Point it at an array or at the array field on an object, choose which other fields to carry onto each item, and pair it with a loop to process them. See [Filter, split, and merge](/logic/filter-merge).
* **Post to TikTok directly.** New **Direct Post Video** and **Direct Post Photo** operations publish straight to a creator's profile, and **Query Creator Info** checks the available privacy and interaction options before you post. See [TikTok](/integrations/tiktok).
* Discord operations across channels, roles and members, threads, scheduled events, automod, stickers, invites, and webhooks now all run. See [Discord](/integrations/discord).
* Media actions that used to read "from Url" are renamed, since the fields now accept files and references as well as URLs. On YouTube, for example, the action is now **Upload Video**.
## Call any API with the rebuilt HTTP Request node
The HTTP Request node now handles almost any API call without leaving NoClick. Add headers and query parameters as key/value rows, choose a body type (None, JSON, Form URL-Encoded, or Raw) on any method so even GET and DELETE can send a body, and set a timeout, retries with backoff, and redirect and SSL options. Authentication adds an API key in a header or the query string, a custom header, and OAuth2 client credentials alongside Bearer and Basic auth.
In a hurry, click **Import cURL** at the top of the node and paste a `curl` command from any API's docs, or paste the command straight onto the canvas to get a pre-configured node. By default a `4xx` or `5xx` response fails the node loudly so the run stops with a clear error. Turn on **Continue on HTTP Error** to branch on the error instead.
## Watch the builder work
Building a workflow in chat now shows what is happening as it happens. A live counter shows tokens as they stream, and a node ledger lists each node as it is added and configured, with the field it is setting. Click a node in the ledger to jump to it on the canvas. If a build fails, its message stays put with a **Retry** button instead of vanishing.
* Image and video models in an AI agent's chat now show their results. A generated image or video appears in the chat and in the run results popup, and is still there after you reload the page.
* Pressing **Run** on a workflow that only starts on its own now explains each trigger more clearly. A form trigger shows an **Open** link to its hosted form page, and a scheduled trigger spells out when it fires in plain language, like "Daily at 9:00 AM" or "Every 5 minutes", along with its time zone.
* The webhook URL now sits at the top of the webhook trigger's settings, and you can click anywhere on a read-only URL field to copy it instead of aiming for the small copy button. This also covers the form trigger's form URL.
* Searching for an action now understands common phrasings. Type `get rows` to find **Read Sheet Data**, `merge pr` for **Merge Pull Request**, or `post to channel` for **Send Message to Channel**, and the right action surfaces even when your words are not in its name.
* In the **Owned by anyone** view of your workflows, items shared with you that you do not own are now read-only. Their **Share** button and dragging are turned off, and **Settings** opens a read-only panel with a **Remove** option to drop your access, instead of a form that failed on save.
* Dropdowns that load options from a connected account, like picking a Google Sheet or a Notion database, again show an **Open Credentials** button when no account is connected, instead of only "No options available".
* The node configuration panel now has just **Configuration** and **Settings**. The separate per-node **Edit** tab has been removed.
* Inside an AI agent, the model picker lists the CLI agent providers (Codex, Claude Code, OpenCode, OpenClaw, Hermes) at the top of the provider rail.
## Every run, one click away
The **Runs** pill in the top left of the canvas is now always there, even before this session's first run. It shows the latest run's status and when it happened, and clicking it opens the results popup for that run. Inside the popup, a run switcher lets you load any earlier run and see what each node produced, scrolling back through your run history without leaving the canvas.
The results popup now also opens on its own after more kinds of runs. A **Run from here** run that starts partway through the flow, and runs started by a trigger like a schedule or a webhook, both open the popup the same way a full run does.
* Typing a node's exact name in the node palette now ranks that node first, instead of burying it under nodes that only mention the term in one of their fields.
* **AI Fill** now tells you when it had nothing to apply: whether it could not infer any values from your goal, every field was already set, or it needs output from an upstream node first.
* In live collaboration, changing an AI agent's model and resizing custom interface components and sticky notes now sync to everyone in the workflow right away, instead of only after a reload.
## More precise Google Drive and Calendar triggers
Google Drive and Google Calendar triggers now let you react to a specific kind of change instead of every change. Pick the exact event you care about and the workflow runs only for that, so downstream nodes and AI agents stay idle the rest of the time.
* **Google Drive** adds **On File Changed**, **On File Removed**, **On Folder Changed**, and **On Folder Removed**, alongside the existing **On Drive Change**. Each one can be scoped to a single folder, so the trigger only fires for changes inside it.
* **Google Calendar** adds **On Event Created**, **On Event Updated**, **On Event Cancelled**, and **On Event Tentative**, alongside the existing **On Calendar Event**.
## Trigger workflows from Discord
Connect Discord by signing in and installing the NoClick bot into your server, with no keys to copy. You can then start a workflow when an app event happens: your bot is added to or removed from a server, a premium entitlement is created, updated, or deleted, or a slash command is run. Wire the trigger into an AI agent, or add the Discord node as an agent tool provider so the agent can run Discord actions for you.
* When an integration node is wired into an agent as a tool provider and it exposes a long list of actions, the operation picker now has a **Show selected** toggle that filters the list down to just the actions you have allowlisted. It works alongside search, and the checkboxes stay live so you can deselect right there.
* The setup view now shows the tool picker for nodes wired as agent tool providers, so you choose which actions to expose instead of seeing the single-action form.
## Run results popup
When a manual run finishes, a results popup shows what each node produced. A left rail lists the nodes that ran, with a status icon for each, and the main panel shows the selected node's output. For an AI agent, you see its final response along with the tool calls it made. Each node has an **Open config** shortcut to jump straight to its settings.
Reopen the last run's results any time from the **Run results** pill on the top left of the canvas. To stop the popup from opening on its own, click **Don't show again**, then turn it back on under **Settings** in the new **Popups** section. These popups do not appear on mobile.
## Pressing Run on an automatic workflow
If a workflow only starts on its own, like on an incoming email, a new row, a schedule, or a webhook, pressing **Run** now explains that instead of doing a surprise one-off run. The popup lists what each trigger watches and the address or URL that fires it. From there you can **Add a Run step** to add a manual entry point, **Open config** for any trigger, or **Run anyway** for a single manual run.
* Scheduled polling triggers (Gmail, Google Sheets, Notion, Google Forms) no longer run the rest of the workflow when a check finds no new data. A poll that turns up nothing is marked skipped, so downstream nodes, including AI agents, only run when there is something new.
## Connect Google Search Console
A new Google Search Console node brings your search performance into workflows. Query clicks, impressions, click-through rate, and average position, manage your sites and sitemaps, and inspect how Google sees any URL. Sign in with your Google account, with no API keys to copy. You can also wire the node into an AI agent so it runs these operations for you.
## More precise triggers
GitHub and Linear triggers now fire on the exact event you choose instead of a broad category. Start a run when a pull request is merged rather than only closed, when an issue is opened, labeled, or assigned, when a release is published, and more. Linear now splits into created, updated, and deleted events for issues, comments, and projects. If you used a GitHub or Linear trigger before, reopen the node and pick the specific event you want.
* Discord can now start workflows from Application Webhook events, including app authorization, entitlement changes, and lobby or game messages.
* The Free plan now includes 5 workflows.
## Quicker workflow configuration
Finding the right action is now fuzzy and ranked. Search by any word order, by an abbreviation, or by words from the operation's description, and the closest match jumps to the top, highlighted so you can press Enter to pick it. The same ranked search now powers the agent tool allowlist and every searchable dropdown.
Multi-value list fields, like a message's To, Cc, and Bcc or a list of feed URLs, now save as you type. A fresh empty box appears below the moment you fill the last one, so you no longer press Enter to add each value.
* The AI builder's questions now skip one at a time with a **Skip** button, and a **Back** button lets you revisit an earlier question. Any answers you already filled in carry over when you reply in chat, so you never repeat yourself.
* The onboarding questionnaire and the canvas tabs adapt to smaller screens, staying readable on phones and in narrow windows.
## Email alerts and a weekly digest
NoClick now emails you when a workflow that runs on its own fails, when your credits run low, and when a run is blocked because you are out of credits. A Monday digest sums up your runs, failures, and credits used for the week. Manage each type in Settings, under Notifications, where every alert also carries a one-click unsubscribe link.
* Emails sent by the Gmail and Outlook nodes now keep the line breaks you type in the body.
* On the Free plan, emails sent through the Gmail and Outlook nodes include a small "Sent from NoClick" footer. Paid plans send without it.
* Dropdown fields that load their options, like picking a sheet or a Linear team, now work as full comboboxes: type to filter, move through results with the arrow keys, and press Enter to select.
## Host a workflow as an MCP server
A new hosting mode on the MCP node turns your wired integrations into a shareable MCP endpoint, so external clients like Claude and ChatGPT can call your workflow's operations live.
## Agents reply to email
Wire the inbound email trigger to an agent and the agent can reply in the same thread, securely scoped to that conversation. A new send email node delivers notifications to your inbox, formatted from markdown, with a one-click disable link.
* Scheduled nodes show their schedule right on the node card, and the AI builder can set schedules for you.
* Agents retry automatically when a model hiccup produces an empty turn.
* The AI builder no longer asks for credentials that nodes don't need.
* The AI builder sets a default model for new agents instead of asking you to choose one.
* Connect triggers and tools to an agent straight from the chat sidebar and the agent's config panel.
* An organization subscription now grants the org owner that plan's monthly credit base.
## Use your integrations as agent tools
Wire any integration node into an AI agent and the agent can call its operations directly, like creating a Linear issue or sending a Slack message. You choose exactly which operations the agent is allowed to use, and every tool call shows up live in chat and in run replays.
## Triggers fire straight into agents
Wire a trigger (Telegram, Slack, email, or an alarm) into an agent and the incoming event becomes the agent's message, with conversations threaded per channel. Pair it with send operations to build a reply bot entirely on the canvas.
* Mount GitHub repositories into a coding agent's sandbox, with git and the `gh` CLI already authenticated.
* The navbar was redesigned with a credits pill that shows your exact remaining balance and a usage popover with precise billing windows.
* Agent model selection moved into a centered picker modal.
* 95 config fields across nodes now render as searchable dropdowns instead of free text.
## An email address for every workflow
The new inbound email trigger gives a workflow its own @noclick.app address. Send it an email and the workflow runs with the message as its input.
* Editing workflows on your phone got a big UX pass, with consistent node styling across desktop and mobile.
* Discord and Linear config pickers load their options dynamically.
## Loops you can see
Lists no longer loop silently: one click converts a list reference into a visible iteration node on the canvas.
* Searching the node palette can pre-select the matching operation, not just the node.
* Paste React, JSX, or HTML onto the canvas to create a ready-made interface component.
* Slack reads from scoped channels now run as you instead of the bot.
* The input panel gained a curated Fields tab: the most useful drag-and-drop references per node, with readable labels and live values.
* Republishing an interface app no longer breaks it with a stale API key.
## Invite links for collaboration
Share a workflow with an invite link. Collaborators edit with you in real time and can run nodes using your credentials, without those credentials ever being copied to their account. Shared workflows now appear in your home grid with an ownership filter.
## Replay any past run
Click any run in the Logs tab to replay the exact graph state, per-node outputs, statuses, and errors. Logs are paginated with server-side search and filters.
* The guided setup wizard was redesigned with a cleaner split-rail layout for configuring incomplete workflows.
* A new Submit External Form node fills and submits forms on external websites from a workflow.
* Webhook triggers support Basic, header, and JWT authentication on inbound requests.
* OAuth connections refresh more reliably across all integrations, fixing "connection randomly expired" failures.
* Cmd+C and Cmd+V copy-paste works again in the workflow editor.
* A shortcuts menu in the navbar lists every keyboard shortcut.
## Clearer billing
Credits now show exact monthly windows and per-cycle topup balances, and the credits chip displays your precise remaining balance. Cancelling keeps your plan active through the period you already paid for.
* Google connections are rejected upfront if the required permissions weren't actually granted.
* Orphaned webhooks clean themselves up, and schedules that keep failing disable themselves instead of burning runs.
## Command palette
Press `⌘K` anywhere to jump to any workflow, action, or setting.
* Create credentials directly from Settings or the command palette, without opening a node.
* Config dropdowns across 27 nodes now search server-side for channels, boards, sheets, and more.
* Slack messages can send as you or as the bot, chosen per operation.
* Nodes show a run-status glow on the canvas, and the last run state survives reloads.
* Ctrl+drag pans the canvas on Windows and Linux.
## A list view for your workflows
The workflow browser gained a list view with global search, integration logos, and keyboard navigation.
## Sign in with your AI subscription
CLI coding agents can sign in with your existing AI provider subscription instead of an API key.
* The guided setup wizard got a redesign with a step bar and themed field inputs.
* Sharper rendering on small and low-resolution screens.
* Jira operations support pagination and filtering.
## Chat with your agents in the Interface
A fullscreen chat block for agent nodes, with per-thread conversations and history.
* Onboarding routes you to the right starting tab based on what you want to build, and a support call pill lives in the navbar.
* The canvas stops auto-zooming to failed nodes when a run errors.
* Each interface component is its own publishable app, with browser-style chrome and an in-node Publish button.
* OpenClaw joined Codex, Claude Code, and OpenCode as a CLI coding agent option.
* Reddit public feeds no longer require credentials.
* Token refresh fixes across OAuth integrations.
## Event-driven triggers
Workflows now start in response to events from your apps, not just on demand: Typeform responses, GitHub and Linear events, Shopify store events, Twilio SMS, Gmail, Calendar, and Drive changes, plus Slack and HubSpot events, with per-event filtering and channel scoping.
## Delays that survive anything
The Delay node supports pauses of days or weeks that survive restarts, and suspended runs resume in their original execution.
* New Resend node for transactional email.
* Click to add nodes and UX blocks from the palettes, in addition to dragging.
* The agent node's model selector lives in its config form and stays in sync with the canvas.
## Errors as data
Nodes can route failures through a dedicated error handle, so workflows treat errors as data.
* Answer the AI builder's questions by typing directly in the chatbox.
* Slack config fields gained a dynamic channel picker.
* Stop a single-node run with its own stop button.
* AI-created nodes auto-select your credential when you only have one.
* Resource pickers include a "Create new" option.
* Nodes referenced by an interface show a "Used by interface" badge.
## A searchable action picker
Choosing a node's operation is now a Spotlight-style searchable picker with readable names, categories, and trigger badges.
* Hermes joined the CLI coding agent lineup.
* The mobile canvas moved to a lighter renderer, and background effects no longer crash iPhones.
## Instagram scraping
Pull Instagram data into workflows with new scraping operations.
* Supabase connections support OAuth.
* Shopify connections updated to the latest API version.
* The homepage loads with about 58% less JavaScript, so getting into the product is faster.
* The AI builder's stop button now actually cancels the turn, runaway turns are capped, and resumed chats restore icons and reasoning logs.
* A floating plus button on the canvas opens the Nodes tab.
* Workflow cards show node count and last-edited time.
* X (Twitter) connections refresh their tokens automatically.
## Skills
Give your agents reusable context: instructions with an optional workflow body, scoped to you, your organization, or everyone. The builder picks the relevant skills automatically on every turn.
* An Edit tab on every node lets you change just that node with a prompt.
* LinkedIn scraping and Reddit feed operations.
* Model lists across agents stay current automatically, including daily-refreshed Codex and Claude Code models.
* Agents can fetch images from URLs mentioned in conversation.
## New Free, Plus, and Pro plans
Plans were renamed and repriced, with monthly and annual checkout and promotion codes.
* The sidebar remembers whether you left it open or closed.
## Builds that pause and resume
AI builder runs are now durable: they pause on questions, survive disconnects and restarts, and can be resumed from the sidebar at any time.
* Scroll to pan the canvas, with a wider zoom range and Cmd+drag panning.
* Checkout supports choosing annual or monthly billing.
* Fixed the operation selector disappearing on multi-operation nodes.
* AI Fill buttons on individual nodes draft a single node's config for you.
* Paste an n8n workflow and the builder converts it for you, replacing the old one-to-one converter.
* The empty canvas now guides you: next-step hints, click-to-add, a drag or click mode toggle, and an interface build animation.
## The agentic AI builder
Creating a workflow is now a conversation. The builder plans the graph, asks clarifying questions, requests credentials with inline OAuth, and fills in configs as you watch.
* Agent image settings for Google and Imagen models.
* Select and act on multiple approval or activity items at once in the Feed.
* Template search matches multi-word queries against node types and labels.
## Saved outputs in the input panel
Pull data from previously saved node outputs while configuring a node, so you can wire references without re-running upstream steps.
* Output history is kept per node instead of per run.
## Instant, ordered runs
Execution events now stream in order through a new relay: stopping is instant, run state restores when you reload, and long runs can be stopped from anywhere.
* Public template pages show the workflow's interface.
* Delete a workflow straight from the canvas menu.
* Iteration nodes show a progress indicator while looping.
* An SDK debug drawer shows interface activity, and node IDs are highlighted in interface code.
## A visual refresh
The app moved to a darker black-zinc look, and node dragging got noticeably smoother.
* New Cloudflare integration.
* SDK documentation went live, with TypeScript SDK fixes.
* Folders and workflows show their owner's display name.
## Custom interfaces and the SDK
Build a full custom app UI on top of any workflow: React and HTML interface nodes, a TypeScript and Python SDK with enforced permissions, and publishing for app nodes.
## Human-in-the-loop approvals
Gate sensitive steps behind an approval feed, with an activity feed of everything your workflows did.
* X (Twitter) API tier support, so Basic and Pro API plans work with usage-based pricing.
* Set execution timeouts in settings, and the Delay node now allows up to 15 minutes.
* New Google Ads integration.
* CLI coding agents keep persistent storage for their sandboxes.
* The on-error node catches failures and routes recovery logic visually.
* Generate video and images with Kling AI from the agent node.
* Connect WhatsApp by scanning a QR code.
* Manage organization members and SSO from settings.
## CLI coding agents in workflows
Run Codex, Claude Code, and OpenCode as agent nodes inside workflows.
* Plan limits are now enforced consistently across features.
* New Instantly integration.
* Folder sharing got finer-grained access rules.
* Generate video from the agent node.
* A Credentials tab in Settings lists and manages all your connections.
* Set a minimum credit balance below which a workflow won't run.
## Agents that set alarms
Agents can set alarms to wake themselves at chosen times.
* Agents remember chat history across conversations.
* View any workflow fullscreen.
* Drag and drop workflows between folders.
* New TikTok and Affinity CRM integrations.
* Save templates as drafts before publishing.
* Link directly to a specific node or field, and link out to external resources from configs.
## One-click autolayout
Untangle the whole graph with one click.
* Deleted workflows move to a trash folder, and folders can be deleted.
* Template authors can script guided onboarding with a custom setup node and stored variables.
## Embed templates anywhere
Embed workflow templates on external sites.
* Report bugs and request features from inside the product.
* Fixed multi-device logout, personal workflow and folder sharing, and Stripe top-ups.
## Run from any node
Run a single node, or resume execution from any node.
* MCP responses include HTML widgets and generated card images.
* Ask a teammate or client to connect an account through a secure emailed link.
* AI builder usage is metered with clear pricing, and organizations bill to the owner's account.
## Workflow interfaces are generally available
Every workflow can have a user-facing interface with forms, blocks, and tabs, rendered straight from the canvas. Out of beta for everyone.
* Node outputs persist across sessions.
* New WordPress integration.
* A step-by-step guided setup walks you through configuring a new workflow.
* Upload files, images, audio, and video into workflows with managed storage.
## Workflow interfaces (beta)
Workflows gained user-facing interfaces in beta, rendered from the canvas.
## Folders
Organize workflows into folders with a tree sidebar.
## The NoClick MCP server
Control NoClick from Claude or ChatGPT: build and edit workflows, run nodes, and manage configs over MCP.
* New Word and Microsoft To Do integrations.
* New Excel, OneDrive, and ElevenLabs integrations.
* New WhatsApp Business integration.
* Google Sheets can build ranges for you.
## More logic nodes
A State node for stateful workflows, a proper Switch node, and an MCP client node for calling external MCP servers.
* Expandable JSON fields support drag-and-drop references.
* Real-time collaborative editing syncs more reliably.
* YouTube comment retrieval supports time-based filters, and GitHub gained pull request review operations.
* Give nodes custom labels.
* Node outputs are easier to inspect.
* Guided setup walks you through incomplete nodes on the canvas.
## Import from n8n
Paste an n8n workflow and NoClick converts it to a native workflow.
* The Delay node pauses workflows between steps.
* Export workflows as files and re-import them.
* The Iteration node loops over lists with proper aggregation of results.
* Node errors are far more visible.
## Run custom JavaScript
Execute your own JavaScript inside workflows.
* Google Sheets handles values and formatting better.
* A new Filter node filters and transforms data between steps.
* Stop a running workflow with one click.
* A new CSV input node imports and previews CSV data.
* A public integrations directory lists every available node.
* The remaining Google services arrived as nodes, with corrected scopes.
* A get-started checklist guides your first steps.
## AI workflow generation
Describe what you want and NoClick drafts the workflow for you. Refine it with follow-up messages in chat.
* New Twilio integration.
* A short onboarding questionnaire helps you reach your first working workflow faster.
## Templates library
Browse ready-made workflow templates and publish your own.
## Share with a public URL
Publish a workflow at a public URL anyone can view.
* New Perplexity, Typeform, and Dropbox integrations.
* New Hacker News, Mailchimp, Supabase, and Semrush integrations.
* Share credentials and saved outputs along with a workflow.
* New Canva integration.
* New HubSpot integration.
* New Apify integration.
## Sharing and collaboration
Share workflows and databases, edit together with live presence, and fork shared workflows.
* New Jira integration.
## Enterprise SSO and the Team plan
Okta and SAML SSO arrived, along with a Team plan, workspace member limits, and a new pricing page.
* New Postgres, Redis, and RSS integrations.
* New Slack and Bluesky integrations.
* Save workflow checkpoints and restore them later.
* New X (Twitter) and Shopify integrations.
* New Apollo and Instagram integrations.
## Custom tools for agents
Give agents custom tools with the new tool node.
* New Discord integration.
* Publish public forms that run workflows on submit.
## Chat with the agent node
Talk to an AI agent node directly in the editor.
* New Google Calendar and Outlook integrations.
* Run sandboxed Python functions as workflow steps.
## A 10x faster editor
The workflow editor became an order of magnitude faster.
* New Notion integration.
## Webhooks and schedules
Trigger workflows from inbound webhooks, including Telegram bots, or run them on a cron schedule.
* New LinkedIn and Reddit integrations.
* New Salesforce integration.
* A much deeper Gmail node with more operations.
* New Google Drive and YouTube integrations.
* New Airtable integration.
* GitHub connections support OAuth.
* New GitHub integration.
* Keyboard shortcuts in the workflow editor.
## The integration push begins
Linear arrived as the first dedicated workflow integration, kicking off a month of new nodes.
* New Iteration and HTTP request nodes.
* Credentials auto-select in the background when you add a node.
# Organizations
Source: https://docs.noclick.com/collaboration/organizations
Create a shared team workspace with members, roles, organization-owned workflows, and centralized billing.
An organization is a shared workspace for your team. Workflows created inside it belong to the organization, every member can access them, and the organization has its own plan and billing.
## Create an organization
Click your name at the top of the sidebar, then choose **New organization**.
In the **Create Organization** dialog, enter an **Organization Name** and an **Identifier**. The identifier is checked for availability as you type, is used for your SSO login URL, and cannot be changed later.
Click **Create**. You become the organization's owner and switch into the new workspace.
How many organizations you can create depends on your personal plan: 1 on Free and Plus, 3 on Pro, unlimited on Enterprise.
## Switch workspaces
The same switcher moves you between your personal workspace and your organizations. Your dashboard is scoped to the active workspace: workflows you create while inside an organization are owned by the organization and visible to all of its members.
## Invite members
Open **Settings → Organization** while in the organization workspace. On the **Overview** tab:
1. Enter an address in **Invite by email...**, pick **Member** or **Admin**, and click **Invite**.
2. The recipient gets an email with an invite link. They sign in and accept on the invite page.
3. Pending invites appear above the member list with a "pending" label; hover one to revoke it. Invites expire after 7 days.
### Member limits
Member limits follow the organization's plan. Pending invites count toward the limit.
| Plan | Members |
| ---------- | --------- |
| Free | 3 |
| Plus | 3 |
| Pro | 5 |
| Enterprise | Unlimited |
### Roles
* **Owner**: full control, including billing, ownership transfer, and deleting the organization.
* **Admin**: manage members, organization settings, and SSO.
* **Member**: use and build the organization's workflows.
## Billing
The organization has its own subscription, separate from your personal plan. Owners and admins manage it on the **Billing** tab of the organization settings.
Credits work on an "owner pays" model: organization workflows always draw from the organization owner's credit pool, no matter which member runs them. See [Plans](/billing/plans).
## SSO
Organizations can require SAML 2.0 single sign-on, configured on the **SSO** tab of the organization settings. Follow the [SSO setup guide](/guides/sso-setup) for Okta, Azure AD, and other identity providers.
## Next steps
Share individual workflows outside an organization.
Configure SAML single sign-on for your organization.
# Work together in real time
Source: https://docs.noclick.com/collaboration/real-time
Every workflow canvas is multiplayer: presence avatars, live named cursors, and edits that sync instantly to everyone.
Every workflow canvas is multiplayer. When a collaborator opens a workflow you've [shared](/collaboration/sharing), you both work on the same live canvas. There is nothing to enable.
## See who's here
Connected collaborators appear as a stack of avatars next to the **Run** button in the top bar. Hover the stack to see everyone's name.
## Live cursors
Each collaborator's pointer shows on the canvas in their own color with their name attached, so you can see where everyone is working as they move around the flow.
## Edits sync instantly
Changes appear for everyone the moment they happen:
* Adding, moving, resizing, or deleting nodes
* Connecting and removing edges
* Editing a node's configuration fields, including an AI agent's model
There is no save or refresh step. If two people edit at once, changes merge automatically.
## Running nodes as a collaborator
When a collaborator runs a node on a shared workflow, credentials resolve as the workflow owner. The owner's credentials are never copied into the collaborator's account; the node's credential panel shows them as "Owned by" the owner and shared with the flow.
See [Credential sharing](/credentials/sharing) for the full model.
## Next steps
Public links, direct shares, and collaboration invite links.
A shared workspace for your whole team.
# Share a workflow
Source: https://docs.noclick.com/collaboration/sharing
Share a workflow with a public view link, with specific people or organizations, or with a live collaboration invite link.
Click the **Share workflow** button (the share icon in the top-right of the canvas) to open the **Share Workflow** dialog. From here you can publish a public view link or grant access to specific people and organizations. A separate invite link brings collaborators into the flow to edit with you live.
## Public link
Turn on the **Public access** toggle ("Anyone with the link can view") to get a view-only link:
```
https://noclick.com/share/{workflow-id}
```
Use the copy button next to the link to share it. Visitors can view the workflow but not edit or run it. Turn the toggle off to revoke the link.
When public access is on, a **Publish to Template Library** option appears. See [Publishing templates](/templates/publishing).
## Specific people and organizations
Type in the **Add people or organizations...** field. Suggestions include your organizations (shared with "All members") and their members, or enter any email address.
Choose **Can view** or **Can edit** next to the input before adding. Editors can change the workflow; viewers can only look.
Everyone you've shared with appears under **People with access**. Use the dropdown next to a person to switch between **Can view** and **Can edit**, or click the trash icon to remove their access.
If you share with an email that doesn't have a NoClick account yet, the entry shows a **Pending invite** label. The share activates automatically when that person signs up with the same email.
## Invite links
The fastest way to bring someone into a flow is the invite link. Click the **Invite collaborators** button (the round person-plus button on the right edge of the canvas) to open the invite card, then click **Copy link**.
The link looks like `noclick.com/i/{token}`. When someone opens it:
1. They land on an invite page showing who invited them and the workflow name.
2. They sign in or create an account on that page.
3. They join the same workflow as a collaborator with edit access. There is no copy or fork; you build together on one canvas.
Each workflow has one always-on invite link, and only the workflow owner can create it. Reopening the invite card shows the same link. To remove a collaborator who joined through the link, delete them from **People with access** in the Share dialog.
Invite links aren't available for organization workflows. Members of an [organization](/collaboration/organizations) already share access to its workflows.
## Next steps
Live cursors, presence avatars, and instant edit syncing.
How collaborators run nodes without copying your credentials.
# Connecting accounts
Source: https://docs.noclick.com/credentials/connecting
Connect a service with OAuth or an API key from any node, and manage all your credentials in Settings.
A credential is a connected account or API key. You connect a service once, then reuse that credential across every workflow and node that needs it.
## Connect from a node
Click the node, then open the **Credentials** tab (`K`) in the config panel.
Choose an existing account from **Select credential...**, or create one in place. The dropdown's footer offers **Connect new** for OAuth services and **Create new** for API-key services.
For OAuth, a provider sign-in window opens; approve access and the window closes. For API keys, paste your key into the form. Either way the new credential is selected on the node automatically.
### OAuth services
Around 25 services (Google, Slack, GitHub, Notion, X, and more) connect with a browser consent flow: click **Connect \[Service] Account**, sign in, approve the requested permissions, done. NoClick stores the resulting tokens and [refreshes them automatically](/credentials/security), so you don't need to reconnect when they expire.
The permissions NoClick asks for are the ones the service's operations actually need, and each integration's page lists the exact set. A connection keeps only what it was granted when you made it, so reconnect it if a step later fails on a permission. See [Credential problems](/troubleshooting/credentials).
A few providers ask for one extra detail before the sign-in window opens, like your Shopify store name or your Jira site.
**Microsoft work or school accounts.** Some organizations don't let people approve apps themselves, so Microsoft shows **Need admin approval** instead of its consent screen. An admin in that organization can click **approve NoClick for your organization** under the Connect button: Microsoft's admin-consent page grants the permissions once for everyone in the directory, then continues into the admin's own sign-in. After that, anyone there connects normally. Personal Microsoft accounts never see this.
### API-key services
Other services use a key you paste in. The form lists exactly the fields the service needs, and most include a **Get your API key here** link that takes you to the provider page where the key is issued.
Every field in a credential form carries a badge: **Required** fields show an amber badge until you fill them, **Optional** fields stay neutral. This is the same marking node config fields use.
WhatsApp is the exception to both patterns: it connects by scanning a QR code with your phone.
## When a connection drops
Some connections can stop working from the provider's side. An expired sign-in makes a credential unusable, a WhatsApp connection can be dropped when the phone unlinks the device or the provider logs the session out, and a **Discord Bot Install** connection stops working once someone removes NoClick's bot from the server. Either way, messages stop arriving and runs that use the credential fail.
NoClick reports this in every place your credentials are read:
* The credential picker labels the credential **Disconnected** and sorts it below the healthy ones.
* The node's **Credentials** tab explains what happened and how to repair that connection: re-scan the QR code for a WhatsApp credential, or add the bot back to the server for a Discord one.
* Asking an AI agent or the AI builder about the workflow reports the credential as attached but disconnected, rather than as working.
* You get an email, unless you have turned that alert type off. See [Email notifications](/billing/notifications).
A connection is marked **Disconnected** only when the provider says it is gone. When NoClick cannot reach the provider to ask, the credential keeps reading as connected instead of being flagged on a guess.
A dropped WhatsApp connection also stops costing you the \$0.99 monthly connection fee for the hours it is down, since it can neither receive nor send. Billing resumes once you re-scan.
Fix a dropped WhatsApp connection by re-scanning the QR code for the credential you already have, using the reconnect prompt on the node. Do not create a new WhatsApp credential. Each fresh scan adds another linked device on your phone, and WhatsApp can log all of them out at once. Reconnecting also avoids paying the \$0.99 monthly connection fee a second time.
The node offers a QR code on its own only when you have no WhatsApp connection to pick, or when the one attached to it has dropped and the scan will reconnect it. When a working connection is already there, the **Credentials** tab shows a **Connect a different WhatsApp number** button instead, so nothing invites a scan you did not mean to make. A reconnecting scan keeps the triggers registered on that credential, so incoming messages start arriving again without any change to the workflow.
### Services that run without a key
A few nodes can run on NoClick's own keys, so connecting an account is optional. Their **Credentials** tab is headed **API Credentials** and carries a green **Usage-based billing available - credentials optional** marker, and while nothing is attached it reads **Using NoClick's usage-based billing (no credentials needed)**. Runs like that are metered against your NoClick credits.
The picker stays available in the same place, so connect your own key whenever you would rather the provider billed you directly. Which nodes and operations this covers is listed under [What costs credits](/billing/costs).
## Manage credentials in Settings
**Settings → Credentials** lists every credential you can use, grouped into **Personal**, **Shared With Me**, and (when you're in an organization) **Organization** tabs. From here you can search, create credentials with **New credential**, share a credential, or delete one.
To rename a credential or replace its key, select it on a node and use the **Edit credential** button next to the picker. Existing secret values are never shown back; you re-enter them when updating.
Removing NoClick from the provider's side does not usually delete the credential here, so delete it yourself when you no longer need it. Pipedrive is the exception: if you uninstall the NoClick app in Pipedrive, the Pipedrive account you signed in with is deleted from your credentials for you, along with any sharing on it.
Deleting works the other way around for some services too. When you delete a Klaviyo credential in NoClick, NoClick revokes the access it was granted, so the app stops showing as installed on your Klaviyo account. You do not have to remove it in Klaviyo as well.
## Per-plan limits
Each plan caps how many credentials you can hold per service:
| Plan | Credentials per service |
| ---------- | ----------------------- |
| Free | 1 |
| Plus | 3 |
| Pro | Unlimited |
| Enterprise | Unlimited |
Hitting the cap shows an upgrade prompt when you try to connect another account of the same type.
## Next steps
Use your own client ID and secret on supported providers.
How collaborators and teammates use your connections.
# Bring your own OAuth app
Source: https://docs.noclick.com/credentials/custom-oauth
Connect supported providers through your own OAuth client ID and secret instead of NoClick's app.
By default, OAuth connections go through NoClick's registered apps, so connecting is one click. On a few providers you can use your own OAuth app instead: the consent screen shows your app's name, and API access runs under your developer account's rate limits and tier. On Google Business Profile it is not a choice, since Google only serves that API to your own project.
## Supported providers
| Provider | Register your app at | Your own app is |
| ----------------------- | ----------------------------------------------------------------------------- | --------------- |
| X (Twitter) | [developer.x.com](https://developer.x.com/en/portal/dashboard) | Optional |
| Shopify | [partners.shopify.com](https://partners.shopify.com) | Optional |
| WordPress.com | [developer.wordpress.com/apps](https://developer.wordpress.com/apps/) | Optional |
| QuickBooks | [developer.intuit.com](https://developer.intuit.com) | Optional |
| Google Business Profile | [console.cloud.google.com](https://console.cloud.google.com/apis/credentials) | Required |
## Connect with your own app
On the node, open the **Credentials** tab and find the OAuth connect section for the provider.
Click **Use custom OAuth app credentials**. It's optional and collapsed by default.
Paste both values from your provider's developer console, then click **Connect \[Provider] Account**. The consent flow now runs against your app.
Your client secret is stored in the same [encrypted credential blob](/credentials/security) as the tokens, and automatic token refreshes use your app from then on.
## The redirect URI to add
Your OAuth app has to allow NoClick's callback URL, or the provider refuses the connection. For QuickBooks, Shopify, and Google Business Profile, the connect form prints the exact URI under **Redirect URI to add in your OAuth app**, ready to select and copy into the provider's app settings. It shows in the node's **Credentials** tab, and on the connect page when someone is asked to connect the account for you.
| Provider | Redirect URI |
| ----------------------- | -------------------------------------------------- |
| QuickBooks | `https://noclick.com/api/auth/intuit/callback` |
| Shopify | `https://noclick.com/api/auth/shopify/callback` |
| Google Business Profile | `https://www.noclick.com/api/auth/google/callback` |
Google Business Profile always needs your own OAuth app, not just optionally. Create a Web Application OAuth 2.0 client in your Google Cloud project, add the redirect URI above, and enable the Business Profile APIs. NoClick checks that access after you connect and tells you if the project does not have it.
## When you'd want this
* **Your own rate limits and tier.** API quotas attach to the OAuth app. With your own app you're not sharing NoClick's pooled limits, and on X, operations that require a paid API tier run at whatever tier your developer account has.
* **Your own billing on X.** X API calls made through your own app are billed by X to your developer account directly, so NoClick doesn't charge its per-resource X API credits for those runs. See [What costs credits](/billing/costs).
* **Your own branding.** Users approving the connection see your app's name and logo on the consent screen.
## Next steps
The standard OAuth and API-key flows.
Encryption, refresh, and who can see what.
# How credentials are protected
Source: https://docs.noclick.com/credentials/security
Encryption at rest, automatic token refresh, and who can see credential values.
## Encrypted at rest
Credential data (OAuth tokens, API keys, custom client secrets) is encrypted at the application level with Fernet authenticated symmetric encryption before it is written to the database. The encryption key lives in a deployment secret outside the database, so database access alone is not enough to read a credential.
## Encrypted in transit
The app, the API, and the real-time connection all run over HTTPS and secure WebSockets.
## Tokens refresh automatically
For OAuth services, NoClick refreshes expired access tokens on its own, both when a workflow runs and when a credential is loaded for things like dropdown options. You don't have to reconnect on a schedule; reconnecting is only needed if the provider revokes access. See [Credential problems](/troubleshooting/credentials).
## Who can see credential values
* Values are decrypted server-side; collaborators on a shared workflow see only the credential's name and owner, never the secret. See [Credentials and other people](/credentials/sharing).
* The UI never displays a stored secret back to you. Editing a credential means re-entering the values.
* Only the owner, and accounts the credential was explicitly shared with, can access it at all.
## You stay in control
Delete a credential at any time from **Settings → Credentials** or from a node's credential picker. For OAuth connections you can also revoke NoClick's access from the provider's own security settings, which immediately invalidates the stored tokens.
# Credentials and other people
Source: https://docs.noclick.com/credentials/sharing
How collaborators run your workflows without seeing your secrets, and how to share a credential directly.
## Collaborators on a shared workflow
When you [share a workflow](/collaboration/sharing) for editing, your collaborators can run it without connecting their own accounts. Nodes that use your credentials resolve them as you, the workflow owner, at run time.
What collaborators see and get:
* The node shows the credential's name with an owner note: "Owned by \[you]. It's shared with this flow."
* The secret itself is never shown, copied, or added to their account; values are only decrypted server-side when the node executes.
* Edit, share, and delete controls are hidden for them, and the backend rejects those actions from anyone but the owner.
This works one workflow at a time. Sharing a workflow never grants access to your credentials in the collaborator's other workflows.
## Sharing a credential directly
You can also share a credential itself, so someone can use it in their own workflows:
1. Open **Settings → Credentials** and click the share icon on a credential you own (or use the share icon next to it in any node's credential picker).
2. Add people by email, or share with an organization to cover all its members. Each recipient gets **Can view** or **Can edit** permission.
3. Recipients see it under **Shared With Me** in their own Settings → Credentials and can select it on nodes like any other credential.
You can change a recipient's permission or remove them at any time by expanding the credential's row; recipients can likewise remove a shared credential from their list.
## Organization credentials
Inside an organization, the **Organization** tab in Settings → Credentials collects credentials owned by or shared with the org. These are available to all members, and they count against the organization's plan limit rather than anyone's personal cap. Runs of organization workflows bill the org owner's credit pool regardless of who runs them; see [Organizations](/collaboration/organizations).
## Next steps
Invite links, view/edit access, and public links.
Encryption at rest and what other users can see.
# The workflow canvas
Source: https://docs.noclick.com/editor/canvas
Add nodes, connect them with edges, and organize your workflow on the visual canvas.
The **Workflow** tab is the visual editor: every step in your automation is a node, and edges carry data between them. The AI builder edits the same canvas, so you can switch between describing changes and making them by hand at any time.
## The top bar
| Tab | Shortcut | What it shows |
| ------------- | -------- | --------------------------------------------------------------- |
| **Interface** | `I` | The app view: forms, dashboards, and UI blocks |
| **Workflow** | `W` | The node canvas |
| **Logs** | `L` | Past runs, see [Execution logs](/editor/execution-logs) |
| **Versions** | `V` | Saved snapshots, see [Version history](/editor/version-history) |
| **Resources** | | Uploaded files; appears once the workflow has resources |
| **Setup** | `S` | A template's guided setup; appears until you finish it |
On the right you'll find collaborator avatars, **Share**, the `⋮` menu, and the **Run** button (see [Running and testing](/editor/running-and-testing)).
## Adding nodes
Press `N`, or click **Flow Helper** at the bottom of the canvas and open the **Nodes** tab.
Type the integration or building block you want. Matching operations are searchable too.
Click a tile to add the node, or drag it to a spot on the canvas.
Select a node and press `N` (or click the dashed `+` to its right) and the new node is added already connected after it.
## Connecting nodes
Drag from the handle on a node's right edge to the next node's left edge to create an edge. Data flows left to right; downstream nodes read upstream output through [references](/editor/data-references). The dashed stub next to a node also works as a drag source.
You do not have to land exactly on the small handle dot. Release the drag anywhere on the target node's body and NoClick connects it to the right handle for you, picking the matching input or output based on where you drop.
## Selecting and moving
Click a node to select it, drag to move it. Drag on empty canvas to box-select multiple nodes. Trackpad scroll pans, pinch zooms, and middle-drag or `Cmd/Ctrl` + drag pans. Arrow keys jump between nodes and `Enter` opens the selected node's config.
## Right-click menus
Right-click the canvas for a context menu with the actions that fit what you clicked:
* **Empty canvas:** **Add node**, **Add sticky note**, **Paste**, **Select all**, **Auto-layout**, **Fit view**.
* **A node:** **Open**, **Run from this node**, **Duplicate**, **Copy**, **Cut**, **Disable** or **Enable**, **Rename**, **Delete**. Sticky notes show only the actions that apply to them.
* **A multi-node selection:** **Duplicate**, **Copy**, **Cut**, **Disable**/**Enable**, and **Delete**, applied to every selected node at once.
## Auto-layout
Click the `⋮` menu in the top bar and choose **Auto-layout** to tidy the graph automatically. You can also right-click empty canvas and choose **Auto-layout**.
## Sticky notes
The sticky note is the first tile in the node palette. Drop one anywhere to annotate the canvas, double-click it to edit the text, and drag its corner to resize. Sticky notes never execute.
## Next steps
Pick operations, fill fields, and connect credentials.
The full shortcut reference for the editor.
# Configuring nodes
Source: https://docs.noclick.com/editor/configuring-nodes
Choose an operation, fill in fields, load options from your connected accounts, and attach credentials.
Click a node (or select it and press `Enter`) to open its config panel at the bottom of the canvas. The panel has a **Config** tab for the node's settings and a **Credentials** tab for connecting accounts.
## Choosing an operation
Integration nodes can do many things, so the config starts with an operation picker: type to search ("Search for an action this node should perform") and pick one. Search is fuzzy and ranked, so word order, abbreviations, and words from an operation's description all match, and the closest result moves to the top, highlighted so you can press Enter to select it. The fields below update to match the chosen operation.
### Operations that need more than a connection
Some operations only run on a paid plan at the provider, or on a different kind of credential than the service's normal sign-in. The picker marks those before you choose one, so you find out while you are wiring rather than on the first run:
| Marker | What it means |
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Stars | The provider's API tier. X marks 15 operations with one star (Basic) and 6 with two (Pro). |
| **Enterprise**, **Paid**, **Beta** | Cloudflare operations that need that plan or that Cloudflare still has in beta. |
| **Enterprise Grid**, **Admin install** | Slack admin operations. Slack will not install an app asking for those permissions on an ordinary workspace, so they run on a **Bot Token** credential from your own Slack app instead of the sign-in flow. |
## Filling fields
Each field carries a badge: **Required** fields show an amber badge until they are filled, **Optional** fields stay neutral. A node with something still missing shows an amber banner at the top of its config panel; click a field name in the banner to jump to that field. An amber pill at the bottom left of the canvas counts every incomplete node in the workflow, and its arrows step you through them one at a time.
A trigger that registered but will not be sent events counts as incomplete too, and the pill names the reason, such as a Slack app that is not in the channel it watches. That one never holds up a run you start yourself, since a manual run does not wait for the service to deliver anything. See [App events](/triggers/app-events).
Text fields accept plain values or [references](/editor/data-references) to upstream output.
Some fields belong to one kind of credential and are hidden once you connect a different one. A WhatsApp trigger on a QR connection does not show **Verify Token (Optional)**, which only the Cloud API uses. Before you attach an account, every field is shown, since nothing rules any of them out yet.
Fields that take a yes or no answer are a dropdown offering **Yes**, **No**, and the field's own default, shown as **Default (Yes)** or **Default (No)** where the field has one and **Not set** where it does not. A field that already holds a `{{ }}` reference, such as one written by the AI builder, stays a text box so the reference remains editable.
Multi-value fields, like a message's To, Cc, and Bcc or a list of feed URLs, save as you type. A new empty box appears as soon as you fill the last one, so you do not need to press Enter to add each value.
Media fields, like a video or image to upload, take a file three ways. Click **Upload** to send a file from your computer, paste a URL, or drag a reference to a file produced by an earlier step. Uploaded files are stored and turned into a link, and images and videos preview right in the field.
## Dynamic dropdowns
Fields that point at real resources, like a spreadsheet, a sheet tab, or a Slack channel, load their options live from your connected account. They are searchable, paginate for long lists, and dependent fields reload when their parent changes (pick a different spreadsheet and the sheet list refreshes). Many also accept a custom value or a dropped reference instead of a listed option.
A required dropdown fills itself when your account offers exactly one option, so a workspace with a single project, base, or calendar stops asking you to confirm it. This only happens when the whole list has been loaded and holds one entry; a list that is still paging never picks for you.
## Credentials on the node
Open the **Credentials** tab (`K`) to attach an account to the node. Pick an existing one from **Select credential...**, or create one in place: **Connect new** starts an OAuth flow, **Create new** takes an API key. See [Connecting credentials](/credentials/connecting) for details and per-plan limits.
A node with a missing credential can't run; the Credentials tab shows a warning state until one is connected. Nodes that run on [NoClick's own keys](/billing/costs), and nodes wired into an agent where none of the operations you allowed needs an account, are not marked that way.
## Next steps
Pass upstream output into config fields.
Run a single node to verify its config.
# Data references
Source: https://docs.noclick.com/editor/data-references
Pass data between nodes with {{node_id.field}} references, by dragging values or typing them.
Any config field can read from an upstream node's output using a reference wrapped in double curly braces:
```text theme={null}
{{node_id.path.to.field}}
```
The first segment is the upstream node's ID; the rest navigates into that node's output.
## Reference patterns
| Reference | Resolves to |
| --------------------------- | ----------------------------------- |
| `{{node-1}}` | The node's entire output |
| `{{node-1.message}}` | The `message` field of the output |
| `{{node-1.user.name}}` | A nested field |
| `{{node-1.items[0].title}}` | The `title` of the first array item |
| `{{node-1.items[].title}}` | A list of every item's `title` |
When a field contains exactly one reference, the value keeps its original type (object, list, number). When a reference sits inside other text, like `Hello {{node-1.user.name}}!`, it is converted to a string.
## Dragging references
The easiest way to build a reference is to not type it at all:
Run the upstream node once (or give it a [mocked output](/editor/running-and-testing)).
Select the upstream node and click **Output** (`Y`) in the config panel.
Grab any value in the output and drop it onto a config field. The correct reference is inserted as a chip.
You can also type `{{` in any text field to get autocomplete suggestions built from the connected nodes' actual output.
## Inline expressions
When you need to transform a value, not just read it, write a JavaScript expression inside `{{ }}` using `$`-accessors. The expression runs in a sandbox at execution time and its result is substituted into the field. No separate code node needed for basic string or number work.
| Accessor | Reads |
| ------------- | ------------------------------------------------------------------------------ |
| `$('node-1')` | another node's whole output (use the node's id, or its label: `$('My Sheet')`) |
| `$vars` | workflow variables, e.g. `$vars.api_base` |
| `$json` | the single upstream node's output flowing into this node |
| `$now` | the current date and time, as a JavaScript `Date` |
Because it's JavaScript, you get the full language:
```text theme={null}
{{ $('form').emails.split(",")[0].trim() }}
{{ $('sheet').rows.map(r => r.email).join(", ") }}
{{ $vars.threshold * 2 }}
{{ $('user').age > 18 ? "adult" : "minor" }}
Hi {{ $('user').name.toUpperCase() }}!
```
Two small helpers are also available: `$if(condition, a, b)` and `$ifEmpty(value, fallback)`.
When the whole field is a single expression, the result keeps its type (number, list, object). When an expression sits inside other text, the result is converted to a string, the same rule as plain references.
The easiest way to build one is to drag a value from a node's Output panel into a field, which inserts the `$('node-1').field` form, then add your transform (`.split(",")`, `* 2`, …). While the field holds an expression, a live preview under it shows the computed result against the connected nodes' latest output, and one-click chips insert the available accessors.
Plain references like `{{node-1.message}}` keep working exactly as before. An expression is only evaluated when the `{{ }}` uses a `$`-accessor, so literal `{{name}}` placeholders meant for a downstream system still pass through untouched.
## When a reference resolves to nothing
A reference that fills a whole field can come back with no value, usually because the key does not exist on that node's output, or exists and holds null.
What happens next depends on the field:
* A **required** field fails the step. The error names the field, the reference, and what the referenced node's output really holds, for example `Required field 'to' is empty` followed by the note that the node has no key of that name and the list of its top-level keys. A key that is present but null is reported as null instead, since that is a different problem.
* An **optional** field keeps its default and the run continues. An empty optional field is a normal way to say "leave this out".
This applies to a field that is exactly one reference. A reference sitting inside other text, like `Hi {{ $('user').name }}!`, still splices in an empty string, as it always has.
On a manual run, a trigger that waits for events has no event to read, so a reference into it resolves to nothing. The error says so and points you at firing the workflow for real to test that path. See [Running and testing](/editor/running-and-testing).
## Common mistake: `.output.` in the path
References navigate the node's output directly, so do not insert an `output` segment:
```text theme={null}
{{node-1.message}} ✓ correct
{{node-1.output.message}} ✗ looks for a literal "output" key and resolves to nothing
```
Dragged and autocompleted references always use the correct form.
## Common mistake: accessors from another tool
Expressions copied from another automation tool often use accessors NoClick does not have. They pass the editor's syntax check and then fail at run time, so it is worth recognizing them:
```text theme={null}
{{ $('sheet').item.json.email }} ✗ $('sheet') already returns the output, there is no .item or .json wrapper
{{ $('sheet').email }} ✓ correct
```
`$input`, `$node[...]`, `$items(...)`, `.itemMatching(...)`, `$prevNode`, `$execution`, `$workflow`, `$parameter`, and `$binary` do not exist here either. The accessors NoClick supports are the ones in the table above, plus `$if` and `$ifEmpty`.
When the AI builder or an MCP client writes one of these into a field, the write is rejected and the message shows the NoClick form instead.
Workflow variables are available under the reserved `vars` ID, e.g. `{{vars.api_base}}`. See [Variables and state](/logic/variables-state).
# Execution logs
Source: https://docs.noclick.com/editor/execution-logs
Review every run of a workflow, filter and search them, and replay any run on the canvas.
Open the **Logs** tab in the top bar (shortcut `L`) to see the workflow's run history.
## The run list
Each row shows the run's status, what triggered it, its message, when it ran, and how long it took.
| Column | Values |
| ----------------- | ------------------------------------------------------------------- |
| Status | **Success**, **Error**, **Running**, **Waiting** |
| Trigger | **Manual**, **Schedule**, **Webhook**, **Email**, **Form**, **API** |
| Message | The run's result or error message |
| Time and duration | When it started and how long it took |
Filter chips above the list narrow by status or trigger and show a count for each; the search box ("Search error messages") finds runs by error text. The list scrolls infinitely through older runs.
Runs are retained for 14 days or the most recent 25,000 runs per workflow, whichever limit is reached first.
## Replaying a run
Click any run row and the canvas renders that execution's exact graph snapshot, read-only, under an amber "Viewing execution run" banner. This is the graph as it was when the run happened, even if you've edited the workflow since.
In replay mode:
* Nodes carry success or error rings showing how each step ended.
* Click a node to see the inputs it received and the output it produced.
* Agent runs show a tool calls panel listing each tool call with its arguments, result, and duration.
Click **Exit replay** to return to the live canvas, or press `L` to jump back to the list and pick another run.
## Next steps
Run nodes individually while you build.
Route failures down dedicated branches.
# Running and testing
Source: https://docs.noclick.com/editor/running-and-testing
Run the whole workflow or a single node, inspect outputs, and pin mocked outputs to build downstream without re-running.
## Run the whole workflow
Click **Run** in the top right (or press `Shift` + `R`). While a run is in progress the button becomes **Stop**; if several runs are active it becomes a **Stop (N)** dropdown where you can stop one run or **Stop all**.
If a workflow only starts on its own, with triggers like an incoming email, a new row, a schedule, or a webhook and no manual entry point, pressing **Run** opens a popup that explains it runs automatically. The popup lists what each trigger watches and the address or URL that fires it. From there you can **Add a Run step** to add a manual entry point, **Open config** for any trigger, or **Run anyway** to do a single manual run. See [Triggers overview](/triggers/overview).
When you **Run anyway** on a workflow whose webhook or inbound-email trigger has already fired at least once, the trigger replays its last received event so the rest of the flow has real data to work with. A trigger that has never fired runs as before.
A trigger that waits for the service to push something, such as an incoming WhatsApp message, has nothing to replay until one arrives. It reports that it is waiting and stops there, so the nodes after it are not run on an empty event and an agent does not spend a turn on nothing. Branches that do not come off that trigger still run.
## Before running
If any step still needs setup, **Run** opens a popup that walks you through them one at a time, with a progress bar you can click to jump around. A pill at the top counts what is left ("2 nodes need setup") and turns into **Ready to run** once you clear them. A step appears here when it is missing a required field, has no action selected, has no account connected, or is a [tool provider](/agents/tools) with no operations allowed yet.
You fix each one in the popup itself:
* **Missing fields** get the same editors as the config panel, including dropdowns that load their options from the connected account.
* **No action selected** gets the node's action picker. Until an action is picked, which fields the node needs is unknown, so this comes first.
* **No account** gets the node's credentials block. Connecting through OAuth opens the provider window with the popup still up, and the block flips to done when the credential lands.
* **A tool provider with nothing allowed** gets its operation list, so you can tick the operations the agent may call.
Requirements stay listed once you satisfy them, marked as done, so a block never disappears mid-edit. The run action is always available: it reads **Run anyway** while something is unfilled and **Run** when everything is set. **Open config** on any step takes you to that node on the canvas instead.
This check also runs before a single node run and before **Run from here**, over the nodes those runs actually touch, which includes upstream nodes whose data is [referenced](/editor/data-references) and any tool providers wired into an agent that runs. On mobile, **Run** starts the run without the popup.
## Choose where a run starts
When a workflow has more than one entry point, the popup also asks which of them to start from. Each row names the branch it begins, such as "Then Slack, Gmail" or "Uses Telegram", and you untick the ones to leave out. Untick everything and **Run** is disabled. With more than two entry points, **Select all** and **Clear** appear.
Interface blocks that start nothing, such as a standalone app or a display block, are not listed. They render from their own config in the **Interface** tab, so there is nothing to run. An interface block that does feed other nodes, like a form leading into Slack, is still listed, because the branch behind it runs only when you tick it.
An agent entry point gets a box for its opening message, prefilled from the agent's **Message** field, so you can adjust what it does on this run without editing the node. When the agent is the only entry point you run, its answers arrive in the chat, which opens as soon as the run starts. With another branch ticked too, the run stays on the canvas and the agent's answer lands on its node.
This screen appears when there is a choice to make or an agent message to write. A workflow with one non-agent entry point runs straight off the button. Workflows that only start on their own show the trigger popup described above instead.
## Run results
When a run finishes, a results popup walks through the run in reading order. Each section only appears when the run has something to put in it:
| Section | What it shows |
| ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **What came in** | The event that started the run, rendered in its own app's frame, so a WhatsApp message looks like a WhatsApp message. An event NoClick does not recognize is shown as raw data, and a schedule tick with nothing in it is one line saying it ran on schedule. On a reply from a chat agent this is the message the turn took in, marked **latest of** the number that fed it when there was more than one. A manual run of a trigger that waits for an incoming event says nothing was delivered instead of showing a message |
| **What the agent did** | The agent's tool calls, one per row, with a tick or a red cross, the detail that matters on the row (such as the channel a message went to), the clock time, and how long the call took. Open a row to see what it was **Called with** and what it **Returned**, in field, JSON, or table view |
| **What went out** | Each message the agent sent, framed the way its destination shows it, stamped with the time it was sent. Images, video, and audio preview in place, and other files show as an attachment |
| **Inputs consumed** | The data handed to the agent by the nodes feeding it. On a reply from a chat agent, the other messages the same turn took in |
| **Also ran** | The rest of the nodes that ran, with their status. A node the run only read data from does not appear. On a workflow with no agent this reads **What ran** and numbers the steps in the order they ran |
A message that arrived with a photo, video, voice note, or document keeps that attachment in the **What came in** frame: pictures and video show in the bubble, a voice note gets a player you can listen to, and a document shows as a chip with its filename. A WhatsApp attachment previews once NoClick has rehosted it; a Telegram one shows as a named chip, since Telegram hands over a file id rather than a link. A shared location or contact card reads as a single line naming the place or the person.
A Slack message reads as one too: the channel it was posted in, who posted it, the time, and the text with mentions, channel links, and link labels written the way Slack shows them. A bot post's attachments and the names of any shared files are part of the message, a reply is marked as being in a thread, and a channel notice such as someone joining reads as that notice rather than an empty message.
A run where the agent worked and chose to send nothing says so along with the agent's reasoning, rather than reporting an empty result. A chat reply with no tool calls is shown as the **Agent's reply**. A failed run shows the error and a way to fix it in place of an outcome. Nodes wired into the agent as [tool providers](/agents/tools) are listed under **Agent's toolkit** with the operations they allow, since they never run on their own.
Use **Open config** next to any section or row to jump straight to that node's settings.
The popup opens on its own after a full run, a **Run from here** run that starts partway through the flow, and runs started by a trigger such as a schedule or a webhook. To stop it from opening automatically, click **Don't show again**; turn it back on under **Settings** in the **Popups** section. These popups do not appear on mobile.
The **Runs** pill on the top left of the canvas is always available, even before this session's first run. It shows the latest run's status and how long ago it ran, and clicking it reopens the results popup. Inside the popup, the **Latest run** switcher opens your run history: each row carries its status, what fired the run, how long it took, how many nodes ran, and the error message on runs that failed. Pick any row to load that run. The switcher stays reachable while results are loading and on a workflow that has never run.
## Run a single node
Testing one node at a time is usually faster than full runs:
Click it on the canvas to open the config panel.
Click **Run** in the config panel's toolbar (or press `Cmd/Ctrl` + `Enter`).
If the node reads from upstream nodes that haven't produced output yet, the Run button is disabled ("Missing input data from previous nodes"). Run the upstream nodes first, or mock their outputs.
A node wired into an agent or an MCP Server node as a [tool provider](/agents/tools) has no run of its own, so its Run button is off too, saying the node provides tools and its actions run when the agent or your MCP client calls them. Run the agent instead.
## Inspecting input and output
With a node selected, toggle **Output** (`Y`) to see what it produced, in field, JSON, or table view, and **Input** (`X`) to see the data arriving from connected nodes. Every value in these panels is draggable into downstream config fields as a [reference](/editor/data-references).
## Mocked outputs
Click **Mock** (the pin icon) in the Output panel to pin the currently displayed output as the node's mocked output. The node then shows a **MOCK** badge, and downstream nodes use the pinned data without the node re-running, so you can build and test the rest of the workflow against a stable sample. Click **Clear Mock** (or press `M` with the node selected) to go back to live output.
**Save** stores the current output under a name so you can reload it as mock data later (3 saved outputs per type on Free, 10 on Plus, unlimited on Pro).
You can also pin a node's output without opening the Output panel: hover the node and click the **pin** button on its top-left edge. It stays highlighted while the output is pinned, and you click it again to clear. The button is available once the node has produced output.
## Execution states on nodes
Nodes reflect the run live on the canvas: a node animates while it is `running`, settles when `completed`, and shows error styling when it fails. Disabled nodes are skipped entirely. Toggle a node off with `D`, or hover it and click the **disable** button on its bottom-left edge; a disabled node greys out and the button turns amber until you enable it again.
## Next steps
Review past runs and replay them node by node.
Run workflows automatically from schedules, webhooks, and more.
# Setup
Source: https://docs.noclick.com/editor/setup
A checklist derived from your workflow that lists every account, value, and choice still standing between it and a real run.
The **Setup** tab reads your workflow and lists what it still needs before it can run for real. Nothing is stored: the list is derived from the workflow every time you open it, so it is always current and it empties itself as you work.
Open it from the **Setup** tab in the canvas top bar, or press `S`.
## What ends up on the list
Steps appear in the order you need them, and each one is a thing you can finish on the spot.
| Step | When it appears |
| ------------------------- | ------------------------------------------------------------------ |
| Connect an account | A node needs a credential and has none |
| Choose what it does | A node has no action picked yet, so what it needs is still unknown |
| Fill in a field | A required field is empty |
| Fill a variable | A [workflow variable](/editor/workflow-variables) has no value |
| Which agent should run it | The workflow has an agent, so you pick what runs it |
| Test Run or Connect | The finale, once the rest is clear |
Two nodes for the same service ask once. A WhatsApp trigger and the WhatsApp node the agent replies through are one account, so Setup merges them into a single step and connecting it covers both.
The rail on the left groups steps by node and tracks progress. Click any step to jump to it; the finale never counts toward the progress number, since it is a destination rather than a debt.
## Which agent should run it
If the workflow has an agent node, Setup asks what it runs on. **Platform managed** runs on NoClick's key and is ready with no account. The coding agent harnesses run on your own account, so this step shows what each one needs and whether it is already connected. See [Models and harnesses](/agents/models).
## The finale
Setup ends on something worth doing rather than an empty checklist.
For a workflow that hosts an MCP server, the last step is the connect step: numbered instructions for your coding agent, the command to run, and a live status panel that flips from waiting to **Connected** as soon as your client calls the server. See [Create your own MCP server](/mcp/hosted-servers).
For everything else, the last step is a [Test Run](/agents/test-runs): the agent handles a staged event while every tool call is answered with made-up data. You can run it before finishing the rest of setup, since nothing needs to be live for the simulation to work.
## The setup check
Above the Test Run, the finale reports where the workflow stands. It is checked against what has happened, not only against what is filled in, and each state is one of six:
| State | What it means |
| ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Setup unfinished | Something on the list above is still missing, and the lines below name what |
| Configured but unverified | Everything needed is filled in, and nothing real has come through yet |
| Registered and waiting | A trigger is registered with the service and no input has arrived |
| Deadline armed | An agent is watching for a missing update and its reporting deadline is set. See [Agent scheduling with alarms](/agents/scheduling) |
| Input received | Something real arrived. The line names the node, when it arrived, and what the run did with it |
| Nothing automatic configured | Nothing wakes this workflow on its own, so it runs when you run it |
Where an agent's send tool is pinned to one recipient, the check names that recipient, so you can see who an alert would reach before one goes out. **Refresh** rechecks without reloading the page.
The check is careful about what it claims. A Test Run is simulated, so it is never evidence that anything works end to end, and a message the provider accepted is not proof it was delivered. Only a real input, recorded on a real run, counts as one.
A trigger registers only once the path it starts can run. While a credential, an agent's instructions, or a required field is missing, the trigger is not presented as live. Fill in what is missing and the trigger registers itself the next time the workflow saves.
## Skipping a step
Nothing here blocks you. A step you skip becomes a warning that names what breaks rather than a gate: an agent with no connected account still runs, it just cannot do the part that needed the account. The same warning appears in three places, and they always agree with each other: at the end of Setup, under **To make this real** on the Test Run screen, and above the agent's chat box.
## Setup after a fork
Taking a copy of a template opens Setup full screen, which is the whole onboarding rather than a tab inside the canvas. Work through it and click the ✕ to drop into the normal workspace at any point. See [Using templates](/templates/using).
## Next steps
Declare the values Setup should ask for.
Watch the agent work before anything is live.
How accounts get connected.
Run the whole workflow or a single node.
# Keyboard shortcuts
Source: https://docs.noclick.com/editor/shortcuts
Every keyboard shortcut in the workflow editor.
`Cmd` means `Ctrl` on Windows and Linux. Single-key shortcuts are ignored while you're typing in a field. Press `Cmd` + `/` (or `?`) anywhere to open this reference in the app.
## Switching views
| Shortcut | Action |
| -------- | --------------------------------------------- |
| `W` | Workflow view |
| `I` | Interface view |
| `L` | Logs view |
| `S` | Guided setup view, on templates that have one |
| `V` | Version history |
## Canvas
| Shortcut | Action |
| ------------------------------------ | ------------------------------------------------- |
| `N` | Add a node (connects after the selected node) |
| `↑` `↓` `←` `→` | Move selection between nodes |
| `Enter` | Open the selected node's config |
| `Esc` | Defocus field / collapse the config panel |
| `Backspace` | Delete the selected nodes or edges |
| `Cmd` + `C` | Copy selected nodes (with the edges between them) |
| `Cmd` + `V` | Paste at the cursor position |
| `Cmd` + `Z` | Undo |
| `Cmd` + `Shift` + `Z` or `Cmd` + `Y` | Redo |
Undo and redo apply to the canvas, and only when you are not typing. Inside a text field, the builder chat, or a code editor, `Cmd` + `Z` undoes your text as usual. Canvas undo stops at the workflow as it loaded, so it can never take you back past the graph you opened.
## Config panel
| Shortcut | Action |
| ---------- | ------------------------------------------- |
| `F` | Toggle the config panel (Flow Helper) |
| `C` | Open the Config tab |
| `K` | Open the Credentials tab |
| `U` | Open the Nodes tab |
| `X` | Toggle the Input panel |
| `Y` | Toggle the Output panel |
| `D` | Disable / enable the selected node |
| `M` or `P` | Pin / clear the selected node's mock output |
## Running
| Shortcut | Action |
| --------------- | ------------------------ |
| `Shift` + `R` | Run or stop the workflow |
| `Cmd` + `Enter` | Run the selected node |
## Global
| Shortcut | Action |
| ------------------ | ------------------------------------- |
| `Cmd` + `K` | Open the command palette |
| `Cmd` + `/` or `?` | Open the keyboard shortcuts reference |
| `/` | Open the chat sidebar |
| `[` | Toggle the workspace sidebar |
The app also supports two-key sequences: press `G`, `N`, or `O` and then a second key to go somewhere, create something, or open the command palette scoped to a category. The in-app reference (`Cmd` + `/`) lists every sequence.
Editing isn't keyboard-only or desktop-only: on phones and tablets the canvas switches to a touch-native mode, so you can build and edit workflows by touch as well.
# Version history
Source: https://docs.noclick.com/editor/version-history
Save named snapshots of a workflow and restore any of them later.
The **Versions** control (the History icon next to the top-bar tabs, shortcut `V`) keeps named snapshots of your workflow. Save one before a risky edit and you can always get back.
## Saving a version
Click **Versions** in the top bar or press `V`.
Type a name into the input ("Save current state...") and press `Enter`. The snapshot captures the current nodes and edges.
## Restoring a version
The same input searches existing versions as you type. Click a version (or arrow down to it and press `Enter`) and confirm in the **Restore version?** dialog. Restoring replaces your current workflow with the saved snapshot.
Save a snapshot of your current state before restoring an older one, so the restore itself is reversible.
## Deleting a version
Hover a version in the list and click the trash icon, then confirm in the **Delete version?** dialog.
## Limits per plan
| Plan | Version checkpoints per workflow |
| ---- | -------------------------------- |
| Free | 3 |
| Plus | 10 |
| Pro | Unlimited |
See [Plans](/billing/plans) for the full comparison.
# Workflow variables
Source: https://docs.noclick.com/editor/workflow-variables
Declare named values once, reference them from any node config, and mark the ones each new owner of a copy should be asked for.
Workflow variables are values you declare once and reference from any node config as `{{vars.name}}`. Change the variable and every field pointing at it changes with it.
They also decide what a copy of your workflow asks its new owner for, which is what makes a workflow worth publishing as a template.
## Declare a variable
Open the canvas menu, click **Settings**, and pick **Variables** in the **Workflow Settings** dialog. The **Workflow variables** button on the canvas opens the same section directly.
Each variable has three parts:
| Part | What it does |
| --------------- | --------------------------------------------------------------------- |
| **Name** | What you reference it by. Letters, numbers, hyphens, and underscores. |
| **Value** | The value the reference resolves to. |
| **Description** | The question Setup asks when the value is missing. |
A variable left without a value becomes a step in [Setup](/editor/setup), so declaring one is also a way to say "this workflow needs a value here before it can run".
## Reference it from a node
Type `{{vars.name}}` into any node config field. When a field's whole value is a single variable reference, the config panel shows the resolved value rather than the reference, and the field's normal editor still works, so a dropdown stays a dropdown.
A bound field is labelled with the variable name and the note that edits update the variable. Click **unlink** to replace the reference with the current value; the field keeps the value and stops following the variable.
## Ask each new owner
Turn on the per-user toggle on a variable to have its value cleared whenever someone copies the workflow. The declaration and its description travel with the copy, so the new owner's Setup asks your question, while your original keeps its value and keeps running.
Use it for anything that is genuinely theirs: their repository, their channel, their calendar. Leave it off for values that are the same for everybody, which carry over as they are.
## How this relates to the Set Variable node
Both share the `{{vars.}}` namespace. Variables you declare here are the workflow's starting values; the [Set Variable node](/logic/variables-state) writes into the same namespace during a run, and a value it writes wins for that name.
Declare a variable in settings when it is a setting of the workflow. Use the Set Variable node when the value is computed while the workflow runs.
## Next steps
Where unfilled variables turn into questions.
Share a workflow other people can take a copy of.
Reference node outputs and trigger data.
Set Variable and State Manager nodes.
# Core concepts
Source: https://docs.noclick.com/getting-started/core-concepts
The vocabulary NoClick uses: workflows, nodes, edges, runs, credentials, credits, organizations, and templates.
A short glossary of the terms you'll see throughout NoClick and these docs.
## Workflow
A graph of connected nodes on the canvas. It can be an automation, an AI agent setup, a web app, or all three at once. You build workflows visually or by describing them to the [AI builder](/builder/overview). See [The canvas](/editor/canvas).
## Node
A single unit of work in a workflow. Nodes fall into a few categories:
| Category | What it does | Learn more |
| ----------- | ------------------------------------------------------------------ | -------------------------------------- |
| Trigger | Starts a run: schedule, webhook, form, inbound email, or app event | [Triggers](/triggers/overview) |
| Integration | Talks to an external service like Slack, Google Sheets, or Linear | [Integrations](/integrations/overview) |
| Logic | Controls flow: branching, loops, filters, delays, approvals, code | [Branching](/logic/branching) |
| Interface | A block in your app's UI: forms, text, uploads, custom components | [Interface blocks](/apps/blocks) |
| AI agent | An LLM with tools that reasons across steps and integrations | [AI agents](/agents/overview) |
See [Configuring nodes](/editor/configuring-nodes) for how to set a node up.
## Edge and data references
An edge connects two nodes and carries data from one to the next. Inside a node's config you reference upstream outputs (for example, a field from the previous node's result) by dragging them in or typing a reference. See [Data references](/editor/data-references).
## Run
One execution of a workflow, started manually, by a trigger, or via the API. Each run records every node's inputs and outputs so you can replay it later. See [Running and testing](/editor/running-and-testing) and [Execution logs](/editor/execution-logs).
## Credential
A stored connection to an external service: an OAuth login, an API key, or a custom OAuth client. Nodes reference credentials instead of holding secrets in their config. See [Connecting accounts](/credentials/connecting).
## Credit
NoClick's usage unit. 1 credit equals \$0.25 of underlying provider cost. Credits cover things like AI tokens on NoClick's keys and AI builder generations; runs on your own credentials and keys are free. See [What costs credits](/billing/costs).
## Organization
A shared workspace for a team. Members collaborate on the same workflows, and organization runs bill the owner's credit pool. See [Organizations](/collaboration/organizations).
## Template
A published workflow others can browse and fork from the template gallery. See [Using templates](/templates/using).
# Dashboard
Source: https://docs.noclick.com/getting-started/dashboard
One page for what needs you, what ran, and what is coming up across your workspace.
The **Dashboard** tab in the top navigation is the view over everything outside a single workflow: the things waiting on a decision from you, what has run lately, which agents are working, and what is scheduled next. Press `G` then `D` anywhere in the app to open it.
Each area is a card, and every card opens as a full page. A number next to the Dashboard tab counts the items in **Needs you**.
## Needs you
Everything that is stopped until a person acts, in one queue. Press `G` then `I` to go straight to it.
| Item | What you do |
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Approval | A run paused at an [Approval node](/logic/approvals). Edit the fields it offers, then **Approve** or **Reject**. |
| Builder question | The [AI builder](/builder/asks) parked on a question. Answer it with the same form the builder chat would show, **Skip** it, or copy a link so someone else can answer. |
| Agent proposal | An agent suggested an edit to its own workflow. **Build it** opens the workflow and hands the request to the builder, or **Dismiss** it. |
| Connect account | A link is out for a connection only a person can make. **Connect** opens it, or copy the link to send on. |
| Credential request | A request you sent someone is still unanswered. **Resend** or **Cancel** it. |
| Disconnected | A connected account stopped working. **Reconnect** opens the same dialog the credential settings use. |
| Trigger broken | A trigger never registered, so its workflow will not wake, or it registered and is [not receiving events](/triggers/app-events), or a [schedule](/triggers/schedules) was paused after its runs kept failing the same way. **Open trigger** opens the workflow with that node selected, and where NoClick can repair the trigger itself the row offers that fix as its own button, such as **Join #channel** on a Slack trigger. |
Filter the full page by **Decisions** and **To fix**, or by a single kind.
## The other cards
| Card | What it shows |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Runs** | Runs per day over the last 14 days, the share that succeeded, and each workflow's run and failure counts. Open a workflow from its row, or open a single run to see its results. Filter recent runs by **Failed**, **Waiting**, or **Running**. |
| **Agents** | Sandboxes that are up right now, and each agent's latest turns with the message that came in, the messages it sent, and every tool call. Filter turns by **Failed**. |
| **Upcoming** | Schedules, agent alarms, and delayed runs in time order. |
| **Files** | Workflow uploads and outputs, agent workspaces, and the builder's scratch folder. Preview images, video, audio, and datasets in place, and upload or delete where you have write access. |
| **Credentials** | Every connected account with its health, worst first. Click one to manage it, or a disconnected one to reconnect it. |
| **Triggers** | Schedules, webhooks, and app events that wake your workflows, split into armed and broken. A schedule paused after repeated failures is listed as broken, with the reason. **Fix** opens a broken one. |
| **Credits** | Credits used against your plan's allowance. **Usage** opens the [usage dashboard](/billing/usage-dashboard). |
| **Notifications** | Run failures, credit alerts, and your weekly digest. |
## Moving around
Opening a card puts its name in the address bar, so a drill-down is a page you can link to or come back to with the browser's Back button. Press `Esc` or click **Dashboard** at the top left to return to the grid. The section you were in is remembered while you work in other tabs, and reopening the Dashboard puts you back there.
## Next steps
* [Approvals](/logic/approvals)
* [Execution logs](/editor/execution-logs)
* [Email notifications](/billing/notifications)
# FAQ
Source: https://docs.noclick.com/getting-started/faq
Common questions about pricing, credits, credentials, limits, and getting help.
Internal tools, UIs and frontends, AI agents, and automations. You can build visually on the node canvas or describe what you want and let the [AI builder](/builder/overview) assemble it.
Free is \$0 and includes 25 credits/month (capped at 5/day) and 5 workflows. Plus is \$25/month (\$180/year) with 100 credits/month and 25 workflows. Pro is \$50/month (\$360/year) with 100 credits/month and unlimited workflows. Enterprise is custom. Full comparison in [Plans](/billing/plans).
Credits cover usage where NoClick pays a provider on your behalf: LLM and agent tokens on NoClick's keys, AI builder generations, image and video generation, X/Twitter API calls, email sends, and web scraping on NoClick's infrastructure. Integration node runs on your own connected accounts are free, and so are runs where you bring your own API key or AI subscription. Details in [What costs credits](/billing/costs).
Yes. Add your own key as a credential and those runs cost nothing: no markup, no NoClick charge.
Yes. Agent nodes support subscription sign-in: Claude Pro, Max, Teams, and Enterprise (via "Connect with Claude account"), ChatGPT Plus and Pro (via "Connect with ChatGPT account"), GitHub Copilot, and xAI SuperGrok. Subscription-authenticated runs don't consume NoClick credits; usage is governed by your provider's plan limits. See [Agent models](/agents/models).
No. When collaborators run nodes on a shared workflow, credentials resolve as the workflow owner without being copied to their account or shown to them. They only see the credential's name and an "owned by" tag. See [Credential sharing](/credentials/sharing).
Each workflow keeps 14 days or 25,000 runs of execution history, whichever limit is hit first. See [Execution logs](/editor/execution-logs).
No. Plan credits reset each calendar month, and top-up credits reset monthly within their billing period. See [Top-ups](/billing/top-ups).
The organization owner. Organization workflow runs always bill the owner's credit pool, regardless of who triggers them. See [Organizations](/collaboration/organizations).
Not yet. Published apps live at `https://yoursubdomain.noclick.app`, with the subdomain of your choice. See [Publishing](/apps/publishing).
Free allows 1 credential per node type, Plus allows 3, and Pro is unlimited. See [Connecting accounts](/credentials/connecting).
Message us from the chat bubble in the bottom right of the app, or join the [NoClick Discord](https://discord.gg/sHC2mrnss8) to ask questions and report issues. For common problems, start with [Troubleshooting](/troubleshooting/common-errors).
# Quickstart: your first workflow
Source: https://docs.noclick.com/getting-started/quickstart
Describe an automation to the AI builder, run it, and inspect the results in about 5 minutes.
In this quickstart you describe an automation in plain language, let the AI builder assemble it, and run it. No setup beyond an account.
Go to [noclick.com](https://noclick.com) and sign in. You land on the dashboard, which lists your workflows.
Click the **New Workflow** card. A blank canvas opens with a chat panel.
Type a description into the chat and send it. For example:
```text theme={null}
Every morning, fetch top posts from r/programming and email me a summary
```
The builder plans the workflow, then adds and configures the nodes: a schedule trigger for "every morning", a Reddit node that fetches top posts, an AI step that writes the summary, and a send-email node that delivers it to your account email.
The builder pauses when it needs something from you, like connecting an account for an integration. Answer in the chat or use the form it shows, and it continues building. See [Builder questions](/builder/asks) for how this works.
Click **Run** in the top bar. Nodes light up as they execute.
Click any node to open its output panel and see exactly what it produced, like the list of posts the Reddit node returned. Past runs live in the [Logs tab](/editor/execution-logs).
The schedule trigger now runs this workflow every morning without you touching it.
## Next steps
Put a form-based app on the web in a few more minutes.
Everything the builder can do, including edits to existing workflows.
# Quickstart: publish your first app
Source: https://docs.noclick.com/getting-started/quickstart-app
Build a small web app with the AI builder and publish it to your own noclick.app subdomain.
Workflows can have an interface: a grid of blocks (forms, text, results) that you publish as a standalone web app. In this quickstart you build one and put it live.
From the dashboard, click **New Workflow** and describe the app in the chat. For example:
```text theme={null}
A form that takes a topic and generates a tweet draft
```
The builder creates the workflow and the interface blocks that go with it: a form for the topic, and an output area for the draft.
Switch to the **Interface** tab in the canvas top bar (shortcut `I`). This is the visual editor for your app.
Drag blocks around the grid and resize them until the layout looks right. See [Interface blocks](/apps/blocks) for the full set of block types you can add.
Switch back to the **Workflow** tab and click the **Publish** pill at the top right of your app block's header. (A white **Publish** button also appears at the top right of the **Interface** tab.)
In the **Publish to Web** dialog, type a subdomain for `https://[subdomain].noclick.app`. Availability is checked as you type. Then click **Publish**.
Your app is live at `https://yoursubdomain.noclick.app`. Share the link with anyone.
After publishing, the button changes to **Update** (push your latest changes) and **Unpublish**. Manage all your published apps in **Settings → Published Apps**.
## Next steps
Updating, unpublishing, and managing published apps.
Build your own React blocks when the built-in ones aren't enough.
# LLM System Prompt Tuning Workflow
Source: https://docs.noclick.com/guides/llm-prompt-tuning
Learn how to iterate and test different LLM system prompts using Google Sheets and NoClick
# LLM System Prompt Tuning Workflow
A well-tuned system prompt can be the difference between an LLM that gives generic responses and one that nails your use case. But finding the right prompt takes iteration: testing different instructions against real inputs and comparing outputs.
This guide shows you how to build a workflow that automates this process. Put your prompts and test cases in a Google Sheet, run the workflow, and get all responses written back automatically.
## What You'll Build
The workflow:
1. **Reads** system prompts and test messages from Google Sheets
2. **Iterates** through each row
3. **Sends** each message to an LLM with its system prompt
4. **Writes** the response back to your sheet
## Prerequisites
* A NoClick account ([sign up here](https://noclick.com))
* A Google account for Google Sheets access
## Step 1: Set Up Your Google Sheet
Create a Google Sheet with four columns:
| Column | Purpose |
| ------------------- | ------------------------------------------ |
| **System Prompt** | Your instructions for the LLM |
| **Message** | The test input |
| **Expected Answer** | What you're hoping to get (for comparison) |
| **Actual Answer** | Where results get written (leave blank) |
Add a few rows with different system prompts you want to test. For example:
| System Prompt | Message | Expected Answer | Actual Answer |
| ------------------------------------------------- | --------------- | ---------------------------------------- | ------------- |
| You are a helpful assistant. Be concise. | What is Python? | A programming language | |
| You are a coding expert. Always include examples. | What is Python? | A programming language with code example | |
## Step 2: Import the Workflow
Click the copy icon in the top-right corner of the code block below, then paste into NoClick.
```json theme={null}
{
"type": "noclick-workflow",
"version": "1.0",
"nodes": [
{
"id": "sheets_read",
"type": "automation-google-sheets",
"position": { "x": 200, "y": 285 },
"config": {
"operation": "read",
"sheet_name": "Sheet1"
}
},
{
"id": "iteration",
"type": "iteration",
"position": { "x": 380, "y": 285 },
"config": {
"items": "{{sheets_read.values}}",
"header_row": true,
"concurrency": 3
}
},
{
"id": "agent",
"type": "agent",
"position": { "x": 585, "y": 440 },
"config": {
"model": "openrouter/openai/gpt-4o-mini",
"message": "{{iteration.item.Message}}",
"system_prompt": "{{iteration.item.System Prompt}}"
}
},
{
"id": "sheets_write",
"type": "automation-google-sheets",
"position": { "x": 920, "y": 285 },
"config": {
"range": "D{{iteration.row_number}}",
"values": "{{agent.response}}",
"operation": "write",
"sheet_name": "Sheet1"
}
}
],
"edges": [
{ "source": "sheets_read", "target": "iteration" },
{ "source": "iteration", "target": "agent" },
{ "source": "agent", "target": "sheets_write" },
{ "source": "iteration", "target": "sheets_write" }
]
}
```
To import:
1. Create a new workflow in NoClick
2. Press `Cmd/Ctrl + V` to paste the JSON
3. The workflow will appear in your canvas
## Step 3: Connect Your Google Account
Click on either Google Sheets node and select **Connect Google Account**. This opens a new tab where you authorize NoClick to access your sheets.
NoClick only accesses the specific sheets you select. We never store your Google credentials. We use secure OAuth tokens that you can revoke anytime.
## Step 4: Configure the Sheet Nodes
### Read Node (First Google Sheets Node)
1. Click the first Google Sheets node
2. Select your spreadsheet from the dropdown
3. Verify "Sheet1" is selected (or change to your sheet name)
### Write Node (Second Google Sheets Node)
1. Click the second Google Sheets node
2. Select the same spreadsheet
3. The range `D{{iteration.row_number}}` writes to column D for each row
## Step 5: Run the Workflow
Click **Run** in the top right corner. The workflow will:
1. Read all rows from your sheet
2. Process up to 3 rows concurrently (configurable in the iteration node)
3. Send each message with its system prompt to GPT-4o-mini
4. Write responses back to column D
## Step 6: Review Results
Go back to your Google Sheet. The **Actual Answer** column now has all your LLM outputs.
Compare against your expected answers, tweak your prompts, and run again. No more manual copy-pasting!
## Customization Options
### Change the LLM Model
Click the Agent node and select a different model:
* `openrouter/anthropic/claude-3-5-sonnet` - More capable, higher cost
* `openrouter/openai/gpt-4o` - OpenAI's flagship model
* `openrouter/google/gemini-pro` - Google's model
### Adjust Concurrency
In the Iteration node, change `concurrency` to control how many requests run in parallel:
* **1**: Sequential processing (slower, lower API costs)
* **3-5**: Balanced (default)
* **10+**: Fast but may hit rate limits
### Add More Test Data
Simply add more rows to your sheet, and the workflow processes all rows with data.
## Next Steps
* [Connect NoClick to your AI assistant](/mcp/setup) to build workflows conversationally
* Explore other workflow nodes like Slack notifications, email, or webhooks
* Schedule your workflow to run automatically on a timer
# SSO Setup Guide
Source: https://docs.noclick.com/guides/sso-setup
Configure Single Sign-On (SSO) with SAML 2.0 for your organization
# SSO Setup Guide
NoClick supports SAML 2.0 Single Sign-On (SSO) for enterprise organizations. This guide covers setup with popular identity providers including Okta, Azure AD, and others.
## Prerequisites
* A NoClick enterprise account
* Admin access to your identity provider (Okta, Azure AD, etc.)
* Your organization slug from NoClick
## Supported Features
* **SP-Initiated SSO** - Users start login from NoClick and are redirected to your identity provider
* **IdP-Initiated SSO** - Users start login from your identity provider dashboard
* **JIT (Just-In-Time) Provisioning** - User accounts are automatically created in NoClick on first SSO login
## Okta Setup
1. Sign in to your Okta instance as an administrator
2. Navigate to **Applications** → **Applications** and click **Browse App Catalog**
3. On the Browse App Integration Catalog page, search for and select **NoClick**
4. Click **Add Integration**
1. Go to the **Sign On** tab of the NoClick application
2. Copy the **Metadata URL** (looks like `https://your-domain.okta.com/app/.../sso/saml/metadata`)
1. Log in to NoClick as an organization admin
2. Go to **Settings** → **Organization** → **SSO**
3. Paste the Okta Metadata URL
4. Click **Enable SSO**
1. In Okta, go to your NoClick app → **Assignments**
2. Assign users or groups who should have access
### Supported Attributes
The NoClick OIN application is pre-configured to send the following attributes via SAML assertion:
| Attribute Name | Value | Description |
| -------------- | ---------------- | ------------------------------- |
| `email` | `user.email` | User's email address (required) |
| `first_name` | `user.firstName` | User's first name |
| `last_name` | `user.lastName` | User's last name |
## Azure AD Setup
1. Go to Azure Portal → **Azure Active Directory**
2. Select **Enterprise applications** → **New application**
3. Click **Create your own application**
4. Name it "NoClick" and select **Integrate any other application (Non-gallery)**
1. Go to **Single sign-on** → Select **SAML**
2. Edit **Basic SAML Configuration**:
| Field | Value |
| ---------------------- | --------------------------------------------------- |
| Identifier (Entity ID) | `https://api.noclick.com/auth/v1/sso/saml/metadata` |
| Reply URL (ACS URL) | `https://api.noclick.com/auth/v1/sso/saml/acs` |
| Relay State | `https://noclick.com/auth/callback?next=/dashboard` |
Edit **Attributes & Claims**:
| Claim name | Source attribute |
| ------------ | ---------------- |
| `email` | `user.mail` |
| `first_name` | `user.givenname` |
| `last_name` | `user.surname` |
In the **SAML Certificates** section, copy the **App Federation Metadata Url**
1. Log in to NoClick as an organization admin
2. Go to **Settings** → **Organization** → **SSO**
3. Paste the Azure AD Metadata URL
4. Click **Enable SSO**
## Other Identity Providers
For other SAML 2.0 compatible identity providers (OneLogin, Google Workspace, JumpCloud, etc.), use these values:
| Setting | Value |
| -------------------------------- | -------------------------------------------------------- |
| **ACS URL / Single Sign-On URL** | `https://api.noclick.com/auth/v1/sso/saml/acs` |
| **Entity ID / Audience** | `https://api.noclick.com/auth/v1/sso/saml/metadata` |
| **Name ID Format** | `urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress` |
| **Default RelayState** | `https://noclick.com/auth/callback?next=/dashboard` |
### Required Attributes
| Attribute | Description |
| ------------ | ------------------------------- |
| `email` | User's email address (required) |
| `first_name` | User's first name (optional) |
| `last_name` | User's last name (optional) |
## Testing SSO
### SP-Initiated Login (Recommended)
1. Go to [noclick.com/auth/sso](https://noclick.com/auth/sso)
2. Enter your organization slug
3. You'll be redirected to your identity provider
4. After authentication, you'll return to NoClick
### IdP-Initiated Login
1. Log in to your identity provider dashboard
2. Click the NoClick app tile
3. You'll be redirected directly to NoClick
IdP-initiated login requires the **Default RelayState** to be configured in your identity provider. Without it, you'll see a "SAML RelayState is not a valid UUID or URL" error.
## Troubleshooting
This occurs with IdP-initiated SSO when RelayState isn't configured. Set the **Default RelayState** in your IdP to:
```
https://noclick.com/auth/callback?next=/dashboard
```
Users are automatically added to your organization when they first log in via SSO. Ensure:
* The user's email domain matches your organization's SSO domain
* The SSO provider is correctly linked to your organization
Verify the ACS URL in your IdP matches exactly:
```
https://api.noclick.com/auth/v1/sso/saml/acs
```
Ensure the Entity ID / Audience URI matches:
```
https://api.noclick.com/auth/v1/sso/saml/metadata
```
## Support
Need help configuring SSO? Contact us at [support@noclick.com](mailto:support@noclick.com)
# Welcome to NoClick
Source: https://docs.noclick.com/index
Build internal tools, UIs, AI agents, and automations by describing them or assembling them visually.
NoClick is a platform for building internal tools, UIs, AI agents, and automations. Describe what you want in plain language and the AI builder assembles it for you, or build it yourself on the visual node canvas.
## What you can build
* **Automations** that run on a schedule, a webhook, a form submission, an inbound email, or an event in a connected app.
* **AI agents** that use your integrations as tools, hold threaded conversations on Slack, Telegram, WhatsApp, or email, and wake themselves up on a schedule.
* **Internal tools and apps** with forms, tables, media, and custom React components, published to your own noclick.app subdomain.
* **MCP servers** that expose a workflow's tools to Claude, ChatGPT, or any MCP client.
## How building works
1. **Describe it.** Tell the AI builder what you want. It adds the nodes, wires them, and fills in the configuration, asking you only when it needs an account or a value only you know.
2. **Refine it.** Adjust anything on the canvas: pick operations, connect accounts, reference data between nodes, and test nodes one at a time.
3. **Run it.** Trigger runs manually or automatically, then inspect every run in the logs with full replay.
4. **Share it.** Publish an app, invite collaborators to edit live, or share the workflow as a template.
## Start here
Describe an automation in the chat and run it, in about 5 minutes.
Turn a workflow into a web app and publish it to your own noclick.app subdomain.
## Explore
The AI builder, the workflow editor, triggers, logic nodes, agents, and apps.
Browse the \~60 services NoClick connects to and what each node can do.
Control NoClick from Claude Code, Cursor, or any MCP client, and host your own MCP servers.
Run workflows from your own code with the TypeScript and Python SDKs.
Prompting guidance and troubleshooting for runs, webhooks, and credentials.
What shipped, day by day.
# Affinity
Source: https://docs.noclick.com/integrations/affinity
Connect Affinity to your workflows: 60 operations across 11 categories.
The Affinity node adds Affinity operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Affinity node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Affinity under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Generate your API key from Settings → API in your Affinity account. API access requires Premium, Scale, Advanced, or Enterprise tier.
[Get your credentials here](https://support.affinity.co/s/article/Getting-started-with-the-Affinity-API-FAQs).
## Operations
### Account
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ----------- |
| **Get Authenticated User Info** | `get_authenticated_user_info` | |
| **Get Rate Limit Info** | `get_rate_limit_info` | |
| **Get Relationship Strengths** | `get_relationship_strengths` | |
### Custom field
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ----------- |
| **Create Custom Field** | `create_custom_field` | |
| **Create Field Value** | `create_field_value` | |
| **Delete Custom Field** | `delete_custom_field` | |
| **Delete Field Value** | `delete_field_value` | |
| **List Custom Fields** | `list_custom_fields` | |
| **List Field Value Changes** | `list_field_value_changes` | |
| **List Field Values** | `list_field_values` | |
| **Update Field Value** | `update_field_value` | |
### File
| Operation | ID | Description |
| ------------------ | ---------------- | ----------- |
| **Download File** | `download_file` | |
| **Get File by Id** | `get_file_by_id` | |
| **List Files** | `list_files` | |
| **Upload File** | `upload_file` | |
### List
| Operation | ID | Description |
| ------------------ | ---------------- | ----------- |
| **Create List** | `create_list` | |
| **Get List by Id** | `get_list_by_id` | |
| **List Lists** | `list_lists` | |
### List entry
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ----------- |
| **Create List Entry** | `create_list_entry` | |
| **Delete List Entry** | `delete_list_entry` | |
| **Get List Entry** | `get_list_entry` | |
| **Get List Entry Fields** | `get_list_entry_fields` | |
| **List List Entries** | `list_list_entries` | |
| **List List Fields** | `list_list_fields` | |
| **Update List Entry Fields** | `update_list_entry_fields` | |
### Note
| Operation | ID | Description |
| ------------------ | ---------------- | ----------- |
| **Create Note** | `create_note` | |
| **Delete Note** | `delete_note` | |
| **Get Note by Id** | `get_note_by_id` | |
| **List Notes** | `list_notes` | |
| **Update Note** | `update_note` | |
### Opportunity
| Operation | ID | Description |
| ------------------------- | ----------------------- | ----------- |
| **Create Opportunity** | `create_opportunity` | |
| **Delete Opportunity** | `delete_opportunity` | |
| **Get Opportunity by Id** | `get_opportunity_by_id` | |
| **List Opportunities** | `list_opportunities` | |
| **Update Opportunity** | `update_opportunity` | |
### Organization
| Operation | ID | Description |
| --------------------------- | ------------------------- | ----------- |
| **Create Organization** | `create_organization` | |
| **Delete Organization** | `delete_organization` | |
| **Get Company by Id** | `get_company_by_id` | |
| **Get Organization by Id** | `get_organization_by_id` | |
| **Get Organization Fields** | `get_organization_fields` | |
| **List Companies** | `list_companies` | |
| **List Company Fields** | `list_company_fields` | |
| **List Organizations** | `list_organizations` | |
| **Update Organization** | `update_organization` | |
### Person
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Create Person** | `create_person` | |
| **Delete Person** | `delete_person` | |
| **Get Person by Id** | `get_person_by_id` | |
| **Get Person Fields** | `get_person_fields` | |
| **List Persons** | `list_persons` | |
| **Update Person** | `update_person` | |
### Reminder
| Operation | ID | Description |
| ---------------------- | -------------------- | ----------- |
| **Create Reminder** | `create_reminder` | |
| **Delete Reminder** | `delete_reminder` | |
| **Get Reminder by Id** | `get_reminder_by_id` | |
| **List Reminders** | `list_reminders` | |
| **Update Reminder** | `update_reminder` | |
### Webhook
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Create Webhook** | `create_webhook` | |
| **Delete Webhook** | `delete_webhook` | |
| **Get Webhook by Id** | `get_webhook_by_id` | |
| **List Webhooks** | `list_webhooks` | |
| **Update Webhook** | `update_webhook` | |
# Airtable
Source: https://docs.noclick.com/integrations/airtable
Connect Airtable to your workflows: 24 operations across 5 categories.
The Airtable node adds Airtable operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Airtable node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Airtable under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Personal access token
Enter the values manually when creating the credential.
[Get your credentials here](https://airtable.com/create/tokens).
### OAuth
Sign in with your Airtable account when prompted; no keys to copy.
NoClick requests the following permissions:
* `data.records:read`
* `data.records:write`
* `data.recordComments:read`
* `data.recordComments:write`
* `schema.bases:read`
* `schema.bases:write`
* `webhook:manage`
## Operations
### Base
| Operation | ID | Description |
| ------------------------- | ----------------------- | -------------------------------------------- |
| **Fetch Base Schema** | `fetch_base_schema` | Get the schema (tables and fields) of a base |
| **List Accessible Bases** | `list_accessible_bases` | List all accessible bases |
### Comment
| Operation | ID | Description |
| ------------------------- | ----------------------- | ---------------------------- |
| **Create Record Comment** | `create_record_comment` | Create a comment on a record |
| **Delete Record Comment** | `delete_record_comment` | Delete a comment |
| **List Record Comments** | `list_record_comments` | List comments on a record |
| **Update Record Comment** | `update_record_comment` | Update a comment |
### Record
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | ----------------------------------------------------------------- |
| **Create Multiple Records** | `create_multiple_records` | Create one or more records (batch create up to 10) |
| **Delete Multiple Records** | `delete_multiple_records` | Delete one or more records (batch delete up to 10) |
| **Delete Single Record** | `delete_single_record` | Delete a single record by ID |
| **Fetch Single Record** | `fetch_single_record` | Get a single record by ID |
| **List Table Records** | `list_table_records` | List records from a table with filtering, sorting, and pagination |
| **Update Multiple Records** | `update_multiple_records` | Update one or more records (batch update up to 10) |
| **Update Single Record** | `update_single_record` | Update a single record by ID |
| **Upsert Records by Field Match** | `upsert_records_by_field_match` | Create or update records based on field matching (upsert) |
### Table
| Operation | ID | Description |
| ------------------------- | ----------------------- | ------------------------------------ |
| **Create New Table** | `create_new_table` | Create a new table in a base |
| **Create Table Field** | `create_table_field` | Create a new field in a table |
| **Update Table Field** | `update_table_field` | Update a field's name or description |
| **Update Table Metadata** | `update_table_metadata` | Update a table's name or description |
### Webhook
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ------------------------------------------ |
| **Create Base Webhook** | `create_base_webhook` | Create a webhook for a base |
| **Delete Base Webhook** | `delete_base_webhook` | Delete a webhook |
| **Enable Webhook Notifications** | `enable_webhook_notifications` | Enable notifications for a webhook |
| **List Base Webhooks** | `list_base_webhooks` | List all webhooks for a base |
| **List Webhook Payloads** | `list_webhook_payloads` | List payloads for a webhook |
| **Refresh Webhook Expiration** | `refresh_webhook_expiration` | Refresh a webhook to extend its expiration |
# Apify
Source: https://docs.noclick.com/integrations/apify
Connect Apify to your workflows: 82 operations across 11 categories.
The Apify node adds Apify operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Apify node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Apify under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://console.apify.com/settings/integrations).
## Operations
### Account
| Operation | ID | Description |
| --------------------------- | ------------------------- | ---------------------------- |
| **Get Monthly Usage Stats** | `get_monthly_usage_stats` | Get monthly usage statistics |
### Actor
| Operation | ID | Description |
| ---------------------------------------- | -------------------------------------- | ----------------------------------------------------------------- |
| **Abort Actor Build** | `abort_actor_build` | Abort a running Actor build |
| **Abort Actor Run** | `abort_actor_run` | Abort a running Actor |
| **Create Actor** | `create_actor` | Create a new Actor |
| **Delete Actor** | `delete_actor` | Delete an Actor |
| **Get Actor** | `get_actor` | Get information about a specific Actor |
| **Get Actor Build** | `get_actor_build` | Get details of a specific Actor build |
| **Get Actor Build Log** | `get_actor_build_log` | Get Actor build log |
| **Get Actor Last Run** | `get_actor_last_run` | Get the last run of an Actor |
| **Get Actor Run** | `get_actor_run` | Get details of a specific Actor run |
| **Get Actor Run Log** | `get_actor_run_log` | Get the log of an Actor run |
| **List Actor Builds** | `list_actor_builds` | List builds for an Actor |
| **List Actor Runs** | `list_actor_runs` | List runs for a specific Actor |
| **List Actors** | `list_actors` | List Actors available to the user |
| **Metamorphose Actor Run** | `metamorphose_actor_run` | Metamorphose (transform) an Actor run into another Actor |
| **Reboot Actor Run** | `reboot_actor_run` | Reboot an Actor run |
| **Resurrect Actor Run** | `resurrect_actor_run` | Resurrect a finished Actor run |
| **Run Actor Asynchronously** | `run_actor_asynchronously` | Run an Actor asynchronously |
| **Run Actor Sync and Get Dataset Items** | `run_actor_sync_and_get_dataset_items` | Run an Actor synchronously and get dataset items directly |
| **Run Actor Synchronously** | `run_actor_synchronously` | Run an Actor synchronously and wait for results (max 300 seconds) |
| **Start Actor Build** | `start_actor_build` | Start a new Actor build |
| **Update Actor** | `update_actor` | Update an existing Actor |
### Actor version
| Operation | ID | Description |
| ------------------------ | ---------------------- | -------------------------------- |
| **Create Actor Version** | `create_actor_version` | Create a new Actor version |
| **Delete Actor Version** | `delete_actor_version` | Delete an Actor version |
| **Get Actor Version** | `get_actor_version` | Get a specific Actor version |
| **List Actor Versions** | `list_actor_versions` | List versions of an Actor |
| **Update Actor Version** | `update_actor_version` | Update an existing Actor version |
### Dataset
| Operation | ID | Description |
| -------------------------- | ------------------------ | ------------------------ |
| **Create Dataset** | `create_dataset` | Create a named dataset |
| **Delete Dataset** | `delete_dataset` | Delete a dataset |
| **Get Dataset** | `get_dataset` | Get dataset metadata |
| **Get Dataset Items** | `get_dataset_items` | Get items from a dataset |
| **Get Dataset Statistics** | `get_dataset_statistics` | Get dataset statistics |
| **List Datasets** | `list_datasets` | List datasets |
| **Push Items to Dataset** | `push_items_to_dataset` | Push items to a dataset |
### Environment variable
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ----------------------------------------------- |
| **Create Environment Variable** | `create_environment_variable` | Create a new environment variable |
| **Delete Environment Variable** | `delete_environment_variable` | Delete an environment variable |
| **Get Environment Variable** | `get_environment_variable` | Get a specific environment variable |
| **List Environment Variables** | `list_environment_variables` | List environment variables for an Actor version |
| **Update Environment Variable** | `update_environment_variable` | Update an environment variable |
### Key-Value store
| Operation | ID | Description |
| ----------------------------- | --------------------------- | -------------------------------------- |
| **Create Key Value Store** | `create_key_value_store` | Create a named key-value store |
| **Delete Key Value Record** | `delete_key_value_record` | Delete a record from a key-value store |
| **Delete Key Value Store** | `delete_key_value_store` | Delete a key-value store |
| **Get Key Value Record** | `get_key_value_record` | Get a record from a key-value store |
| **Get Key Value Store** | `get_key_value_store` | Get key-value store metadata |
| **List Key Value Store Keys** | `list_key_value_store_keys` | List keys in a key-value store |
| **List Key Value Stores** | `list_key_value_stores` | List key-value stores |
| **Put Key Value Record** | `put_key_value_record` | Put a record in a key-value store |
### Request queue
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ----------------------------------- |
| **Add Request to Queue** | `add_request_to_queue` | Add a request to a queue |
| **Create Request Queue** | `create_request_queue` | Create a named request queue |
| **Delete Request from Queue** | `delete_request_from_queue` | Delete a request from a queue |
| **Delete Request Queue** | `delete_request_queue` | Delete a request queue |
| **Get Request from Queue** | `get_request_from_queue` | Get a specific request from a queue |
| **Get Request Queue** | `get_request_queue` | Get request queue metadata |
| **List Queue Requests** | `list_queue_requests` | List requests in a queue |
| **List Request Queues** | `list_request_queues` | List request queues |
| **Update Request in Queue** | `update_request_in_queue` | Update a request in a queue |
### Schedule
| Operation | ID | Description |
| ------------------- | ----------------- | --------------------------- |
| **Create Schedule** | `create_schedule` | Create a new schedule |
| **Delete Schedule** | `delete_schedule` | Delete a schedule |
| **Get Schedule** | `get_schedule` | Get schedule details |
| **List Schedules** | `list_schedules` | List schedules |
| **Update Schedule** | `update_schedule` | Update an existing schedule |
### Task
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | ---------------------------------------------------- |
| **Create Actor Task** | `create_actor_task` | Create a new Actor Task |
| **Delete Actor Task** | `delete_actor_task` | Delete an Actor Task |
| **Get Actor Task** | `get_actor_task` | Get details of a specific Actor Task |
| **Get Task Last Run** | `get_task_last_run` | Get the last run of a Task |
| **List Actor Tasks** | `list_actor_tasks` | List Actor Tasks |
| **List Task Runs** | `list_task_runs` | List runs for a specific Task |
| **Run Actor Task Asynchronously** | `run_actor_task_asynchronously` | Run an Actor Task asynchronously |
| **Run Actor Task Synchronously** | `run_actor_task_synchronously` | Run an Actor Task synchronously and wait for results |
| **Update Actor Task** | `update_actor_task` | Update an existing Actor Task |
### User
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ------------------------------------ |
| **Get Account Limits and Usage** | `get_account_limits_and_usage` | Get account limits and current usage |
| **Get Current User** | `get_current_user` | Get current user information |
| **Get Public User Info** | `get_public_user_info` | Get public information about a user |
| **Update Account Limits** | `update_account_limits` | Update account limits |
### Webhook
| Operation | ID | Description |
| --------------------------- | ------------------------- | ------------------------------------------ |
| **Create Webhook** | `create_webhook` | Create a new webhook |
| **Delete Webhook** | `delete_webhook` | Delete a webhook |
| **Get Webhook** | `get_webhook` | Get webhook details |
| **Get Webhook Dispatch** | `get_webhook_dispatch` | Get details of a specific webhook dispatch |
| **List Webhook Dispatches** | `list_webhook_dispatches` | List webhook dispatch history |
| **List Webhooks** | `list_webhooks` | List webhooks |
| **Test Webhook** | `test_webhook` | Test a webhook by sending a sample request |
| **Update Webhook** | `update_webhook` | Update an existing webhook |
# Apollo
Source: https://docs.noclick.com/integrations/apollo
Connect Apollo to your workflows: 48 operations across 9 categories.
The Apollo node adds Apollo operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Apollo node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Apollo under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://developer.apollo.io/keys#/keys).
### OAuth
Sign in with your Apollo account when prompted; no keys to copy.
NoClick requests the following permissions:
* `read_user_profile`
* `people_match`
* `people_bulk_match`
* `organizations_enrich`
* `organizations_bulk_enrich`
* `organizations_search`
* `organization_read`
* `mixed_people_api_search`
* `mixed_companies_search`
* `contacts_search`
* `contact_read`
* `contact_write`
* `contact_update`
* `contacts_bulk_create`
* `contacts_bulk_update`
* `contact_stages_list`
* `contact_stages_update`
* `contact_owners_update`
* `account_read`
* `account_write`
* `account_update`
* `accounts_search`
* `account_bulk_create`
* `account_stages_list`
* `account_stages_update`
* `account_owners_update`
* `opportunity_read`
* `opportunity_write`
* `opportunity_update`
* `opportunities_list`
* `opportunity_stages_list`
* `emailer_campaigns_search`
* `emailer_campaigns_create`
* `emailer_campaigns_update`
* `emailer_campaigns_add_contact_ids`
* `emailer_campaigns_remove_or_stop_contact_ids`
* `emailer_schedules_list`
* `emailer_messages_search`
* `tasks_create`
* `tasks_list`
* `notes_list`
* `users_list`
* `tags_list`
* `custom_fields_list`
* `custom_field_write`
* `lists_create`
* `lists_update`
* `lists_add_entities`
* `lists_remove_entities`
* `organizations_job_posting`
* `organizations_news_articles`
* `person_read`
## Operations
### Account
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ------------------------------------------ |
| **Create Account** | `create_account` | Create a new account in Apollo |
| **Create Multiple Accounts** | `create_multiple_accounts` | Create multiple accounts at once |
| **Get Account Details** | `get_account_details` | View a single account |
| **List Account Stages** | `list_account_stages` | List all account stages |
| **Search Accounts** | `search_accounts` | Search for accounts |
| **Update Account Details** | `update_account_details` | Update an existing account |
| **Update Account Ownership** | `update_account_ownership` | Update owner for multiple accounts |
| **Update Account Stage Bulk** | `update_account_stage_bulk` | Update account stage for multiple accounts |
| **Update Multiple Accounts** | `update_multiple_accounts` | Update multiple accounts at once |
### Activity
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ----------------------- |
| **Create Call Activity Record** | `create_call_activity_record` | Create a call record |
| **Create Task** | `create_task` | Create a new task |
| **Search Call Records** | `search_call_records` | Search for call records |
| **Search Tasks** | `search_tasks` | Search for tasks |
| **Update Call Record** | `update_call_record` | Update a call record |
### Contact
| Operation | ID | Description |
| ------------------------------------- | ----------------------------------- | ------------------------------------------ |
| **Add Contacts to Outreach Sequence** | `add_contacts_to_outreach_sequence` | Add contacts to a sequence |
| **Create Contact** | `create_contact` | Create a new contact |
| **Create Multiple Contacts** | `create_multiple_contacts` | Create multiple contacts at once |
| **Get Contact Details** | `get_contact_details` | View a single contact |
| **List Contact Stages** | `list_contact_stages` | List all contact stages |
| **Search Contacts** | `search_contacts` | Search for contacts |
| **Update Contact Details** | `update_contact_details` | Update an existing contact |
| **Update Contact Ownership** | `update_contact_ownership` | Update owner for multiple contacts |
| **Update Contact Sequence Status** | `update_contact_sequence_status` | Update a contact's status in a sequence |
| **Update Contact Stage Bulk** | `update_contact_stage_bulk` | Update contact stage for multiple contacts |
| **Update Multiple Contacts** | `update_multiple_contacts` | Update multiple contacts at once |
### Deal
| Operation | ID | Description |
| ----------------------- | --------------------- | ----------------------- |
| **Create Deal** | `create_deal` | Create a new deal |
| **Get Deal Details** | `get_deal_details` | View a single deal |
| **List Deal Stages** | `list_deal_stages` | List all deal stages |
| **List Deals** | `list_deals` | List all deals |
| **Update Deal Details** | `update_deal_details` | Update an existing deal |
### News
| Operation | ID | Description |
| ------------------------------------- | ----------------------------------- | -------------------------------------------- |
| **Search Organization News Articles** | `search_organization_news_articles` | Search for news articles about organizations |
### Organization
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | ---------------------------------------------- |
| **Enrich Multiple Organizations** | `enrich_multiple_organizations` | Enrich data for up to 10 organizations at once |
| **Enrich Single Organization** | `enrich_single_organization` | Enrich data for a single organization |
| **Get Organization Details** | `get_organization_details` | Get complete information for an organization |
| **Get Organization Job Postings** | `get_organization_job_postings` | Get job postings for an organization |
| **Search Organizations in Apollo** | `search_organizations_in_apollo` | Search for organizations in Apollo's database |
### Person
| Operation | ID | Description |
| --------------------------- | ------------------------- | --------------------------------------- |
| **Enrich Multiple People** | `enrich_multiple_people` | Enrich data for up to 10 people at once |
| **Enrich Single Person** | `enrich_single_person` | Enrich data for a single person |
| **Search People in Apollo** | `search_people_in_apollo` | Search Apollo's database for prospects |
### Sequence and email
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | --------------------------------------- |
| **Get Email Account List** | `get_email_account_list` | Get list of email accounts |
| **Get Sequence Email Statistics** | `get_sequence_email_statistics` | Get email statistics for a sequence |
| **Search Outreach Sequences** | `search_outreach_sequences` | Search for sequences |
| **Search Sequence Emails** | `search_sequence_emails` | Search for outreach emails in sequences |
### Workspace configuration
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | ----------------------------------------- |
| **Create Custom Field** | `create_custom_field` | Create a custom field |
| **Get Api Usage and Limits** | `get_api_usage_and_limits` | Get API usage statistics and rate limits |
| **Get Organization Custom Fields** | `get_organization_custom_fields` | Get all custom fields in the organization |
| **Get Organization Lists** | `get_organization_lists` | Get all lists in the organization |
| **Get Organization Users** | `get_organization_users` | Get list of users in the organization |
# Google AppSheet
Source: https://docs.noclick.com/integrations/appsheet
Connect Google AppSheet to your workflows: 12 operations across 4 categories.
The Google AppSheet node adds Google AppSheet operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google AppSheet also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Google AppSheet.
You can wire the Google AppSheet node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google AppSheet under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://support.google.com/appsheet/answer/10105769).
## Operations
### Actions
| Operation | ID | Description | Trigger |
| ------------------------ | --------------- | ------------------------------------------------------------------------- | ------- |
| **Invoke Custom Action** | `invoke_action` | Run a data-change action predefined in the app against the supplied rows. | |
### Find
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------------------------------- | ------- |
| **Find All Rows** | `find_all_rows` | Return every row in the table (empty Rows, no Selector). | |
| **Find Rows by Key** | `find_rows` | Read specific rows by key; provide key values in Rows. | |
| **Find with Selector** | `find_with_selector` | Read rows matching an AppSheet Selector expression (FILTER/SELECT/ORDERBY/TOP). | |
### Rows
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ----------------------------------------------------------------------------------- | ------- |
| **Add Rows** | `add_rows` | Insert one or more new rows into a table. | |
| **Delete Rows** | `delete_rows` | Delete existing rows; each row must include the key column value(s). | |
| **Edit Rows** | `edit_rows` | Update existing rows; each row must include the key column(s) plus changed columns. | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------- | ----------------- | ---------------------------------------------------------------------------------- | ------- |
| **On Any Data Change** | `on_data_change` | Fires on any data change (AppSheet bot event: 'Adds and updates' / 'All changes'). | Yes |
| **On Rows Added** | `on_rows_added` | Fires when rows are added (AppSheet bot event: 'Adds only'). | Yes |
| **On Rows Deleted** | `on_rows_deleted` | Fires when rows are deleted (AppSheet bot event: 'Deletes only'). | Yes |
| **On Rows Updated** | `on_rows_updated` | Fires when rows are updated (AppSheet bot event: 'Updates only'). | Yes |
| **On Schedule** | `on_schedule` | Fires on a schedule (AppSheet bot event: 'Scheduled'). | Yes |
# Asana
Source: https://docs.noclick.com/integrations/asana
Connect Asana to your workflows: 122 operations across 12 categories.
The Asana node adds Asana operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Asana also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Asana.
You can wire the Asana node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Asana under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Asana account when prompted; no keys to copy.
[Get your credentials here](https://app.asana.com/0/my-apps).
NoClick requests the following permissions:
* `default`
### Personal access token
Enter the values manually when creating the credential.
[Get your credentials here](https://app.asana.com/0/my-apps).
## Operations
### Attachments
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------- | ------- |
| **Delete Attachment** | `delete_attachment` | Delete a file attachment. | |
| **Get Task Attachments** | `get_task_attachments` | List file attachments on a task. | |
### Comments
| Operation | ID | Description | Trigger |
| ----------------------- | --------------- | ---------------------------------------------------------- | ------- |
| **Add Comment** | `add_comment` | Add a comment (story) to a task. | |
| **Get Story / Comment** | `get_story` | Get a single story (comment or activity event) by its gid. | |
| **List Comments** | `list_comments` | List stories (comments + activity) on a task. | |
### Custom fields
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | --------------------------------------------------------------- | ------- |
| **Add Custom Field to Project** | `add_custom_field_to_project` | Add a custom field to a project. | |
| **Create Custom Field** | `create_custom_field` | Create a custom field definition in a workspace. | |
| **Delete Custom Field** | `delete_custom_field` | Delete a custom field definition from the workspace. | |
| **Get Custom Field** | `get_custom_field` | Get a custom field definition. | |
| **Get Project Custom Fields** | `get_project_custom_fields` | List custom field settings (definitions) attached to a project. | |
| **Remove Custom Field from Project** | `remove_custom_field_from_project` | Remove a custom field from a project. | |
| **Set Task Custom Field** | `set_task_custom_field` | Set a custom field value on a task. | |
| **Update Custom Field** | `update_custom_field` | Update a custom field's name, description, or settings. | |
### Goals
| Operation | ID | Description | Trigger |
| ---------------------------- | ----------------------- | ----------------------------------------------------------------- | ------- |
| **Add Goal Followers** | `add_goal_followers` | Add followers / collaborators to a goal. | |
| **Create Goal** | `create_goal` | Create a goal in a workspace or team. | |
| **Delete Goal** | `delete_goal` | Delete a goal. | |
| **Get Goal** | `get_goal` | Get a single goal's details. | |
| **Get Parent Goals** | `get_goal_parent_goals` | List parent goals for a goal (supporting relationship traversal). | |
| **List Goals** | `list_goals` | List goals in a workspace (requires premium/business plan). | |
| **Remove Goal Followers** | `remove_goal_followers` | Remove followers / collaborators from a goal. | |
| **Set Goal Metric** | `set_goal_metric` | Set a metric on a goal (defines how goal progress is measured). | |
| **Update Goal** | `update_goal` | Update a goal's name, status, notes, or dates. | |
| **Update Goal Metric Value** | `update_goal_metric` | Update the current value of a goal's metric. | |
### Portfolios
| Operation | ID | Description | Trigger |
| ------------------------------ | -------------------------- | ---------------------------------------------------- | ------- |
| **Add Item to Portfolio** | `add_portfolio_item` | Add a project to a portfolio. | |
| **Add Portfolio Members** | `add_portfolio_members` | Add members to a portfolio. | |
| **Create Portfolio** | `create_portfolio` | Create a new portfolio. | |
| **Delete Portfolio** | `delete_portfolio` | Delete a portfolio. | |
| **Get Portfolio** | `get_portfolio` | Get a single portfolio's details. | |
| **Get Portfolio Items** | `get_portfolio_items` | List projects (items) in a portfolio. | |
| **List Portfolios** | `list_portfolios` | List portfolios accessible to a user in a workspace. | |
| **Remove Item from Portfolio** | `remove_portfolio_item` | Remove a project from a portfolio. | |
| **Remove Portfolio Members** | `remove_portfolio_members` | Remove members from a portfolio. | |
| **Update Portfolio** | `update_portfolio` | Update a portfolio's name or public setting. | |
### Projects
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------------------------------------------------------- | ------- |
| **Add Project Followers** | `add_project_followers` | Add followers to a project. | |
| **Add Project Member** | `add_project_member` | Add users to a project as members. | |
| **Create Project** | `create_project` | Create a new project in a workspace (optionally in a team). | |
| **Create Project Brief** | `create_project_brief` | Create a project brief (rich-text overview for a project). | |
| **Create Project from Template** | `create_project_from_template` | Instantiate a new project from a project template. | |
| **Create Project Status** | `create_project_status` | Post a status update on a project (On Track, At Risk, Off Track). | |
| **Create Section** | `create_section` | Create a section in a project. | |
| **Create Status Update** | `create_status_update` | Create a status update for a project, portfolio, or goal (modern API). | |
| **Delete Project** | `delete_project` | Delete a project. | |
| **Delete Project Brief** | `delete_project_brief` | Delete a project brief. | |
| **Delete Project Status** | `delete_project_status` | Delete a project status update. | |
| **Delete Section** | `delete_section` | Delete a section from a project. | |
| **Delete Status Update** | `delete_status_update` | Delete a status update. | |
| **Duplicate Project** | `duplicate_project` | Duplicate a project (creates an async Job, poll the returned job\_gid for completion). | |
| **Get Job Status** | `get_job` | Poll an async job (e.g. from duplicate\_project / create\_project\_from\_template). | |
| **Get Project** | `get_project` | Get a single project's details. | |
| **Get Project Brief** | `get_project_brief` | Get a project brief. | |
| **Get Project Members** | `get_project_members` | List members/memberships of a project. | |
| **Get Project Statuses** | `get_project_statuses` | List status updates on a project. | |
| **Get Project Task Counts** | `get_project_task_counts` | Get task counts for a project (total, completed, incomplete, etc.). | |
| **Get Section** | `get_section` | Get a single section by its gid. | |
| **Get Status Updates** | `get_status_updates` | List status updates for a project, portfolio, or goal (modern API). | |
| **List Project Templates** | `list_project_templates` | List project templates available in a workspace or team. | |
| **List Projects** | `list_projects` | List projects, optionally filtered by workspace. | |
| **List Sections** | `list_sections` | List sections within a project. | |
| **Remove Project Followers** | `remove_project_followers` | Remove followers from a project. | |
| **Remove Project Member** | `remove_project_member` | Remove users from a project. | |
| **Save Project as Template** | `save_project_as_template` | Save an existing project as a project template. | |
| **Update Project** | `update_project` | Update a project's name, notes, or archived status. | |
| **Update Project Brief** | `update_project_brief` | Update a project brief's title or content. | |
| **Update Section** | `update_section` | Rename or update a section. | |
### Tags
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------ | ------- |
| **Add Tag to Task** | `add_tag_to_task` | Tag a task. | |
| **Create Tag** | `create_tag` | Create a new tag in a workspace. | |
| **Delete Tag** | `delete_tag` | Delete a tag. | |
| **Get Tag** | `get_tag` | Get a tag by its gid. | |
| **Get Tags for Task** | `get_tags_for_task` | List all tags on a task. | |
| **Get Tasks for Tag** | `get_tasks_for_tag` | List tasks that have a specific tag. | |
| **List Tags** | `list_tags` | List tags in a workspace. | |
| **Remove Tag from Task** | `remove_tag_from_task` | Remove a tag from a task. | |
| **Update Tag** | `update_tag` | Update a tag's name or color. | |
### Tasks
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | --------------------------------------------------------------------- | ------- |
| **Add Followers** | `add_followers` | Add followers to a task. | |
| **Add Task Dependencies** | `add_task_dependencies` | Set tasks that must be completed before this task (dependencies). | |
| **Add Task Dependents** | `add_task_dependents` | Mark tasks as depending on this task (add dependents). | |
| **Add Task to Project** | `add_task_to_project` | Add a task to a project (optionally into a section). | |
| **Add Task to Section** | `add_task_to_section` | Move/place a task into a project section. | |
| **Create Subtask** | `create_subtask` | Create a subtask under a parent task. | |
| **Create Task** | `create_task` | Create a task (name, notes, assignee, due date, projects). | |
| **Create Task from Template** | `create_task_from_template` | Instantiate a task from a task template. | |
| **Delete Story / Comment** | `delete_story` | Delete a comment (story) from a task. | |
| **Delete Task** | `delete_task` | Delete a task. | |
| **Duplicate Task** | `duplicate_task` | Duplicate a task (optionally into the same project under a new name). | |
| **Get My Tasks** | `get_user_task_list_tasks` | List tasks in a user's My Tasks list. | |
| **Get Projects for Task** | `get_task_projects` | List projects that a task belongs to. | |
| **Get Task** | `get_task` | Get a single task with its fields. | |
| **Get Task Dependencies** | `get_task_dependencies` | Get tasks that a task depends on (its dependencies). | |
| **Get Task Dependents** | `get_task_dependents` | Get tasks that depend on this task (dependents / blocking tasks). | |
| **Get Tasks in Section** | `get_section_tasks` | List tasks in a specific section. | |
| **Get User Task List** | `get_user_task_list` | Get a user's personal 'My Tasks' task list. | |
| **List Subtasks** | `list_subtasks` | List a task's subtasks. | |
| **List Task Templates** | `list_task_templates` | List task templates in a project. | |
| **List Tasks in Project** | `list_project_tasks` | List tasks belonging to a project. | |
| **Remove Followers** | `remove_followers` | Remove followers from a task. | |
| **Remove Task Dependencies** | `remove_task_dependencies` | Remove task dependencies. | |
| **Remove Task Dependents** | `remove_task_dependents` | Remove dependent tasks from this task. | |
| **Remove Task from Project** | `remove_task_from_project` | Remove a task from a project. | |
| **Search Tasks** | `search_tasks` | Search tasks in a workspace by text. | |
| **Set Task Parent** | `set_task_parent` | Set or change the parent task of a task (makes it a subtask). | |
| **Update Story / Comment** | `update_story` | Edit the text of a comment (story) on a task. | |
| **Update Task** | `update_task` | Update a task (rename, reassign, complete, set due date). | |
### Time tracking
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | --------------------------------------------------------------- | ------- |
| **Create Time Tracking Entry** | `create_time_tracking_entry` | Log a time entry on a task. | |
| **Delete Time Tracking Entry** | `delete_time_tracking_entry` | Delete a time tracking entry. | |
| **Get Time Tracking Entries** | `get_time_tracking_entries` | List time tracking entries on a task. | |
| **Update Time Tracking Entry** | `update_time_tracking_entry` | Update the duration or date of an existing time tracking entry. | |
### Users
| Operation | ID | Description | Trigger |
| -------------------- | ------------ | ----------------------------------------------------------- | ------- |
| **Get Current User** | `get_me` | Get the authenticated user (handy for testing credentials). | |
| **Get User** | `get_user` | Get a specific user by their gid. | |
| **List Users** | `list_users` | List users in a workspace (resolve assignees/followers). | |
### Workspaces
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------------------------------------- | ------- |
| **Add Team Member** | `add_team_member` | Add a user to a team. | |
| **Add Workspace User** | `add_workspace_user` | Add a user (invite them) to a workspace or organization. | |
| **Get Team** | `get_team` | Get a team's details. | |
| **Get Team Members** | `get_team_members` | List users in a team. | |
| **List Custom Fields** | `list_custom_fields` | List custom fields available in a workspace. | |
| **List Teams** | `list_teams` | List teams in an organization. | |
| **List Workspace Members** | `list_workspace_members` | List all member records for a workspace. | |
| **List Workspaces** | `list_workspaces` | List workspaces and organizations the user can access. | |
| **Remove Team Member** | `remove_team_member` | Remove a user from a team. | |
| **Remove Workspace User** | `remove_workspace_user` | Remove a user from a workspace or organization. | |
| **Trigger Rule** | `trigger_rule` | Trigger a rule that uses an 'incoming web request' trigger. | |
| **Typeahead Search** | `typeahead_search` | Search across all object types in a workspace (typeahead / autocomplete). | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------- | ------- |
| **On Resource Change** | `on_resource_change` | Fire the workflow when an Asana resource changes. | Yes |
# Atlas Admin
Source: https://docs.noclick.com/integrations/atlas-admin
Connect Atlas Admin to your workflows: 266 operations across 10 categories.
The Atlas Admin node adds Atlas Admin operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Atlas Admin also includes 6 trigger operations (marked in the tables below) that can start a workflow when something happens in Atlas Admin.
You can wire the Atlas Admin node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Atlas Admin under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Go to Atlas → Access Manager → Service Accounts, create a new service account, assign it the required org/project roles, then copy the Client ID and the Client Secret shown at creation time.
[Get your credentials here](https://www.mongodb.com/docs/atlas/configure-api-access/).
## Operations
### Atlas streams
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------------------------- | ------- |
| **Create Stream Connection** | `create_stream_connection` | Create a new connection for an Atlas Stream Processing instance. | |
| **Create Stream Instance** | `create_stream_instance` | Create a new Atlas Stream Processing instance. | |
| **Create Stream Processor** | `create_stream_processor` | Create a new stream processor. | |
| **Delete Stream Connection** | `delete_stream_connection` | Delete a stream connection. | |
| **Delete Stream Instance** | `delete_stream_instance` | Delete an Atlas Stream Processing instance. | |
| **Delete Stream Processor** | `delete_stream_processor` | Delete a stream processor. | |
| **Download Stream Audit Logs** | `download_stream_audit_logs` | Download audit logs for an Atlas Stream Processing instance. | |
| **Get Stream Connection** | `get_stream_connection` | Get a single stream connection by name. | |
| **Get Stream Instance** | `get_stream_instance` | Get a single Atlas Stream Processing instance by name. | |
| **Get Stream Processor** | `get_stream_processor` | Get a single stream processor by name. | |
| **List Stream Connections** | `list_stream_connections` | List all connections for an Atlas Stream Processing instance. | |
| **List Stream Instances** | `list_stream_instances` | List all Atlas Stream Processing instances in a project. | |
| **List Stream Processors** | `list_stream_processors` | List all processors for an Atlas Stream Processing instance. | |
| **Start Stream Processor** | `start_stream_processor` | Start a stopped stream processor. | |
| **Stop Stream Processor** | `stop_stream_processor` | Stop a running stream processor. | |
| **Update Stream Connection** | `update_stream_connection` | Update an existing stream connection. | |
| **Update Stream Instance** | `update_stream_instance` | Update an existing Atlas Stream Processing instance. | |
### Cloud backups
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------ | ---------------------------------------------------------- | ------- |
| **Cancel Restore Job** | `cancel_restore_job` | Cancel an in-progress cloud backup restore job. | |
| **Create Export Job** | `create_export_job` | Create a cloud backup snapshot export job to an S3 bucket. | |
| **Create Restore Job** | `create_restore_job` | Create a cloud backup restore job. | |
| **Delete Snapshot** | `delete_snapshot` | Delete a cloud backup snapshot. | |
| **Get Backup Schedule** | `get_backup_schedule` | Get the cloud backup schedule for a cluster. | |
| **Get Restore Job** | `get_restore_job` | Get a single cloud backup restore job. | |
| **Get Snapshot** | `get_snapshot` | Get a single cloud backup snapshot. | |
| **List Export Buckets** | `list_export_buckets` | List export buckets associated with a project. | |
| **List Restore Jobs** | `list_restore_jobs` | List cloud backup restore jobs for a cluster. | |
| **List Snapshots** | `list_snapshots` | List cloud backup snapshots for a cluster. | |
| **Take On-Demand Snapshot** | `take_snapshot` | Take an on-demand cloud backup snapshot. | |
| **Update Backup Schedule** | `update_backup_schedule` | Update the cloud backup schedule for a cluster. | |
### Clusters
| Operation | ID | Description | Trigger |
| ----------------------------------------- | -------------------------------- | ----------------------------------------------------- | ------- |
| **Create Cluster** | `create_cluster` | Create a new dedicated cluster. | |
| **Delete Cluster** | `delete_cluster` | Delete a cluster (irreversible). | |
| **Get Cluster** | `get_cluster` | Get a single cluster by name. | |
| **Get Cluster Advanced Configuration** | `get_cluster_advanced_config` | Get the advanced configuration options for a cluster. | |
| **List Clusters** | `list_clusters` | List all clusters in a project. | |
| **Pause Cluster** | `pause_cluster` | Pause a running cluster (stops billing for compute). | |
| **Resume Cluster** | `resume_cluster` | Resume a paused cluster. | |
| **Test Failover** | `test_failover` | Trigger a test failover for a replica-set cluster. | |
| **Update Cluster** | `update_cluster` | Update an existing cluster's configuration. | |
| **Update Cluster Advanced Configuration** | `update_cluster_advanced_config` | Update advanced configuration options for a cluster. | |
### Data federation
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ----------------------------------------------------------------- | ------- |
| **Create Federated Database Instance** | `create_data_federation` | Create a new federated database instance. | |
| **Delete Data Federation Query Limit** | `delete_data_federation_query_limit` | Delete a query limit from a federated database instance. | |
| **Delete Federated Database Instance** | `delete_data_federation` | Delete a federated database instance. | |
| **Get Federated Database Instance** | `get_data_federation` | Get a single federated database instance by name. | |
| **List Data Federation Query Limits** | `list_data_federation_query_limits` | List all query limits for a federated database instance. | |
| **List Federated Database Instances** | `list_data_federation` | List all federated database instances in a project. | |
| **Set Data Federation Query Limit** | `create_data_federation_query_limit` | Create or update a query limit for a federated database instance. | |
| **Update Federated Database Instance** | `update_data_federation` | Update an existing federated database instance. | |
### Flex clusters
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------- | ------- |
| **Create Flex Cluster** | `create_flex_cluster` | Create a new flex cluster. | |
| **Delete Flex Cluster** | `delete_flex_cluster` | Delete a flex cluster (irreversible). | |
| **Get Flex Cluster** | `get_flex_cluster` | Get a single flex cluster by name. | |
| **List Flex Clusters** | `list_flex_clusters` | List all flex clusters in a project. | |
| **Update Flex Cluster** | `update_flex_cluster` | Update a flex cluster's configuration. | |
### Online archive
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------------------- | ------- |
| **Create Online Archive** | `create_online_archive` | Create an online archive rule for a collection. | |
| **Delete Online Archive** | `delete_online_archive` | Delete an online archive rule. | |
| **Get Online Archive** | `get_online_archive` | Get a single online archive by ID. | |
| **List Online Archives** | `list_online_archives` | List all online archives for a cluster. | |
| **Update Online Archive** | `update_online_archive` | Update an existing online archive's expiry setting. | |
### Search indexes
| Operation | ID | Description | Trigger |
| ---------------------------- | --------------------------- | ------------------------------------------------------------ | ------- |
| **Create Search Deployment** | `create_search_deployment` | Create a dedicated Atlas Search deployment for a cluster. | |
| **Create Search Index** | `create_search_index` | Create a new Atlas Search or Vector Search index. | |
| **Delete Search Deployment** | `delete_search_deployment` | Delete the dedicated Atlas Search deployment for a cluster. | |
| **Delete Search Index** | `delete_search_index` | Delete an Atlas Search index by ID. | |
| **Get Search Deployment** | `get_search_deployment` | Get the Atlas Search deployment configuration for a cluster. | |
| **Get Search Index** | `get_search_index` | Get a single Atlas Search index by ID. | |
| **Get Search Index by Name** | `list_search_index_by_name` | Get an Atlas Search index by collection and index name. | |
| **List Search Analyzers** | `list_search_analyzers` | List all custom Atlas Search analyzers for a cluster. | |
| **List Search Indexes** | `list_search_indexes` | List all Atlas Search indexes for a collection. | |
| **Update Search Deployment** | `update_search_deployment` | Update the dedicated Atlas Search deployment for a cluster. | |
| **Update Search Index** | `update_search_index` | Update an existing Atlas Search index. | |
### Serverless instances
| Operation | ID | Description | Trigger |
| ------------------------------ | ------------------- | -------------------------------------------- | ------- |
| **Create Serverless Instance** | `create_serverless` | Create a new serverless instance. | |
| **Delete Serverless Instance** | `delete_serverless` | Delete a serverless instance (irreversible). | |
| **Get Serverless Instance** | `get_serverless` | Get a single serverless instance by name. | |
| **List Serverless Instances** | `list_serverless` | List all serverless instances in a project. | |
| **Update Serverless Instance** | `update_serverless` | Update a serverless instance. | |
### Triggers
| Operation | ID | Description | Trigger |
| -------------------------- | ---------------------- | ------------------------------------------------------------------------------------ | ------- |
| **On Alert** | `on_alert` | Webhook push trigger: fires whenever Atlas sends an alert to the registered webhook. | Yes |
| **On Alert Event** | `on_alert_event` | Poll trigger: fires when Atlas alerts are opened, closed, or acknowledged. | Yes |
| **On Backup Event** | `on_backup_event` | Poll trigger: fires on backup and snapshot events. | Yes |
| **On Cluster Event** | `on_cluster_event` | Poll trigger: fires on cluster lifecycle events (create, delete, pause, ready). | Yes |
| **On Database User Event** | `on_user_event` | Poll trigger: fires when database users are created, updated, or deleted. | Yes |
| **On Maintenance Event** | `on_maintenance_event` | Poll trigger: fires when Atlas starts or ends a maintenance window. | Yes |
### Other
| Operation | ID | Description | Trigger |
| ------------- | ----------------------------------------- | ----------- | ------- |
| **Operation** | `acknowledge_alert` | | |
| **Operation** | `add_access_list` | | |
| **Operation** | `add_api_key_access_list` | | |
| **Operation** | `add_custom_zone_mapping` | | |
| **Operation** | `add_managed_namespace` | | |
| **Operation** | `add_project_service_account` | | |
| **Operation** | `add_project_user` | | |
| **Operation** | `add_team_users` | | |
| **Operation** | `add_teams_to_project` | | |
| **Operation** | `assign_api_key_to_project` | | |
| **Operation** | `authorize_cloud_provider_access` | | |
| **Operation** | `auto_defer_maintenance_window` | | |
| **Operation** | `create_alert_config` | | |
| **Operation** | `create_atlas_user` | | |
| **Operation** | `create_cloud_provider_access` | | |
| **Operation** | `create_custom_role` | | |
| **Operation** | `create_db_user` | | |
| **Operation** | `create_db_user_cert` | | |
| **Operation** | `create_identity_provider` | | |
| **Operation** | `create_integration` | | |
| **Operation** | `create_log_export` | | |
| **Operation** | `create_org_api_key` | | |
| **Operation** | `create_org_service_account` | | |
| **Operation** | `create_org_team` | | |
| **Operation** | `create_peering_connection` | | |
| **Operation** | `create_peering_container` | | |
| **Operation** | `create_private_endpoint` | | |
| **Operation** | `create_private_endpoint_service` | | |
| **Operation** | `create_project` | | |
| **Operation** | `create_project_api_key` | | |
| **Operation** | `create_resource_policy` | | |
| **Operation** | `create_role_mapping` | | |
| **Operation** | `create_service_account_secret` | | |
| **Operation** | `deauthorize_cloud_provider_access` | | |
| **Operation** | `defer_maintenance_window` | | |
| **Operation** | `delete_access_list_entry` | | |
| **Operation** | `delete_alert_config` | | |
| **Operation** | `delete_api_key_access_list_entry` | | |
| **Operation** | `delete_custom_role` | | |
| **Operation** | `delete_custom_zone_mapping` | | |
| **Operation** | `delete_db_user` | | |
| **Operation** | `delete_identity_provider` | | |
| **Operation** | `delete_integration` | | |
| **Operation** | `delete_log_export` | | |
| **Operation** | `delete_managed_namespace` | | |
| **Operation** | `delete_org` | | |
| **Operation** | `delete_org_api_key` | | |
| **Operation** | `delete_org_invitation` | | |
| **Operation** | `delete_org_service_account` | | |
| **Operation** | `delete_org_team` | | |
| **Operation** | `delete_peering_connection` | | |
| **Operation** | `delete_peering_container` | | |
| **Operation** | `delete_private_endpoint` | | |
| **Operation** | `delete_private_endpoint_service` | | |
| **Operation** | `delete_project` | | |
| **Operation** | `delete_project_invitation` | | |
| **Operation** | `delete_resource_policy` | | |
| **Operation** | `delete_role_mapping` | | |
| **Operation** | `delete_service_account_secret` | | |
| **Operation** | `disable_managed_slow_ms` | | |
| **Operation** | `disable_x509_config` | | |
| **Operation** | `download_cluster_log` | | |
| **Operation** | `enable_managed_slow_ms` | | |
| **Operation** | `get_access_list_entry` | | |
| **Operation** | `get_alert` | | |
| **Operation** | `get_alert_config` | | |
| **Operation** | `get_alert_config_matchers` | | |
| **Operation** | `get_api_key_access_list` | | |
| **Operation** | `get_atlas_user` | | |
| **Operation** | `get_atlas_user_by_name` | | |
| **Operation** | `get_auditing` | | |
| **Operation** | `get_custom_role` | | |
| **Operation** | `get_custom_zone_mapping` | | |
| **Operation** | `get_database_measurements` | | |
| **Operation** | `get_db_access_history` | | |
| **Operation** | `get_db_user` | | |
| **Operation** | `get_disk_measurements` | | |
| **Operation** | `get_encryption_at_rest` | | |
| **Operation** | `get_encryption_at_rest_private_endpoint` | | |
| **Operation** | `get_federation_settings` | | |
| **Operation** | `get_identity_provider` | | |
| **Operation** | `get_integration` | | |
| **Operation** | `get_invoice` | | |
| **Operation** | `get_ldap_config` | | |
| **Operation** | `get_log_export` | | |
| **Operation** | `get_maintenance_window` | | |
| **Operation** | `get_managed_namespaces` | | |
| **Operation** | `get_managed_slow_ms` | | |
| **Operation** | `get_org` | | |
| **Operation** | `get_org_api_key` | | |
| **Operation** | `get_org_auditing` | | |
| **Operation** | `get_org_event` | | |
| **Operation** | `get_org_service_account` | | |
| **Operation** | `get_org_settings` | | |
| **Operation** | `get_org_team` | | |
| **Operation** | `get_peering_connection` | | |
| **Operation** | `get_peering_container` | | |
| **Operation** | `get_pending_invoices` | | |
| **Operation** | `get_private_endpoint` | | |
| **Operation** | `get_private_endpoint_service` | | |
| **Operation** | `get_process` | | |
| **Operation** | `get_process_measurements` | | |
| **Operation** | `get_project` | | |
| **Operation** | `get_project_api_key_detail` | | |
| **Operation** | `get_project_by_name` | | |
| **Operation** | `get_project_cluster_count` | | |
| **Operation** | `get_project_event` | | |
| **Operation** | `get_project_settings` | | |
| **Operation** | `get_regionalized_private_endpoint` | | |
| **Operation** | `get_resource_policy` | | |
| **Operation** | `get_schema_advice` | | |
| **Operation** | `get_team_by_name` | | |
| **Operation** | `get_x509_config` | | |
| **Operation** | `invite_to_org` | | |
| **Operation** | `invite_to_project` | | |
| **Operation** | `list_access_list` | | |
| **Operation** | `list_alert_configs` | | |
| **Operation** | `list_alerts` | | |
| **Operation** | `list_alerts_for_config` | | |
| **Operation** | `list_cloud_provider_access` | | |
| **Operation** | `list_connected_org_configs` | | |
| **Operation** | `list_custom_roles` | | |
| **Operation** | `list_db_user_certs` | | |
| **Operation** | `list_db_users` | | |
| **Operation** | `list_identity_providers` | | |
| **Operation** | `list_integrations` | | |
| **Operation** | `list_invoices` | | |
| **Operation** | `list_noncompliant_resources` | | |
| **Operation** | `list_org_api_keys` | | |
| **Operation** | `list_org_events` | | |
| **Operation** | `list_org_invitations` | | |
| **Operation** | `list_org_service_accounts` | | |
| **Operation** | `list_org_teams` | | |
| **Operation** | `list_org_users` | | |
| **Operation** | `list_orgs` | | |
| **Operation** | `list_peering_connections` | | |
| **Operation** | `list_peering_containers` | | |
| **Operation** | `list_performance_namespaces` | | |
| **Operation** | `list_private_endpoint_services` | | |
| **Operation** | `list_private_endpoints` | | |
| **Operation** | `list_process_disks` | | |
| **Operation** | `list_processes` | | |
| **Operation** | `list_processes_databases` | | |
| **Operation** | `list_project_api_keys` | | |
| **Operation** | `list_project_events` | | |
| **Operation** | `list_project_invitations` | | |
| **Operation** | `list_project_service_accounts` | | |
| **Operation** | `list_project_teams` | | |
| **Operation** | `list_project_users` | | |
| **Operation** | `list_projects` | | |
| **Operation** | `list_resource_policies` | | |
| **Operation** | `list_role_mappings` | | |
| **Operation** | `list_slow_query_logs` | | |
| **Operation** | `list_suggested_indexes` | | |
| **Operation** | `list_team_users` | | |
| **Operation** | `remove_project_api_key` | | |
| **Operation** | `remove_project_service_account` | | |
| **Operation** | `remove_project_team` | | |
| **Operation** | `remove_project_user` | | |
| **Operation** | `remove_team_user` | | |
| **Operation** | `rename_org` | | |
| **Operation** | `rename_org_team` | | |
| **Operation** | `reset_maintenance_window` | | |
| **Operation** | `save_ldap_config` | | |
| **Operation** | `save_x509_config` | | |
| **Operation** | `toggle_alert_config` | | |
| **Operation** | `toggle_regionalized_private_endpoint` | | |
| **Operation** | `update_alert_config` | | |
| **Operation** | `update_auditing` | | |
| **Operation** | `update_connected_org_config` | | |
| **Operation** | `update_custom_role` | | |
| **Operation** | `update_db_user` | | |
| **Operation** | `update_encryption_at_rest` | | |
| **Operation** | `update_identity_provider` | | |
| **Operation** | `update_integration` | | |
| **Operation** | `update_log_export` | | |
| **Operation** | `update_maintenance_window` | | |
| **Operation** | `update_org_api_key` | | |
| **Operation** | `update_org_service_account` | | |
| **Operation** | `update_org_settings` | | |
| **Operation** | `update_peering_connection` | | |
| **Operation** | `update_peering_container` | | |
| **Operation** | `update_project_settings` | | |
| **Operation** | `update_project_team` | | |
| **Operation** | `update_resource_policy` | | |
| **Operation** | `validate_resource_policy` | | |
| **Operation** | `verify_ldap_config` | | |
# Attio
Source: https://docs.noclick.com/integrations/attio
Connect Attio to your workflows: 66 operations across 13 categories.
The Attio node adds Attio operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Attio also includes 6 trigger operations (marked in the tables below) that can start a workflow when something happens in Attio.
You can wire the Attio node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Attio under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Attio account when prompted; no keys to copy.
NoClick requests the following permissions:
* `user_management:read`
* `record_permission:read-write`
* `object_configuration:read-write`
* `list_entry:read-write`
* `list_configuration:read-write`
* `comment:read-write`
* `note:read-write`
* `task:read-write`
* `meeting:read`
* `call_recording:read`
* `webhook:read-write`
* `file:read`
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://app.attio.com/_workos/settings/developers).
## Operations
### Attributes
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------------------------------------------- | ------- |
| **Create Attribute** | `create_attribute` | Create an attribute on an object or list. | |
| **Create Select Option** | `create_select_option` | Add a select option to a select attribute. | |
| **Create Status** | `create_status` | Add a status to a status attribute. | |
| **Get Attribute** | `get_attribute` | Fetch a single attribute on an object or list. | |
| **List Select Options** | `list_select_options` | List the select options of a select attribute. | |
| **List Statuses** | `list_statuses` | List the statuses of a status attribute. | |
| **Update Attribute** | `update_attribute` | Update an attribute (title, slug, required/unique, archive, config). | |
| **Update Select Option** | `update_select_option` | Rename or archive a select option. | |
| **Update Status** | `update_status` | Rename, archive, or retime a status. | |
### Comments
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------- | --------------------------------------------------------------------- | ------- |
| **Comment on List Entry** | `create_entry_comment` | Create a comment on a list entry (starts a new thread on that entry). | |
| **Comment on Record** | `create_comment` | Create a comment on a record (starts a new thread on that record). | |
| **Delete Comment** | `delete_comment` | Delete a comment by ID. | |
| **Get Comment** | `get_comment` | Fetch a single comment by ID. | |
| **Get Thread** | `get_thread` | Fetch a single comment thread by ID. | |
| **List Threads on List Entry** | `list_entry_threads` | List comment threads on a list entry. | |
| **List Threads on Record** | `list_threads` | List comment threads on a record. | |
| **Reply to Thread** | `reply_to_thread` | Reply to an existing comment thread. | |
### Files
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ------------------------------------- | ------- |
| **Get File** | `get_file` | Fetch a single file's metadata by ID. | |
| **List Files** | `list_files` | List files attached to a record. | |
### List entries
| Operation | ID | Description | Trigger |
| --------------------------------- | ---------------------------------- | ------------------------------------------------------------------------- | ------- |
| **Assert List Entry (by parent)** | `assert_list_entry` | Upsert a list entry by its parent record (create if absent, else update). | |
| **Create List Entry** | `create_list_entry` | Add a record to a list (create an entry). | |
| **Delete List Entry** | `delete_list_entry` | Remove an entry from a list. | |
| **Get List Entry** | `get_list_entry` | Fetch a single list entry by ID. | |
| **List Entries** | `list_entries` | Query entries in a list with filters, sorting, and pagination. | |
| **List Entry Attribute Values** | `list_list_entry_attribute_values` | List the historical values of one attribute on a list entry. | |
| **Overwrite List Entry** | `overwrite_list_entry` | Overwrite a list entry (PUT replaces multiselect values). | |
| **Update List Entry** | `update_list_entry` | Update a list entry's attribute values. | |
### Lists
| Operation | ID | Description | Trigger |
| --------------- | ------------- | -------------------------------------- | ------- |
| **Create List** | `create_list` | Create a new list. | |
| **Get List** | `get_list` | Fetch a single list by slug or ID. | |
| **Update List** | `update_list` | Update a list's name, slug, or access. | |
### Meetings
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ---------------------------------------------------- | ------- |
| **Get Meeting** | `get_meeting` | Fetch a single meeting by ID. | |
| **List Meetings** | `list_meetings` | List meetings, optionally scoped to a linked record. | |
### Notes
| Operation | ID | Description | Trigger |
| --------------- | ------------- | -------------------------------------------------------- | ------- |
| **Create Note** | `create_note` | Create a note attached to a record. | |
| **Delete Note** | `delete_note` | Delete a note by ID. | |
| **Get Note** | `get_note` | Fetch a single note by ID. | |
| **List Notes** | `list_notes` | List notes, optionally filtered by parent record/object. | |
### Objects
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------------------------------------------- | ------- |
| **Create Object** | `create_object` | Create a new custom object. | |
| **Get Object** | `get_object` | Fetch a single object definition by slug or ID. | |
| **Update Object** | `update_object` | Update a custom object's slug or nouns. | |
### Records
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------------------------------ | ------- |
| **Create Record** | `create_record` | Create a record on any object. | |
| **Delete Record** | `delete_record` | Delete a record by ID. | |
| **Get Record** | `get_record` | Fetch a single record by ID. | |
| **List Record Attribute Values** | `list_record_attribute_values` | List the historical values of one attribute on a record. | |
| **List Record's List Entries** | `list_record_entries` | List the list entries a record belongs to. | |
| **List Records** | `list_records` | List/query records of an object with filtering, sorting, and pagination. | |
| **Overwrite Record** | `overwrite_record` | Overwrite a record (PUT replaces multiselect attribute values). | |
| **Search Records** | `search_records` | Search records of an object by matching text against an attribute. | |
| **Update Record** | `update_record` | Update a record (PATCH appends to multiselect attributes). | |
| **Upsert Record** | `upsert_record` | Create-or-update a record by a matching attribute (dedupe). | |
### Schema
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------ | ------- |
| **List All Lists** | `list_lists` | List all lists in the workspace. | |
| **List Attributes** | `list_attributes` | List attributes defined on an object or list. | |
| **List Objects** | `list_objects` | List all objects (standard + custom) in the workspace. | |
### Tasks
| Operation | ID | Description | Trigger |
| --------------- | ------------- | -------------------------------------------------------------------- | ------- |
| **Create Task** | `create_task` | Create a task with content, deadline, assignees, and linked records. | |
| **Delete Task** | `delete_task` | Delete a task by ID. | |
| **Get Task** | `get_task` | Fetch a single task by ID. | |
| **List Tasks** | `list_tasks` | List tasks in the workspace. | |
| **Update Task** | `update_task` | Update a task (e.g. mark complete, change deadline). | |
### Workspace
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------------------- | ------- |
| **Get Workspace Member** | `get_workspace_member` | Fetch a single workspace member by ID. | |
| **Identify Self** | `identify_self` | Introspect the current token: workspace + granted permissions. | |
| **List Workspace Members** | `list_workspace_members` | List workspace members (for assignment / actor lookup). | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------ | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **On Attio Event (Any)** | `on_attio_event` | Catch-all: fire on ANY Attio webhook event (including schema/admin events like list, attribute, call-recording, and workspace-member changes). | Yes |
| **On Comment Event** | `on_comment_event` | Fire when a comment is created, deleted, resolved, or unresolved. | Yes |
| **On List Entry Event** | `on_list_entry_event` | Fire when a list entry is created, updated, or deleted. | Yes |
| **On Note Event** | `on_note_event` | Fire when a note is created, updated, deleted, or its content changes. | Yes |
| **On Record Event** | `on_record_event` | Fire when a record is created, updated, deleted, or merged. | Yes |
| **On Task Event** | `on_task_event` | Fire when a task is created, updated, or deleted. | Yes |
# BambooHR
Source: https://docs.noclick.com/integrations/bamboohr
Connect BambooHR to your workflows: 51 operations across 9 categories.
The BambooHR node adds BambooHR operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
BambooHR also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in BambooHR.
You can wire the BambooHR node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect BambooHR under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Bamboo HROAuth
Sign in with your BambooHR account when prompted; no keys to copy.
[Get your credentials here](https://documentation.bamboohr.com/page/authenticate-integration).
NoClick requests the following permissions:
* `openid`
* `offline_access`
* `employee`
* `employee.write`
* `employee_directory`
* `employee:file`
* `employee:file.write`
* `employee:photo`
* `time_off`
* `time_off.write`
* `time_tracking`
* `time_tracking.write`
* `report`
* `report.write`
* `company_file`
* `company_file.write`
* `company:info`
* `company:details`
* `webhooks`
* `webhooks.write`
* `meta`
* `user`
### API key
Enter the values manually when creating the credential.
In BambooHR, click your name in the lower-left, choose 'API Keys', and generate a key. It inherits your UI permissions. Enter your subdomain (the text before .bamboohr.com) and the key.
[Get your credentials here](https://documentation.bamboohr.com/docs/getting-started).
## Operations
### Employees
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------- | ------- |
| **Add Employee** | `add_employee` | | |
| **Get Changed Employees** | `get_changed_employees` | | |
| **Get Employee** | `get_employee` | | |
| **Get Employee Directory** | `get_employee_directory` | | |
| **Get Employee Photo** | `get_employee_photo` | | |
| **Update Employee** | `update_employee` | | |
### Files
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Delete Employee File** | `delete_employee_file` | | |
| **Get Company File** | `get_company_file` | | |
| **Get Employee File** | `get_employee_file` | | |
| **List Company Files** | `list_company_files` | | |
| **List Employee Files** | `list_employee_files` | | |
| **Upload Employee File** | `upload_employee_file` | | |
### Metadata
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Get Account Info** | `get_account` | | |
| **Get Lists** | `get_lists` | | |
| **List Fields** | `list_fields` | | |
| **List Tabular Fields** | `list_tabular_fields` | | |
| **List Users** | `list_users` | | |
### Reports
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Get Report** | `get_report` | | |
| **List Datasets** | `list_datasets` | | |
| **Request Custom Report** | `request_custom_report` | | |
### Tables
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------- | ------- |
| **Add Table Row** | `add_table_row` | | |
| **Delete Table Row** | `delete_table_row` | | |
| **Get Changed Table Rows** | `get_changed_table_rows` | | |
| **Get Table Rows** | `get_table_rows` | | |
| **Update Table Row** | `update_table_row` | | |
### Time off
| Operation | ID | Description | Trigger |
| --------------------------- | -------------------------------- | ----------- | ------- |
| **Add Time Off History** | `add_time_off_history` | | |
| **Add Time Off Request** | `add_time_off_request` | | |
| **Adjust Time Off Balance** | `adjust_time_off_balance` | | |
| **Change Request Status** | `change_time_off_request_status` | | |
| **Estimate Future Balance** | `estimate_future_balance` | | |
| **Get Who's Out** | `get_whos_out` | | |
| **List Time Off Policies** | `list_time_off_policies` | | |
| **List Time Off Requests** | `list_time_off_requests` | | |
| **List Time Off Types** | `list_time_off_types` | | |
### Time tracking
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Add Hour Entry** | `add_time_tracking` | | |
| **Clock In** | `clock_in` | | |
| **Clock Out** | `clock_out` | | |
| **Delete Hour Entry** | `delete_time_tracking` | | |
| **Get Timesheet Summary** | `get_timesheet_summary` | | |
| **Update Hour Entry** | `update_time_tracking` | | |
### Webhooks
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Create Webhook** | `create_webhook` | | |
| **Delete Webhook** | `delete_webhook` | | |
| **Get Webhook** | `get_webhook` | | |
| **List Monitor Fields** | `list_monitor_fields` | | |
| **List Webhooks** | `list_webhooks` | | |
| **Update Webhook** | `update_webhook` | | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | --------------------------------------------------------- | ------- |
| **On Contact Info Change** | `on_contact_info_change` | | Yes |
| **On Employment Status Change** | `on_employment_status_change` | | Yes |
| **On Field Change (Any)** | `on_field_change` | Generic trigger: fire when any user-chosen fields change. | Yes |
| **On Job Change** | `on_job_change` | | Yes |
| **On Personal Info Change** | `on_personal_info_change` | | Yes |
# Basedash
Source: https://docs.noclick.com/integrations/basedash
Connect Basedash to your workflows: 74 operations across 12 categories.
The Basedash node adds Basedash operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Basedash node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Basedash under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Basedash → avatar → API keys → Create. Copy the bd\_key\_… value (shown once).
[Get your credentials here](https://www.basedash.com/docs/api-reference/overview).
## Operations
### AI chats
| Operation | ID | Description |
| ----------------------- | --------------------- | ----------- |
| **Cancel Chat Message** | `cancel_chat_message` | |
| **Delete Chat** | `delete_chat` | |
| **Get Chat** | `get_chat` | |
| **Get Chat Message** | `get_chat_message` | |
| **List Chat Messages** | `list_chat_messages` | |
| **List Chats** | `list_chats` | |
| **Send Chat Message** | `send_chat_message` | |
| **Start Chat** | `create_chat` | |
### Automations
| Operation | ID | Description |
| ------------------------ | ---------------------- | ----------- |
| **Create Automation** | `create_automation` | |
| **Delete Automation** | `delete_automation` | |
| **Get Automation** | `get_automation` | |
| **Get Automation Run** | `get_automation_run` | |
| **List Automation Runs** | `list_automation_runs` | |
| **List Automations** | `list_automations` | |
| **Start Automation Run** | `start_automation_run` | |
| **Update Automation** | `update_automation` | |
### Charts
| Operation | ID | Description |
| ---------------------------- | ----------------- | ----------- |
| **Create Chart** | `create_chart` | |
| **Delete Chart** | `delete_chart` | |
| **Get Chart** | `get_chart` | |
| **Render Chart Image (PNG)** | `get_chart_image` | |
| **Update Chart** | `update_chart` | |
### Dashboards
| Operation | ID | Description |
| ------------------------- | ----------------------- | ----------- |
| **Create Dashboard** | `create_dashboard` | |
| **Create Tab** | `create_tab` | |
| **Delete Dashboard** | `delete_dashboard` | |
| **Delete Tab** | `delete_tab` | |
| **Get Dashboard** | `get_dashboard` | |
| **List Dashboard Charts** | `list_dashboard_charts` | |
| **List Dashboards** | `list_dashboards` | |
| **Update Dashboard** | `update_dashboard` | |
| **Update Tab** | `update_tab` | |
### Data sources
| Operation | ID | Description |
| -------------------------- | ------------------------ | ----------- |
| **Create Data Source** | `create_data_source` | |
| **Delete Data Source** | `delete_data_source` | |
| **Get Data Source** | `get_data_source` | |
| **Get Data Source Access** | `get_data_source_access` | |
| **List Data Sources** | `list_data_sources` | |
| **Set Data Source Access** | `set_data_source_access` | |
| **Update Data Source** | `update_data_source` | |
| **Verify Data Source** | `verify_data_source` | |
### Definitions
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Create Definition** | `create_definition` | |
| **Delete Definition** | `delete_definition` | |
| **Get Definition** | `get_definition` | |
| **List Definitions** | `list_definitions` | |
| **Update Definition** | `update_definition` | |
### Groups
| Operation | ID | Description |
| -------------------- | ------------------ | ----------- |
| **Add Group Member** | `add_group_member` | |
| **Create Group** | `create_group` | |
| **Delete Group** | `delete_group` | |
| **Get Group** | `get_group` | |
| **List Groups** | `list_groups` | |
| **Update Group** | `update_group` | |
### Insights
| Operation | ID | Description |
| -------------------- | ---------------- | ----------- |
| **Delete Insight** | `delete_insight` | |
| **Generate Insight** | `create_insight` | |
| **Get Insight** | `get_insight` | |
| **List Insights** | `list_insights` | |
### MCP servers
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Create MCP Server** | `create_mcp_server` | |
| **Delete MCP Server** | `delete_mcp_server` | |
| **Get MCP Server** | `get_mcp_server` | |
| **List MCP Servers** | `list_mcp_servers` | |
| **Update MCP Server** | `update_mcp_server` | |
### Members
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Deactivate Member** | `deactivate_member` | |
| **Get Member** | `get_member` | |
| **Invite Member** | `invite_member` | |
| **List Members** | `list_members` | |
| **Update Member** | `update_member` | |
### Organizations
| Operation | ID | Description |
| ------------------------------- | --------------------- | ----------- |
| **Create Organization** | `create_organization` | |
| **Get AI Usage** | `get_ai_usage` | |
| **Get Audit Logs (Enterprise)** | `get_audit_logs` | |
| **Get Organization** | `get_organization` | |
| **List Organizations** | `list_organizations` | |
| **Update Organization** | `update_organization` | |
### Skills
| Operation | ID | Description |
| ---------------- | -------------- | ----------- |
| **Create Skill** | `create_skill` | |
| **Delete Skill** | `delete_skill` | |
| **Get Skill** | `get_skill` | |
| **List Skills** | `list_skills` | |
| **Update Skill** | `update_skill` | |
# beehiiv
Source: https://docs.noclick.com/integrations/beehiiv
Connect beehiiv to your workflows: 50 operations across 10 categories.
The beehiiv node adds beehiiv operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
beehiiv also includes 14 trigger operations (marked in the tables below) that can start a workflow when something happens in beehiiv.
You can wire the beehiiv node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect beehiiv under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.beehiiv.com/settings/integrations/api).
## Operations
### Automations
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------- | ----------------------------------------------- | ------- |
| **Add Subscriber to Automation** | `add_to_automation` | Enroll a subscriber into an automation journey. | |
| **Get Automation** | `get_automation` | Retrieve a single automation by ID. | |
| **List Automations** | `list_automations` | List automation flows for a publication. | |
### Custom fields
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------- | ------- |
| **Create Custom Field** | `create_custom_field` | Define a new custom field on subscribers. | |
| **Delete Custom Field** | `delete_custom_field` | Delete a custom subscriber field. | |
| **List Custom Fields** | `list_custom_fields` | List custom subscriber fields. | |
### Lists & polls
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ------------------------------------------------- | ------- |
| **Get Poll** | `get_poll` | Retrieve a single poll. | |
| **Get Poll Responses** | `get_poll_responses` | List responses for a poll. | |
| **List Newsletter Lists** | `list_newsletter_lists` | List newsletter lists (multi-list feature, beta). | |
| **List Polls** | `list_polls` | List polls and their responses. | |
### Posts
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------------ | ------- |
| **Create Post** | `create_post` | Create a draft/scheduled post for a publication. | |
| **Delete Post** | `delete_post` | Delete a post. | |
| **Get Post** | `get_post` | Retrieve a single post. | |
| **Get Post Stats** | `get_post_stats` | Retrieve open/click/engagement stats for a post. | |
| **List Posts** | `list_posts` | List newsletter posts for a publication. | |
| **Update Post** | `update_post` | Update an existing post's content or scheduling. | |
### Publications
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | -------------------------------------------------- | ------- |
| **Get Publication** | `get_publication` | Retrieve a single publication. | |
| **List Publications** | `list_publications` | List all publications associated with the API key. | |
### Segments
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------ | ------- |
| **Delete Segment** | `delete_segment` | Delete a segment. | |
| **Get Segment** | `get_segment` | Retrieve a single segment. | |
| **List Segment Subscribers** | `list_segment_subscribers` | List subscribers matching a segment. | |
| **List Segments** | `list_segments` | List all segments for a publication. | |
### Subscriptions
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------------------------------------------------- | ------- |
| **Add Subscription Tag** | `add_subscription_tag` | Attach tags to a subscriber. | |
| **Bulk Create Subscriptions** | `bulk_create_subscriptions` | Import many subscribers in one async job. | |
| **Create Subscription** | `create_subscription` | Add a new subscriber to a publication. | |
| **Delete Subscription** | `delete_subscription` | Remove a subscriber from the publication. | |
| **Get Subscription** | `get_subscription` | Retrieve a single subscription by its prefixed ID. | |
| **Get Subscription by Email** | `get_subscription_by_email` | Look up a subscriber by email address. | |
| **List Subscriptions** | `list_subscriptions` | List all subscriptions for a publication. | |
| **Update Subscription** | `update_subscription` | Update a subscriber's tier, custom fields, or status. | |
### Tiers & referrals
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------------------- | ------- |
| **Get Referral Program** | `get_referral_program` | Retrieve referral program milestones/rewards. | |
| **List Tiers** | `list_tiers` | List paid subscription tiers. | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------------- | ------- |
| **Create Webhook** | `create_webhook` | Subscribe an endpoint URL to event types. | |
| **Delete Webhook** | `delete_webhook` | Remove a webhook subscription. | |
| **Get Webhook** | `get_webhook` | Retrieve a single webhook endpoint. | |
| **List Webhooks** | `list_webhooks` | List configured webhook endpoints. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------------------------------------------------- | ------- |
| **On beehiiv Event (Any)** | `on_beehiiv_event` | Trigger: fires on any beehiiv event (catch-all). | Yes |
| **On New Subscriber** | `on_subscriber_created` | Trigger: fires when a new subscriber is created. | Yes |
| **On Newsletter List Event** | `on_newsletter_list_event` | Trigger: fires when a subscriber joins, leaves, pauses, or resumes a newsletter list. | Yes |
| **On Post Scheduled** | `on_post_scheduled` | Trigger: fires when a post is scheduled for future delivery. | Yes |
| **On Post Sent** | `on_post_sent` | Trigger: fires when a post is sent to subscribers. | Yes |
| **On Post Updated** | `on_post_updated` | Trigger: fires when an existing post is updated. | Yes |
| **On Subscriber Confirmed** | `on_subscriber_confirmed` | Trigger: fires when a subscriber confirms their email (double opt-in). | Yes |
| **On Subscriber Unsubscribed** | `on_subscription_deleted` | Trigger: fires when a subscriber unsubscribes or is deleted. | Yes |
| **On Subscription Downgraded** | `on_subscription_downgraded` | Trigger: fires when a subscription is downgraded. | Yes |
| **On Subscription Paused** | `on_subscription_paused` | Trigger: fires when a subscription is paused. | Yes |
| **On Subscription Resumed** | `on_subscription_resumed` | Trigger: fires when a paused subscription is resumed. | Yes |
| **On Subscription Upgraded** | `on_subscription_upgraded` | Trigger: fires when a subscription is upgraded to a paid tier. | Yes |
| **On Survey Response** | `on_survey_response` | Trigger: fires when a subscriber submits a survey response. | Yes |
| **On Tier Changed** | `on_tier_changed` | Trigger: fires when a subscription tier is created, deleted, paused, or resumed. | Yes |
# Google BigQuery
Source: https://docs.noclick.com/integrations/bigquery
Connect Google BigQuery to your workflows: 39 operations across 9 categories.
The Google BigQuery node adds Google BigQuery operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google BigQuery also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Google BigQuery.
You can wire the Google BigQuery node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google BigQuery under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Big query OAuth
Sign in with your Google BigQuery account when prompted; no keys to copy.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/bigquery`
### Big query service account
Enter the values manually when creating the credential.
Create a JSON key for a service account with the required BigQuery IAM roles (e.g. BigQuery Job User + BigQuery Data Editor). Prefer user OAuth for user-delegated access; use service accounts for server-to-server automation.
[Get your credentials here](https://console.cloud.google.com/iam-admin/serviceaccounts).
## Operations
### Datasets
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | -------------------------------------------------------------------- | ------- |
| **Create Dataset** | `create_dataset` | Create a new dataset. | |
| **Delete Dataset** | `delete_dataset` | Delete a dataset. | |
| **Get Dataset** | `get_dataset` | Fetch dataset metadata. | |
| **List Datasets** | `list_datasets` | List datasets in the project. | |
| **Patch Dataset** | `patch_dataset` | Partial update of dataset metadata (PATCH). | |
| **Undelete Dataset** | `undelete_dataset` | Restore a dataset within its time-travel window (datasets.undelete). | |
| **Update Dataset** | `update_dataset` | Full replace of dataset metadata (PUT). | |
### Jobs
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ------------------------------------------------------ | ------- |
| **Cancel Job** | `cancel_job` | Request cancellation of a running job. | |
| **Delete Job** | `delete_job` | Delete a job's metadata. | |
| **Get Job** | `get_job` | Fetch a job's status and statistics (poll until DONE). | |
| **Insert Job** | `insert_job` | Start a query / load / extract / copy job (async). | |
| **List Jobs** | `list_jobs` | List jobs in a project (filter by state, time range). | |
### Models
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | -------------------------------------------------- | ------- |
| **Delete Model** | `delete_model` | Delete a BQML model. | |
| **Get Model** | `get_model` | Fetch BQML model metadata. | |
| **List Models** | `list_models` | List BigQuery ML models in a dataset. | |
| **Patch Model** | `patch_model` | Update mutable BQML model metadata (models.patch). | |
### Project
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------------------------------------- | ------- |
| **Get Service Account** | `get_service_account` | Return the BigQuery service account for the project (KMS/transfer grants). | |
| **List Projects** | `list_projects` | List projects the caller can access (for project picker UIs). | |
### Queries
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ---------------------------------------------------------------------------- | ------- |
| **Get Query Results** | `get_query_results` | Page through the results of a (possibly async) query job. | |
| **Run Query** | `run_query` | Run a SQL query and return results inline (synchronous, bounded by timeout). | |
### Routines
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------------------------------- | ------- |
| **Create Routine** | `create_routine` | Create a stored procedure / UDF / TVF. | |
| **Delete Routine** | `delete_routine` | Delete a routine (routines.delete). | |
| **Get Routine** | `get_routine` | Fetch a routine definition. | |
| **List Routines** | `list_routines` | List stored procedures / UDFs / TVFs in a dataset. | |
| **Update Routine** | `update_routine` | Replace a routine's full definition (routines.update, PUT). | |
### Row access policies
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------------------------- | ------- |
| **Get Row Access Policy** | `get_row_access_policy` | Get a single row access policy (rowAccessPolicies.get). | |
| **List Row Access Policies** | `list_row_access_policies` | List row access policies on a table (rowAccessPolicies.list). | |
### Tables
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | --------------------------------------------------------------------- | ------- |
| **Create Table** | `create_table` | Create a table or view with a schema. | |
| **Delete Table** | `delete_table` | Delete a table or view. | |
| **Get Table** | `get_table` | Fetch table metadata/schema. | |
| **Get Table IAM Policy** | `get_table_iam_policy` | Get the IAM policy for a table (tables.getIamPolicy). | |
| **List Table Data** | `list_table_data` | Read rows from a table directly (paginated, no SQL). | |
| **List Tables** | `list_tables` | List tables/views in a dataset. | |
| **Patch Table** | `patch_table` | Partial update of a table (add columns, set expiration, etc.). | |
| **Set Table IAM Policy** | `set_table_iam_policy` | Set the IAM policy for a table (tables.setIamPolicy). | |
| **Stream Insert Rows** | `stream_insert` | Streaming insert of JSON rows into a table (real-time append). | |
| **Test Table IAM Permissions** | `test_table_iam_permissions` | Test the caller's permissions on a table (tables.testIamPermissions). | |
| **Update Table** | `update_table` | Full replace of table metadata (PUT). | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------------ | ------------------ | -------------------------------------------------------------------- | ------- |
| **On Scheduled Query Results** | `on_query_results` | Poll-based trigger: run a SQL query on a schedule and emit NEW rows. | Yes |
# BlueSky
Source: https://docs.noclick.com/integrations/bluesky
Connect BlueSky to your workflows: 132 operations across 21 categories.
The BlueSky node adds BlueSky operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the BlueSky node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect BlueSky under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
## Operations
### Account
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ----------------------------------------- |
| **Activate Account** | `activate_account` | Reactivate deactivated account |
| **Begin Age Assurance** | `begin_age_assurance` | Start age assurance process |
| **Check Account Status** | `check_account_status` | Verify account status |
| **Confirm Email** | `confirm_email` | Confirm email address |
| **Create App Password** | `create_app_password` | Generate application password |
| **Create Invite Code** | `create_invite_code` | Generate invite code |
| **Create Multiple Invite Codes** | `create_multiple_invite_codes` | Generate multiple invite codes |
| **Deactivate Account** | `deactivate_account` | Temporarily disable account |
| **Delete Account** | `delete_account` | Permanently remove account |
| **Delete Chat Account** | `delete_chat_account` | Delete chat account |
| **Delete Session Logout** | `delete_session_logout` | Logout/end session |
| **Get Active Session** | `get_active_session` | Verify active session |
| **Get Age Assurance Config** | `get_age_assurance_config` | Retrieve age assurance configuration |
| **Get Age Assurance State** | `get_age_assurance_state` | Check age assurance status |
| **Get Notification Preferences** | `get_notification_preferences` | Get notification preferences |
| **Get User Preferences** | `get_user_preferences` | Get user preferences |
| **Get Video Upload Limits** | `get_video_upload_limits` | Get video upload limits for the account |
| **List Account Invite Codes** | `list_account_invite_codes` | Retrieve generated codes |
| **Refresh Session** | `refresh_session` | Refresh session credentials |
| **Register Push Notifications** | `register_push_notifications` | Register device for push notifications |
| **Request Account Deletion** | `request_account_deletion` | Initiate account deletion |
| **Request Email Confirmation** | `request_email_confirmation` | Request verification email |
| **Request Email Update** | `request_email_update` | Request email change |
| **Request Password Reset** | `request_password_reset` | Initiate password reset |
| **Reserve Signing Key** | `reserve_signing_key` | Reserve signing key |
| **Reset Password** | `reset_password` | Complete password reset |
| **Unregister Push Notifications** | `unregister_push_notifications` | Unregister device from push notifications |
| **Update Account Email** | `update_account_email` | Update account email |
| **Update Account Handle** | `update_account_handle` | Update account handle |
| **Update Notification Preferences** | `update_notification_preferences` | Update notification preferences |
| **Update User Preferences** | `update_user_preferences` | Update user preferences |
### Activity subscription
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ---------------------------------------- |
| **List Activity Subscriptions** | `list_activity_subscriptions` | List activity notification subscriptions |
### App password
| Operation | ID | Description |
| ----------------------- | --------------------- | --------------------------- |
| **List App Passwords** | `list_app_passwords` | List application passwords |
| **Revoke App Password** | `revoke_app_password` | Remove application password |
### Blob
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ------------------------------- |
| **Upload Blob to Repository** | `upload_blob_to_repository` | Upload a blob to the repository |
### Block
| Operation | ID | Description |
| ------------------------- | ----------------------- | -------------------- |
| **List Blocked Accounts** | `list_blocked_accounts` | Get blocked accounts |
### Credentials
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ---------------------------------------- |
| **Get Recommended Did Credentials** | `get_recommended_did_credentials` | Get recommended DID credential providers |
### Feed
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | --------------------------------------- |
| **Describe Feed Generator** | `describe_feed_generator` | Get feed generator metadata |
| **Get Feed Generator** | `get_feed_generator` | Get information about a feed generator |
| **Get Multiple Feed Generators** | `get_multiple_feed_generators` | Get multiple feed generators |
| **List Actor Feed Generators** | `list_actor_feed_generators` | Get feed generators created by an actor |
| **List Suggested Feeds** | `list_suggested_feeds` | Get suggested feed generators |
### Interactions
| Operation | ID | Description |
| -------------------------- | ------------------------ | ------------------------ |
| **Send User Interactions** | `send_user_interactions` | Report user interactions |
### Labeler
| Operation | ID | Description |
| ------------------------ | ---------------------- | -------------------------- |
| **Get Labeler Services** | `get_labeler_services` | Retrieve labeling services |
| **Query Content Labels** | `query_content_labels` | Query content labels |
### List
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | -------------------------------- |
| **Get List Member Feed** | `get_list_member_feed` | Get posts from members of a list |
| **Get List with Members** | `get_list_with_members` | Get a list and its members |
| **List Actor Lists** | `list_actor_lists` | Get lists created by an actor |
| **List Actor Membership Lists** | `list_actor_membership_lists` | Get lists containing user |
| **List Blocked Lists** | `list_blocked_lists` | Get blocked lists |
| **List Muted Lists** | `list_muted_lists` | Get muted lists |
| **Mute List** | `mute_list` | Mute entire list |
| **Unmute List** | `unmute_list` | Unmute list |
### Message
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | -------------------------------------- |
| **Accept Conversation Request** | `accept_conversation_request` | Accept a conversation request |
| **Add Reaction to Message** | `add_reaction_to_message` | Add a reaction to a message |
| **Check Conversation Availability** | `check_conversation_availability` | Check if conversation possible |
| **Delete Message for Self** | `delete_message_for_self` | Delete a message (for self only) |
| **Get Conversation** | `get_conversation` | Get a specific conversation |
| **Get Conversation Event Log** | `get_conversation_event_log` | Get conversation event log |
| **Get Conversation with Members** | `get_conversation_with_members` | Get conversation with specific members |
| **Get Unread Notification Count** | `get_unread_notification_count` | Get count of unread notifications |
| **Leave Conversation** | `leave_conversation` | Leave a conversation |
| **List Conversation Messages** | `list_conversation_messages` | Get messages from a conversation |
| **List User Conversations** | `list_user_conversations` | List user's chat conversations |
| **Mark All Messages Read** | `mark_all_messages_read` | Mark all messages read |
| **Mark Conversation Read** | `mark_conversation_read` | Mark conversation as read |
| **Mute Conversation** | `mute_conversation` | Mute a conversation |
| **Remove Reaction from Message** | `remove_reaction_from_message` | Remove message reaction |
| **Send Message Batch** | `send_message_batch` | Send multiple messages |
| **Send Message in Conversation** | `send_message_in_conversation` | Send a message in a conversation |
| **Unmute Conversation** | `unmute_conversation` | Unmute a conversation |
### Notification
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | --------------------------------------------- |
| **List Notifications** | `list_notifications` | List notifications for the authenticated user |
| **Mark Notifications As Seen** | `mark_notifications_as_seen` | Mark notifications as seen |
### Post
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ------------------------------------------ |
| **Create Moderation Report** | `create_moderation_report` | Submit moderation report |
| **Create Post** | `create_post` | Create a new post |
| **Create Post Bookmark** | `create_post_bookmark` | Save a post to bookmarks |
| **Delete Post** | `delete_post` | Delete a post |
| **Delete Post Bookmark** | `delete_post_bookmark` | Remove a bookmark |
| **Get Author Feed** | `get_author_feed` | Get posts from a specific user's feed |
| **Get Custom Feed Posts** | `get_custom_feed_posts` | Get posts from a custom feed |
| **Get Feed Skeleton** | `get_feed_skeleton` | Retrieve feed skeleton structure |
| **Get Home Timeline** | `get_home_timeline` | Get the authenticated user's home timeline |
| **Get Post Thread** | `get_post_thread` | Get a post and its thread context |
| **Get Posts by Uris** | `get_posts_by_uris` | Get multiple posts by their URIs |
| **Like Post** | `like_post` | Like a post |
| **List Bookmarks** | `list_bookmarks` | Get user's bookmarks |
| **List Post Likers** | `list_post_likers` | Get users who liked a post |
| **List Post Quotes** | `list_post_quotes` | Get posts that quote a specific post |
| **List Post Reposters** | `list_post_reposters` | Get users who reposted a post |
| **Remove Repost** | `remove_repost` | Remove a repost |
| **Repost Post** | `repost_post` | Repost a post |
| **Search Posts** | `search_posts` | Search for posts |
| **Unlike Post** | `unlike_post` | Unlike a post (remove like) |
### Record
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ------------------------------------------ |
| **Apply Writes Atomically** | `apply_writes_atomically` | Apply multiple write operations atomically |
| **Create or Update Record** | `create_or_update_record` | Create or update a record |
| **Create Repository Record** | `create_repository_record` | Create a record in the repository |
| **Delete Repository Record** | `delete_repository_record` | Delete a record from the repository |
| **Get Repository Record** | `get_repository_record` | Get a specific record |
| **List Repository Records** | `list_repository_records` | List records in a collection |
### Repository
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ---------------------------------------- |
| **Describe Repository** | `describe_repository` | Get repository description and metadata |
| **Resolve Complete Identity** | `resolve_complete_identity` | Resolve complete identity (handle + DID) |
| **Resolve Did to Document** | `resolve_did_to_document` | Resolve a DID to get DID document |
| **Resolve Handle to Did** | `resolve_handle_to_did` | Resolve a handle to a DID |
### Server
| Operation | ID | Description |
| ------------------- | ----------------- | ---------------------- |
| **Describe Server** | `describe_server` | Get server information |
### Service auth
| Operation | ID | Description |
| -------------------------- | ------------------------ | -------------------------- |
| **Get Service Auth Token** | `get_service_auth_token` | Get service authentication |
### Starter pack
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | --------------------------------- |
| **Get Multiple Starter Packs** | `get_multiple_starter_packs` | Get starter packs |
| **Get Starter Pack** | `get_starter_pack` | Get starter pack details |
| **List Actor Starter Packs** | `list_actor_starter_packs` | Get starter packs created by user |
| **List Starter Packs with Membership** | `list_starter_packs_with_membership` | Get starter packs user belongs to |
| **Search Starter Packs** | `search_starter_packs` | Search starter packs |
### Thread
| Operation | ID | Description |
| ----------------- | --------------- | --------------- |
| **Mute Thread** | `mute_thread` | Mute a thread |
| **Unmute Thread** | `unmute_thread` | Unmute a thread |
### User
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ---------------------------------------------- |
| **Block User** | `block_user` | Block a user |
| **Follow User** | `follow_user` | Follow a user |
| **Get Actor Relationships** | `get_actor_relationships` | Get relationships between actors |
| **Get Multiple User Profiles** | `get_multiple_user_profiles` | Get multiple user profiles at once |
| **Get User Profile** | `get_user_profile` | Get a user's profile information |
| **List Actor Followers** | `list_actor_followers` | Get an actor's followers |
| **List Actor Follows** | `list_actor_follows` | Get accounts that an actor follows |
| **List Actor Liked Posts** | `list_actor_liked_posts` | Get posts liked by an actor |
| **List Muted Accounts** | `list_muted_accounts` | Get muted accounts |
| **List Mutual Followers** | `list_mutual_followers` | Get mutual followers |
| **List Suggested Accounts** | `list_suggested_accounts` | Get suggested accounts to follow |
| **List Suggested Follows by Actor** | `list_suggested_follows_by_actor` | Get follow suggestions |
| **Mute Actor** | `mute_actor` | Mute an actor |
| **Search Actors** | `search_actors` | Search for actors/users |
| **Search Actors Typeahead** | `search_actors_typeahead` | Typeahead search for actors (for autocomplete) |
| **Unblock User** | `unblock_user` | Unblock a user |
| **Unfollow User** | `unfollow_user` | Unfollow a user |
| **Unmute Actor** | `unmute_actor` | Unmute an actor |
### Video
| Operation | ID | Description |
| ------------------------ | ---------------------- | ------------------------------- |
| **Get Video Job Status** | `get_video_job_status` | Get video processing job status |
| **Upload Video** | `upload_video` | Upload a video |
# Box
Source: https://docs.noclick.com/integrations/box
Connect Box to your workflows: 29 operations across 10 categories.
The Box node adds Box operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Box also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Box.
You can wire the Box node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Box under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Box account when prompted; no keys to copy.
[Get your credentials here](https://app.box.com/developers/console).
NoClick requests the following permissions:
* `root_readwrite`
* `manage_managed_users`
* `manage_groups`
* `manage_webhook`
* `manage_enterprise_properties`
### Developer token
Enter the values manually when creating the credential.
[Get your credentials here](https://app.box.com/developers/console).
## Operations
### Collaboration
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------------------------- | ------- |
| **Add Collaboration** | `add_collaboration` | Share a file or folder with a user at a given role. | |
| **List Collaborations** | `list_collaborations` | List collaborators on a folder or file. | |
| **Remove Collaboration** | `remove_collaboration` | Remove a collaborator. | |
### Comments
| Operation | ID | Description | Trigger |
| ---------------------- | --------------- | ------------------------ | ------- |
| **Add Comment** | `add_comment` | Add a comment to a file. | |
| **List File Comments** | `list_comments` | List comments on a file. | |
### Files
| Operation | ID | Description | Trigger |
| ------------------------- | ------------------ | ------------------------------------------------------------------ | ------- |
| **Copy File** | `copy_file` | Copy a file into a destination folder. | |
| **Delete File** | `delete_file` | Move a file to the trash. | |
| **Get File Download URL** | `get_download_url` | Get a download URL for a file (follows Box's 302 redirect). | |
| **Get File Info** | `get_file` | Retrieve file metadata. | |
| **Update File** | `update_file` | Rename, move, or change a file's description. | |
| **Upload File** | `upload_file` | Upload a new file from inline text content into a folder. | |
| **Upload New Version** | `upload_version` | Upload a new version of an existing file from inline text content. | |
### Folders
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------- | ----------------------------------------------------------- | ------- |
| **Copy Folder** | `copy_folder` | Copy a folder (and its contents) into a destination parent. | |
| **Create Folder** | `create_folder` | Create a new folder under a parent. | |
| **Delete Folder** | `delete_folder` | Delete a folder (moves it to the trash). | |
| **Get Folder Info** | `get_folder` | Retrieve metadata for a folder. | |
| **List Folder Items** | `list_folder_items` | List files, folders, and web links inside a folder. | |
| **List Trashed Items** | `list_trash` | List items currently in the trash. | |
| **Update Folder** | `update_folder` | Rename, move, or change folder properties. | |
### Search
| Operation | ID | Description | Trigger |
| ------------------ | -------- | ---------------------------------------------- | ------- |
| **Search Content** | `search` | Search files, folders, and web links by query. | |
### Sharing
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------ | ------- |
| **Create File Shared Link** | `create_file_shared_link` | Create or update a public shared link on a file. | |
| **Create Folder Shared Link** | `create_folder_shared_link` | Create or update a shared link on a folder. | |
### Tasks
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ------------------------------------------- | ------- |
| **Create Task** | `create_task` | Create a review or approval task on a file. | |
### Users
| Operation | ID | Description | Trigger |
| ------------------------- | ------------ | ----------------------------------------------------------- | ------- |
| **Get Current User** | `get_me` | Retrieve the authenticated user's profile. | |
| **List Enterprise Users** | `list_users` | List managed users in the enterprise (admin / server auth). | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------------------------------------- | ------- |
| **Create Webhook** | `create_webhook` | Register a webhook on a file or folder (manual, not the trigger). | |
| **Delete Webhook** | `delete_webhook` | Delete a webhook. | |
| **List Webhooks** | `list_webhooks` | List all webhooks created by the app for the user. | |
### Other
| Operation | ID | Description | Trigger |
| --------------------------- | -------------- | ---------------------------------------------------------------------------- | ------- |
| **On File or Folder Event** | `on_box_event` | Fire the workflow when a Box file/folder event occurs (FILE.UPLOADED, etc.). | Yes |
# Brandfetch
Source: https://docs.noclick.com/integrations/brandfetch
Connect Brandfetch to your workflows: 15 operations across 6 categories.
The Brandfetch node adds Brandfetch operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Brandfetch also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Brandfetch.
You can wire the Brandfetch node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Brandfetch under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Create a free account at developers.brandfetch.com, then copy your API key (Bearer, keep secret) and your public Client ID from the dashboard.
[Get your credentials here](https://developers.brandfetch.com/register).
## Operations
### Brand
| Operation | ID | Description | Trigger |
| --------------------------- | --------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Get Brand (Auto-detect)** | `get_brand` | Auto-detect lookup: resolves identifier in order domain -> ticker -> ISIN -> crypto. | |
| **Get Brand by Crypto** | `get_brand_by_crypto` | Look up a brand by cryptocurrency symbol (e.g. BTC). | |
| **Get Brand by Domain** | `get_brand_by_domain` | Fetch the full brand record for a domain (logos, colors, fonts, social links). | |
| **Get Brand by ISIN** | `get_brand_by_isin` | Look up a brand by ISIN code (e.g. US6541061031). | |
| **Get Brand by Ticker** | `get_brand_by_ticker` | Look up a brand by stock/ETF ticker symbol (e.g. NKE). | |
### Context
| Operation | ID | Description | Trigger |
| -------------------------------- | ---------------------- | ---------------------------------------------------------------------- | ------- |
| **Get Brand Context (JSON)** | `get_context_json` | Get AI/LLM-oriented structured brand intelligence as JSON. | |
| **Get Brand Context (Markdown)** | `get_context_markdown` | Get AI/LLM-ready brand intelligence as Markdown to drop into a prompt. | |
### Logo
| Operation | ID | Description | Trigger |
| --------------------------- | ---------------- | -------------------------------------------------------------------------------- | ------- |
| **Fetch Logo by Crypto** | `logo_by_crypto` | Build a Logo CDN URL for a crypto symbol (requires the public Client ID). | |
| **Fetch Logo by Domain** | `logo_by_domain` | Build a Logo CDN URL for a domain (requires the public Client ID). | |
| **Fetch Logo by ISIN** | `logo_by_isin` | Build a Logo CDN URL for an ISIN (requires the public Client ID). | |
| **Fetch Logo by Ticker** | `logo_by_ticker` | Build a Logo CDN URL for a stock ticker (requires the public Client ID). | |
| **Fetch Themed/Sized Logo** | `logo_themed` | Build a transformed Logo CDN URL with theme, size, format, and fallback options. | |
### Search
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------------------------------------------------------------ | ------- |
| **Search Brands** | `search_brands` | Autocomplete-style brand search by name (requires the public Client ID). | |
### Transaction
| Operation | ID | Description | Trigger |
| ----------------------------------- | ---------------------- | ------------------------------------------------------------- | ------- |
| **Identify Brand from Transaction** | `identify_transaction` | Map a raw bank/card statement descriptor to a merchant brand. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------- | ----------------------------------------------------------------------------------- | ------- |
| **Receive Brand Change Events** | `receive_webhook` | Receive brand-change events from Brandfetch (brand.updated, brand.company.updated). | Yes |
# Cal.com
Source: https://docs.noclick.com/integrations/cal-com
Connect Cal.com to your workflows: 28 operations across 8 categories.
The Cal.com node adds Cal.com operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Cal.com also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Cal.com.
You can wire the Cal.com node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Cal.com under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Cal com OAuth
Sign in with your Cal.com account when prompted; no keys to copy.
NoClick requests the following permissions:
* `BOOKING_READ`
* `BOOKING_WRITE`
* `EVENT_TYPE_READ`
* `EVENT_TYPE_WRITE`
* `SCHEDULE_READ`
* `SCHEDULE_WRITE`
* `PROFILE_READ`
* `PROFILE_WRITE`
* `WEBHOOK_READ`
* `WEBHOOK_WRITE`
### Cal com API key
Enter the values manually when creating the credential.
[Get your credentials here](https://app.cal.com/settings/developer/api-keys).
## Operations
### Availability
| Operation | ID | Description | Trigger |
| ----------------------- | -------------- | -------------------------------------------------------------------- | ------- |
| **Get Available Slots** | `get_slots` | Get available booking slots for an event type within a date range. | |
| **Reserve Slot** | `reserve_slot` | Reserve (hold) a slot for an event type before confirming a booking. | |
### Bookings
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ---------------------------------------------------------------------- | ------- |
| **Cancel Booking** | `cancel_booking` | Cancel an existing booking. | |
| **Confirm Booking** | `confirm_booking` | Confirm a booking that requires host confirmation. | |
| **Create Booking** | `create_booking` | Book a slot for an event type. | |
| **Decline Booking** | `decline_booking` | Decline a booking that requires host confirmation. | |
| **Get Booking** | `get_booking` | Retrieve a single booking by its UID. | |
| **Get Recordings** | `get_recordings` | Get the Cal Video recordings for a booking. | |
| **List Bookings** | `list_bookings` | List bookings, optionally filtered by status, attendee, or date range. | |
| **Mark No-Show** | `mark_no_show` | Mark the host and/or attendees as absent (no-show) for a booking. | |
| **Reschedule Booking** | `reschedule_booking` | Reschedule a booking to a new start time. | |
### Event types
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------------- | ------- |
| **Create Event Type** | `create_event_type` | Create a new event type. | |
| **Delete Event Type** | `delete_event_type` | Delete an event type. | |
| **Get Event Type** | `get_event_type` | Retrieve a single event type by ID. | |
| **List Event Types** | `list_event_types` | List event types for the authenticated user. | |
| **Update Event Type** | `update_event_type` | Update an existing event type (only the fields you set change). | |
### Out of office
| Operation | ID | Description | Trigger |
| ------------------------ | ------------ | -------------------------------- | ------- |
| **Create Out-of-Office** | `create_ooo` | Create an out-of-office entry. | |
| **Delete Out-of-Office** | `delete_ooo` | Delete an out-of-office entry. | |
| **List Out-of-Office** | `list_ooo` | List your out-of-office entries. | |
### Profile
| Operation | ID | Description | Trigger |
| --------------------- | ----------- | ------------------------------------------------------------------------- | ------- |
| **Get My Profile** | `get_me` | Retrieve the authenticated user's profile. | |
| **Update My Profile** | `update_me` | Update the authenticated user's profile (only the fields you set change). | |
### Schedules
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------------------------------------------------------------- | ------- |
| **Create Schedule** | `create_schedule` | Create an availability schedule. | |
| **Delete Schedule** | `delete_schedule` | Delete an availability schedule. | |
| **Get Schedule** | `get_schedule` | Retrieve a single availability schedule by ID. | |
| **List Schedules** | `list_schedules` | List availability schedules for the authenticated user. | |
| **Update Schedule** | `update_schedule` | Update an availability schedule (only the fields you set change). | |
### Webhooks
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | --------------------------------------------- | ------- |
| **List Webhooks** | `list_webhooks` | List the webhooks registered on your account. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------ | ------- |
| **On Booking Event** | `on_booking_event` | Fire the workflow when a Cal.com webhook event occurs. | Yes |
# Calendly
Source: https://docs.noclick.com/integrations/calendly
Connect Calendly to your workflows: 40 operations across 12 categories.
The Calendly node adds Calendly operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Calendly also includes 8 trigger operations (marked in the tables below) that can start a workflow when something happens in Calendly.
You can wire the Calendly node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Calendly under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Calendly account when prompted; no keys to copy.
[Get your credentials here](https://developer.calendly.com/).
### Personal access token
Enter the values manually when creating the credential.
[Get your credentials here](https://calendly.com/integrations/api_webhooks).
## Operations
### Advanced
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **Custom Request** | `custom_request` | Call any authenticated Calendly REST endpoint (covers the long tail: contacts, outgoing communications, analytics, and anything new). | |
### Availability
| Operation | ID | Description | Trigger |
| ------------------------------- | ---------------------------------- | ------------------------------------------------------------ | ------- |
| **List Availability Schedules** | `list_user_availability_schedules` | List a user's availability schedules. | |
| **List Busy Times** | `list_user_busy_times` | List a user's busy times (window must be future, \<=7 days). | |
### Enterprise
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------- | ------- |
| **Delete Event Data** | `delete_event_data` | Delete scheduled-event data by time range (Enterprise). | |
| **Delete Invitee Data** | `delete_invitee_data` | GDPR-delete invitee data by email (Enterprise). | |
| **List Activity Log** | `list_activity_log` | List organization activity log entries (Enterprise). | |
### Event types
| Operation | ID | Description | Trigger |
| ------------------------ | --------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Get Event Type** | `get_event_type` | Get a single event type. | |
| **List Available Times** | `list_event_type_available_times` | List bookable time slots for an event type (window must be future, \<=7 days). | |
| **List Event Types** | `list_event_types` | List event types for a user or organization. | |
### Groups
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------------------------------------------------------------- | ------- |
| **List Group Relationships** | `list_group_relationships` | List group relationships (group membership is exposed only here). | |
| **List Groups** | `list_groups` | List groups (Teams/Enterprise). | |
### No-Shows
| Operation | ID | Description | Trigger |
| ---------------- | ---------------- | ----------------------------- | ------- |
| **Get No-Show** | `get_no_show` | Get a no-show record. | |
| **Mark No-Show** | `create_no_show` | Mark an invitee as a no-show. | |
| **Undo No-Show** | `delete_no_show` | Undo a no-show marking. | |
### Organization
| Operation | ID | Description | Trigger |
| --------------------- | -------------------------------- | ----------------------------------------- | ------- |
| **Get Membership** | `get_organization_membership` | Get an organization membership. | |
| **Get Organization** | `get_organization` | Get an organization. | |
| **Invite User** | `create_organization_invitation` | Invite a user to the organization. | |
| **List Invitations** | `list_organization_invitations` | List organization invitations. | |
| **List Memberships** | `list_organization_memberships` | List organization memberships (members). | |
| **Remove Member** | `remove_organization_membership` | Remove a user from the organization. | |
| **Revoke Invitation** | `revoke_organization_invitation` | Revoke a pending organization invitation. | |
### Routing
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | --------------------------------------- | ------- |
| **List Routing Form Submissions** | `list_routing_form_submissions` | List routing form submissions (Teams+). | |
| **List Routing Forms** | `list_routing_forms` | List routing forms (Teams+). | |
### Scheduled events
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------- | ------- |
| **Cancel Scheduled Event** | `cancel_scheduled_event` | Cancel a scheduled event (fires invitee.canceled). | |
| **Get Event Invitee** | `get_event_invitee` | Get a single invitee of a scheduled event. | |
| **Get Scheduled Event** | `get_scheduled_event` | Get a single scheduled event. | |
| **List Event Invitees** | `list_event_invitees` | List invitees of a scheduled event. | |
| **List Scheduled Events** | `list_scheduled_events` | List scheduled events (meetings). | |
### Scheduling
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ---------------------------------------------------------------- | ------- |
| **Create Scheduling Link** | `create_scheduling_link` | Create a single-use scheduling link for an event type. | |
| **Create Share** | `create_share` | Create a shareable, customization-limited copy of an event type. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------------ | ------------------------------------ | ----------------------------------------------------------------- | ------- |
| **On Contact Created** | `on_contact_created` | Fires when a CRM contact is created. | Yes |
| **On Contact Deleted** | `on_contact_deleted` | Fires when a CRM contact is deleted. | Yes |
| **On Contact Updated** | `on_contact_updated` | Fires when a CRM contact is updated. | Yes |
| **On Invitee Canceled** | `on_invitee_canceled` | Fires when a booking is canceled (invitee.canceled). | Yes |
| **On Invitee Created** | `on_invitee_created` | Fires when someone books a meeting (invitee.created). | Yes |
| **On No-Show Marked** | `on_invitee_no_show_created` | Fires when an invitee is marked a no-show. | Yes |
| **On No-Show Undone** | `on_invitee_no_show_deleted` | Fires when a no-show marking is removed. | Yes |
| **On Routing Form Submission** | `on_routing_form_submission_created` | Fires when a routing form is submitted (organization scope only). | Yes |
### Users
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | --------------------------------------- | ------- |
| **Get Current User** | `get_current_user` | Get the authenticated user (/users/me). | |
| **Get User** | `get_user` | Get a user by URI or UUID. | |
# Canva
Source: https://docs.noclick.com/integrations/canva
Connect Canva to your workflows: 45 operations across 11 categories.
The Canva node adds Canva operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Canva node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Canva under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Canva account when prompted; no keys to copy.
NoClick requests the following permissions:
* `asset:read`
* `asset:write`
* `design:meta:read`
* `design:content:read`
* `design:content:write`
* `folder:read`
* `folder:write`
* `profile:read`
* `brandtemplate:meta:read`
* `brandtemplate:content:read`
* `comment:read`
* `comment:write`
## Operations
### Asset
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | -------------------------------------------- |
| **Delete Asset** | `delete_asset` | Delete an asset |
| **Get Asset Metadata** | `get_asset_metadata` | Get asset metadata |
| **Get Asset Upload Job Status** | `get_asset_upload_job_status` | Get status of an asset upload job |
| **Get Binary Asset Upload Job Status** | `get_binary_asset_upload_job_status` | Get status of binary asset upload job |
| **Update Asset Name or Tags** | `update_asset_name_or_tags` | Update asset name or tags |
| **Upload Asset from Binary** | `upload_asset_from_binary` | Upload asset from binary data |
| **Upload Asset from Url** | `upload_asset_from_url` | Upload an asset from a URL (preview feature) |
### Authentication
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | --------------------------------------------------- |
| **Fetch Current User Oidc Claims** | `fetch_current_user_oidc_claims` | Fetch current user's OIDC claims |
| **Get App Json Web Key Set** | `get_app_json_web_key_set` | Get JSON Web Key Set of an app for JWT verification |
| **Get Openid Connect Jwks** | `get_openid_connect_jwks` | Get JSON Web Key Set for OpenID Connect |
| **Revoke Access or Refresh Token** | `revoke_access_or_refresh_token` | Revoke access or refresh token |
| **Verify Token Validity** | `verify_token_validity` | Verify token validity and get token metadata |
### Brand template
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | -------------------------------------------- |
| **Get Brand Template Metadata** | `get_brand_template_metadata` | Get brand template metadata |
| **List Brand Templates with Search** | `list_brand_templates_with_search` | List brand templates with search and filters |
### Comment thread
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | --------------------------------- |
| **Create Comment Thread Reply** | `create_comment_thread_reply` | Create reply to comment thread |
| **Create Design Comment Thread** | `create_design_comment_thread` | Create comment thread on design |
| **Get Comment Thread Reply** | `get_comment_thread_reply` | Get specific reply from thread |
| **Get Design Comment Thread** | `get_design_comment_thread` | Get comment or suggestion thread |
| **List Comment Thread Replies** | `list_comment_thread_replies` | List replies for a comment thread |
### Design
| Operation | ID | Description |
| --------------------------------------- | ------------------------------------- | ---------------------------------------- |
| **Create Design** | `create_design` | Create a new Canva design |
| **Get Binary Design Import Job Status** | `get_binary_design_import_job_status` | Get status of binary design import job |
| **Get Design Import Job Status** | `get_design_import_job_status` | Get status of a design import job |
| **Get Design Metadata** | `get_design_metadata` | Get design metadata |
| **Import Design from Binary File** | `import_design_from_binary_file` | Import design from binary file data |
| **Import Design from Url** | `import_design_from_url` | Import a file as a design from URL |
| **List Design Pages** | `list_design_pages` | List pages in a design (preview feature) |
| **List User Designs** | `list_user_designs` | List user's designs |
### Design autofill
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ------------------------------------------------------- |
| **Create Design Autofill Job** | `create_design_autofill_job` | Start async job to autofill design using brand template |
| **Get Autofill Dataset Definition** | `get_autofill_dataset_definition` | Get dataset definition for autofill fields |
| **Get Design Autofill Job Status** | `get_design_autofill_job_status` | Get status of design autofill job |
### Design export
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ----------------------------------------------------------- |
| **Create Design Export Job** | `create_design_export_job` | Create a design export job |
| **Get Design Export Formats** | `get_design_export_formats` | Get available export formats for a design (preview feature) |
| **Get Design Export Job Status** | `get_design_export_job_status` | Get status of an export job |
### Design resize
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ----------------------------------------------------- |
| **Create Design Resize Job** | `create_design_resize_job` | Create async job to resize a design to new dimensions |
| **Get Design Resize Job Status** | `get_design_resize_job_status` | Get status of a design resize job |
### Folder
| Operation | ID | Description |
| ------------------------ | ---------------------- | ------------------------ |
| **Create Folder** | `create_folder` | Create a new folder |
| **Delete Folder** | `delete_folder` | Delete a folder |
| **Get Folder Details** | `get_folder_details` | Get folder details |
| **List Folder Contents** | `list_folder_contents` | List items in a folder |
| **Move Item to Folder** | `move_item_to_folder` | Move an item to a folder |
| **Update Folder Name** | `update_folder_name` | Update folder name |
### User
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | --------------------------------------------------- |
| **Get Current User Id** | `get_current_user_id` | Get current user ID |
| **Get User Available Features** | `get_user_available_features` | Get user capabilities (what features are available) |
| **Get User Profile Information** | `get_user_profile_information` | Get user profile information |
### Webhook
| Operation | ID | Description |
| ------------------------------------------- | ----------------------------------------- | ---------------------------------------------------- |
| **Get Webhook Signature Verification Keys** | `get_webhook_signature_verification_keys` | Get JSON Web Keys for webhook signature verification |
# Chroma
Source: https://docs.noclick.com/integrations/chroma
Connect Chroma to your workflows: 36 operations across 6 categories.
The Chroma node adds Chroma operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Chroma node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Chroma under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://trychroma.com/).
## Operations
### Collection
| Operation | ID | Description |
| ------------------------- | ----------------------- | --------------------------------------------------------------------- |
| **Count Collections** | `count_collections` | Count the total number of collections in the database. |
| **Create Collection** | `create_collection` | Create a collection. |
| **Delete Collection** | `delete_collection` | Permanently delete a collection and all its records. |
| **Fork Collection** | `fork_collection` | Fork (copy) an existing collection into a new one. |
| **Fork Count** | `fork_count` | Get the number of times a collection has been forked. |
| **Get Collection** | `get_collection` | Get a collection's metadata and configuration by name. |
| **Get Collection by CRN** | `get_collection_by_crn` | Get a collection by its Cloud Resource Name (CRN). |
| **Get Collection by ID** | `get_collection_by_id` | Get a collection's metadata by its UUID. |
| **Indexing Status** | `indexing_status` | Get the indexing status of a collection (records indexed vs pending). |
| **List Collections** | `list_collections` | List collections in the tenant/database. |
| **Update Collection** | `update_collection` | Rename a collection or replace its metadata. |
### Database
| Operation | ID | Description |
| ------------------- | ----------------- | ------------------------------------------------------- |
| **Create Database** | `create_database` | Create a new database in the tenant. |
| **Delete Database** | `delete_database` | Delete a database and ALL its collections. DESTRUCTIVE. |
| **Get Database** | `get_database` | Get metadata about a database. |
| **List Databases** | `list_databases` | List all databases in the tenant. |
### Functions
| Operation | ID | Description |
| ------------------------- | ----------------------------- | ------------------------------------------------------------------------- |
| **Add Function Input** | `add_attached_function_input` | Add input data to an attached function (e.g. provide documents to embed). |
| **Attach Function** | `attach_function` | Attach an embedding or processing function to a collection. |
| **Detach Function** | `detach_function` | Detach (remove) a function from a collection. |
| **Get Attached Function** | `get_attached_function` | Get details about a function attached to a collection. |
### Records
| Operation | ID | Description |
| --------------------------- | ------------------ | ---------------------------------------------------------------------------------------------------- |
| **Add Records** | `add` | Add records to a collection (fails if IDs already exist; use Upsert for insert-or-update). |
| **Count Records** | `count` | Count the number of records in a collection. |
| **Delete Records** | `delete` | Delete records by ID, metadata filter, or document content filter. |
| **Get Records** | `get` | Get records by ID or filter. |
| **Query (Vector)** | `query` | Similarity search by a query embedding vector. |
| **Search (Text)** | `search` | Full-text / semantic search using query text, Chroma embeds it server-side via an attached function. |
| **Update Records** | `update` | Update existing records by ID (fails if an ID does not exist; use Upsert otherwise). |
| **Upload & Index Document** | `upload_and_index` | Upload a document file, chunk + embed it, and add the records. |
| **Upsert Records** | `upsert` | Upsert records, inserts new IDs and updates existing ones (idempotent sync). |
### Tenant
| Operation | ID | Description |
| ----------------- | --------------- | -------------------------------- |
| **Create Tenant** | `create_tenant` | Create a new tenant. |
| **Get Tenant** | `get_tenant` | Get metadata about a tenant. |
| **Update Tenant** | `update_tenant` | Update a tenant's configuration. |
### Utility
| Operation | ID | Description |
| --------------------- | ------------------- | -------------------------------------------------------------------------------------- |
| **Get User Identity** | `get_user_identity` | Get the identity of the currently authenticated user. |
| **Get Version** | `version` | Get the Chroma server version string. |
| **Healthcheck** | `healthcheck` | Check whether the Chroma server is healthy. |
| **Heartbeat** | `heartbeat` | Get the server heartbeat (nanosecond timestamp). |
| **Reset Server** | `reset` | Reset the Chroma server. DESTRUCTIVE, wipes ALL data across all tenants and databases. |
# ClickHouse
Source: https://docs.noclick.com/integrations/clickhouse
Connect ClickHouse to your workflows: 41 operations across 10 categories.
The ClickHouse node adds ClickHouse operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
ClickHouse also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in ClickHouse.
You can wire the ClickHouse node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect ClickHouse under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Create an API key in the ClickHouse Cloud console under Settings -> API Keys -> New API Key. Choose a role (developer = read-only, admin = read/write). Copy the Key ID and Key Secret (the secret is shown only once).
[Get your credentials here](https://console.clickhouse.cloud/).
## Operations
### API keys
| Operation | ID | Description | Trigger |
| ------------------ | ------------ | ------------------------------------------------------------ | ------- |
| **Create API Key** | `create_key` | Create a new organization API key (returns Key ID + Secret). | |
| **Delete API Key** | `delete_key` | Delete/revoke an organization API key. | |
| **List API Keys** | `list_keys` | List organization API keys. | |
### Backups
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | --------------------------------------------------------------- | ------- |
| **Get Backup** | `get_backup` | Get details of a single backup. | |
| **Get Backup Configuration** | `get_backup_configuration` | Read the backup schedule/retention configuration for a service. | |
| **List Backups** | `list_backups` | List backups for a service. | |
| **Update Backup Configuration** | `update_backup_configuration` | Update a service's backup schedule and retention settings. | |
### ClickPipes
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ---------------------------------------------------------- | ------- |
| **Create ClickPipe** | `create_clickpipe` | Create a ClickPipe data-ingestion pipeline. | |
| **Delete ClickPipe** | `delete_clickpipe` | Delete a ClickPipe. | |
| **Get ClickPipe** | `get_clickpipe` | Get details of a single ClickPipe. | |
| **List ClickPipes** | `list_clickpipes` | List ingestion pipelines (ClickPipes) for an organization. | |
| **Update ClickPipe State** | `update_clickpipe_state` | Start, stop, or pause a ClickPipe. | |
### Invitations
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | -------------------------------------- | ------- |
| **Create Invitation** | `create_invitation` | Invite a user to the organization. | |
| **Delete Invitation** | `delete_invitation` | Revoke a pending invitation. | |
| **List Invitations** | `list_invitations` | List pending organization invitations. | |
### Members
| Operation | ID | Description | Trigger |
| ---------------------- | ---------------- | -------------------------------------------------------------------------------------------- | ------- |
| **Get Invitation** | `get_invitation` | Get a single pending invitation. | |
| **Get Member** | `get_member` | Get a single organization member. | |
| **List Members** | `list_members` | List organization members. | |
| **List Roles** | `list_roles` | List custom roles defined in the organization (for orgs that have migrated to Custom Roles). | |
| **Remove Member** | `remove_member` | Remove a member from the organization. | |
| **Update Member Role** | `update_member` | Update a member's role in the organization. | |
### Metrics
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------------------- | ------- |
| **Get Prometheus Metrics** | `get_prometheus_metrics` | Scrape service metrics in Prometheus exposition format. | |
### Organizations
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ---------------------------------------------- | ------- |
| **Get Organization** | `get_organization` | Get details of a single organization. | |
| **Get Usage Cost** | `get_usage_cost` | Retrieve usage/cost data for a date range. | |
| **List Activities** | `list_activities` | List the audit log of organization activities. | |
| **List Organizations** | `list_organizations` | List organizations the API key can access. | |
| **Update Organization** | `update_organization` | Update organization settings (e.g. name). | |
### Query endpoints
| Operation | ID | Description | Trigger |
| ---------------------------------- | ----------------------- | ---------------------------------------------------------------------------- | ------- |
| **Create / Update Query Endpoint** | `upsert_query_endpoint` | Create or update a query endpoint to run SQL against the service over HTTPS. | |
| **Delete Query Endpoint** | `delete_query_endpoint` | Delete the service's query endpoint. | |
| **Get Query Endpoint** | `get_query_endpoint` | Get the SQL query endpoint config for a service. | |
### Services
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | -------------------------------------------------------------------------------- | ------- |
| **Create Service** | `create_service` | Provision a new ClickHouse service. | |
| **Delete Service** | `delete_service` | Delete a service. | |
| **Get Private Endpoint Config** | `get_private_endpoint_config` | Get the private endpoint configuration info needed to connect via VPC. | |
| **Get Service** | `get_service` | Get details of a single service. | |
| **List Services** | `list_services` | List all ClickHouse services in an organization. | |
| **Start / Stop Service** | `update_service_state` | Start or stop a service. | |
| **Update Service** | `update_service` | Update service basics (name, etc.). | |
| **Update Service Password** | `update_service_password` | Reset the service's default database user password. | |
| **Update Service Replica Scaling** | `update_service_replica_scaling` | Update service autoscaling, new endpoint replacing the deprecated /scaling path. | |
| **Update Service Scaling** | `update_service_scaling` | Update service autoscaling min/max replica memory. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **On Scheduled Query Results** | `on_query_results` | Poll-based trigger: runs on a schedule, fetches the organization activity audit log, and emits NEW activities since the last poll. | Yes |
# ClickUp
Source: https://docs.noclick.com/integrations/clickup
Connect ClickUp to your workflows: 160 operations across 26 categories.
The ClickUp node adds ClickUp operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
ClickUp also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in ClickUp.
You can wire the ClickUp node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect ClickUp under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your ClickUp account when prompted; no keys to copy.
[Get your credentials here](https://app.clickup.com/settings/apps).
### Personal token
Enter the values manually when creating the credential.
[Get your credentials here](https://app.clickup.com/settings/apps).
## Operations
### Advanced
| Operation | ID | Description | Trigger |
| ---------------------- | ---------------- | ------------------------------------------------------------------------ | ------- |
| **Custom API Request** | `custom_request` | Escape hatch: call ANY ClickUp endpoint not modeled as a first-class op. | |
### Attachments
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------------------------------------------------------------------------- | ------- |
| **Create Task Attachment** | `create_task_attachment` | Attach a file (by URL) to a task. NoClick downloads the URL and uploads it to ClickUp as multipart/form-data. | |
### Audit logs
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Create Audit Logs** | `create_audit_logs` | | |
### Authorization
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Get Authorized User** | `get_authorized_user` | | |
### Chat
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------------ | ----------- | ------- |
| **Create Chat Channel** | `create_chat_channel` | | |
| **Create Chat DM Channel** | `create_chat_direct_message_channel` | | |
| **Create Chat Location Channel** | `create_chat_location_channel` | | |
| **Create Chat Message** | `create_chat_message` | | |
| **Create Chat Reaction** | `create_chat_reaction` | | |
| **Create Chat Reply** | `create_chat_reply` | | |
| **Delete Chat Message** | `delete_chat_message` | | |
| **Delete Chat Reaction** | `delete_chat_reaction` | | |
| **Get Chat Channel** | `get_chat_channel` | | |
| **Get Chat Channel Followers** | `get_chat_channel_followers` | | |
| **Get Chat Channel Members** | `get_chat_channel_members` | | |
| **Get Chat Message Reactions** | `get_chat_message_reactions` | | |
| **Get Chat Message Tagged Users** | `get_chat_message_tagged_users` | | |
| **Get Chat Replies** | `get_chat_replies` | | |
| **List Chat Channels** | `list_chat_channels` | | |
| **List Chat Messages** | `list_chat_messages` | | |
| **Update Chat Channel** | `update_chat_channel` | | |
| **Update Chat Message** | `update_chat_message` | | |
### Checklists
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Create Checklist** | `create_checklist` | | |
| **Create Checklist Item** | `create_checklist_item` | | |
| **Delete Checklist** | `delete_checklist` | | |
| **Delete Checklist Item** | `delete_checklist_item` | | |
| **Edit Checklist** | `edit_checklist` | | |
| **Edit Checklist Item** | `edit_checklist_item` | | |
### Comments
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ---------------------------- | ------- |
| **Create Chat View Comment** | `create_chat_view_comment` | | |
| **Create List Comment** | `create_list_comment` | | |
| **Create Task Comment** | `create_task_comment` | Add a comment to a task. | |
| **Create Threaded Comment** | `create_threaded_comment` | | |
| **Delete Comment** | `delete_comment` | | |
| **Get Chat View Comments** | `get_chat_view_comments` | | |
| **Get List Comments** | `get_list_comments` | | |
| **Get Task Comments** | `get_task_comments` | Retrieve comments on a task. | |
| **Get Threaded Comments** | `get_threaded_comments` | | |
| **Update Comment** | `update_comment` | | |
### Custom fields
| Operation | ID | Description | Trigger |
| -------------------------------- | --------------------------- | --------------------------------------- | ------- |
| **Get Accessible Custom Fields** | `get_accessible_fields` | List custom fields available in a list. | |
| **Get Workspace Custom Fields** | `get_team_custom_fields` | | |
| **Remove Custom Field Value** | `remove_custom_field_value` | | |
| **Set Custom Field Value** | `set_custom_field` | Set a custom field value on a task. | |
### Docs
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Create Doc** | `create_doc` | | |
| **Create Doc Page** | `create_page` | | |
| **Edit Doc Page** | `edit_page` | | |
| **Get Doc** | `get_doc` | | |
| **Get Doc Page** | `get_page` | | |
| **Get Doc Page Listing** | `get_doc_page_listing` | | |
| **Get Doc Pages** | `get_doc_pages` | | |
| **Search Docs** | `search_docs` | | |
### Goals
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------------------------- | ------- |
| **Create Goal** | `create_goal` | Create a goal in a Workspace. | |
| **Create Key Result** | `create_key_result` | | |
| **Delete Goal** | `delete_goal` | | |
| **Delete Key Result** | `delete_key_result` | | |
| **Edit Key Result** | `edit_key_result` | | |
| **Get Goal** | `get_goal` | | |
| **Get Goals** | `get_goals` | List Workspace goals. | |
| **Update Goal** | `update_goal` | | |
### Guests
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Add Guest to Folder** | `add_guest_to_folder` | | |
| **Add Guest to List** | `add_guest_to_list` | | |
| **Add Guest to Task** | `add_guest_to_task` | | |
| **Edit Guest on Workspace** | `edit_guest_on_workspace` | | |
| **Get Guest** | `get_guest` | | |
| **Invite Guest to Workspace** | `invite_guest_to_workspace` | | |
| **Remove Guest From Folder** | `remove_guest_from_folder` | | |
| **Remove Guest From List** | `remove_guest_from_list` | | |
| **Remove Guest From Task** | `remove_guest_from_task` | | |
| **Remove Guest From Workspace** | `remove_guest_from_workspace` | | |
### Hierarchy
| Operation | ID | Description | Trigger |
| ----------------------------- | ----------------------- | ----------------------------------------------------- | ------- |
| **Create Space** | `create_space` | | |
| **Delete Space** | `delete_space` | | |
| **Get Authorized Workspaces** | `get_teams` | List the Workspaces (teams) the token can access. | |
| **Get Folders** | `get_folders` | List folders in a space. | |
| **Get Lists** | `get_lists` | List the lists inside a folder. | |
| **Get Shared Hierarchy** | `get_shared_hierarchy` | | |
| **Get Space** | `get_space` | | |
| **Get Spaces** | `get_spaces` | List spaces in a Workspace. | |
| **Get Workspace Members** | `get_workspace_members` | List members of a Workspace (for assignee selection). | |
| **Update Space** | `update_space` | | |
### Lists & folders
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | ------------------------------ | ------- |
| **Create Folder** | `create_folder` | Create a folder in a space. | |
| **Create Folder From Template** | `create_folder_from_template` | | |
| **Create Folderless List** | `create_folderless_list` | | |
| **Create Folderless List From Template** | `create_folderless_list_from_template` | | |
| **Create List** | `create_list` | Create a list inside a folder. | |
| **Create List From Template (Folder)** | `create_list_from_template_in_folder` | | |
| **Delete Folder** | `delete_folder` | | |
| **Delete List** | `delete_list` | | |
| **Get Folder** | `get_folder` | | |
| **Get Folderless Lists** | `get_folderless_lists` | | |
| **Get List** | `get_list` | | |
| **Update Folder** | `update_folder` | | |
| **Update List** | `update_list` | | |
### Members
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Get List Members** | `get_list_members` | | |
| **Get Task Members** | `get_task_members` | | |
### Roles
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Get Custom Roles** | `get_custom_roles` | | |
### Tags
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Add Tag to Task** | `add_tag_to_task` | | |
| **Create Space Tag** | `create_space_tag` | | |
| **Delete Space Tag** | `delete_space_tag` | | |
| **Edit Space Tag** | `edit_space_tag` | | |
| **Get Space Tags** | `get_space_tags` | | |
| **Remove Tag From Task** | `remove_tag_from_task` | | |
### Task relationships
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Add Dependency** | `add_dependency` | | |
| **Add Task Link** | `add_task_link` | | |
| **Delete Dependency** | `delete_dependency` | | |
| **Delete Task Link** | `delete_task_link` | | |
### Tasks
| Operation | ID | Description | Trigger |
| ---------------------------------- | ------------------------------- | ---------------------------------------------------- | ------- |
| **Create Task** | `create_task` | Create a new task in a list. | |
| **Create Task From Template** | `create_task_from_template` | | |
| **Delete Task** | `delete_task` | Remove a task. | |
| **Get Bulk Tasks' Time in Status** | `get_bulk_tasks_time_in_status` | | |
| **Get Filtered Team Tasks** | `get_filtered_team_tasks` | Query tasks across a whole Workspace by filters. | |
| **Get Task** | `get_task` | Fetch a single task's full details. | |
| **Get Task Time in Status** | `get_task_time_in_status` | | |
| **Get Tasks** | `get_tasks` | Retrieve tasks in a list (paginated). | |
| **Merge Tasks** | `merge_tasks` | | |
| **Update Task** | `update_task` | Modify a task (name, status, priority, dates, etc.). | |
### Tasks in multiple lists
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Add Task to List** | `add_task_to_list` | | |
| **Remove Task From List** | `remove_task_from_list` | | |
### Time tracking
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------------ | -------------------------------------------------- | ------- |
| **Add Tags to Time Entries** | `add_tags_from_time_entries` | | |
| **Create Time Entry** | `create_time_entry` | Log a time entry in a Workspace. | |
| **Delete Time Entry** | `delete_time_entry` | | |
| **Delete Tracked Time (Legacy)** | `delete_time_tracked` | | |
| **Edit Tracked Time (Legacy)** | `edit_time_tracked` | | |
| **Get All Time Entry Tags** | `get_all_tags_from_time_entries` | | |
| **Get Running Time Entry** | `get_running_time_entry` | | |
| **Get Single Time Entry** | `get_singular_time_entry` | | |
| **Get Time Entries** | `get_time_entries` | Retrieve time entries within a date range. | |
| **Get Time Entry History** | `get_time_entry_history` | | |
| **Get Tracked Time (Legacy)** | `get_tracked_time` | | |
| **Remove Tags From Time Entries** | `remove_tags_from_time_entries` | | |
| **Rename Time Entry Tag** | `change_tag_names_from_time_entries` | | |
| **Start Timer** | `start_timer` | Start a running timer (optionally tied to a task). | |
| **Stop Timer** | `stop_timer` | Stop the currently running timer. | |
| **Track Time (Legacy)** | `track_time` | | |
| **Update Time Entry** | `update_time_entry` | | |
### User groups
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Create User Group** | `create_user_group` | | |
| **Delete User Group** | `delete_user_group` | | |
| **Get User Groups** | `get_user_groups` | | |
| **Update User Group** | `update_user_group` | | |
### Users
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------- | ------- |
| **Edit User on Workspace** | `edit_user_on_workspace` | | |
| **Get User** | `get_user` | | |
| **Invite User to Workspace** | `invite_user_to_workspace` | | |
| **Remove User From Workspace** | `remove_user_from_workspace` | | |
### Views
| Operation | ID | Description | Trigger |
| ------------------------- | -------------------- | ----------- | ------- |
| **Create Folder View** | `create_folder_view` | | |
| **Create List View** | `create_list_view` | | |
| **Create Space View** | `create_space_view` | | |
| **Create Workspace View** | `create_team_view` | | |
| **Delete View** | `delete_view` | | |
| **Get Folder Views** | `get_folder_views` | | |
| **Get List Views** | `get_list_views` | | |
| **Get Space Views** | `get_space_views` | | |
| **Get View** | `get_view` | | |
| **Get View Tasks** | `get_view_tasks` | | |
| **Get Workspace Views** | `get_team_views` | | |
| **Update View** | `update_view` | | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Create Webhook** | `create_webhook` | | |
| **Delete Webhook** | `delete_webhook` | | |
| **Get Webhooks** | `get_webhooks` | | |
| **Update Webhook** | `update_webhook` | | |
### Workspaces
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Get Workspace Plan** | `get_workspace_plan` | | |
| **Get Workspace Seats** | `get_workspace_seats` | | |
### Other
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------------------------------------------- | ------- |
| **On Task Event** | `on_task_event` | Fire the workflow on selected ClickUp webhook event(s). | Yes |
# Cloudflare
Source: https://docs.noclick.com/integrations/cloudflare
Connect Cloudflare to your workflows: 591 operations across 62 categories.
The Cloudflare node adds Cloudflare operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Cloudflare also includes 23 trigger operations (marked in the tables below) that can start a workflow when something happens in Cloudflare.
You can wire the Cloudflare node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Cloudflare under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Cloudflare account when prompted; no keys to copy.
NoClick requests the following permissions:
* `offline_access`
* `agent-memory.write`
* `browser-rendering.read`
* `browser-rendering.write`
* `cf-agents.read`
* `cf-agents.write`
* `cloud-connector.read`
* `cloud-connector.write`
* `cloudchamber.read`
* `cloudchamber.write`
* `constellation.read`
* `constellation.write`
* `d1.read`
* `d1.write`
* `flagship.evaluate`
* `flagship.read`
* `flagship.write`
* `query-cache.read`
* `query-cache.write`
* `mcp-portals.read`
* `mcp-portals.write`
* `page.read`
* `page.write`
* `pipelines.read`
* `pipelines.send`
* `pipelines.write`
* `pubsub.read`
* `pubsub.write`
* `queues.read`
* `queues.write`
* `realtime.admin`
* `secrets-store.read`
* `secrets-store.write`
* `vectorize.read`
* `vectorize.write`
* `workers-ci.read`
* `workers-ci.write`
* `containers.read`
* `containers.write`
* `workers-kv-storage.read`
* `workers-kv-storage.write`
* `workers-observability.read`
* `workers-observability.write`
* `workers-observability-telemetry.write`
* `r2-catalog.read`
* `r2-catalog.write`
* `r2-catalog-sql.read`
* `workers-r2-bucket-item.read`
* `workers-r2-bucket-item.write`
* `workers-r2.read`
* `workers-r2.write`
* `workers-routes.read`
* `workers-routes.write`
* `workers-scripts.read`
* `workers-scripts.write`
* `workers-tail.read`
* `aiaudit.read`
* `aiaudit.write`
* `aig.read`
* `aig.run`
* `aig.write`
* `ai-search.index`
* `ai-search.read`
* `ai-search.run`
* `ai-search.write`
* `agw.read`
* `agw.run`
* `agw.write`
* `rag.read`
* `rag.run`
* `rag.write`
* `firewall-for-ai.read`
* `firewall-for-ai.write`
* `websearch.run`
* `ai.read`
* `ai.write`
* `account-dns-settings.read`
* `account-dns-settings.write`
* `dns-firewall.read`
* `dns-firewall.write`
* `dns.read`
* `dns.write`
* `dns-view.read`
* `dns-view.write`
* `registrar-domains.admin`
* `registrar-domains.read`
* `registrar-sandbox-domains.admin`
* `registrar-sandbox-domains.read`
* `zone-custom-asset.read`
* `zone-custom-asset.write`
* `zone-dns-settings.read`
* `zone-dns-settings.write`
* `zone.read`
* `zone.write`
* `zone-settings.read`
* `zone-settings.write`
* `zone-versioning.read`
* `zone-versioning.write`
* `fraud-detection-pii.read`
* `account-firewall-access-rules.read`
* `account-firewall-access-rules.write`
* `account-security-center-insights.read`
* `account-security-center-insights.write`
* `account-waf.read`
* `account-waf.write`
* `request-tracer.read`
* `reports-application-security-report.read`
* `bot-management-feedback.read`
* `bot-management-feedback.write`
* `bot-management.read`
* `bot-management.write`
* `cloudforce-one.read`
* `cloudforce-one.write`
* `ddos-botnet-feed.read`
* `ddos-botnet-feed.write`
* `ddos-protection.read`
* `ddos-protection.write`
* `api-gateway.read`
* `api-gateway.write`
* `domain-page.shield`
* `domain-page-shield.read`
* `firewall-services.read`
* `firewall-services.write`
* `fraud-detection.read`
* `fraud-detection.write`
* `fraud-events.write`
* `fraud-feedback.read`
* `fraud-feedback.write`
* `http-applications.read`
* `http-applications.write`
* `http-ddos-managed-ruleset.read`
* `http-ddos-managed-ruleset.write`
* `iot.read`
* `iot.write`
* `l4-ddos-managed-ruleset.read`
* `l4-ddos-managed-ruleset.write`
* `page-rules.read`
* `page-rules.write`
* `page.shield`
* `page-shield.read`
* `precursor.read`
* `precursor.write`
* `sanitize.read`
* `sanitize.write`
* `tag.read`
* `tag.write`
* `trust-and-safety.read`
* `trust-and-safety.write`
* `challenge-widgets.read`
* `challenge-widgets.write`
* `url-scanner.read`
* `url-scanner.write`
* `zaraz.edit`
* `zaraz.read`
* `zaraz.write`
* `zone-security-center-insights.read`
* `zone-security-center-insights.write`
* `zone-waf.read`
* `zone-waf.write`
* `account-custom-error-rules.read`
* `account-custom-error-rules.write`
* `account-custom-pages.read`
* `account-custom-pages.write`
* `account-rule-lists.read`
* `account-rule-lists.write`
* `account-rulesets.read`
* `account-rulesets.write`
* `config-settings.read`
* `config-settings.write`
* `custom-errors.read`
* `custom-errors.write`
* `custom-pages.read`
* `custom-pages.write`
* `dynamic-redirect.read`
* `dynamic-redirect.write`
* `managed-headers.read`
* `managed-headers.write`
* `mass-url-redirects.read`
* `mass-url-redirects.write`
* `origin.read`
* `origin.write`
* `response-compression.read`
* `response-compression.write`
* `select-configuration.read`
* `select-configuration.write`
* `snippets.read`
* `snippets.write`
* `transform-rules.read`
* `transform-rules.write`
* `zone-transform-rules.read`
* `zone-transform-rules.write`
* `access-app.read`
* `access-app.revoke`
* `access-app.write`
* `access.read`
* `access.revoke`
* `access.write`
* `zone-access.read`
* `zone-access.revoke`
* `zone-access.write`
* `access-audit-log.read`
* `access-custom-page.read`
* `access-custom-page.write`
* `access-device-posture.read`
* `access-device-posture.write`
* `access-group.read`
* `access-group.write`
* `access-idp.read`
* `access-idp.write`
* `access-key.read`
* `access-key.write`
* `access-certificate.read`
* `access-certificate.write`
* `access-org.read`
* `access-org.revoke`
* `access-org.write`
* `access-acct.read`
* `access-acct.revoke`
* `access-acct.write`
* `access-policy.read`
* `access-policy.write`
* `access-policy-test.read`
* `access-policy-test.write`
* `access-population.read`
* `access-population.write`
* `access-saml-certificate.read`
* `access-saml-certificate.write`
* `access-scim-log.read`
* `access-ssh-auditing.read`
* `access-ssh-auditing.write`
* `access-service-token.read`
* `access-service-token.write`
* `access-tag.read`
* `access-tag.write`
* `access-users.read`
* `access-users.write`
* `access-seats.write`
* `casb.read`
* `casb.write`
* `teams-cds-compute-account.read`
* `teams-cds-compute-account.write`
* `teams-dex.read`
* `teams-dex.write`
* `teams-connector-cloudflared.monitoring`
* `teams-connector-cloudflared.read`
* `teams-connector-cloudflared.write`
* `teams-connector-warp.read`
* `teams-connector-warp.write`
* `teams-connectors.read`
* `teams-connectors.write`
* `teams-networks.read`
* `teams-networks.write`
* `argotunnel.read`
* `argotunnel.write`
* `teams-secure.location`
* `dls.read`
* `dls.write`
* `teams.read`
* `teams.report`
* `teams.write`
* `teams-resilience.read`
* `teams-resilience.write`
* `teams-pii.read`
* `account-analytics.read`
* `analytics.read`
* `intel.read`
* `intel.write`
* `account-logs.read`
* `account-logs.write`
* `logs.read`
* `logs.write`
* `radar.read`
* `account-waiting-rooms.read`
* `address-maps.read`
* `address-maps.write`
* `chinanetwork-steering.read`
* `chinanetwork-steering.write`
* `connectivity-directory.admin`
* `connectivity-directory.bind`
* `connectivity-directory.read`
* `healthcheck.read`
* `healthcheck.write`
* `ip-prefix-bgp-on-demand.read`
* `ip-prefix-bgp-on-demand.write`
* `ip-prefix.read`
* `ip-prefix.write`
* `load-balancers-account.read`
* `load-balancers-account.write`
* `load-balancers.read`
* `load-balancers.write`
* `load-balancing-monitors-and-pools.read`
* `load-balancing-monitors-and-pools.write`
* `pcaps-api.read`
* `pcaps-api.write`
* `magic-firewall.read`
* `magic-firewall.write`
* `fbm.admin`
* `fbm.read`
* `fbm.write`
* `magic-transit.read`
* `magic-transit.write`
* `magic-wan.read`
* `magic-wan.write`
* `waiting-rooms.read`
* `waiting-rooms.write`
* `web3-hostnames.read`
* `web3-hostnames.write`
* `calls.read`
* `calls.write`
* `images.read`
* `images.write`
* `moq.read`
* `moq.write`
* `stream.read`
* `stream.write`
* `cloud-email-security.read`
* `cloud-email-security.write`
* `email-routing-address.read`
* `email-routing-address.write`
* `email-routing-rule.read`
* `email-routing-rule.write`
* `email-routing-suppression.read`
* `email-routing-suppression.write`
* `email-security-dmarcreports.read`
* `email-security-dmarcreports.write`
* `email-sending.read`
* `email-sending.write`
* `account-ssl-and-certificates.read`
* `account-ssl-and-certificates.write`
* `cache.purge`
* `cache-settings.read`
* `cache-settings.write`
* `account-disable-esc.read`
* `account-disable-esc.write`
* `zone-disable-esc.read`
* `zone-disable-esc.write`
* `ssl-and-certificates.read`
* `ssl-and-certificates.write`
* `account-api-gateway.read`
* `account-api-gateway.write`
* `account-custom-asset.read`
* `account-custom-asset.write`
* `account-settings.read`
* `account-settings.write`
* `apps.write`
* `integration.write`
* `memberships.read`
* `memberships.write`
* `notifications.read`
* `notifications.write`
* `scim-provisioning.write`
* `user-details.read`
* `user-details.write`
* `artifacts.read`
* `artifacts.write`
* `resource-library.read`
* `resource-library.write`
* `resource-sharing.read`
### API token
Enter the values manually when creating the credential.
Create a scoped API Token from your Cloudflare dashboard. Grant permissions only for the resources you need.
[Get your credentials here](https://dash.cloudflare.com/profile/api-tokens).
### API key
Enter the values manually when creating the credential.
Use your Global API Key and account email. We recommend API Tokens instead for better security.
[Get your credentials here](https://dash.cloudflare.com/profile/api-tokens).
## Operations
### Access
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ----------------------------------------------------- | ------- |
| **Create Access Application** | `create_access_application` | Create an Access application | |
| **Create Access Group** | `create_access_group` | Create an Access group | |
| **Create Access Policy** | `create_access_policy` | Create a policy for an Access application | |
| **Create Access Service Token** | `create_access_service_token` | Create an Access service token | |
| **Create Identity Provider** | `create_identity_provider` | Create an Access identity provider | |
| **Delete Access Application** | `delete_access_application` | Delete an Access application | |
| **Delete Access Group** | `delete_access_group` | Delete an Access group | |
| **Delete Access Policy** | `delete_access_policy` | Delete a policy from an Access application | |
| **Delete Access Service Token** | `delete_access_service_token` | Delete an Access service token | |
| **Delete Identity Provider** | `delete_identity_provider` | Delete an Access identity provider | |
| **Get Access Application** | `get_access_application` | Get a specific Access application | |
| **Get Access Group** | `get_access_group` | Get a specific Access group | |
| **Get Access Organization** | `get_access_organization` | Get the Access organization settings | |
| **Get Access Policy** | `get_access_policy` | Get a specific Access policy | |
| **Get Access User** | `get_access_user` | Get a specific Access user | |
| **Get Identity Provider** | `get_identity_provider` | Get a specific Access identity provider | |
| **List Access Application Policies** | `list_access_application_policies` | List policies for an Access application | |
| **List Access Applications** | `list_access_applications` | List Cloudflare Access applications | |
| **List Access Groups** | `list_access_groups` | List all Access groups in an account | |
| **List Access Service Tokens** | `list_access_service_tokens` | List all Access service tokens in an account | |
| **List Access User Sessions** | `list_access_user_sessions` | List active sessions for an Access user | |
| **List Access Users** | `list_access_users` | List Access users for an account | |
| **List Identity Providers** | `list_identity_providers` | List all Access identity providers in an account | |
| **Refresh Access Service Token** | `refresh_access_service_token` | Refresh an Access service token | |
| **Revoke Access User Session** | `revoke_access_user_session` | Revoke all active Access sessions for a user by email | |
| **Rotate Access Signing Key** | `create_access_key_rotation` | Rotate the Access JWT signing key | |
| **Update Access Group** | `update_access_group` | Update an Access group | |
| **Update Access Organization** | `update_access_organization` | Update the Access organization settings | |
| **Update Access Policy** | `update_access_policy` | Update a policy for an Access application | |
| **Update Identity Provider** | `update_identity_provider` | Update an Access identity provider | |
### Account
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------- | ------- |
| **Add Account Member** | `add_account_member` | Add a member to an account | |
| **Get Account Member** | `get_account_member` | Get a specific account member | |
| **List Account Members** | `list_account_members` | List all members of an account | |
| **List Account Roles** | `list_account_roles` | List all roles available for an account | |
| **Remove Account Member** | `remove_account_member` | Remove a member from an account | |
| **Update Account Member** | `update_account_member` | Update an account member's roles | |
### Addressing / BYOIP
| Operation | ID | Description | Trigger |
| ----------------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------- | ------- |
| **Add IP to Address Map** | `add_ip_to_address_map` | Add an IP address to an address map | |
| **Add Zone to Address Map** | `add_zone_to_address_map` | Add a zone as a member of an address map | |
| **Create Address Map** | `create_address_map` | Create a new address map to assign IPv4/IPv6 addresses to zones or accounts | |
| **Create IP Prefix** | `create_ip_prefix` | Add a new BYOIP prefix to the account | |
| **Create Prefix Delegation** | `create_prefix_delegation` | Delegate a sub-prefix to another Cloudflare account | |
| **Create Prefix Service Binding** | `create_prefix_service_binding` | Create a binding to route prefix traffic to a Cloudflare service (e.g. Magic Transit) | |
| **Create Regional Hostname** | `create_regional_hostname` | Create a new regional hostname to restrict DNS resolution to a geographic region | |
| **Delete Address Map** | `delete_address_map` | Delete an address map | |
| **Delete IP Prefix** | `delete_ip_prefix` | Delete an unapproved BYOIP prefix from the account | |
| **Delete Prefix Delegation** | `delete_prefix_delegation` | Remove a delegation from a BYOIP prefix | |
| **Delete Prefix Service Binding** | `delete_prefix_service_binding` | Remove a service binding from a BYOIP prefix | |
| **Delete Regional Hostname** | `delete_regional_hostname` | Remove the regional routing configuration for a hostname | |
| **Download LOA Document** | `download_loa_document` | Download a previously uploaded Letter of Authorization document | |
| **Get Address Map** | `get_address_map` | Retrieve details of a specific address map | |
| **Get BGP Advertisement Status** | `get_bgp_prefix_advertisement_status` | Get the current BGP advertisement status for an IP prefix | |
| **Get IP Prefix** | `get_ip_prefix` | Retrieve details of a specific BYOIP prefix | |
| **Get Prefix Service Binding** | `get_prefix_service_binding` | Get a specific service binding for a BYOIP prefix | |
| **Get Regional Hostname** | `get_regional_hostname` | Fetch the regional routing configuration for a specific hostname | |
| **List Address Maps** | `list_address_maps` | List all address maps for the account | |
| **List Addressing Services** | `list_addressing_services` | List available Cloudflare network services that prefixes can be bound to | |
| **List BGP Prefixes** | `list_bgp_prefixes` | List BGP sub-prefixes for a BYOIP prefix | |
| **List IP Prefixes** | `list_ip_prefixes` | List all BYOIP prefixes for the account | |
| **List Prefix Delegations** | `list_prefix_delegations` | List all delegations for a BYOIP prefix | |
| **List Prefix Service Bindings** | `list_prefix_service_bindings` | List all service bindings for a BYOIP prefix | |
| **List Regional Hostname Regions** | `list_regional_hostname_regions` | List all available geographic regions for regional hostname assignment | |
| **List Regional Hostnames** | `list_regional_hostnames` | List all regional hostnames configured for a zone | |
| **Remove IP from Address Map** | `remove_ip_from_address_map` | Remove an IP address from an address map | |
| **Remove Zone from Address Map** | `remove_zone_from_address_map` | Remove a zone from an address map | |
| **Update Address Map** | `update_address_map` | Modify properties of an existing address map | |
| **Update BGP Advertisement Status** | `update_bgp_prefix_advertisement` | Advertise or withdraw a BYOIP prefix via BGP | |
| **Update BGP Prefix** | `update_bgp_prefix` | Update settings for a specific BGP prefix (on-demand advertisement, ASN prepend) | |
| **Update IP Prefix** | `update_ip_prefix` | Update the description of a BYOIP prefix | |
| **Update Regional Hostname** | `update_regional_hostname` | Update the region assignment for a regional hostname | |
| **Upload LOA Document** | `upload_loa_document` | Upload a Letter of Authorization (LOA) PDF document for BYOIP prefix ownership verification | |
### AI gateway
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------- | ------- |
| **Create Ai Gateway** | `create_ai_gateway` | Create a new AI Gateway | |
| **Create Ai Gateway Dataset** | `create_ai_gateway_dataset` | Create a dataset from AI Gateway logs | |
| **Delete Ai Gateway** | `delete_ai_gateway` | Delete an AI Gateway | |
| **Delete Ai Gateway Dataset** | `delete_ai_gateway_dataset` | Delete an AI Gateway dataset | |
| **Delete Ai Gateway Logs** | `delete_ai_gateway_logs` | Delete logs for an AI Gateway | |
| **Get Ai Gateway** | `get_ai_gateway` | Get details for an AI Gateway | |
| **Get Ai Gateway Log** | `get_ai_gateway_log` | Get a specific AI Gateway log entry | |
| **Get Ai Gateway Log Request** | `get_ai_gateway_log_request` | Get the request body for an AI Gateway log entry | |
| **Get Ai Gateway Log Response** | `get_ai_gateway_log_response` | Get the response body for an AI Gateway log entry | |
| **List Ai Gateway Datasets** | `list_ai_gateway_datasets` | List datasets for an AI Gateway | |
| **List Ai Gateway Logs** | `list_ai_gateway_logs` | List logs for an AI Gateway | |
| **List Ai Gateways** | `list_ai_gateways` | List AI Gateways in an account | |
| **Update Ai Gateway** | `update_ai_gateway` | Update an existing AI Gateway | |
### Analytics engine SQL API
| Operation | ID | Description | Trigger |
| ------------------------------------------- | ------------------------------------- | -------------------------------------------------------------------------------------------------------- | ------- |
| **Get Analytics Engine Dataset Schema** | `get_analytics_engine_dataset_schema` | Get the column schema of an Analytics Engine dataset by querying a single row | |
| **Get Analytics Engine Event Count** | `get_analytics_engine_event_count` | Count events in an Analytics Engine dataset, optionally filtered by time range and conditions | |
| **List Analytics Engine Datasets** | `list_analytics_engine_datasets` | List all Analytics Engine datasets (tables) in the account using SHOW TABLES | |
| **List Analytics Engine Timezones** | `list_analytics_engine_timezones` | List all supported timezones available in the Analytics Engine SQL environment | |
| **Query Analytics Engine Aggregated** | `query_analytics_engine_aggregated` | Run an aggregation query on an Analytics Engine dataset with grouping, filtering, and time range support | |
| **Query Analytics Engine Raw Events** | `query_analytics_engine_raw` | Query raw (non-aggregated) events from an Analytics Engine dataset with optional filtering | |
| **Query Analytics Engine Time Series** | `query_analytics_engine_timeseries` | Query Analytics Engine data grouped by time intervals for time-series analysis | |
| **Query Analytics Engine Top Values** | `query_analytics_engine_top_values` | Find the top N values of a blob (string) column by event count in an Analytics Engine dataset | |
| **Query Analytics Engine Weighted Average** | `query_analytics_engine_weighted_avg` | Compute a sampling-corrected weighted average of a double column in an Analytics Engine dataset | |
### API shield
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------------- | ------- |
| **Create API Shield Endpoint** | `create_api_shield_endpoint` | Create an API Shield endpoint (operation) for a zone | |
| **Get API Shield Settings** | `get_api_shield_settings` | Get API Shield configuration for a zone | |
| **List API Shield Endpoints** | `list_api_shield_endpoints` | List API Shield endpoints (operations) for a zone | |
| **Update API Shield Settings** | `update_api_shield_settings` | Update API Shield configuration for a zone | |
### Audit logs
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------ | ------- |
| **List Audit Logs** | `list_audit_logs` | List audit logs for an account | |
### Bot management
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | --------------------------------------------------------------------------------------------- | ------- |
| **Configure JavaScript Detection** | `configure_javascript_detection` | Configure JavaScript-based bot detection settings | |
| **Get Bot Analytics** | `get_bot_management_analytics` | Retrieve bot analytics and feedback reports containing request score distributions for a zone | |
| **Get Bot Management** | `get_bot_management` | Get Bot Management settings for a zone | |
| **Get Score Thresholds** | `get_bot_score_thresholds` | Retrieve current bot score action thresholds for a zone | |
| **List Bot Feedback Reports** | `list_bot_feedback_reports` | List all previously submitted bot feedback reports for a zone | |
| **Submit Bot Feedback** | `submit_bot_feedback` | Submit a feedback report about misclassified bot traffic using a wirefilter expression | |
| **Update Bot Management** | `update_bot_management` | Update Bot Management settings for a zone | |
| **Update Score Thresholds** | `update_bot_score_thresholds` | Update bot score action thresholds for Super Bot Fight Mode | |
### Cache
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | --------------------------------------------- | ------- |
| **Get Argo Smart Routing** | `get_argo_smart_routing` | Get Argo Smart Routing setting for a zone | |
| **Get Cache Reserve** | `get_cache_reserve` | Get Cache Reserve setting for a zone | |
| **Get Tiered Caching** | `get_tiered_caching` | Get Argo Tiered Caching setting for a zone | |
| **Get Zone Settings All** | `get_zone_settings_all` | Get all zone settings in a single call | |
| **Purge Cache Everything** | `purge_cache_everything` | Purge all cached content for a zone | |
| **Update Argo Smart Routing** | `update_argo_smart_routing` | Update Argo Smart Routing setting for a zone | |
| **Update Cache Reserve** | `update_cache_reserve` | Update Cache Reserve setting for a zone | |
| **Update Tiered Caching** | `update_tiered_caching` | Update Argo Tiered Caching setting for a zone | |
### Calls
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ------------------------------------------------------------------ | ------- |
| **Create Calls App** | `create_calls_app` | Create a new Cloudflare Calls SFU app and obtain its bearer secret | |
| **Create Calls TURN Key** | `create_calls_turn_key` | Create a new Cloudflare Calls TURN key and obtain its bearer token | |
| **Delete Calls App** | `delete_calls_app` | Delete a Cloudflare Calls SFU app | |
| **Delete Calls TURN Key** | `delete_calls_turn_key` | Delete a Cloudflare Calls TURN key | |
| **Get Calls App** | `get_calls_app` | Retrieve details for a specific Cloudflare Calls SFU app | |
| **Get Calls TURN Key** | `get_calls_turn_key` | Retrieve details for a specific Cloudflare Calls TURN key | |
| **List Calls Apps** | `list_calls_apps` | List all Cloudflare Calls SFU apps for an account | |
| **List Calls TURN Keys** | `list_calls_turn_keys` | List all Cloudflare Calls TURN keys for an account | |
| **Update Calls App** | `update_calls_app` | Update the details of an existing Cloudflare Calls SFU app | |
| **Update Calls TURN Key** | `update_calls_turn_key` | Update the details of an existing Cloudflare Calls TURN key | |
### Custom hostnames
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------ | ------- |
| **Create Custom Hostname** | `create_custom_hostname` | Create a custom hostname for a zone | |
| **Delete Custom Hostname** | `delete_custom_hostname` | Delete a custom hostname | |
| **Get Custom Hostname** | `get_custom_hostname` | Get a specific custom hostname | |
| **List Custom Hostnames** | `list_custom_hostnames` | List all custom hostnames for a zone | |
| **Update Custom Hostname** | `update_custom_hostname` | Update a custom hostname | |
### D1 database
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------ | ------- |
| **Create D1 Database** | `create_d1_database` | Create a new D1 database | |
| **Delete D1 Database** | `delete_d1_database` | Delete a D1 database | |
| **Execute D1 Raw Query** | `execute_d1_raw_query` | Execute a SQL query in raw array-format mode against a D1 database | |
| **Execute D1 Sql Query** | `execute_d1_sql_query` | Execute a SQL query against a D1 database | |
| **Export D1 Database As Sql** | `export_d1_database_as_sql` | Export a D1 database as SQL | |
| **Get D1 Database** | `get_d1_database` | Get details for a D1 database | |
| **Get D1 Database Import Status** | `get_d1_database_import_status` | Get the current import status of a D1 database | |
| **Import D1 Data** | `import_d1_data` | Import SQL data into a D1 database | |
| **List D1 Databases** | `list_d1_databases` | List all D1 databases in an account | |
| **List D1 Tables** | `list_d1_tables` | List all tables in a D1 database | |
### DNS
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------- | ------- |
| **Create Secondary DNS Peer** | `create_secondary_dns_peer` | Create a secondary DNS peer | |
| **Delete Secondary DNS Peer** | `delete_secondary_dns_peer` | Delete a secondary DNS peer | |
| **Export Dns Records** | `export_dns_records` | Export DNS records for a zone as a BIND zone file | |
| **Get Dnssec** | `get_dnssec` | Get DNSSEC settings for a zone | |
| **Get Secondary DNS Config** | `get_secondary_dns_config` | Get secondary DNS configuration for a zone | |
| **Get Secondary DNS Peer** | `get_secondary_dns_peer` | Get a secondary DNS peer | |
| **List Secondary DNS Peers** | `list_secondary_dns_peers` | List secondary DNS peers for an account | |
| **Update Dnssec** | `update_dnssec` | Update DNSSEC status for a zone | |
| **Update Secondary DNS Config** | `update_secondary_dns_config` | Update secondary DNS configuration for a zone | |
| **Update Secondary DNS Peer** | `update_secondary_dns_peer` | Update a secondary DNS peer | |
### DNS record
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------------------------- | ------- |
| **Create Dns Record** | `create_dns_record` | Create a new DNS record | |
| **Delete Dns Record** | `delete_dns_record` | Delete a DNS record | |
| **Get Dns Record** | `get_dns_record` | Get a specific DNS record | |
| **List Dns Records** | `list_dns_records` | List DNS records for a zone | |
| **Update Dns Record** | `update_dns_record` | Update an existing DNS record | |
### Email routing
| Operation | ID | Description | Trigger |
| -------------------------------------------- | ------------------------------------------ | ---------------------------------------------------------------------------------- | ------- |
| **Create Email Routing Destination** | `create_email_routing_destination` | Create a destination email address for Email Routing (triggers verification email) | |
| **Create Email Routing Rule** | `create_email_routing_rule` | Create an Email Routing rule | |
| **Delete Email Routing Destination** | `delete_email_routing_destination` | Delete a destination email address from Email Routing | |
| **Delete Email Routing Rule** | `delete_email_routing_rule` | Delete an Email Routing rule | |
| **Disable Email Routing** | `disable_email_routing` | Disable Email Routing for a zone | |
| **Enable Email Routing** | `enable_email_routing` | Enable Email Routing for a zone | |
| **Get Email Routing Settings** | `get_email_routing_settings` | Get Email Routing settings for a zone | |
| **List Email Routing Destination Addresses** | `list_email_routing_destination_addresses` | List destination email addresses for Email Routing | |
| **List Email Routing Rules** | `list_email_routing_rules` | List Email Routing rules for a zone | |
### Firewall rule
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------- | ------- |
| **Create Firewall Rule** | `create_firewall_rule` | Create a firewall rule for a zone | |
| **Delete Firewall Rule** | `delete_firewall_rule` | Delete a firewall rule | |
| **List Firewall Rules** | `list_firewall_rules` | List firewall rules for a zone | |
### Fonts
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ------------------------------------------- | ------- |
| **Get Fonts Settings** | `get_fonts_settings` | Get Cloudflare Fonts settings for a zone | |
| **Update Fonts Settings** | `update_fonts_settings` | Update Cloudflare Fonts settings for a zone | |
### Health checks
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------- | ------- |
| **Create Health Check** | `create_health_check` | Create a new Health Check | |
| **Delete Health Check** | `delete_health_check` | Delete a Health Check | |
| **Get Health Check** | `get_health_check` | Get a specific Health Check | |
| **List Health Checks** | `list_health_checks` | List all Health Checks for a zone | |
| **Update Health Check** | `update_health_check` | Update an existing Health Check | |
### Image
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------- | ------- |
| **Create Image Direct Upload Url** | `create_image_direct_upload_url` | Create a direct upload URL for images | |
| **Delete Image** | `delete_image` | Delete an image | |
| **Get Image** | `get_image` | Get details for an image | |
| **Get Image Usage Statistics** | `get_image_usage_statistics` | Get image usage statistics | |
| **List Images** | `list_images` | List images in Cloudflare Images | |
### Images
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------------------ | ------- |
| **Create Image Signing Key** | `create_image_signing_key` | Create a named image signing key | |
| **Create Image Variant** | `create_image_variant` | Create a new image variant | |
| **Delete Image Signing Key** | `delete_image_signing_key` | Delete a named image signing key | |
| **Delete Image Variant** | `delete_image_variant` | Delete an image variant | |
| **Get Image Variant** | `get_image_variant` | Get details for a specific image variant | |
| **List Image Signing Keys** | `list_image_signing_keys` | List all image signing keys for an account | |
| **List Image Variants** | `list_image_variants` | List all image variants for an account | |
| **Update Image Metadata** | `update_image_metadata` | Update metadata or signed URL requirement for an image | |
| **Update Image Variant** | `update_image_variant` | Update an existing image variant | |
### Intel
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------------- | -------------------------------------------------------------------------------- | ------- |
| **Add Feed Permission** | `add_intel_feed_permission` | Grant another account access to an indicator feed | |
| **Bulk Domain Intelligence** | `get_intel_domain_bulk` | Get intelligence details for multiple domains in a single request | |
| **Create Indicator Feed** | `create_intel_indicator_feed` | Create a new custom threat intelligence indicator feed | |
| **Dismiss Attack Surface Issue** | `dismiss_attack_surface_issue` | Dismiss or restore a Security Center issue in the attack surface report | |
| **Get ASN Overview** | `get_intel_asn` | Get overview and subnet list for an Autonomous System Number | |
| **Get ASN Subnets** | `get_intel_asn_subnets` | Get all subnets associated with an ASN | |
| **Get Domain History** | `get_intel_domain_history` | Get historical categorizations for a domain over time | |
| **Get Domain Intelligence** | `get_intel_domain` | Get security details, threat categories, and statistics for a domain | |
| **Get Indicator Feed** | `get_intel_indicator_feed` | Get metadata and upload status for a specific indicator feed | |
| **Get Indicator Feed Data** | `get_intel_indicator_feed_data` | Retrieve the raw data entries from an indicator feed | |
| **Get IP Intelligence** | `get_intel_ip` | Get geolocation, ASN, infrastructure type, and threat categories for an IP | |
| **Get Issues by Severity** | `get_attack_surface_issues_by_severity` | Get attack surface issue counts aggregated by severity level | |
| **Get Issues by Type** | `get_attack_surface_issues_by_type` | Get attack surface issue counts aggregated by issue type | |
| **List Attack Surface Issue Types** | `list_attack_surface_issue_types` | List all available Security Center issue categories for attack surface reporting | |
| **List Attack Surface Issues** | `list_attack_surface_issues` | List all active security issues identified in the attack surface report | |
| **List Feed Permissions** | `list_intel_feed_permissions` | List all access permissions for indicator feeds | |
| **List Indicator Feeds** | `list_intel_indicator_feeds` | List all custom threat intelligence indicator feeds accessible to the account | |
| **List Sinkholes** | `list_intel_sinkholes` | List all sinkholes configured for malicious traffic redirection | |
| **Passive DNS Lookup** | `get_intel_dns` | Perform a passive DNS lookup by IP address | |
| **Remove Feed Permission** | `remove_intel_feed_permission` | Revoke an account's access to an indicator feed | |
| **Submit Miscategorization** | `create_intel_miscategorization` | Submit a request to change the category of a domain or IP address | |
| **Update Indicator Feed** | `update_intel_indicator_feed` | Update metadata for an existing indicator feed | |
| **WHOIS Lookup** | `get_intel_whois` | Get WHOIS registration data and nameserver information for a domain | |
### KV
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------------------------- | ------- |
| **Bulk Write Kv Pairs** | `bulk_write_kv_pairs` | Write multiple key-value pairs at once (up to 10,000 pairs) | |
| **Create Kv Namespace** | `create_kv_namespace` | Create a new KV namespace | |
| **Delete Kv Namespace** | `delete_kv_namespace` | Delete a KV namespace | |
| **Delete Kv Value** | `delete_kv_value` | Delete a key from KV storage | |
| **List Kv Keys** | `list_kv_keys` | List keys in a KV namespace | |
| **List Kv Namespaces** | `list_kv_namespaces` | List all KV namespaces in an account | |
| **Read Kv Value** | `read_kv_value` | Read a value from KV storage | |
| **Write Kv Value** | `write_kv_value` | Write a value to KV storage | |
### Load balancer
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------ | ------- |
| **Create Load Balancer** | `create_load_balancer` | Create a new load balancer | |
| **Create Load Balancer Monitor** | `create_load_balancer_monitor` | Create a new load balancer monitor | |
| **Create Load Balancer Pool** | `create_load_balancer_pool` | Create a new origin pool for load balancing | |
| **Delete Load Balancer** | `delete_load_balancer` | Delete a load balancer | |
| **Delete Load Balancer Monitor** | `delete_load_balancer_monitor` | Delete a load balancer monitor | |
| **Delete Load Balancer Pool** | `delete_load_balancer_pool` | Delete a load balancer origin pool | |
| **Get Load Balancer** | `get_load_balancer` | Get a specific load balancer | |
| **Get Load Balancer Monitor** | `get_load_balancer_monitor` | Get a specific load balancer monitor | |
| **Get Load Balancer Pool** | `get_load_balancer_pool` | Get a specific load balancer origin pool | |
| **Get Load Balancer Pool Health** | `get_load_balancer_pool_health` | Get health status of a load balancer origin pool | |
| **List Load Balancer Monitors** | `list_load_balancer_monitors` | List all load balancer monitors in an account | |
| **List Load Balancer Pools** | `list_load_balancer_pools` | List origin pools for load balancing | |
| **List Load Balancers** | `list_load_balancers` | List load balancers for a zone | |
| **Update Load Balancer** | `update_load_balancer` | Update an existing load balancer | |
| **Update Load Balancer Pool** | `update_load_balancer_pool` | Update an existing load balancer origin pool | |
### Log explorer
| Operation | ID | Description | Trigger |
| --------------------------------------------- | -------------------------------------- | -------------------------------------------------------------------------------------- | ------- |
| **Create Log Explorer Dataset** | `create_log_explorer_dataset` | Create a new Log Explorer dataset | |
| **Delete CMB Config** | `delete_cmb_config` | Delete the Cloudflare Managed Buckets (CMB) log control configuration for an account | |
| **Get CMB Config** | `get_cmb_config` | Get the Cloudflare Managed Buckets (CMB) log control configuration for an account | |
| **Get Log Explorer Dataset** | `get_log_explorer_dataset` | Fetch a single Log Explorer dataset including its field configuration | |
| **Get Log Retention Flag** | `get_log_retention_flag` | Get the log retention flag for the Logpull API for a zone | |
| **Get Logpull Logs (Received)** | `get_logpull_logs` | Retrieve edge HTTP request logs for a zone within a time window via Logpull API | |
| **Get Logs by Ray ID** | `get_logpull_rayid` | Look up log records for a specific Ray ID | |
| **List Available Log Explorer Dataset Types** | `list_log_explorer_available_datasets` | List all dataset types available to create for this account or zone, including schemas | |
| **List Log Explorer Datasets** | `list_log_explorer_datasets` | List all configured Log Explorer datasets for an account or zone | |
| **List Logpull Fields** | `get_logpull_fields` | List all available log fields for the Logpull API with their descriptions | |
| **Query Log Explorer (SQL)** | `query_log_explorer_sql` | Execute a SQL query against Log Explorer account or zone datasets | |
| **Update CMB Config** | `update_cmb_config` | Update the Cloudflare Managed Buckets (CMB) log control configuration | |
| **Update Log Explorer Dataset** | `update_log_explorer_dataset` | Update a Log Explorer dataset's enabled state and field configuration | |
| **Update Log Retention Flag** | `update_log_retention_flag` | Enable or disable log retention for the Logpull API for a zone | |
### Logpush
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------ | ------- |
| **Create Logpush Job** | `create_logpush_job` | Create an account-level Logpush job | |
| **Create Zone Logpush Job** | `create_zone_logpush_job` | Create a zone-level Logpush job | |
| **Delete Logpush Job** | `delete_logpush_job` | Delete a Logpush job | |
| **Delete Zone Logpush Job** | `delete_zone_logpush_job` | Delete a zone-level Logpush job | |
| **Get Logpush Job** | `get_logpush_job` | Get a specific Logpush job | |
| **List Account Logpush Jobs** | `list_account_logpush_jobs` | List all Logpush jobs for an account | |
| **List Zone Logpush Jobs** | `list_zone_logpush_jobs` | List all Logpush jobs for a zone | |
| **Update Logpush Job** | `update_logpush_job` | Update an existing Logpush job | |
### Magic transit
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------------ | ----------------------------------------------------------------- | ------- |
| **Create GRE Tunnel** | `create_magic_gre_tunnel` | Create a new Magic Transit GRE tunnel | |
| **Create Magic Transit App** | `create_magic_app` | Create a new Magic Transit app for traffic routing decisions | |
| **Delete GRE Tunnel** | `delete_magic_gre_tunnel` | Delete a Magic Transit GRE tunnel | |
| **Delete Magic Transit App** | `delete_magic_app` | Delete a Magic Transit app | |
| **Get CF Interconnect** | `get_magic_cf_interconnect` | Get details for a specific Cloudflare network interconnect | |
| **Get GRE Tunnel** | `get_magic_gre_tunnel` | Get details for a specific Magic Transit GRE tunnel | |
| **List CF Interconnects** | `list_magic_cf_interconnects` | List all Cloudflare network interconnects for Magic Transit | |
| **List GRE Tunnels** | `list_magic_gre_tunnels` | List all GRE tunnels for a Magic Transit account | |
| **List Magic Transit Apps** | `list_magic_apps` | List all Magic Transit apps for an account | |
| **Update CF Interconnect** | `update_magic_cf_interconnect` | Update a single Cloudflare network interconnect for Magic Transit | |
| **Update GRE Tunnel** | `update_magic_gre_tunnel` | Update an existing Magic Transit GRE tunnel | |
| **Update Magic Transit App** | `update_magic_app` | Update an existing Magic Transit app | |
### Notifications
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | --------------------------------------------------------- | ------- |
| **Create Alert Policy** | `create_alert_policy` | Create a new alert policy | |
| **Create Notification Webhook** | `create_notification_webhook` | Create a new notification webhook destination | |
| **Delete Alert Policy** | `delete_alert_policy` | Delete an alert policy | |
| **Delete Notification Webhook** | `delete_notification_webhook` | Delete a notification webhook destination | |
| **Get Alert Policy** | `get_alert_policy` | Get a specific alert policy | |
| **Get Notification History** | `get_notification_history` | Get notification delivery history for an account | |
| **List Alert Policies** | `list_alert_policies` | List all alert policies for an account | |
| **List Available Alerts** | `list_available_alerts` | List all available alert types for an account | |
| **List Notification Webhooks** | `list_notification_webhooks` | List all notification webhook destinations for an account | |
| **Update Alert Policy** | `update_alert_policy` | Update an existing alert policy | |
| **Update Notification Webhook** | `update_notification_webhook` | Update an existing notification webhook destination | |
### Page rules
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | --------------------------------- | ------- |
| **Create Page Rule** | `create_page_rule` | Create a new Page Rule for a zone | |
| **Delete Page Rule** | `delete_page_rule` | Delete a Page Rule | |
| **Get Page Rule** | `get_page_rule` | Get a specific Page Rule | |
| **List Page Rules** | `list_page_rules` | List all Page Rules for a zone | |
| **Update Page Rule** | `update_page_rule` | Update an existing Page Rule | |
### Page shield
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------- | ------- |
| **Create Page Shield Policy** | `create_page_shield_policy` | Create a Page Shield CSP policy for a zone | |
| **Delete Page Shield Policy** | `delete_page_shield_policy` | Delete a Page Shield CSP policy | |
| **Get Page Shield Connection** | `get_page_shield_connection` | Get details for a specific Page Shield connection | |
| **Get Page Shield Script** | `get_page_shield_script` | Get details for a specific Page Shield script | |
| **Get Page Shield Settings** | `get_page_shield_settings` | Get Page Shield settings for a zone | |
| **List Page Shield Connections** | `list_page_shield_connections` | List Page Shield connections detected for a zone | |
| **List Page Shield Policies** | `list_page_shield_policies` | List Page Shield CSP policies for a zone | |
| **List Page Shield Scripts** | `list_page_shield_scripts` | List Page Shield scripts detected for a zone | |
| **Update Page Shield Settings** | `update_page_shield_settings` | Update Page Shield settings for a zone | |
### Pages
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------- | ------- |
| **Create Pages Project** | `create_pages_project` | Create a new Cloudflare Pages project | |
| **Delete Pages Deployment** | `delete_pages_deployment` | Delete a Pages deployment | |
| **Delete Pages Project** | `delete_pages_project` | Delete a Pages project | |
| **Get Pages Deployment** | `get_pages_deployment` | Get a specific Pages deployment | |
| **Get Pages Project** | `get_pages_project` | Get a Pages project | |
| **List Pages Deployments** | `list_pages_deployments` | List deployments for a Pages project | |
| **List Pages Projects** | `list_pages_projects` | List all Pages projects in an account | |
| **Retry Pages Deployment** | `retry_pages_deployment` | Retry a failed or cancelled Cloudflare Pages deployment | |
### Pipelines
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------- | ------- |
| **Create Pipeline** | `create_pipeline` | Create a new Workers Pipeline | |
| **Delete Pipeline** | `delete_pipeline` | Delete a Workers Pipeline | |
| **Get Pipeline** | `get_pipeline` | Get a specific Workers Pipeline | |
| **List Pipelines** | `list_pipelines` | List all Workers Pipelines in an account | |
| **Update Pipeline** | `update_pipeline` | Update an existing Workers Pipeline | |
### Queue
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------ | ------- |
| **Acknowledge Queue Messages** | `acknowledge_queue_messages` | Acknowledge or retry pulled Queue messages | |
| **Create Queue** | `create_queue` | Create a new Queue | |
| **Create Queue Consumer** | `create_queue_consumer` | Create a Worker consumer for a Queue | |
| **Delete Queue** | `delete_queue` | Delete a Queue | |
| **Delete Queue Consumer** | `delete_queue_consumer` | Delete a consumer from a Queue | |
| **Get Queue** | `get_queue` | Get details for a Queue | |
| **List Queue Consumers** | `list_queue_consumers` | List consumers for a Queue | |
| **List Queues** | `list_queues` | List all Queues in an account | |
| **Pull Queue Messages** | `pull_queue_messages` | Pull messages from a Queue | |
| **Send Queue Message** | `send_queue_message` | Send a message to a Queue | |
| **Update Queue** | `update_queue` | Update a Queue's name | |
### R2 bucket
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------------------------------------- | ------- |
| **Create R2 Bucket** | `create_r2_bucket` | Create a new R2 bucket | |
| **Create R2 Custom Domain** | `create_r2_custom_domain` | Add a custom domain to an R2 bucket | |
| **Delete R2 Bucket** | `delete_r2_bucket` | Delete an R2 bucket | |
| **Delete R2 CORS Policy** | `delete_r2_cors_policy` | Delete CORS policy for an R2 bucket | |
| **Delete R2 Custom Domain** | `delete_r2_custom_domain` | Remove a custom domain from an R2 bucket | |
| **Delete R2 Lifecycle Rules** | `delete_r2_lifecycle_rules` | Delete all lifecycle rules for an R2 bucket | |
| **Get R2 Bucket** | `get_r2_bucket` | Get details for an R2 bucket | |
| **Get R2 Bucket Details** | `get_r2_bucket_details` | Get R2 bucket metadata including storage class and location hint | |
| **Get R2 CORS Policy** | `get_r2_cors_policy` | Get CORS policy for an R2 bucket | |
| **Get R2 Lifecycle Rules** | `get_r2_lifecycle_rules` | Get lifecycle rules for an R2 bucket | |
| **Get R2 Managed Domain** | `get_r2_managed_domain` | Get managed r2.dev domain public access status for an R2 bucket | |
| **List R2 Buckets** | `list_r2_buckets` | List all R2 buckets in an account | |
| **List R2 Custom Domains** | `list_r2_custom_domains` | List custom domains for an R2 bucket | |
| **Put R2 CORS Policy** | `put_r2_cors_policy` | Set CORS policy for an R2 bucket | |
| **Put R2 Lifecycle Rules** | `put_r2_lifecycle_rules` | Set lifecycle rules for an R2 bucket | |
| **Update R2 Bucket** | `update_r2_bucket` | Update R2 bucket settings such as storage class | |
| **Update R2 Custom Domain** | `update_r2_custom_domain` | Update a custom domain on an R2 bucket | |
| **Update R2 Managed Domain** | `update_r2_managed_domain` | Enable or disable public access via the r2.dev subdomain | |
### R2 event notifications
| Operation | ID | Description | Trigger |
| --------------------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------- | ------- |
| **Create/Update R2 Event Notification Rules** | `put_r2_event_notification_rules` | Create or update event notification rules for a queue on an R2 bucket | |
| **Delete R2 Event Notification Rules** | `delete_r2_event_notification_rules` | Remove all event notification rules for a specific queue from an R2 bucket | |
| **Get R2 Event Notification Config** | `get_r2_event_notification_config` | List all event notification rules configured for an R2 bucket across all queues | |
| **Get R2 Event Notification Queue Rules** | `get_r2_event_notification_queue_rules` | Get event notification rules for a specific queue within an R2 bucket | |
### R2 storage
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------------------------------------- | ------- |
| **Delete R2 Object** | `delete_r2_object` | Delete an object from an R2 bucket | |
| **Get R2 Object** | `get_r2_object` | Get an object from an R2 bucket | |
| **Get R2 Presigned URL** | `get_r2_presigned_url` | Generate a presigned URL for an R2 object | |
| **List R2 Objects** | `list_r2_objects` | List objects in an R2 bucket | |
| **Put R2 Object** | `put_r2_object` | Upload an object to an R2 bucket | |
### Radar AI
| Operation | ID | Description | Trigger |
| ---------------------------------------------- | -------------------------------------------- | -------------------------------------------------------------------------------------- | ------- |
| **Get Radar AI Bots Summary** | `get_radar_ai_bots_summary` | Retrieve aggregated summary of AI bot HTTP requests grouped by a specified dimension | |
| **Get Radar AI Bots Summary by Crawl Purpose** | `get_radar_ai_bots_summary_by_crawl_purpose` | Retrieve the distribution of AI bot traffic grouped by crawl purpose | |
| **Get Radar AI Bots Summary by Industry** | `get_radar_ai_bots_summary_by_industry` | Retrieve the distribution of AI bot traffic grouped by industry sector | |
| **Get Radar AI Bots Summary by User Agent** | `get_radar_ai_bots_summary_by_user_agent` | Retrieve the distribution of AI bot traffic grouped by user agent | |
| **Get Radar AI Bots Timeseries** | `get_radar_ai_bots_timeseries` | Retrieve AI bot HTTP request volume over time | |
| **Get Radar AI Bots Timeseries by User Agent** | `get_radar_ai_bots_timeseries_by_user_agent` | Retrieve AI bot request distribution grouped by user agent over time | |
| **Get Radar AI Bots Timeseries Groups** | `get_radar_ai_bots_timeseries_groups` | Retrieve AI bot HTTP request distribution grouped by the specified dimension over time | |
| **Get Radar AI Inference Summary by Model** | `get_radar_ai_inference_summary_by_model` | Retrieve aggregated Workers AI inference counts grouped by model | |
| **Get Radar AI Inference Summary by Task** | `get_radar_ai_inference_summary_by_task` | Retrieve aggregated Workers AI inference counts grouped by task type | |
| **Get Radar AI Inference Timeseries by Model** | `get_radar_ai_inference_timeseries_by_model` | Retrieve Workers AI inference distribution over time grouped by model | |
| **Get Radar AI Inference Timeseries by Task** | `get_radar_ai_inference_timeseries_by_task` | Retrieve Workers AI inference distribution over time grouped by task type | |
### Rate limiting
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------- | ------- |
| **Create Rate Limit** | `create_rate_limit` | Create a new Rate Limit rule for a zone | |
| **Delete Rate Limit** | `delete_rate_limit` | Delete a Rate Limit rule | |
| **Get Rate Limit** | `get_rate_limit` | Get a specific Rate Limit | |
| **List Rate Limits** | `list_rate_limits` | List Rate Limits for a zone | |
| **Update Rate Limit** | `update_rate_limit` | Update an existing Rate Limit rule | |
### Rules lists
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | --------------------------------------------- | ------- |
| **Create Rules List** | `create_rules_list` | Create a new rules list | |
| **Create Rules List Items** | `create_rules_list_items` | Add items to a rules list | |
| **Delete Rules List** | `delete_rules_list` | Delete a rules list | |
| **Delete Rules List Items** | `delete_rules_list_items` | Delete specific items from a rules list | |
| **Get Rules List** | `get_rules_list` | Get details of a specific rules list | |
| **Get Rules List Operation** | `get_rules_list_operation` | Get the status of a bulk rules list operation | |
| **List Rules List Items** | `list_rules_list_items` | List items in a rules list | |
| **List Rules Lists** | `list_rules_lists` | List all rules lists in an account | |
| **Replace Rules List Items** | `replace_rules_list_items` | Replace all items in a rules list | |
| **Update Rules List** | `update_rules_list` | Update a rules list description | |
### Rulesets
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | --------------------------------------------------- | ------- |
| **Create Zone Ruleset** | `create_zone_ruleset` | Create a new ruleset for a zone | |
| **Create Zone Ruleset Rule** | `create_zone_ruleset_rule` | Create a rule inside a zone ruleset | |
| **Delete Zone Ruleset** | `delete_zone_ruleset` | Delete a zone ruleset | |
| **Delete Zone Ruleset Rule** | `delete_zone_ruleset_rule` | Delete a rule from a zone ruleset | |
| **Get Account Ruleset** | `get_account_ruleset` | Get a specific ruleset for the account | |
| **Get Zone Ruleset** | `get_zone_ruleset` | Get a specific ruleset for a zone | |
| **Get Zone Ruleset Phase** | `get_zone_ruleset_phase` | Get the entrypoint ruleset for a phase in a zone | |
| **List Account Rulesets** | `list_account_rulesets` | List all rulesets for the account | |
| **List Zone Rulesets** | `list_zone_rulesets` | List all rulesets for a zone | |
| **Update Zone Ruleset** | `update_zone_ruleset` | Update an existing zone ruleset | |
| **Update Zone Ruleset Phase** | `update_zone_ruleset_phase` | Update the entrypoint ruleset for a phase in a zone | |
### Secrets store
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------------------- | ------- |
| **Create Secrets Store** | `create_secrets_store` | Create a new Secrets Store | |
| **Create Store Secret** | `create_store_secret` | Create a new secret in a Secrets Store | |
| **Delete Secrets Store** | `delete_secrets_store` | Delete a Secrets Store | |
| **Delete Store Secret** | `delete_store_secret` | Delete a secret from a Secrets Store | |
| **Get Store Secret** | `get_store_secret` | Get a specific secret from a Secrets Store | |
| **List Secrets Stores** | `list_secrets_stores` | List all Secrets Stores in an account | |
| **List Store Secrets** | `list_store_secrets` | List all secrets in a Secrets Store | |
| **Update Store Secret** | `update_store_secret` | Update an existing secret in a Secrets Store | |
### Security
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------ | ------- |
| **Get NEL Settings** | `get_nel_settings` | Get Network Error Logging settings for a zone | |
| **Update NEL Settings** | `update_nel_settings` | Update Network Error Logging settings for a zone | |
### Snippets
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | --------------------------------- | ------- |
| **Delete Snippet** | `delete_snippet` | Delete a Snippet | |
| **Get Snippet** | `get_snippet` | Get a specific Snippet | |
| **List Snippet Rules** | `list_snippet_rules` | List all Snippet rules for a zone | |
| **List Snippets** | `list_snippets` | List all Snippets for a zone | |
| **Put Snippet** | `put_snippet` | Create or update a Snippet | |
### Spectrum
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------- | ------- |
| **Create Spectrum App** | `create_spectrum_app` | Create a new Spectrum application | |
| **Delete Spectrum App** | `delete_spectrum_app` | Delete a Spectrum application | |
| **Get Spectrum App** | `get_spectrum_app` | Get a specific Spectrum application | |
| **List Spectrum Apps** | `list_spectrum_apps` | List all Spectrum applications for a zone | |
| **Update Spectrum App** | `update_spectrum_app` | Update an existing Spectrum application | |
### Speed
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------ | ------- |
| **Create Page Speed Test** | `create_page_speed_test` | Create a new speed test for a page | |
| **Delete Page Speed Tests** | `delete_page_speed_tests` | Delete all speed tests for a page | |
| **Get Speed Test Schedule** | `get_speed_test_schedule` | Get the scheduled speed test for a page | |
| **List Observatory Pages** | `list_observatory_pages` | List pages tracked in the Speed Observatory for a zone | |
| **List Page Speed Tests** | `list_page_speed_tests` | List speed tests for a specific page | |
### SSL
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | -------------------------------- | ------- |
| **Get Zone Ssl Settings** | `get_zone_ssl_settings` | Get SSL/TLS settings for a zone | |
| **List Zone Ssl Certificates** | `list_zone_ssl_certificates` | List SSL certificates for a zone | |
### SSL / TLS
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------- | ------- |
| **Delete Ssl Certificate** | `delete_ssl_certificate` | Delete a custom SSL certificate from a zone | |
| **Update Zone Ssl Settings** | `update_zone_ssl_settings` | Update the SSL/TLS mode for a zone | |
| **Upload Ssl Certificate** | `upload_ssl_certificate` | Upload a custom SSL certificate for a zone | |
### Stream
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ---------------------------------------------------------- | ------- |
| **Add Stream Audio Track** | `add_stream_audio_track` | Add an audio track to a Stream video by copying from a URL | |
| **Create Stream Live Input** | `create_stream_live_input` | Create a new Stream live input | |
| **Create Stream Signed URL** | `create_stream_signed_url` | Create a signed URL token for a Stream video | |
| **Create Stream Signing Key** | `create_stream_signing_key` | Create a new Stream signing key | |
| **Create Stream Upload URL** | `create_stream_upload_url` | Create a Stream upload URL or initiate a URL-based upload | |
| **Create Stream Watermark** | `create_stream_watermark` | Create a Stream watermark profile from a URL | |
| **Delete Stream Audio Track** | `delete_stream_audio_track` | Delete an audio track from a Stream video | |
| **Delete Stream Caption** | `delete_stream_caption` | Delete a caption track from a Stream video | |
| **Delete Stream Live Input** | `delete_stream_live_input` | Delete a Stream live input | |
| **Delete Stream Signing Key** | `delete_stream_signing_key` | Delete a Stream signing key | |
| **Delete Stream Video** | `delete_stream_video` | Delete a Stream video | |
| **Delete Stream Watermark** | `delete_stream_watermark` | Delete a Stream watermark profile | |
| **Edit Stream Audio Track** | `edit_stream_audio_track` | Edit an audio track on a Stream video | |
| **Get Stream Video** | `get_stream_video` | Get details for a Stream video | |
| **Get Stream Video Embed Code** | `get_stream_video_embed_code` | Get embed code for a Stream video | |
| **Get Stream Watermark** | `get_stream_watermark` | Get a Stream watermark profile | |
| **List Stream Audio Tracks** | `list_stream_audio_tracks` | List audio tracks for a Stream video | |
| **List Stream Captions** | `list_stream_captions` | List captions for a Stream video | |
| **List Stream Live Inputs** | `list_stream_live_inputs` | List all live inputs for Stream | |
| **List Stream Signing Keys** | `list_stream_signing_keys` | List Stream signing keys | |
| **List Stream Videos** | `list_stream_videos` | List videos in Cloudflare Stream | |
| **List Stream Watermarks** | `list_stream_watermarks` | List Stream watermark profiles | |
| **Update Stream Video** | `update_stream_video` | Update metadata and settings for a Stream video | |
| **Upload Stream Caption** | `upload_stream_caption` | Upload a caption track for a Stream video | |
### Triggers
| Operation | ID | Description | Trigger |
| ---------------------------------- | --------------------------------- | -------------------------------------------------------------------------------------------------- | ------- |
| **On Cloudflare Alert** | `cloudflare_alert` | Trigger workflow when a Cloudflare alert fires | Yes |
| **On DDoS Attack Alert** | `cloudflare_ddos_alert` | Trigger: fires when Cloudflare detects a DDoS attack (L4 or L7) | Yes |
| **On DNS Record Change** | `cloudflare_dns_change` | Trigger when DNS records in a zone are added or modified | Yes |
| **On Email Routing Incident** | `cloudflare_email_routing_alert` | Trigger: fires when a Cloudflare Email Routing incident occurs. | Yes |
| **On Health Check Status Change** | `cloudflare_health_check_status` | Trigger when a Cloudflare health check changes status | Yes |
| **On KV Namespace Key Updated** | `cloudflare_kv_key_updated` | Trigger: fires when keys are added or updated in a KV namespace. | Yes |
| **On Load Balancer Health Change** | `cloudflare_load_balancer_alert` | Trigger: fires when a Cloudflare Load Balancer pool health changes or is enabled/disabled. | Yes |
| **On Magic Transit / BGP Alert** | `cloudflare_magic_transit_alert` | Trigger: fires on Magic Transit / Magic WAN tunnel health changes or BGP hijack detection. | Yes |
| **On New Audit Log Entry** | `cloudflare_audit_log` | Trigger workflow on new Cloudflare audit log entries | Yes |
| **On New D1 Database Rows** | `cloudflare_d1_new_rows` | Trigger: fires when new rows appear in a D1 database table. | Yes |
| **On New R2 Object** | `cloudflare_r2_new_object` | Trigger when a new object appears in an R2 bucket | Yes |
| **On Page Shield Alert** | `cloudflare_page_shield_alert` | Trigger: fires when Cloudflare Page Shield detects a malicious script or URL. | Yes |
| **On Pages Deployment** | `cloudflare_pages_deploy` | Trigger when a new Cloudflare Pages deployment is created | Yes |
| **On Queue Delivery Event** | `cloudflare_queue_delivery_event` | Trigger: polls a Cloudflare Queue for messages and emits each batch | Yes |
| **On Queue Message** | `cloudflare_queue_message` | Trigger when new messages arrive in a Cloudflare Queue | Yes |
| **On R2 Object Event (via Queue)** | `cloudflare_r2_object_event` | Trigger: fires when R2 bucket object events arrive in a Cloudflare Queue | Yes |
| **On SSL/TLS Certificate Alert** | `cloudflare_ssl_alert` | Trigger: fires when an SSL/TLS certificate event occurs (expiry, renewal, issuance failure) | Yes |
| **On Stream Video Event** | `cloudflare_stream_event` | Trigger when a Stream video event occurs | Yes |
| **On Tunnel Health/Event Alert** | `cloudflare_tunnel_alert` | Trigger: fires when a Cloudflare Tunnel changes health status or is created/deleted | Yes |
| **On Waiting Room Event** | `cloudflare_waiting_room_alert` | Trigger: fires when a Cloudflare Waiting Room is activated or deactivated. | Yes |
| **On Workers Error/Usage Alert** | `cloudflare_worker_alert` | Trigger: fires when a Cloudflare Worker exceeds error rate thresholds or usage limits | Yes |
| **On Workers Script Deployed** | `cloudflare_worker_deployed` | Trigger: fires when a Workers script is deployed (new version / etag detected). | Yes |
| **On Zero Trust Gateway Alert** | `cloudflare_zero_trust_alert` | Trigger: fires on Zero Trust Gateway activity log, blocked request, or Access custom pages events. | Yes |
### Tunnel
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------------------------------------------------- | ------- |
| **Create Tunnel** | `create_tunnel` | Create a new Cloudflare Tunnel | |
| **Delete Tunnel** | `delete_tunnel` | Delete a Cloudflare Tunnel | |
| **Get Tunnel** | `get_tunnel` | Get details for a specific tunnel | |
| **Get Tunnel Configuration** | `get_tunnel_configuration` | Get the configuration for a Cloudflare Tunnel | |
| **Get Tunnel Token** | `get_tunnel_token` | Get the token for a tunnel (used to run cloudflared) | |
| **List Tunnel Connections** | `list_tunnel_connections` | List active connections for a Cloudflare Tunnel | |
| **List Tunnels** | `list_tunnels` | List Cloudflare Tunnels | |
| **Put Tunnel Configuration** | `put_tunnel_configuration` | Set the ingress configuration for a Cloudflare Tunnel | |
| **Update Tunnel** | `update_tunnel` | Update a Cloudflare Tunnel | |
### URL scanner
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ---------------------------------------------------------------- | ------- |
| **Bulk Submit URL Scans** | `bulk_submit_url_scans` | Bulk submit up to 100 URLs for scanning | |
| **Get URL Scan DOM** | `get_url_scan_dom` | Retrieve the DOM content as rendered by Chrome during a URL scan | |
| **Get URL Scan HAR** | `get_url_scan_har` | Retrieve the HAR file for a completed URL scan | |
| **Get URL Scan Result** | `get_url_scan` | Retrieve the full report for a completed URL scan | |
| **Get URL Scan Screenshot** | `get_url_scan_screenshot` | Retrieve the screenshot captured during a URL scan | |
| **Search URL Scans** | `search_url_scans` | Search completed URL scans using ElasticSearch Query syntax | |
| **Submit URL Scan** | `submit_url_scan` | Submit a URL for scanning | |
### Vectorize
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ---------------------------------------------------- | ------- |
| **Create Vectorize Index** | `create_vectorize_index` | Create a new Vectorize index | |
| **Create Vectorize Metadata Index** | `create_vectorize_metadata_index` | Create a metadata index for a Vectorize index | |
| **Delete Vectorize Index** | `delete_vectorize_index` | Delete a Vectorize index | |
| **Delete Vectorize Metadata Index** | `delete_vectorize_metadata_index` | Delete a metadata index from a Vectorize index | |
| **Delete Vectors from Index** | `delete_vectors_from_index` | Delete vectors from a Vectorize index by ID | |
| **Get Vectorize Index** | `get_vectorize_index` | Get details for a Vectorize index | |
| **Get Vectorize Index Info** | `get_vectorize_index_info` | Get Vectorize index stats and info | |
| **Get Vectorize Vectors By IDs** | `get_vectorize_vectors_by_ids` | Retrieve vectors by their IDs from a Vectorize index | |
| **List Vectorize Indexes** | `list_vectorize_indexes` | List all Vectorize indexes in an account | |
| **List Vectorize Metadata Indexes** | `list_vectorize_metadata_indexes` | List metadata indexes for a Vectorize index | |
| **Query Vectorize Index** | `query_vectorize_index` | Query vectors from a Vectorize index | |
| **Upsert Vectors to Index** | `upsert_vectors_to_index` | Upsert vectors into a Vectorize index | |
### WAF
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------- | ------- |
| **Get WAF Package** | `get_waf_package` | Get a specific WAF package for a zone | |
| **List WAF Package Rule Groups** | `list_waf_package_rule_groups` | List rule groups in a WAF package | |
| **List WAF Package Rules** | `list_waf_package_rules` | List rules in a WAF package | |
| **List Zone Waf Packages** | `list_zone_waf_packages` | List WAF packages for a zone | |
| **Update WAF Rule** | `update_waf_rule` | Update the mode of a WAF rule | |
### Waiting rooms
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------- | ------- |
| **Create Waiting Room** | `create_waiting_room` | Create a waiting room for a zone | |
| **Create Waiting Room Event** | `create_waiting_room_event` | Create an event for a waiting room | |
| **Delete Waiting Room** | `delete_waiting_room` | Delete a waiting room | |
| **Get Waiting Room** | `get_waiting_room` | Get a specific waiting room | |
| **Get Waiting Room Status** | `get_waiting_room_status` | Get status of a waiting room | |
| **List Waiting Room Events** | `list_waiting_room_events` | List events for a waiting room | |
| **List Waiting Rooms** | `list_waiting_rooms` | List all waiting rooms for a zone | |
| **Update Waiting Room** | `update_waiting_room` | Update a waiting room | |
### Web analytics
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------ | ------- |
| **Create Web Analytics Site** | `create_web_analytics_site` | Create a new Web Analytics site | |
| **Delete Web Analytics Site** | `delete_web_analytics_site` | Delete a Web Analytics site | |
| **Get Web Analytics Site** | `get_web_analytics_site` | Get a specific Web Analytics site | |
| **List Web Analytics Sites** | `list_web_analytics_sites` | List all Web Analytics sites in an account | |
### Worker
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------- | ------- |
| **Create Worker Route** | `create_worker_route` | Create a Worker route | |
| **Delete Worker** | `delete_worker` | Delete a Worker script | |
| **Delete Worker Route** | `delete_worker_route` | Delete a Worker route | |
| **Get Worker** | `get_worker` | Get a Worker script | |
| **List Worker Routes** | `list_worker_routes` | List Worker routes for a zone | |
| **List Workers** | `list_workers` | List all Workers in an account | |
| **Upload Worker Script** | `upload_worker_script` | Upload or update a Worker script | |
### Workers
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------------------------------ | ------- |
| **Bulk Upsert Worker Secrets** | `bulk_upsert_worker_secrets` | Bulk upsert secrets for a Worker script | |
| **Create Worker Deployment** | `create_worker_deployment` | Create a new deployment for a Worker script | |
| **Delete Worker Secret** | `delete_worker_secret` | Delete a secret from a Worker script | |
| **Delete Worker Tail** | `delete_worker_tail` | Delete an active tail session for a Worker script | |
| **Get Worker Cron Triggers** | `get_worker_cron_triggers` | Get cron triggers (schedules) for a Worker script | |
| **Get Worker Deployment** | `get_worker_deployment` | Get a specific deployment for a Worker script | |
| **Get Worker Version** | `get_worker_version` | Get a specific version of a Worker script | |
| **List Durable Object Namespaces** | `list_durable_object_namespaces` | List all Durable Object namespaces in an account | |
| **List Durable Objects** | `list_durable_objects` | List Durable Objects in a namespace | |
| **List Worker Deployments** | `list_worker_deployments` | List deployments for a Worker script | |
| **List Worker Secrets** | `list_worker_secrets` | List secrets for a Worker script | |
| **List Worker Tails** | `list_worker_tails` | List active tails for a Worker script | |
| **List Worker Versions** | `list_worker_versions` | List versions of a Worker script | |
| **Put Worker Secret** | `put_worker_secret` | Create or update a secret for a Worker script | |
| **Query Analytics Engine** | `query_analytics_engine` | Query Workers Analytics Engine with SQL | |
| **Start Worker Tail** | `start_worker_tail` | Start a tail session for a Worker script to stream live logs | |
| **Update Worker Cron Triggers** | `update_worker_cron_triggers` | Update cron triggers (schedules) for a Worker script | |
| **Update Worker Route** | `update_worker_route` | Update an existing Worker route | |
| **Upload Worker Version** | `upload_worker_version` | Upload a new version of a Worker script | |
### Workers AI
| Operation | ID | Description | Trigger |
| ---------------------------- | ----------------------------- | ----------------------------------------------------------------------------- | ------- |
| **Convert File to Markdown** | `convert_file_to_markdown` | Convert a document or file to markdown format using Workers AI | |
| **Create Fine-Tune** | `create_ai_finetune` | Start a new fine-tuning job to customize a Workers AI model | |
| **Get Model Schema** | `get_ai_model_schema` | Get the JSON schema definition for a Workers AI model's inputs and outputs | |
| **Image Classification** | `run_ai_image_classification` | Classify an image into categories using a Workers AI vision model | |
| **List Fine-Tunes** | `list_ai_finetunes` | List all fine-tuning jobs for the account | |
| **List Public Fine-Tunes** | `list_public_ai_finetunes` | Find publicly available fine-tuned Workers AI models | |
| **List Workers Ai Models** | `list_workers_ai_models` | List available Workers AI models | |
| **Object Detection** | `run_ai_object_detection` | Detect and locate objects within an image using a Workers AI model | |
| **Run Workers Ai Inference** | `run_workers_ai_inference` | Run inference with a Workers AI model | |
| **Search AI Authors** | `list_ai_authors` | Search for AI model authors and organizations on Workers AI | |
| **Search AI Task Types** | `list_ai_tasks` | Search and list AI task types supported by Workers AI | |
| **Speech to Text (ASR)** | `run_ai_speech_to_text` | Transcribe audio to text using Whisper or another Workers AI ASR model | |
| **Summarization** | `run_ai_summarization` | Summarize long text into a concise overview using a Workers AI model | |
| **Text Embeddings** | `run_ai_text_embeddings` | Generate vector embeddings for text using a Workers AI embedding model | |
| **Text Generation** | `run_ai_text_generation` | Generate text using a Workers AI language model with structured message input | |
| **Text to Image** | `run_ai_text_to_image` | Generate an image from a text prompt using a Cloudflare diffusion model | |
| **Translation** | `run_ai_translation` | Translate text between languages using a Workers AI translation model | |
### Zaraz
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------------ | ------- |
| **Get Zaraz Config** | `get_zaraz_config` | Get the Zaraz configuration for a zone | |
| **Publish Zaraz Config** | `publish_zaraz_config` | Publish the Zaraz configuration for a zone | |
| **Update Zaraz Config** | `update_zaraz_config` | Update the Zaraz configuration for a zone | |
### Zero trust
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------- | ------- |
| **Create Tunnel Route** | `create_tunnel_route` | Create a new tunnel route | |
| **Create Virtual Network** | `create_virtual_network` | Create a new virtual network | |
| **Delete Tunnel Route** | `delete_tunnel_route` | Delete a tunnel route | |
| **Delete Virtual Network** | `delete_virtual_network` | Delete a virtual network | |
| **Get Virtual Network** | `get_virtual_network` | Get a specific virtual network | |
| **List Tunnel Routes** | `list_tunnel_routes` | List all tunnel routes in an account | |
| **List Virtual Networks** | `list_virtual_networks` | List all virtual networks in an account | |
| **Update Tunnel Route** | `update_tunnel_route` | Update an existing tunnel route | |
| **Update Virtual Network** | `update_virtual_network` | Update an existing virtual network | |
### Zero trust gateway
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------------------------------------------------------- | ------- |
| **Create Gateway List** | `create_gateway_list` | Create a Zero Trust Gateway list | |
| **Create Gateway Location** | `create_gateway_location` | Create a Zero Trust Gateway location | |
| **Create Gateway Rule** | `create_gateway_rule` | Create a Zero Trust Gateway firewall rule | |
| **Delete Gateway List** | `delete_gateway_list` | Delete a Zero Trust Gateway list | |
| **Delete Gateway Location** | `delete_gateway_location` | Delete a Zero Trust Gateway location | |
| **Delete Gateway Rule** | `delete_gateway_rule` | Delete a Zero Trust Gateway firewall rule | |
| **Get Gateway Configuration** | `get_gateway_configuration` | Get Zero Trust Gateway configuration | |
| **Get Gateway List** | `get_gateway_list` | Get a Zero Trust Gateway list | |
| **Get Gateway Location** | `get_gateway_location` | Get a Zero Trust Gateway location | |
| **Get Gateway Rule** | `get_gateway_rule` | Get a Zero Trust Gateway firewall rule | |
| **List Gateway List Items** | `list_gateway_list_items` | List items in a Zero Trust Gateway list | |
| **List Gateway Lists** | `list_gateway_lists` | List Zero Trust Gateway lists | |
| **List Gateway Locations** | `list_gateway_locations` | List Zero Trust Gateway locations | |
| **List Gateway Rules** | `list_gateway_rules` | List Zero Trust Gateway firewall rules | |
| **Update Gateway Configuration** | `update_gateway_configuration` | Update Zero Trust Gateway configuration | |
| **Update Gateway List** | `update_gateway_list` | Update (append/remove items from) a Zero Trust Gateway list | |
| **Update Gateway Rule** | `update_gateway_rule` | Update a Zero Trust Gateway firewall rule | |
### Zone
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------------------- | ------- |
| **Get Brotli Setting** | `get_brotli_setting` | Get Brotli compression setting for a zone | |
| **Get Early Hints Setting** | `get_early_hints_setting` | Get Early Hints setting for a zone | |
| **Get HTTP/3 Setting** | `get_http3_setting` | Get HTTP/3 setting for a zone | |
| **Get Regional Tiered Cache** | `get_regional_tiered_cache` | Get regional tiered cache setting for a zone | |
| **Get Zone** | `get_zone` | Get details for a specific zone | |
| **Get Zone Analytics** | `get_zone_analytics` | Get analytics summary for a zone | |
| **Get Zone Settings** | `get_zone_settings` | Get all settings for a zone | |
| **List Zones** | `list_zones` | List all zones in an account | |
| **Purge Zone Cache** | `purge_zone_cache` | Purge zone cache | |
| **Update Brotli Setting** | `update_brotli_setting` | Update Brotli compression setting for a zone | |
| **Update Early Hints Setting** | `update_early_hints_setting` | Update Early Hints setting for a zone | |
| **Update HTTP/3 Setting** | `update_http3_setting` | Update HTTP/3 setting for a zone | |
| **Update Regional Tiered Cache** | `update_regional_tiered_cache` | Enable or disable regional tiered cache for a zone | |
| **Update Zone Setting** | `update_zone_setting` | Update a specific zone setting | |
### Zones
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------------- | ------- |
| **Create Zone** | `create_zone` | Create a new zone (domain) in an account | |
| **Delete Zone** | `delete_zone` | Delete a zone from an account | |
| **Edit Zone** | `edit_zone` | Edit zone properties | |
| **Zone Activation Check** | `zone_activation_check` | Trigger a zone activation check | |
# Confluence
Source: https://docs.noclick.com/integrations/confluence
Connect Confluence to your workflows: 46 operations across 11 categories.
The Confluence node adds Confluence operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Confluence also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Confluence.
You can wire the Confluence node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Confluence under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Confluence account when prompted; no keys to copy.
NoClick requests the following permissions:
* `read:confluence-content.all`
* `read:confluence-content.summary`
* `write:confluence-content`
* `read:confluence-space.summary`
* `write:confluence-space`
* `write:confluence-file`
* `readonly:content.attachment:confluence`
* `read:confluence-props`
* `write:confluence-props`
* `search:confluence`
* `read:confluence-user`
* `read:confluence-groups`
* `read:space:confluence`
* `write:space:confluence`
* `read:page:confluence`
* `write:page:confluence`
* `delete:page:confluence`
* `read:blogpost:confluence`
* `write:blogpost:confluence`
* `delete:blogpost:confluence`
* `read:comment:confluence`
* `write:comment:confluence`
* `delete:comment:confluence`
* `read:attachment:confluence`
* `write:attachment:confluence`
* `delete:attachment:confluence`
* `read:label:confluence`
* `write:label:confluence`
* `read:content-details:confluence`
* `write:content-details:confluence`
* `delete:content-details:confluence`
* `read:user:confluence`
* `read:group:confluence`
* `read:inlinetask:confluence`
* `write:inlinetask:confluence`
* `read:task:confluence`
* `write:task:confluence`
* `offline_access`
### Api token
Enter the values manually when creating the credential.
[Get your credentials here](https://id.atlassian.com/manage-profile/security/api-tokens).
## Operations
### Attachments
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------------ | ------- |
| **Delete Attachment** | `delete_attachment` | Delete an attachment. | |
| **Get Attachment** | `get_attachment` | Get attachment metadata, including its download link. | |
| **List Attachments** | `list_attachments` | List attachments on a page. | |
| **Upload Attachment** | `upload_attachment` | Upload a file as an attachment to a page (v1 multipart API). | |
### Blog posts
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------------------ | ------- |
| **Create Blog Post** | `create_blog_post` | Create a blog post in a space. | |
| **Delete Blog Post** | `delete_blog_post` | Delete a blog post. | |
| **Get Blog Post** | `get_blog_post` | Get a single blog post by ID, optionally including its body. | |
| **List Blog Posts** | `list_blog_posts` | List blog posts, optionally filtered by space or status. | |
| **Update Blog Post** | `update_blog_post` | Update a blog post. Requires the new version number (current + 1). | |
### Comments
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | -------------------------------------------------------------------------- | ------- |
| **Create Footer Comment** | `create_footer_comment` | Add a footer comment to a page or blog post. | |
| **Create Inline Comment** | `create_inline_comment` | Create an inline comment anchored to selected text on a page or blog post. | |
| **Delete Footer Comment** | `delete_footer_comment` | Delete a footer comment. | |
| **Delete Inline Comment** | `delete_inline_comment` | Delete an inline comment. | |
| **List Blog Post Footer Comments** | `list_blog_post_footer_comments` | List footer comments on a blog post. | |
| **List Blog Post Inline Comments** | `list_blog_post_inline_comments` | List inline comments on a blog post. | |
| **List Footer Comments** | `list_footer_comments` | List footer comments on a page. | |
| **List Inline Comments** | `list_inline_comments` | List inline (highlight) comments on a page. | |
| **Update Footer Comment** | `update_footer_comment` | Update the body of a footer comment. | |
| **Update Inline Comment** | `update_inline_comment` | Update the body of an inline comment. | |
### Labels
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------------------------------------------------------------- | ------- |
| **Add Label** | `add_label` | Add a label to content (page or blog post). Uses the v1 API. | |
| **List Page Labels** | `list_page_labels` | List labels attached to a page. | |
| **Remove Label** | `remove_label` | Remove a label from content (page or blog post). Uses the v1 API. | |
### Pages
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------------- | ------- |
| **Create Page** | `create_page` | Create a page in a space. | |
| **Delete Page** | `delete_page` | Trash (or permanently purge) a page. | |
| **Get Page** | `get_page` | Get a single page by ID, optionally including its body. | |
| **Get Page Ancestors** | `get_page_ancestors` | Get the ancestor pages (breadcrumb path) of a page. | |
| **Get Page Versions** | `get_page_versions` | List the version history of a page. | |
| **List Child Pages** | `list_child_pages` | List the direct child pages of a page. | |
| **List Pages** | `list_pages` | List pages, optionally filtered by space, status, or title. | |
| **List Pages in Space** | `list_pages_in_space` | List all pages within a given space. | |
| **Update Page** | `update_page` | Update a page. Requires the new version number (current + 1). | |
### Properties
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------------------------------------------------------------------------------- | ------- |
| **Create Content Property** | `create_content_property` | Set a custom content property on a page. | |
| **Delete Content Property** | `delete_content_property` | Delete a content property from a page. | |
| **List Content Properties** | `list_content_properties` | List custom content properties (key/value metadata) on a page. | |
| **Update Content Property** | `update_content_property` | Update an existing content property on a page (requires the property ID and current version). | |
### Search
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------- | ------------------------------------------------------------------- | ------- |
| **Search (CQL)** | `search` | Full-text / structured search via CQL (v1). Returns search results. | |
| **Search Content (CQL)** | `search_content` | CQL search returning content objects only (v1). | |
### Spaces
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------- | ------- |
| **Create Space** | `create_space` | Create a new Confluence space. | |
| **Get Space** | `get_space` | Get a single space by ID. | |
| **List Space Labels** | `list_space_labels` | List labels applied to a space. | |
| **List Spaces** | `list_spaces` | List spaces, optionally filtered by key, type, or status. | |
### Tasks
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ------------------------------------------------------------------------- | ------- |
| **Get Task** | `get_task` | Get a single inline task by ID. | |
| **List Tasks** | `list_tasks` | List inline tasks (checkboxes) across the site or filtered by space/page. | |
| **Update Task** | `update_task` | Update an inline task (e.g., mark as complete or incomplete). | |
### User
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------------------------------------------- | ------- |
| **Get Current User** | `get_current_user` | Get the authenticated user's account info (v1). | |
### Other
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------------------------------------------- | ------- |
| **On New Content** | `on_new_content` | Poll-based trigger: fire when new pages/blogposts/comments are created. | Yes |
# Databricks
Source: https://docs.noclick.com/integrations/databricks
Connect Databricks to your workflows: 391 operations across 29 categories.
The Databricks node adds Databricks operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Databricks also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Databricks.
You can wire the Databricks node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Databricks under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Generate a personal access token under User Settings -> Developer -> Access tokens in your Databricks workspace, then paste your workspace URL and the token here.
[Get your credentials here](https://docs.databricks.com/aws/en/dev-tools/auth/pat).
## Operations
### Access control
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------------------------- | ------- |
| **Create IP Access List** | `create_ip_access_list` | Create an IP access list. | |
| **Create On-Behalf-Of Token** | `create_obo_token` | Create an on-behalf-of token for a service principal. | |
| **Create Permission Assignment** | `create_permission_assignment` | Create or update a workspace permission assignment for a principal. | |
| **Create Token** | `create_token` | Create a personal access token. | |
| **Delete IP Access List** | `delete_ip_access_list` | Delete an IP access list by ID. | |
| **Delete Managed Token** | `delete_token_management` | Delete a managed token by ID (admin token management). | |
| **Delete Permission Assignment** | `delete_permission_assignment` | Delete a workspace permission assignment for a principal. | |
| **Delete Token** | `delete_token` | Revoke a personal access token. | |
| **Get IP Access List** | `get_ip_access_list` | Get a single IP access list by ID. | |
| **Get Managed Token** | `get_token_management` | Get details of a managed token by ID. | |
| **Get Object Permissions** | `get_object_permissions` | Get the permissions set on an object. | |
| **Get Permission Levels** | `get_permission_levels` | Get the permission levels a user can have on an object. | |
| **Get Workspace Configuration** | `get_workspace_conf` | Get workspace configuration values for the given keys. | |
| **List IP Access Lists** | `list_ip_access_lists` | List all IP access lists for the workspace. | |
| **List Managed Tokens** | `list_token_management` | List all tokens in the workspace (admin token management). | |
| **List Permission Assignments** | `list_permission_assignments` | List workspace permission assignments for all principals. | |
| **List Tokens** | `list_tokens` | List personal access tokens for the calling user. | |
| **Set Object Permissions** | `set_object_permissions` | Set (overwrite) the permissions on an object. | |
| **Set Workspace Configuration** | `set_workspace_conf` | Set (patch) workspace configuration values. | |
| **Update IP Access List** | `update_ip_access_list` | Replace (update) an existing IP access list. | |
| **Update Object Permissions** | `update_object_permissions` | Update (merge) the permissions on an object. | |
### Alerts
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------------------------- | ------- |
| **Create Alert** | `create_alert` | Create an alert. | |
| **Create Query Visualization** | `create_query_visualization` | Create a query visualization. | |
| **Delete Alert** | `delete_alert` | Delete an alert. | |
| **Delete Query Visualization** | `delete_query_visualization` | Delete a query visualization. | |
| **Get Alert** | `get_alert` | Get an alert. | |
| **List Alerts** | `list_alerts` | List alerts. | |
| **Update Alert** | `update_alert` | Update an alert. | |
| **Update Query Visualization** | `update_query_visualization` | Update a query visualization. | |
### Apps
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------------------------------- | ------- |
| **Create App** | `create_app` | Create a new Databricks App. | |
| **Delete App** | `delete_app` | Delete a Databricks App by name. | |
| **Deploy App** | `deploy_app` | Create a new deployment for a Databricks App. | |
| **Get App** | `get_app` | Get details of a Databricks App by name. | |
| **Get App Deployment** | `get_app_deployment` | Get a specific deployment of a Databricks App. | |
| **List App Deployments** | `list_app_deployments` | List deployments for a Databricks App. | |
| **List Apps** | `list_apps` | List all Databricks Apps in the workspace. | |
| **Start App** | `start_app` | Start a Databricks App. | |
| **Stop App** | `stop_app` | Stop a Databricks App. | |
| **Update App** | `update_app` | Update a Databricks App. | |
### Cluster policies
| Operation | ID | Description | Trigger |
| ------------------------------ | ----------------------------------- | ---------------------------------------------------------------------- | ------- |
| **Create Cluster Policy** | `create_cluster_policy` | Create a new cluster policy from a policy definition. | |
| **Delete Cluster Policy** | `delete_cluster_policy` | Delete a cluster policy by its ID. | |
| **Edit Cluster Policy** | `edit_cluster_policy` | Update an existing cluster policy's name and definition. | |
| **Enforce Cluster Compliance** | `enforce_cluster_policy_compliance` | Update a cluster to bring it into compliance with its assigned policy. | |
| **Get Cluster Compliance** | `get_cluster_policy_compliance` | Get the compliance status of a single cluster against its policy. | |
| **Get Cluster Policy** | `get_cluster_policy` | Get a single cluster policy by its ID. | |
| **Get Policy Family** | `get_policy_family` | Get a single cluster policy family by its ID. | |
| **List Cluster Policies** | `list_cluster_policies` | List all cluster policies in the workspace. | |
| **List Policy Compliance** | `list_cluster_policy_compliance` | List the compliance status of all clusters governed by a policy. | |
| **List Policy Families** | `list_policy_families` | List all available cluster policy families. | |
### Clusters
| Operation | ID | Description | Trigger |
| ------------------------------ | -------------------------- | --------------------------------------------------------------------- | ------- |
| **Change Cluster Owner** | `change_cluster_owner` | Change the owner of a cluster. | |
| **Create Cluster** | `create_cluster` | Create and start a new compute cluster. | |
| **Edit Cluster** | `edit_cluster` | Update the configuration of an existing all-purpose cluster. | |
| **Get Cluster** | `get_cluster` | Get info/state for one cluster. | |
| **Get Cluster Events** | `get_cluster_events` | Retrieve the event log for a cluster. | |
| **List Availability Zones** | `list_availability_zones` | List the availability zones where clusters can be created. | |
| **List Clusters** | `list_clusters` | List all clusters in the workspace. | |
| **List Node Types** | `list_node_types` | List supported Spark node (instance) types. | |
| **List Spark Versions** | `list_spark_versions` | List the Spark/Databricks Runtime versions available for clusters. | |
| **Permanently Delete Cluster** | `permanent_delete_cluster` | Permanently delete a cluster, removing it from the cluster list. | |
| **Pin Cluster** | `pin_cluster` | Pin a cluster so it stays in the cluster list after termination. | |
| **Resize Cluster** | `resize_cluster` | Resize a cluster to a target number of workers or autoscale range. | |
| **Restart Cluster** | `restart_cluster` | Restart a running cluster. | |
| **Start Cluster** | `start_cluster` | Start a terminated cluster. | |
| **Terminate Cluster** | `terminate_cluster` | Terminate (stop) a cluster. | |
| **Unpin Cluster** | `unpin_cluster` | Unpin a cluster so it can be removed from the list after termination. | |
| **Update Cluster** | `update_cluster` | Partially update a cluster's configuration using a field mask. | |
### Command execution
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------------------------------- | ------- |
| **Cancel Command** | `cancel_command` | Cancel a running command in an execution context. | |
| **Create Execution Context** | `create_execution_context` | Create an execution context on a cluster for running commands. | |
| **Destroy Execution Context** | `destroy_execution_context` | Destroy an existing execution context on a cluster. | |
| **Execute Command** | `execute_command` | Run a command within an execution context on a cluster. | |
| **Get Command Status** | `get_command_status` | Get the status and result of a command execution. | |
| **Get Execution Context Status** | `get_execution_context_status` | Get the status of an existing execution context. | |
### Dashboards
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ---------------------------------------------------------- | ------- |
| **Create Lakeview Dashboard** | `create_lakeview_dashboard` | Create a new Lakeview (AI/BI) dashboard. | |
| **Create Lakeview Schedule** | `create_lakeview_schedule` | Create a schedule for a Lakeview (AI/BI) dashboard. | |
| **Delete Lakeview Schedule** | `delete_lakeview_schedule` | Delete a schedule for a Lakeview (AI/BI) dashboard. | |
| **Get Lakeview Dashboard** | `get_lakeview_dashboard` | Get a Lakeview (AI/BI) dashboard by ID. | |
| **Get Lakeview Schedule** | `get_lakeview_schedule` | Get a schedule for a Lakeview (AI/BI) dashboard. | |
| **Get Published Lakeview Dashboard** | `get_published_lakeview_dashboard` | Get the published version of a Lakeview (AI/BI) dashboard. | |
| **List Lakeview Dashboards** | `list_lakeview_dashboards` | List Lakeview (AI/BI) dashboards in the workspace. | |
| **List Lakeview Schedules** | `list_lakeview_schedules` | List schedules for a Lakeview (AI/BI) dashboard. | |
| **Publish Lakeview Dashboard** | `publish_lakeview_dashboard` | Publish the current draft of a Lakeview (AI/BI) dashboard. | |
| **Trash Lakeview Dashboard** | `trash_lakeview_dashboard` | Move a Lakeview (AI/BI) dashboard to the trash. | |
| **Unpublish Lakeview Dashboard** | `unpublish_lakeview_dashboard` | Unpublish a Lakeview (AI/BI) dashboard. | |
| **Update Lakeview Dashboard** | `update_lakeview_dashboard` | Update a Lakeview (AI/BI) dashboard. | |
| **Update Lakeview Schedule** | `update_lakeview_schedule` | Update a schedule for a Lakeview (AI/BI) dashboard. | |
### Feature store
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------ | ------- |
| **Create Feature** | `create_feature` | Create a new feature. | |
| **Create Online Store** | `create_online_store` | Create a new online store. | |
| **Delete Feature** | `delete_feature` | Delete a feature by its full name. | |
| **Delete Online Store** | `delete_online_store` | Delete an online store by name. | |
| **Get Feature** | `get_feature` | Get a feature by its full name. | |
| **Get Online Store** | `get_online_store` | Get an online store by name. | |
| **List Features** | `list_features` | List all features in the feature engineering registry. | |
| **List Online Stores** | `list_online_stores` | List all online stores in the workspace. | |
| **Update Feature** | `update_feature` | Update an existing feature. | |
| **Update Online Store** | `update_online_store` | Update an existing online store. | |
### Files
| Operation | ID | Description | Trigger |
| ---------------------------------- | ------------------------- | ------------------------------------------------------------------------ | ------- |
| **DBFS: Add Block** | `dbfs_add_block` | Append a block of base64-encoded data to an open DBFS upload stream. | |
| **DBFS: Close Upload Handle** | `dbfs_close` | Close an open DBFS upload stream, committing the written blocks. | |
| **DBFS: Create Upload Handle** | `dbfs_create` | Open a stream to write a file to DBFS, returning an upload handle. | |
| **DBFS: Delete** | `dbfs_delete` | Delete a file or directory from DBFS. | |
| **DBFS: Get Status** | `dbfs_get_status` | Get the file information (status) of a DBFS file or directory. | |
| **DBFS: List Directory** | `dbfs_list` | List the contents of a DBFS directory. | |
| **DBFS: Make Directories** | `dbfs_mkdirs` | Create the given directory (and necessary parents) in DBFS. | |
| **DBFS: Move** | `dbfs_move` | Move a file or directory from one DBFS location to another. | |
| **DBFS: Put File** | `dbfs_put` | Upload a small file (\<= 1 MB) to DBFS in a single request. | |
| **DBFS: Read File** | `dbfs_read` | Read the contents of a DBFS file, returned base64-encoded. | |
| **Files: Create Directory** | `create_directory` | Create a directory (and necessary parents) in a Unity Catalog volume. | |
| **Files: Delete Directory** | `delete_directory` | Delete an (empty) directory from a Unity Catalog volume. | |
| **Files: Delete File** | `delete_file` | Delete a file from a Unity Catalog volume via the Files API. | |
| **Files: Download File** | `download_file` | Download a file from a Unity Catalog volume via the Files API. | |
| **Files: Get File Metadata** | `get_file_metadata` | Get metadata (existence, size, content type) of a Files API file. | |
| **Files: List Directory Contents** | `list_directory_contents` | List the contents of a directory in a Unity Catalog volume. | |
| **Files: Upload File** | `upload_file` | Upload a file to a Unity Catalog volume via the Files API (raw content). | |
### Genie
| Operation | ID | Description | Trigger |
| --------------------------------------------- | ------------------------------------------- | --------------------------------------------------------------------- | ------- |
| **Create Genie Message** | `create_genie_message` | Add a follow-up message to an existing Genie conversation. | |
| **Execute Genie Message Query** | `execute_genie_message_query` | Execute the SQL query generated for a Genie message. | |
| **Get Genie Message** | `get_genie_message` | Get a message (and its status/attachments) from a Genie conversation. | |
| **Get Genie Message Attachment Query Result** | `get_genie_message_attachment_query_result` | Get the query result for a specific attachment on a Genie message. | |
| **Get Genie Message Query Result** | `get_genie_message_query_result` | Get the SQL query result for a Genie message. | |
| **Get Genie Space** | `get_genie_space` | Get metadata for a single Genie space. | |
| **List Genie Conversations** | `list_genie_conversations` | List conversations in a Genie space. | |
| **List Genie Spaces** | `list_genie_spaces` | List Genie spaces the caller can access. | |
| **Start Genie Conversation** | `start_genie_conversation` | Start a new Genie conversation with an initial message. | |
### Identity
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | --------------------------------------------------------- | ------- |
| **Create Group** | `create_group` | Create a new group via SCIM. | |
| **Create Service Principal** | `create_service_principal` | Create a new service principal via SCIM. | |
| **Create User** | `create_user` | Create a new user via SCIM. | |
| **Delete Group** | `delete_group` | Delete a group by SCIM id. | |
| **Delete Service Principal** | `delete_service_principal` | Delete a service principal by SCIM id. | |
| **Delete User** | `delete_user` | Delete a user by SCIM id. | |
| **Get Current User** | `get_current_user` | Get the SCIM details of the currently authenticated user. | |
| **Get Group** | `get_group` | Get a group by SCIM id. | |
| **Get Service Principal** | `get_service_principal` | Get a service principal by SCIM id. | |
| **Get User** | `get_user` | Get a user by SCIM id. | |
| **List Groups** | `list_groups` | List groups in the workspace via SCIM. | |
| **List Service Principals** | `list_service_principals` | List service principals in the workspace via SCIM. | |
| **List Users** | `list_users` | List users in the workspace via SCIM. | |
| **Patch Group** | `patch_group` | Partially update a group via SCIM PatchOp. | |
| **Patch Service Principal** | `patch_service_principal` | Partially update a service principal via SCIM PatchOp. | |
| **Patch User** | `patch_user` | Partially update a user via SCIM PatchOp. | |
| **Update Group** | `update_group` | Replace a group via SCIM (PUT). | |
| **Update Service Principal** | `update_service_principal` | Replace a service principal via SCIM (PUT). | |
| **Update User** | `update_user` | Replace a user via SCIM (PUT). | |
### Instance pools
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ---------------------------------------------------------------------------- | ------- |
| **Add Instance Profile** | `add_instance_profile` | Register an instance profile so it can be used to launch clusters. | |
| **Create Instance Pool** | `create_instance_pool` | Create a new instance pool. | |
| **Delete Instance Pool** | `delete_instance_pool` | Delete an instance pool, terminating its idle instances asynchronously. | |
| **Edit Instance Pool** | `edit_instance_pool` | Edit an existing instance pool. All required fields must be supplied. | |
| **Edit Instance Profile** | `edit_instance_profile` | Edit the IAM role association of a registered instance profile. | |
| **Get Instance Pool** | `get_instance_pool` | Retrieve the configuration of a single instance pool. | |
| **List Instance Pools** | `list_instance_pools` | List all instance pools in the workspace. | |
| **List Instance Profiles** | `list_instance_profiles` | List the instance profiles that the calling user can use to launch clusters. | |
| **Remove Instance Profile** | `remove_instance_profile` | Remove a registered instance profile from the workspace. | |
### Jobs
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------------------------------------- | ------- |
| **Cancel All Runs** | `cancel_all_runs` | Cancel all active runs of a job. | |
| **Cancel Job Run** | `cancel_run` | Cancel an active run. | |
| **Create Job** | `create_job` | Create a new job from a JSON definition. | |
| **Delete Job** | `delete_job` | Delete a job. | |
| **Delete Run** | `delete_run` | Delete a non-active run. Returns an error if the run is active. | |
| **Enforce Job Compliance** | `enforce_job_compliance` | Update a job so its cluster requirements conform to the current policy. | |
| **Export Run** | `export_run` | Export and retrieve the job run task rendered notebook output. | |
| **Get Job** | `get_job` | Get a single job's definition. | |
| **Get Job Compliance** | `get_job_compliance` | Get the compliance status of a job, including whether it is in violation of its policy. | |
| **Get Job Run** | `get_run` | Get details/state of a single run. | |
| **Get Run Output** | `get_run_output` | Retrieve the output of a completed task run. | |
| **List Job Compliance** | `list_job_compliance` | List the compliance status of all jobs using a given policy. | |
| **List Job Runs** | `list_runs` | List job runs, filterable by job. | |
| **List Jobs** | `list_jobs` | List jobs in the workspace. | |
| **Repair Run** | `repair_run` | Re-run one or more tasks of a failed job run. | |
| **Reset Job** | `reset_job` | Overwrite all settings for a given job with the provided settings. | |
| **Run Job Now** | `run_now` | Trigger an immediate run of an existing job. | |
| **Submit One-Time Run** | `submit_run` | Submit a one-time run without creating a persistent job. | |
| **Update Job** | `update_job` | Add, update, or remove specific settings of an existing job. | |
### Libraries
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ---------------------------------------------------- | ------- |
| **All Cluster Library Statuses** | `all_cluster_library_statuses` | Get the status of all libraries on all clusters. | |
| **Cluster Library Status** | `cluster_library_status` | Get the status of libraries on a single cluster. | |
| **Create Global Init Script** | `create_global_init_script` | Create a new global init script. | |
| **Delete Global Init Script** | `delete_global_init_script` | Delete a global init script. | |
| **Get Global Init Script** | `get_global_init_script` | Get the details and content of a global init script. | |
| **Install Libraries** | `install_libraries` | Install libraries on a cluster. | |
| **List Global Init Scripts** | `list_global_init_scripts` | List all global init scripts in the workspace. | |
| **Uninstall Libraries** | `uninstall_libraries` | Uninstall libraries from a cluster. | |
| **Update Global Init Script** | `update_global_init_script` | Update an existing global init script. | |
### MLflow experiments
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------------- | --------------------------------------------------------------------- | ------- |
| **Create Experiment** | `mlflow_create_experiment` | Create a new MLflow experiment. | |
| **Create Run** | `mlflow_create_run` | Create a new MLflow run within an experiment. | |
| **Delete Experiment** | `mlflow_delete_experiment` | Mark an MLflow experiment as deleted. | |
| **Delete Run** | `mlflow_delete_run` | Mark an MLflow run as deleted. | |
| **Delete Run Tag** | `mlflow_delete_run_tag` | Delete a tag from an MLflow run. | |
| **Get Experiment** | `mlflow_get_experiment` | Get metadata for an MLflow experiment by ID. | |
| **Get Experiment By Name** | `mlflow_get_experiment_by_name` | Get metadata for an MLflow experiment by name. | |
| **Get Metric History** | `mlflow_get_metric_history` | Get the full logged history of a metric for an MLflow run. | |
| **Get Run** | `mlflow_get_run` | Get metadata, metrics, params and tags for an MLflow run. | |
| **List Artifacts** | `mlflow_list_artifacts` | List artifacts stored for an MLflow run. | |
| **Log Batch** | `mlflow_log_batch` | Log a batch of metrics, params and tags to an MLflow run in one call. | |
| **Log Metric** | `mlflow_log_metric` | Log a metric value for an MLflow run. | |
| **Log Param** | `mlflow_log_param` | Log a parameter (hyperparameter) for an MLflow run. | |
| **Restore Experiment** | `mlflow_restore_experiment` | Restore a deleted MLflow experiment. | |
| **Restore Run** | `mlflow_restore_run` | Restore a deleted MLflow run. | |
| **Search Experiments** | `mlflow_search_experiments` | Search for MLflow experiments matching filter criteria. | |
| **Search Runs** | `mlflow_search_runs` | Search for MLflow runs across one or more experiments. | |
| **Set Experiment Tag** | `mlflow_set_experiment_tag` | Set a tag on an MLflow experiment. | |
| **Set Run Tag** | `mlflow_set_run_tag` | Set a tag on an MLflow run. | |
| **Update Experiment** | `mlflow_update_experiment` | Update an MLflow experiment's name. | |
| **Update Run** | `mlflow_update_run` | Update the status, end time or name of an MLflow run. | |
### MLflow model registry
| Operation | ID | Description | Trigger |
| ---------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Create Model Version** | `mlflow_create_model_version` | Create a new version of a registered model. | |
| **Create Registered Model** | `mlflow_create_registered_model` | Create a new registered model in the MLflow Model Registry. | |
| **Create Registry Webhook** | `mlflow_create_registry_webhook` | Create a Model Registry webhook that fires on registry events. | |
| **Delete Model Version** | `mlflow_delete_model_version` | Delete a specific model version. | |
| **Delete Model Version Tag** | `mlflow_delete_model_version_tag` | Delete a tag from a model version. | |
| **Delete Registered Model** | `mlflow_delete_registered_model` | Delete a registered model. | |
| **Delete Registered Model Tag** | `mlflow_delete_registered_model_tag` | Delete a tag from a registered model. | |
| **Delete Registry Webhook** | `mlflow_delete_registry_webhook` | Delete a Model Registry webhook. | |
| **Get Latest Model Versions** | `mlflow_get_latest_model_versions` | Get the latest model versions for a registered model, optionally filtered by stages. | |
| **Get Model Version** | `mlflow_get_model_version` | Get the details of a specific model version. | |
| **Get Model Version Download URI** | `mlflow_get_model_version_download_uri` | Get the download URI for a model version's artifacts. | |
| **Get Registered Model** | `mlflow_get_registered_model` | Get the details of a registered model. | |
| **List Registry Webhooks** | `mlflow_list_registry_webhooks` | List Model Registry webhooks, optionally filtered by model or events. | |
| **Rename Registered Model** | `mlflow_rename_registered_model` | Rename a registered model. | |
| **Search Model Versions** | `mlflow_search_model_versions` | Search for model versions matching a filter. | |
| **Search Registered Models** | `mlflow_search_registered_models` | Search for registered models matching a filter. | |
| **Set Model Version Tag** | `mlflow_set_model_version_tag` | Set a tag on a model version. | |
| **Set Registered Model Alias** | `mlflow_set_registered_model_alias` | Set an alias pointing to a specific version of a registered model. | |
| **Set Registered Model Tag** | `mlflow_set_registered_model_tag` | Set a tag on a registered model. | |
| **Test Registry Webhook** | `mlflow_test_registry_webhook` | Send a test event to a Model Registry webhook. | |
| **Transition Model Version Stage** | `mlflow_transition_model_version_stage` | Transition a model version to a new stage. | |
| **Update Model Version** | `mlflow_update_model_version` | Update the description of a model version. | |
| **Update Registered Model** | `mlflow_update_registered_model` | Update the description of a registered model. | |
| **Update Registry Webhook** | `mlflow_update_registry_webhook` | Update an existing Model Registry webhook. | |
### Pipelines
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------------------------- | ------- |
| **Create Pipeline** | `create_pipeline` | Create a new Delta Live Tables pipeline. | |
| **Delete Pipeline** | `delete_pipeline` | Delete a pipeline. | |
| **Get Pipeline** | `get_pipeline` | Get a single pipeline's definition and status. | |
| **Get Pipeline Update** | `get_pipeline_update` | Get the status of a specific pipeline update. | |
| **List Pipeline Events** | `list_pipeline_events` | List event log entries for a pipeline. | |
| **List Pipeline Updates** | `list_pipeline_updates` | List updates (runs) for a pipeline. | |
| **List Pipelines** | `list_pipelines` | List Delta Live Tables pipelines in the workspace. | |
| **Start Pipeline Update** | `start_pipeline_update` | Trigger a new update (run) of a pipeline. | |
| **Stop Pipeline** | `stop_pipeline` | Stop the pipeline's active update if one is running. | |
| **Update Pipeline** | `update_pipeline` | Update (replace) an existing pipeline's settings. | |
### Secrets
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------------------ | ------- |
| **Create Secret Scope** | `create_secret_scope` | Create a Databricks-backed or Azure Key Vault-backed secret scope. | |
| **Delete Secret** | `delete_secret` | Delete a secret from a scope. | |
| **Delete Secret ACL** | `delete_secret_acl` | Delete an ACL on a secret scope for a principal. | |
| **Delete Secret Scope** | `delete_secret_scope` | Delete a secret scope. | |
| **Get Secret** | `get_secret` | Get the bytes value of a secret. | |
| **Get Secret ACL** | `get_secret_acl` | Get the ACL applied to a principal for a secret scope. | |
| **List Secret ACLs** | `list_secret_acls` | List all ACLs applied to a secret scope. | |
| **List Secret Scopes** | `list_secret_scopes` | List secret scopes. | |
| **List Secrets** | `list_secrets` | List secret metadata (keys and timestamps) for a scope. | |
| **Put Secret** | `put_secret` | Insert or update a secret in a scope. | |
| **Put Secret ACL** | `put_secret_acl` | Create or overwrite an ACL on a secret scope for a principal. | |
### Serving endpoints
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ---------------------------------------------------------------------- | ------- |
| **Create Serving Endpoint** | `create_serving_endpoint` | Create a new model serving endpoint. | |
| **Delete Serving Endpoint** | `delete_serving_endpoint` | Delete a serving endpoint by name. | |
| **Get Serving Endpoint** | `get_serving_endpoint` | Get details of a serving endpoint by name. | |
| **Get Serving Endpoint Metrics** | `get_serving_endpoint_metrics` | Get the metrics of a serving endpoint (Prometheus/OpenMetrics format). | |
| **Get Serving Endpoint OpenAPI** | `get_serving_endpoint_openapi` | Get the OpenAPI schema of a serving endpoint. | |
| **List Serving Endpoints** | `list_serving_endpoints` | List all serving endpoints in the workspace. | |
| **Patch Serving Endpoint Tags** | `patch_serving_endpoint_tags` | Add or remove tags on a serving endpoint. | |
| **Put Serving Endpoint Rate Limits** | `put_serving_endpoint_rate_limits` | Set (replace) the rate limits on a serving endpoint. | |
| **Query Serving Endpoint** | `query_serving_endpoint` | Query (invoke) a serving endpoint with a request payload. | |
| **Update Serving Endpoint Config** | `update_serving_endpoint_config` | Update the config (served entities and traffic) of a serving endpoint. | |
### SQL
| Operation | ID | Description | Trigger |
| ------------------------ | ------------------ | -------------------------------------------------- | ------- |
| **Cancel SQL Statement** | `cancel_statement` | Cancel an in-progress SQL statement execution. | |
| **Get SQL Statement** | `get_statement` | Poll status and fetch results for a SQL statement. | |
| **Run SQL Statement** | `run_statement` | Execute a SQL statement on a SQL warehouse. | |
### SQL queries
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | -------------------------------------------------------- | ------- |
| **Create Query** | `create_query` | Create a new SQL query. | |
| **Delete Query** | `delete_query` | Move a SQL query to the trash. | |
| **Get Query** | `get_query` | Get a SQL query by ID. | |
| **List Data Sources** | `list_data_sources` | List the SQL warehouses available as query data sources. | |
| **List Queries** | `list_queries` | List all SQL queries in the workspace. | |
| **List Query History** | `list_query_history` | List the history of SQL query executions. | |
| **List Query Visualizations** | `list_query_visualizations` | List visualizations on a SQL query. | |
| **Update Query** | `update_query` | Update an existing SQL query. | |
### SQL warehouses
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------------------------------------------- | ------- |
| **Create Warehouse** | `create_warehouse` | Create a new SQL warehouse. | |
| **Delete Warehouse** | `delete_warehouse` | Delete a SQL warehouse. | |
| **Edit Warehouse** | `edit_warehouse` | Update the configuration of an existing SQL warehouse. | |
| **Get SQL Warehouse** | `get_warehouse` | Get info/state for a single SQL warehouse. | |
| **Get Warehouse Workspace Config** | `get_warehouse_workspace_config` | Get the workspace-level configuration that applies to all SQL warehouses. | |
| **List SQL Warehouses** | `list_warehouses` | List all SQL warehouses in the workspace. | |
| **Set Warehouse Workspace Config** | `set_warehouse_workspace_config` | Set the workspace-level configuration that applies to all SQL warehouses. | |
| **Start SQL Warehouse** | `start_warehouse` | Start (resume) a stopped SQL warehouse. | |
| **Stop SQL Warehouse** | `stop_warehouse` | Stop a running SQL warehouse. | |
### Triggers
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------- | ---------------------------------------------------------------------------------- | ------- |
| **On Any Job Event** | `on_any_job_event` | Fires on any Databricks job webhook notification event. | Yes |
| **On Job Duration Threshold Exceeded** | `on_job_duration_warning` | Fires when a Databricks job run exceeds its configured duration warning threshold. | Yes |
| **On Job Run Failed** | `on_job_failure` | Fires when a Databricks job run ends in an unsuccessful state. | Yes |
| **On Job Run Started** | `on_job_start` | Fires when a Databricks job run starts. | Yes |
| **On Job Run Succeeded** | `on_job_success` | Fires when a Databricks job run completes successfully. | Yes |
### Unity catalog
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Check Table Exists** | `check_table_exists` | Check whether a table exists in Unity Catalog. | |
| **Create Catalog** | `create_catalog` | Create a new catalog in Unity Catalog. | |
| **Create Connection** | `create_connection` | Create a new Unity Catalog connection to an external data system. | |
| **Create External Location** | `create_external_location` | Create a new external location in Unity Catalog. | |
| **Create Function** | `create_function` | Create a new function in Unity Catalog. | |
| **Create Metastore** | `create_metastore` | Create a new Unity Catalog metastore. | |
| **Create Schema** | `create_schema` | Create a new schema in a Unity Catalog catalog. | |
| **Create Storage Credential** | `create_storage_credential` | Create a new storage credential in Unity Catalog. | |
| **Create Volume** | `create_volume` | Create a new volume in Unity Catalog. | |
| **Delete Catalog** | `delete_catalog` | Delete a catalog from Unity Catalog. | |
| **Delete Connection** | `delete_connection` | Delete a Unity Catalog connection by name. | |
| **Delete External Location** | `delete_external_location` | Delete an external location. | |
| **Delete Function** | `delete_function` | Delete a function from Unity Catalog. | |
| **Delete Metastore** | `delete_metastore` | Delete a Unity Catalog metastore by ID. | |
| **Delete Schema** | `delete_schema` | Delete a schema from Unity Catalog. | |
| **Delete Storage Credential** | `delete_storage_credential` | Delete a storage credential. | |
| **Delete Table** | `delete_table` | Delete a table from Unity Catalog. | |
| **Delete Volume** | `delete_volume` | Delete a volume from Unity Catalog. | |
| **Get Catalog** | `get_catalog` | Get a catalog by name from Unity Catalog. | |
| **Get Connection** | `get_connection` | Get a Unity Catalog connection by name. | |
| **Get Current Metastore Assignment** | `get_current_metastore_assignment` | Get the metastore assignment for the current workspace. | |
| **Get External Location** | `get_external_location` | Get an external location by name. | |
| **Get Function** | `get_function` | Get a function from Unity Catalog by its full name. | |
| **Get Metastore** | `get_metastore` | Get a Unity Catalog metastore by ID. | |
| **Get Metastore Summary** | `get_metastore_summary` | Get summary information about the metastore assigned to the current workspace. | |
| **Get Schema** | `get_schema` | Get a schema by full name from Unity Catalog. | |
| **Get Storage Credential** | `get_storage_credential` | Get a storage credential by name. | |
| **Get Table** | `get_table` | Get a table's metadata/columns by full name. | |
| **Get Volume** | `get_volume` | Get metadata for a volume in Unity Catalog. | |
| **List Catalogs** | `list_catalogs` | List Unity Catalog catalogs. | |
| **List Connections** | `list_connections` | List all Unity Catalog connections in the metastore. | |
| **List External Locations** | `list_external_locations` | List external locations in the Unity Catalog metastore. | |
| **List Functions** | `list_functions` | List functions within a Unity Catalog schema. | |
| **List Metastores** | `list_metastores` | List all Unity Catalog metastores the caller has access to. | |
| **List Schemas** | `list_schemas` | List schemas in a catalog. | |
| **List Storage Credentials** | `list_storage_credentials` | List storage credentials in the Unity Catalog metastore. | |
| **List Table Summaries** | `list_table_summaries` | List table summaries for a catalog in Unity Catalog. | |
| **List Tables** | `list_tables` | List tables in a schema. | |
| **List Volumes** | `list_volumes` | List volumes within a schema in Unity Catalog. | |
| **Update Catalog** | `update_catalog` | Update an existing Unity Catalog catalog. | |
| **Update Connection** | `update_connection` | Update an existing Unity Catalog connection. | |
| **Update External Location** | `update_external_location` | Update an existing external location. | |
| **Update Function** | `update_function` | Update the owner of a Unity Catalog function. | |
| **Update Metastore** | `update_metastore` | Update an existing Unity Catalog metastore. | |
| **Update Schema** | `update_schema` | Update an existing Unity Catalog schema. | |
| **Update Storage Credential** | `update_storage_credential` | Update an existing storage credential. | |
| **Update Volume** | `update_volume` | Update a volume's name, comment, or owner in Unity Catalog. | |
| **Validate Storage Credential** | `validate_storage_credential` | Validate a storage credential against a location or self-hosted URL. | |
### Unity catalog grants
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------------------------------------------------------------------- | ------- |
| **Create Table Constraint** | `create_table_constraint` | Create a primary-key, foreign-key, or check constraint on a table. | |
| **Delete Table Constraint** | `delete_table_constraint` | Delete a named constraint from a table. | |
| **Disable System Schema** | `disable_system_schema` | Disable a system schema for a metastore. | |
| **Enable System Schema** | `enable_system_schema` | Enable a system schema for a metastore. | |
| **Get Artifact Allowlist** | `get_artifact_allowlist` | Get the artifact allowlist of a certain artifact type in the metastore. | |
| **Get Effective Grants** | `get_effective_grants` | Get effective (inherited) permissions on a securable in Unity Catalog. | |
| **Get Grants** | `get_grants` | Get permissions on a securable object in Unity Catalog. | |
| **List Resource Quotas** | `list_resource_quotas` | List all resource quotas under a metastore. | |
| **List System Schemas** | `list_system_schemas` | List system schemas for a metastore. | |
| **Set Artifact Allowlist** | `set_artifact_allowlist` | Set the artifact allowlist of a certain artifact type in the metastore. | |
| **Update Grants** | `update_grants` | Update permissions on a securable object in Unity Catalog. | |
### Unity catalog models
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | --------------------------------------------------------- | ------- |
| **Create Registered Model** | `create_registered_model` | Create a registered model in Unity Catalog. | |
| **Delete Model Version** | `delete_model_version` | Delete a model version. | |
| **Delete Registered Model** | `delete_registered_model` | Delete a registered model. | |
| **Delete Registered Model Alias** | `delete_registered_model_alias` | Delete an alias from a registered model. | |
| **Get Model Version** | `get_model_version` | Get a specific model version by number. | |
| **Get Model Version By Alias** | `get_model_version_by_alias` | Get a model version by alias. | |
| **Get Registered Model** | `get_registered_model` | Get a registered model by its full three-level name. | |
| **List Model Versions** | `list_model_versions` | List versions of a registered model. | |
| **List Registered Models** | `list_registered_models` | List registered models in Unity Catalog. | |
| **Set Registered Model Alias** | `set_registered_model_alias` | Set an alias on a registered model pointing to a version. | |
| **Update Model Version** | `update_model_version` | Update a model version's comment. | |
| **Update Registered Model** | `update_registered_model` | Update a registered model's name, comment, or owner. | |
### Unity catalog monitoring
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ---------------------------------------------------------------------- | ------- |
| **Create Online Table** | `create_online_table` | Create an online table (serving-optimized read replica of a UC table). | |
| **Create Quality Monitor** | `create_quality_monitor` | Create a Lakehouse Monitor for a Unity Catalog table. | |
| **Delete Online Table** | `delete_online_table` | Delete an online table by name. | |
| **Delete Quality Monitor** | `delete_quality_monitor` | Delete the Lakehouse Monitor for a Unity Catalog table. | |
| **Get Column Lineage** | `get_column_lineage` | Get upstream and downstream column lineage for a table column. | |
| **Get Online Table** | `get_online_table` | Get an online table by name. | |
| **Get Quality Monitor** | `get_quality_monitor` | Get the Lakehouse Monitor for a Unity Catalog table. | |
| **Get Quality Monitor Refresh** | `get_quality_monitor_refresh` | Get a specific refresh of a table's monitor. | |
| **Get Table Lineage** | `get_table_lineage` | Get upstream and downstream table lineage for a table. | |
| **List Quality Monitor Refreshes** | `list_quality_monitor_refreshes` | List refreshes of a table's monitor. | |
| **Run Quality Monitor Refresh** | `run_quality_monitor_refresh` | Trigger a refresh (metric recomputation) of a table's monitor. | |
| **Update Quality Monitor** | `update_quality_monitor` | Update the Lakehouse Monitor for a Unity Catalog table. | |
### Vector search
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | --------------------------------------------------------------------------- | ------- |
| **Create Vector Search Endpoint** | `create_vector_search_endpoint` | Create a new vector search endpoint | |
| **Create Vector Search Index** | `create_vector_search_index` | Create a new vector search index | |
| **Delete Vector Search Endpoint** | `delete_vector_search_endpoint` | Delete a vector search endpoint | |
| **Delete Vector Search Index** | `delete_vector_search_index` | Delete a vector search index | |
| **Delete Vector Search Index Data** | `delete_vector_search_index_data` | Delete rows of data from a Direct Access vector search index by primary key | |
| **Get Vector Search Endpoint** | `get_vector_search_endpoint` | Get details of a vector search endpoint | |
| **Get Vector Search Index** | `get_vector_search_index` | Get details of a vector search index | |
| **List Vector Search Endpoints** | `list_vector_search_endpoints` | List all vector search endpoints in the workspace | |
| **List Vector Search Indexes** | `list_vector_search_indexes` | List all vector search indexes on an endpoint | |
| **Query Vector Search Index** | `query_vector_search_index` | Query a vector search index | |
| **Query Vector Search Index Next Page** | `query_vector_search_index_next_page` | Retrieve the next page of vector search query results | |
| **Scan Vector Search Index** | `scan_vector_search_index` | Scan the rows of a vector search index | |
| **Sync Vector Search Index** | `sync_vector_search_index` | Trigger a sync of a Delta Sync vector search index | |
| **Upsert Vector Search Index Data** | `upsert_vector_search_index_data` | Upsert rows of data into a Direct Access vector search index | |
### Workspace
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------------------------------------------------- | ------- |
| **Create Git Credential** | `create_git_credential` | Create a Git credential entry for the calling user. | |
| **Create Repo** | `create_repo` | Create a repo in the workspace and link it to a remote Git repo. | |
| **Delete Git Credential** | `delete_git_credential` | Delete the Git credential with the given credential ID. | |
| **Delete Repo** | `delete_repo` | Delete the repo with the given repo ID. | |
| **Delete Workspace Object** | `delete_workspace_object` | Delete an object or directory in the workspace. | |
| **Export Workspace Object** | `export_workspace` | Export a notebook/file. | |
| **Get Git Credential** | `get_git_credential` | Get the Git credential with the given credential ID. | |
| **Get Repo** | `get_repo` | Get the repo with the given repo ID. | |
| **Get Workspace Status** | `get_workspace_status` | Get the status of an object or directory in the workspace. | |
| **Import Workspace Object** | `import_workspace` | Import a notebook/file to a workspace path. | |
| **List Git Credentials** | `list_git_credentials` | Get the calling user's Git credentials. | |
| **List Repos** | `list_repos` | Get repos that the calling user has Manage permissions on. | |
| **List Workspace Objects** | `list_workspace` | List notebooks/folders/files under a workspace path. | |
| **Make Workspace Directories** | `make_workspace_directories` | Create the given directory and necessary parent directories in the workspace. | |
| **Update Git Credential** | `update_git_credential` | Update the Git credential with the given credential ID. | |
| **Update Repo** | `update_repo` | Update the repo to a different branch or tag, or update its sparse checkout settings. | |
# Datadog
Source: https://docs.noclick.com/integrations/datadog
Connect Datadog to your workflows: 53 operations across 13 categories.
The Datadog node adds Datadog operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Datadog also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Datadog.
You can wire the Datadog node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Datadog under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.datadoghq.com/organization-settings/api-keys).
## Operations
### Dashboards
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------------------------- | ------- |
| **Create Dashboard** | `create_dashboard` | Create a dashboard. | |
| **Delete Dashboard** | `delete_dashboard` | Delete a dashboard. | |
| **Get Dashboard** | `get_dashboard` | Fetch a dashboard definition. | |
| **List Dashboards** | `list_dashboards` | List all dashboards. | |
| **Update Dashboard** | `update_dashboard` | Update a dashboard. | |
### Downtimes
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------- | ------- |
| **Cancel Downtime** | `cancel_downtime` | Cancel a scheduled downtime. | |
| **Create Downtime** | `create_downtime` | Schedule a monitor downtime. | |
| **Get Downtime** | `get_downtime` | Get a downtime by ID. | |
| **List Downtimes** | `list_downtimes` | List scheduled downtimes. | |
| **Update Downtime** | `update_downtime` | Update an existing downtime. | |
### Events
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | -------------------------------------- | ------- |
| **Get Event** | `get_event` | Fetch a single event. | |
| **List Events** | `list_events` | List events in a time range. | |
| **Post Event** | `post_event` | Post an event to the event stream. | |
| **Search Events** | `search_events` | Query events with a structured filter. | |
### Hosts
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------- | ------- |
| **Get Host Totals** | `get_host_totals` | Get total active host counts. | |
| **List Hosts** | `list_hosts` | List infrastructure hosts. | |
| **Mute Host** | `mute_host` | Mute a host to silence its alerts. | |
| **Unmute Host** | `unmute_host` | Unmute a host. | |
### Incidents
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------------------------- | ------- |
| **Create Incident** | `create_incident` | Open an incident. | |
| **List Incidents** | `list_incidents` | List incidents. | |
| **Update Incident** | `update_incident` | Update incident fields/state. | |
### Logs
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | --------------------------------- | ------- |
| **Aggregate Logs** | `aggregate_logs` | Aggregate/group log events. | |
| **Search Logs** | `search_logs` | Search log events (v2 query). | |
| **Send Logs** | `send_logs` | Submit a log entry to the intake. | |
### Metrics
| Operation | ID | Description | Trigger |
| -------------------------- | --------------------- | -------------------------------------------------- | ------- |
| **Get Metric Metadata** | `get_metric_metadata` | Fetch metadata for a metric. | |
| **List Active Metrics** | `list_metrics` | List metrics actively reporting since a timestamp. | |
| **Query Metrics (Legacy)** | `query_metrics` | Query metric points over a time range (legacy v1). | |
| **Query Timeseries** | `query_timeseries` | Cross-product timeseries data query (v2). | |
| **Submit Metrics** | `submit_metrics` | Submit metric data points (time series). | |
### Monitors
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------------------------------------------- | ------- |
| **Create Monitor** | `create_monitor` | Create an alert/metric monitor. | |
| **Delete Monitor** | `delete_monitor` | Delete a monitor. | |
| **Get Monitor** | `get_monitor` | Fetch a single monitor's details. | |
| **List Monitors** | `list_monitors` | List all monitors, optionally filtered. | |
| **Mute Monitor** | `mute_monitor` | Silence a monitor, optionally scoped and timed. | |
| **Search Monitors** | `search_monitors` | Search monitors by query string. | |
| **Unmute Monitor** | `unmute_monitor` | Re-enable a muted monitor. | |
| **Update Monitor** | `update_monitor` | Edit an existing monitor. | |
### Service checks
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------- | ------- |
| **Submit Service Check** | `submit_service_check` | Post a service check run. | |
### SLOs
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | --------------------------------- | ------- |
| **Create SLO** | `create_slo` | Create a Service Level Objective. | |
| **Delete SLO** | `delete_slo` | Delete an SLO. | |
| **Get SLO** | `get_slo` | Get an SLO by ID. | |
| **Get SLO History** | `get_slo_history` | Get SLO performance history. | |
| **List SLOs** | `list_slos` | List all SLOs. | |
| **Update SLO** | `update_slo` | Update an existing SLO. | |
### Synthetics
| Operation | ID | Description | Trigger |
| ------------------------------- | -------------------- | ------------------------------------------------------- | ------- |
| **Get Synthetic Test** | `get_synthetics` | Get a synthetic test configuration. | |
| **List Synthetic Tests** | `list_synthetics` | List synthetic tests. | |
| **Pause/Resume Synthetic Test** | `pause_synthetics` | Pause or resume a synthetic test. | |
| **Trigger Synthetic Tests** | `trigger_synthetics` | Trigger one or more synthetic tests to run immediately. | |
### Tags
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------------------------- | ------- |
| **Add Host Tags** | `add_host_tags` | Add tags to a host. | |
| **Delete Host Tags** | `delete_host_tags` | Remove all tags from a host. | |
| **Get Host Tags** | `get_host_tags` | Get tags for a specific host. | |
| **Update Host Tags** | `update_host_tags` | Replace all tags on a host. | |
### Triggers
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ---------------------------------------------------------------------------- | ------- |
| **On New Event** | `on_new_event` | Poll the Events API v2 for new events matching a query (poll-based trigger). | Yes |
# Devin
Source: https://docs.noclick.com/integrations/devin
Connect Devin to your workflows: 19 operations across 7 categories.
The Devin node adds Devin operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Devin also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Devin.
You can wire the Devin node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Devin under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.devin.ai/settings/api-keys).
## Operations
### Account
| Operation | ID | Description | Trigger |
| ------------ | ---------- | -------------------------------------------------------------------- | ------- |
| **Get Self** | `get_self` | Return information about the authenticated API key / principal (v3). | |
### Attachments
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------------------------- | ------- |
| **Upload Attachment** | `upload_attachment` | Upload a file for Devin to work with; returns a reference URL for a prompt. | |
### Knowledge
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------------------------------------- | ------- |
| **Create Knowledge** | `create_knowledge` | Create a new knowledge entry. | |
| **Delete Knowledge** | `delete_knowledge` | Delete a knowledge entry. | |
| **List Knowledge** | `list_knowledge` | List all knowledge notes and folders for the organization. | |
| **Update Knowledge** | `update_knowledge` | Update an existing knowledge entry. | |
### Playbooks
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | -------------------------------------------------- | ------- |
| **Create Playbook** | `create_playbook` | Create a new team playbook. | |
| **Get Playbook** | `get_playbook` | Retrieve a specific playbook's details. | |
| **List Playbooks** | `list_playbooks` | List all playbooks accessible to the organization. | |
### Secrets
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | -------------------------------------------------------------- | ------- |
| **Create Secret** | `create_secret` | Create a new org secret for use in sessions. | |
| **Delete Secret** | `delete_secret` | Permanently delete a secret by ID. | |
| **List Secrets** | `list_secrets` | List metadata for all org secrets (values are never returned). | |
### Sessions
| Operation | ID | Description | Trigger |
| ----------------------- | ------------------- | -------------------------------------------------------------------------- | ------- |
| **Create Session** | `create_session` | Start a new Devin session from a task prompt. | |
| **Get Session** | `get_session` | Retrieve a session's status, output, structured output, and metadata. | |
| **List Sessions** | `list_sessions` | List Devin sessions for the organization. | |
| **Send Message** | `send_message` | Send a follow-up message to an active session (auto-resumes if suspended). | |
| **Terminate Session** | `terminate_session` | Terminate an active session (cannot be resumed afterward). | |
| **Update Session Tags** | `update_tags` | Replace the tags associated with a session (max 50). | |
### Triggers
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ------- |
| **On Session Finished** | `on_session_finished` | Poll-based trigger that fires when a Devin session newly reaches a terminal status (finished / blocked / expired / stopped). | Yes |
# Discord
Source: https://docs.noclick.com/integrations/discord
Connect Discord to your workflows: 145 operations across 24 categories.
The Discord node adds Discord operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Discord also includes 8 trigger operations (marked in the tables below) that can start a workflow when something happens in Discord.
You can wire the Discord node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
**On Channel Message** and **On Bot Mention** are delivered over the connection NoClick holds open to Discord rather than a webhook, and they need NoClick's bot in the server. The **Discord Bot Install** connection puts it there: you pick the server during the Discord sign-in.
**Channel** on those two triggers takes either a channel, which covers the threads opened in it, or a category, which covers every channel under the category and their threads. Categories read as **Name (category)** in the picker and the list follows Discord's sidebar order, so a category is not mistaken for a channel. Leave the field empty to hear every channel in the server. See [App events](/triggers/app-events).
## Credentials
Connect Discord under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Bot install
Sign in with your Discord account when prompted; no keys to copy.
Installs NoClick's bot into your Discord server. You'll select which server during the OAuth flow.
[Get your credentials here](https://discord.com/developers/applications).
NoClick requests the following permissions:
* `bot`
* `applications.commands`
* `identify`
### Bot token
Enter the values manually when creating the credential.
[Get your credentials here](https://discord.com/developers/applications).
## Operations
### Application command
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | ----------------------------------------- | ------- |
| **Create Global Application Command** | `create_global_application_command` | Create a global application command | |
| **Create Guild Application Command** | `create_guild_application_command` | Create a guild application command | |
| **Delete Global Application Command** | `delete_global_application_command` | Delete a global application command | |
| **Delete Guild Application Command** | `delete_guild_application_command` | Delete a guild application command | |
| **Edit Global Application Command** | `edit_global_application_command` | Edit a global application command | |
| **Edit Guild Application Command** | `edit_guild_application_command` | Edit a guild application command | |
| **Get Global Application Command** | `get_global_application_command` | Get a specific global application command | |
| **Get Guild Application Command** | `get_guild_application_command` | Get a specific guild application command | |
| **List Global Application Commands** | `list_global_application_commands` | Get all global application commands | |
| **List Guild Application Commands** | `list_guild_application_commands` | Get all guild application commands | |
### Auto moderation
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ----------------------------------------- | ------- |
| **Create Auto Moderation Rule** | `create_auto_moderation_rule` | Create a new auto moderation rule | |
| **Delete Auto Moderation Rule** | `delete_auto_moderation_rule` | Delete an auto moderation rule | |
| **Get Auto Moderation Rule** | `get_auto_moderation_rule` | Get a specific auto moderation rule | |
| **List Guild Auto Moderation Rules** | `list_guild_auto_moderation_rules` | List all auto moderation rules in a guild | |
| **Update Auto Moderation Rule** | `update_auto_moderation_rule` | Modify an existing auto moderation rule | |
### Channel
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | --------------------------------------- | ------- |
| **Create Channel in Guild** | `create_channel_in_guild` | Create a new channel in a guild | |
| **Delete Channel** | `delete_channel` | Delete a channel | |
| **Edit Channel Permission Overwrites** | `edit_channel_permission_overwrites` | Edit channel permission overwrites | |
| **Get Channel Info** | `get_channel_info` | Get information about a Discord channel | |
| **List Channel Invites** | `list_channel_invites` | Get all invites for a channel | |
| **List Channel Webhooks** | `list_channel_webhooks` | Get all webhooks for a channel | |
| **List Guild Channels** | `list_guild_channels` | List all channels in a guild | |
| **Show Typing Indicator in Channel** | `show_typing_indicator_in_channel` | Trigger typing indicator in a channel | |
| **Update Channel Settings** | `update_channel_settings` | Modify an existing channel | |
### Direct message
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ------------------------------- | ------- |
| **Create Direct Message Channel** | `create_direct_message_channel` | Create a DM channel with a user | |
| **Create Group Direct Message Channel** | `create_group_direct_message_channel` | Create a group DM channel | |
### Emoji
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------------------- | ------- |
| **Create Emoji in Guild** | `create_emoji_in_guild` | Create a new emoji in a guild | |
| **Delete Emoji from Guild** | `delete_emoji_from_guild` | Delete an emoji from a guild | |
| **Get Emoji from Guild** | `get_emoji_from_guild` | Get a specific emoji from a guild | |
| **List Guild Emojis** | `list_guild_emojis` | List all emojis in a guild | |
| **Update Guild Emoji** | `update_guild_emoji` | Modify an existing emoji | |
### Entitlement
| Operation | ID | Description | Trigger |
| ----------------------------------------- | --------------------------------------- | --------------------------------------- | ------- |
| **Consume One Time Purchase Entitlement** | `consume_one_time_purchase_entitlement` | Consume a one-time purchase entitlement | |
| **Create Test Entitlement** | `create_test_entitlement` | Create a test entitlement | |
| **Delete Test Entitlement** | `delete_test_entitlement` | Delete a test entitlement | |
| **List Application Entitlements** | `list_application_entitlements` | List entitlements for an application | |
### Guild
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ---------------------------------------- | ------------------------------------------------- | ------- |
| **Begin Guild Prune for Inactive Members** | `begin_guild_prune_for_inactive_members` | Begin guild prune (remove inactive members) | |
| **Create Guild from Template** | `create_guild_from_template` | Create a new guild from a template | |
| **Delete Guild Integration** | `delete_guild_integration` | Delete a guild integration | |
| **Get Guild Audit Log** | `get_guild_audit_log` | Get the audit log for a guild | |
| **Get Guild Info** | `get_guild_info` | Get information about a Discord guild (server) | |
| **Get Guild Onboarding Config** | `get_guild_onboarding_config` | Get guild onboarding configuration | |
| **Get Guild Preview** | `get_guild_preview` | Get guild preview (public guilds) | |
| **Get Guild Prune Count** | `get_guild_prune_count` | Get guild prune count (inactive members) | |
| **Get Guild Vanity Url** | `get_guild_vanity_url` | Get guild vanity URL | |
| **Get Guild Welcome Screen** | `get_guild_welcome_screen` | Get guild welcome screen | |
| **Get Guild Widget Settings** | `get_guild_widget_settings` | Get guild widget settings | |
| **Leave Guild** | `leave_guild` | Leave a guild | |
| **List Guild Integrations** | `list_guild_integrations` | Get guild integrations | |
| **List Guild Invites** | `list_guild_invites` | Get all invites for a guild | |
| **List User Guilds** | `list_user_guilds` | List guilds (servers) the user/bot is a member of | |
| **Update Guild Onboarding Config** | `update_guild_onboarding_config` | Modify guild onboarding configuration | |
| **Update Guild Settings** | `update_guild_settings` | Modify guild settings | |
| **Update Guild Welcome Screen** | `update_guild_welcome_screen` | Modify guild welcome screen | |
| **Update Guild Widget Settings** | `update_guild_widget_settings` | Modify guild widget settings | |
### Guild template
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ---------------------------------------------- | ------- |
| **Create Guild Template** | `create_guild_template` | Create a guild template | |
| **Delete Guild Template** | `delete_guild_template` | Delete a guild template | |
| **Get Guild Template** | `get_guild_template` | Get a guild template by code | |
| **List Guild Templates** | `list_guild_templates` | Get all templates for a guild | |
| **Sync Guild Template with State** | `sync_guild_template_with_state` | Sync a guild template with current guild state | |
| **Update Guild Template** | `update_guild_template` | Modify a guild template | |
### Invite
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------- | ------- |
| **Create Channel Invite** | `create_channel_invite` | Create a new invite for a channel | |
| **Delete Invite** | `delete_invite` | Delete an invite | |
| **Get Invite Info** | `get_invite_info` | Get information about an invite | |
### Member
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | --------------------------------------- | ------- |
| **Ban Member from Guild** | `ban_member_from_guild` | Ban a member from a guild | |
| **Get Guild Ban** | `get_guild_ban` | Get a specific ban | |
| **Get Guild Member Info** | `get_guild_member_info` | Get a specific guild member | |
| **Kick Member from Guild** | `kick_member_from_guild` | Kick a member from a guild | |
| **List Guild Bans** | `list_guild_bans` | Get all bans for a guild | |
| **List Guild Members** | `list_guild_members` | Get members of a guild (server) | |
| **Unban Member from Guild** | `unban_member_from_guild` | Unban a member from a guild | |
| **Update Guild Member Info** | `update_guild_member_info` | Modify a guild member (nickname, roles) | |
### Message
| Operation | ID | Description | Trigger |
| --------------------------------------------- | ------------------------------------------- | ------------------------------------------------------------ | ------- |
| **Bulk Delete Channel Messages** | `bulk_delete_channel_messages` | Bulk delete messages (2-100 messages, less than 14 days old) | |
| **Crosspost Message to Announcement Channel** | `crosspost_message_to_announcement_channel` | Crosspost a message in an announcement channel | |
| **Delete Message from Channel** | `delete_message_from_channel` | Delete a message from a channel | |
| **Edit Message Content** | `edit_message_content` | Edit an existing message | |
| **End Poll Immediately** | `end_poll_immediately` | Immediately end a poll | |
| **Get Message by Id** | `get_message_by_id` | Get a single message by ID | |
| **List Channel Messages** | `list_channel_messages` | Get messages from a channel | |
| **List Pinned Messages in Channel** | `list_pinned_messages_in_channel` | Get pinned messages in a channel | |
| **Pin Message in Channel** | `pin_message_in_channel` | Pin a message in a channel | |
| **Send Embed Message to Channel** | `send_embed_message_to_channel` | Send an embed message to a Discord channel | |
| **Send Message to Channel** | `send_message_to_channel` | Send a message to a Discord channel | |
| **Unpin Message from Channel** | `unpin_message_from_channel` | Unpin a message in a channel | |
### Poll
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ---------------------------- | ------- |
| **List Poll Answer Voters** | `list_poll_answer_voters` | Get voters for a poll answer | |
### Reaction
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ------------------------------------------- | ------- |
| **Add Reaction to Message** | `add_reaction_to_message` | Add a reaction to a message | |
| **Delete All Message Reactions** | `delete_all_message_reactions` | Delete all reactions from a message | |
| **Delete Emoji Reactions from Message** | `delete_emoji_reactions_from_message` | Delete all reactions for a specific emoji | |
| **List Message Reaction Users** | `list_message_reaction_users` | Get users who reacted with a specific emoji | |
| **Remove Reaction from Message** | `remove_reaction_from_message` | Remove a reaction from a message | |
### Role
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | --------------------------------- | ------- |
| **Add Role to Guild Member** | `add_role_to_guild_member` | Add a role to a guild member | |
| **Create Role in Guild** | `create_role_in_guild` | Create a new role in a guild | |
| **Delete Role from Guild** | `delete_role_from_guild` | Delete a role from a guild | |
| **List Guild Roles** | `list_guild_roles` | Get all roles in a guild | |
| **Remove Role from Guild Member** | `remove_role_from_guild_member` | Remove a role from a guild member | |
| **Update Guild Role** | `update_guild_role` | Modify an existing role | |
### Scheduled event
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------------------------------------- | ------- |
| **Create Scheduled Event** | `create_scheduled_event` | Create a new scheduled event | |
| **Delete Scheduled Event** | `delete_scheduled_event` | Delete a scheduled event | |
| **Get Scheduled Event** | `get_scheduled_event` | Get a specific scheduled event | |
| **List Guild Scheduled Events** | `list_guild_scheduled_events` | List all scheduled events in a guild | |
| **List Scheduled Event Users** | `list_scheduled_event_users` | Get users interested in a scheduled event | |
| **Update Scheduled Event** | `update_scheduled_event` | Modify an existing scheduled event | |
### SKU
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | -------------------------------- | ------- |
| **List Application Skus** | `list_application_skus` | List all SKUs for an application | |
### Soundboard
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ---------------------------------------- | ----------------------------------------------------- | ------- |
| **Create Guild Soundboard Sound** | `create_guild_soundboard_sound` | Create a new soundboard sound for a guild | |
| **Delete Guild Soundboard Sound** | `delete_guild_soundboard_sound` | Delete a guild soundboard sound | |
| **Get Guild Soundboard Sound** | `get_guild_soundboard_sound` | Get a specific guild soundboard sound | |
| **List Default Soundboard Sounds** | `list_default_soundboard_sounds` | List default soundboard sounds available to all users | |
| **List Guild Soundboard Sounds** | `list_guild_soundboard_sounds` | List guild's soundboard sounds | |
| **Play Soundboard Sound in Voice Channel** | `play_soundboard_sound_in_voice_channel` | Play a soundboard sound in a voice channel | |
| **Update Guild Soundboard Sound** | `update_guild_soundboard_sound` | Modify a guild soundboard sound | |
### Stage instance
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | --------------------------------------- | ------- |
| **Create Stage Instance** | `create_stage_instance` | Create a stage instance (go live) | |
| **Delete Stage Instance** | `delete_stage_instance` | Delete a stage instance (end the stage) | |
| **Get Stage Instance for Channel** | `get_stage_instance_for_channel` | Get the stage instance for a channel | |
| **Update Stage Instance** | `update_stage_instance` | Modify a stage instance | |
### Sticker
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------------------------------- | ------- |
| **Delete Sticker from Guild** | `delete_sticker_from_guild` | Delete a sticker from a guild | |
| **Get Sticker from Guild** | `get_sticker_from_guild` | Get a specific sticker from a guild | |
| **List Guild Stickers** | `list_guild_stickers` | List all stickers in a guild | |
| **Update Guild Sticker** | `update_guild_sticker` | Modify an existing sticker | |
### Thread
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ------------------------------------------------------- | ------- |
| **Add Member to Thread** | `add_member_to_thread` | Add a member to a thread | |
| **Join Thread** | `join_thread` | Join a thread | |
| **Leave Thread** | `leave_thread` | Leave a thread | |
| **List Guild Active Threads** | `list_guild_active_threads` | List all active threads in a guild | |
| **List Thread Members** | `list_thread_members` | List members in a thread | |
| **Remove Member from Thread** | `remove_member_from_thread` | Remove a member from a thread | |
| **Start Thread from Existing Message** | `start_thread_from_existing_message` | Start a thread from an existing message | |
| **Start Thread in Forum Channel** | `start_thread_in_forum_channel` | Start a thread without a message (forum/media channels) | |
### User
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | -------------------------------------------- | ------- |
| **Get Authenticated User Info** | `get_authenticated_user_info` | Get information about the authenticated user | |
| **List Current User Guilds** | `list_current_user_guilds` | Get current user's guilds | |
| **List User Connections** | `list_user_connections` | Get user's connections | |
### Voice
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | --------------------------------- | ------- |
| **List Available Voice Regions** | `list_available_voice_regions` | List available voice regions | |
| **Update Current User Voice State** | `update_current_user_voice_state` | Modify current user's voice state | |
| **Update User Voice State** | `update_user_voice_state` | Modify another user's voice state | |
### Webhook
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------- | ------- |
| **Create Channel Webhook** | `create_channel_webhook` | Create a new webhook | |
| **Delete Webhook** | `delete_webhook` | Delete a webhook | |
| **Execute Webhook Send Message** | `execute_webhook_send_message` | Execute a Discord webhook to send a message | |
| **Get Webhook by Id** | `get_webhook_by_id` | Get a webhook by ID | |
| **List Guild Webhooks** | `list_guild_webhooks` | Get all webhooks for a guild | |
| **Update Webhook Settings** | `update_webhook_settings` | Modify an existing webhook | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **On Application Authorized** | `on_application_authorized` | | Yes |
| **On Application Deauthorized** | `on_application_deauthorized` | | Yes |
| **On Bot Mention** | `on_mention` | | Yes |
| **On Channel Message** | `on_message` | | Yes |
| **On Entitlement Create** | `on_entitlement_create` | | Yes |
| **On Entitlement Delete** | `on_entitlement_delete` | | Yes |
| **On Entitlement Update** | `on_entitlement_update` | | Yes |
| **On Slash Command** | `on_slash_command` | | Yes |
# Dropbox
Source: https://docs.noclick.com/integrations/dropbox
Connect Dropbox to your workflows: 42 operations across 6 categories.
The Dropbox node adds Dropbox operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Dropbox node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Dropbox under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Dropbox account when prompted; no keys to copy.
NoClick requests the following permissions:
* `account_info.read`
* `files.metadata.read`
* `files.metadata.write`
* `files.content.read`
* `files.content.write`
* `sharing.read`
* `sharing.write`
* `file_requests.read`
* `file_requests.write`
## Operations
### Account
| Operation | ID | Description |
| --------------------------- | ------------------------- | ---------------------------------- |
| **Get Account Info** | `get_account_info` | Get current account information. |
| **Get Account Space Usage** | `get_account_space_usage` | Get account space usage and quota. |
### File
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ------------------------------------------------------------ |
| **Copy File or Folder** | `copy_file_or_folder` | Copy a file or folder to another location. |
| **Delete File or Folder** | `delete_file_or_folder` | Delete a file or folder from Dropbox. |
| **Download File** | `download_file` | Download a file from Dropbox. |
| **Get File or Folder Metadata** | `get_file_or_folder_metadata` | Get metadata for a file or folder. |
| **Get File Thumbnail** | `get_file_thumbnail` | Get thumbnail for an image file. |
| **Get Temporary Download Link** | `get_temporary_download_link` | Create a temporary direct link to download a file. |
| **List File Revisions** | `list_file_revisions` | List revision history for a file. |
| **Move File or Folder** | `move_file_or_folder` | Move a file or folder to another location. |
| **Restore File to Revision** | `restore_file_to_revision` | Restore a file to a previous revision. |
| **Save Url to Dropbox** | `save_url_to_dropbox` | Save a URL's content directly to Dropbox. |
| **Search Files and Folders** | `search_files_and_folders` | Search for files and folders in Dropbox. |
| **Upload File** | `upload_file` | Upload a file to Dropbox (max 150 MB). |
| **Upload Large File with Sessions** | `upload_large_file_with_sessions` | Upload large files (150 MB to 350 GB) using upload sessions. |
### File request
| Operation | ID | Description |
| ----------------------- | --------------------- | --------------------------------------------------- |
| **Count File Requests** | `count_file_requests` | Get count of file requests. |
| **Create File Request** | `create_file_request` | Create a file request to collect files from others. |
| **Delete File Request** | `delete_file_request` | Delete a file request. |
| **Get File Request** | `get_file_request` | Get details of a file request. |
| **List File Requests** | `list_file_requests` | List all file requests. |
| **Update File Request** | `update_file_request` | Update a file request. |
### File sharing
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | ------------------------------------------- |
| **Add Custom Properties to File** | `add_custom_properties_to_file` | Add custom properties to a file. |
| **Create Shared Link** | `create_shared_link` | Create a shared link for a file or folder. |
| **List File Members** | `list_file_members` | List all members who have access to a file. |
| **List Shared Links** | `list_shared_links` | List all shared links. |
| **Remove Custom Properties** | `remove_custom_properties` | Remove custom properties from a file. |
| **Remove File Member** | `remove_file_member` | Remove a member's access to a shared file. |
| **Revoke Shared Link** | `revoke_shared_link` | Revoke a shared link. |
| **Share File with Members** | `share_file_with_members` | Share a file with specific users. |
| **Update Custom Properties** | `update_custom_properties` | Update custom properties on a file. |
### Folder
| Operation | ID | Description |
| -------------------------- | ------------------------ | ----------------------------------- |
| **Create Folder** | `create_folder` | Create a new folder in Dropbox. |
| **Download Folder As Zip** | `download_folder_as_zip` | Download a folder as a ZIP archive. |
| **List Folder Contents** | `list_folder_contents` | List contents of a Dropbox folder. |
### Shared folder
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | -------------------------------------------------- |
| **Add Members to Shared Folder** | `add_members_to_shared_folder` | Add members to an existing shared folder. |
| **Get Shared Folder Metadata** | `get_shared_folder_metadata` | Get metadata for a shared folder. |
| **List Shared Folder Members** | `list_shared_folder_members` | List all members of a shared folder. |
| **Mount Shared Folder** | `mount_shared_folder` | Mount a shared folder to your Dropbox. |
| **Remove Shared Folder Member** | `remove_shared_folder_member` | Remove a member from a shared folder. |
| **Share Folder with Members** | `share_folder_with_members` | Share a folder with specific users. |
| **Unmount Shared Folder** | `unmount_shared_folder` | Unmount a shared folder from your Dropbox. |
| **Unshare Folder** | `unshare_folder` | Stop sharing a folder. |
| **Update Shared Folder Member Access** | `update_shared_folder_member_access` | Update a member's access level in a shared folder. |
# Google DV360
Source: https://docs.noclick.com/integrations/dv360
Connect Google DV360 to your workflows: 37 operations across 10 categories.
The Google DV360 node adds Google DV360 operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google DV360 also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Google DV360.
You can wire the Google DV360 node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google DV360 under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### DV360 OAuth
Sign in with your Google DV360 account when prompted; no keys to copy.
Sign in with a Google account that has Display & Video 360 access. Grant the Display & Video permission for campaign, line-item, creative and targeting operations; the Bid Manager permission is only needed for the report operations, so you can skip it and still connect.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/display-video`
* `https://www.googleapis.com/auth/doubleclickbidmanager`
### DV360 service account
Enter the values manually when creating the credential.
Create a JSON key for a service account, then link that service account's email to a DV360 user profile (Admin → Users) with the required role. Prefer user OAuth for user-delegated access; use a service account for server-to-server automation.
[Get your credentials here](https://console.cloud.google.com/iam-admin/serviceaccounts).
## Operations
### Advertisers
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------------------- | ------- |
| **Create Advertiser** | `create_advertiser` | Create a new advertiser under a partner. | |
| **Get Advertiser** | `get_advertiser` | Fetch a single advertiser's details. | |
| **List Advertisers** | `list_advertisers` | List advertisers the authenticated user can access under a partner. | |
| **Update Advertiser** | `update_advertiser` | Patch fields on an existing advertiser. | |
### Audiences
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | --------------------------------------------------------------- | ------- |
| **Edit Customer Match Members** | `edit_customer_match_members` | Add or remove Customer Match members in a first-party audience. | |
| **List Audiences** | `list_audiences` | List first-party and partner audiences. | |
### Campaigns
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------- | ------- |
| **Create Campaign** | `create_campaign` | Create a campaign under an advertiser. | |
| **Get Campaign** | `get_campaign` | Fetch a single campaign. | |
| **List Campaigns** | `list_campaigns` | List campaigns for an advertiser. | |
| **Update Campaign** | `update_campaign` | Patch fields on a campaign (e.g. status, budget). | |
### Channels
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------------------------- | ------- |
| **Create Channel** | `create_channel` | Create a channel. | |
| **Get Channel** | `get_channel` | Fetch a single channel. | |
| **List Channels** | `list_channels` | List channels (site/app groupings) for an advertiser. | |
### Creatives
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | --------------------------------- | ------- |
| **Create Creative** | `create_creative` | Create a creative. | |
| **Delete Creative** | `delete_creative` | Delete an unused creative. | |
| **Get Creative** | `get_creative` | Fetch a single creative. | |
| **List Creatives** | `list_creatives` | List creatives for an advertiser. | |
| **Update Creative** | `update_creative` | Patch a creative. | |
### Insertion orders
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------- | ------- |
| **Create Insertion Order** | `create_insertion_order` | Create an insertion order under a campaign. | |
| **Get Insertion Order** | `get_insertion_order` | Fetch a single insertion order. | |
| **List Insertion Orders** | `list_insertion_orders` | List insertion orders for an advertiser. | |
| **Update Insertion Order** | `update_insertion_order` | Patch an insertion order (status, pacing, budget). | |
### Line items
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------------------ | ------- |
| **Create Line Item** | `create_line_item` | Create a line item. | |
| **Delete Line Item** | `delete_line_item` | Delete a (draft) line item. | |
| **Duplicate Line Item** | `duplicate_line_item` | Clone a line item. | |
| **Get Line Item** | `get_line_item` | Fetch a single line item. | |
| **List Line Items** | `list_line_items` | List line items for an advertiser. | |
| **Update Line Item** | `update_line_item` | Patch a line item (status/bid/budget); common pause/activate path. | |
### Reporting
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------------------ | ------- |
| **Create Report Query** | `create_report_query` | Create a Bid Manager reporting query (dimensions/metrics/filters). | |
| **Get Report** | `get_report` | Fetch a single report run (status + download path) of a query. | |
| **Get Report Query** | `get_report_query` | Fetch a single Bid Manager report query. | |
| **List Report Queries** | `list_report_queries` | List saved Bid Manager report queries. | |
| **Run Report Query** | `run_report_query` | Run a Bid Manager query to generate a fresh report. | |
### Targeting
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------------------------------------------- | ------- |
| **Create Assigned Targeting** | `create_assigned_targeting` | Assign a targeting option to a line item. | |
| **List Assigned Targeting** | `list_assigned_targeting` | List targeting options assigned to a line item for one targeting type. | |
| **Search Targeting Options** | `search_targeting_options` | Search global targeting options (e.g. geo, keywords) by query. | |
### Triggers
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------ | ----------------------------------------------- | ------- |
| **On Async Job Completed** | `on_job_completed` | Trigger when a report run for a query completes | Yes |
# Elasticsearch
Source: https://docs.noclick.com/integrations/elasticsearch
Connect Elasticsearch to your workflows: 31 operations across 4 categories.
The Elasticsearch node adds Elasticsearch operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Elasticsearch node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Elasticsearch under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Create an API key in Kibana → Stack Management → API Keys and paste the encoded value here.
[Get your credentials here](https://www.elastic.co/docs/deploy-manage/api-keys/elasticsearch-api-keys).
## Operations
### Aliases
| Operation | ID | Description |
| ------------------ | ---------------- | ----------- |
| **Alias Exists** | `alias_exists` | |
| **List Aliases** | `list_aliases` | |
| **Update Aliases** | `update_aliases` | |
### Documents
| Operation | ID | Description |
| --------------------------- | --------------------- | ----------- |
| **Bulk Index** | `bulk_index` | |
| **Bulk Write** | `bulk_write` | |
| **Create Document** | `create_document` | |
| **Delete By Query** | `delete_by_query` | |
| **Delete Document** | `delete_document` | |
| **Document Exists** | `document_exists` | |
| **Get Document** | `get_document` | |
| **Get Document Source** | `get_document_source` | |
| **Index Document** | `index_document` | |
| **Multi Get** | `multi_get` | |
| **Reindex Documents** | `reindex_documents` | |
| **Update By Query** | `update_by_query` | |
| **Update Document** | `update_document` | |
| **Upload & Index Document** | `upload_and_index` | |
### Index
| Operation | ID | Description |
| ------------------- | ----------------- | ----------- |
| **Create Index** | `create_index` | |
| **Delete Index** | `delete_index` | |
| **Get Index** | `get_index` | |
| **Get Index Stats** | `get_index_stats` | |
| **Get Mapping** | `get_mapping` | |
| **Get Settings** | `get_settings` | |
| **Index Exists** | `index_exists` | |
| **List Indices** | `list_indices` | |
| **Refresh Index** | `refresh_index` | |
| **Update Mapping** | `update_mapping` | |
| **Update Settings** | `update_settings` | |
### Search
| Operation | ID | Description |
| ------------------- | -------------- | ----------- |
| **Count Documents** | `count` | |
| **Multi Search** | `multi_search` | |
| **Search** | `search` | |
# ElevenLabs
Source: https://docs.noclick.com/integrations/elevenlabs
Connect ElevenLabs to your workflows: 31 operations across 8 categories.
The ElevenLabs node adds ElevenLabs operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the ElevenLabs node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect ElevenLabs under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Navigate to Account → Profile + API Key → Generate API Key. Copy the generated key.
[Get your credentials here](https://elevenlabs.io/app/settings).
## Operations
### Account
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | --------------------------------------- |
| **Get Character Usage Stats** | `get_character_usage_stats` | Get character usage statistics |
| **Get Subscription Information** | `get_subscription_information` | Get subscription information and limits |
| **Get User Account Information** | `get_user_account_information` | Get user account information |
### Audio generation
| Operation | ID | Description |
| ------------------------------------------ | ---------------------------------------- | ------------------------------------------------- |
| **Convert Audio Using Voice** | `convert_audio_using_voice` | Convert audio using a voice (voice changer) |
| **Convert Text to Speech** | `convert_text_to_speech` | Convert text to speech |
| **Convert Text to Speech with Timestamps** | `convert_text_to_speech_with_timestamps` | Convert text to speech with word-level timestamps |
| **Generate Sound Effects from Text** | `generate_sound_effects_from_text` | Generate sound effects from text description |
| **Isolate Vocals from Audio** | `isolate_vocals_from_audio` | Isolate vocals from audio |
| **Stream Text to Speech Realtime** | `stream_text_to_speech_realtime` | Stream text to speech in real-time |
| **Transcribe Audio to Text** | `transcribe_audio_to_text` | Transcribe audio to text |
### Audio native project
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | -------------------------------------------------------- |
| **Create Audio Native Project** | `create_audio_native_project` | Create an audio native project (embeddable audio player) |
| **Delete Audio Native Project** | `delete_audio_native_project` | Delete an audio native project |
| **Get Audio Native Project Details** | `get_audio_native_project_details` | Get audio native project details |
### Dubbing project
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ---------------------------------------- |
| **Create Dubbing Project** | `create_dubbing_project` | Create a dubbing project for video/audio |
| **Delete Dubbing Project** | `delete_dubbing_project` | Delete a dubbing project |
| **Get Dubbing Project Status** | `get_dubbing_project_status` | Get dubbing project status and metadata |
### Generated audio history
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | --------------------------------- |
| **Delete History Item** | `delete_history_item` | Delete a history item |
| **Download History Items** | `download_history_items` | Download multiple history items |
| **Get History Item Audio** | `get_history_item_audio` | Get audio file from history item |
| **Get History Item Details** | `get_history_item_details` | Get a specific history item by ID |
| **List Generated Audio History** | `list_generated_audio_history` | List all generated audio history |
### Model
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ---------------------------- |
| **List Available Ai Models** | `list_available_ai_models` | List all available AI models |
### Pronunciation dictionary
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | -------------------------------------------- |
| **Create Pronunciation Dictionary** | `create_pronunciation_dictionary` | Create a pronunciation dictionary from rules |
| **Delete Pronunciation Dictionary** | `delete_pronunciation_dictionary` | Delete a pronunciation dictionary |
| **Get Pronunciation Dictionary by Id** | `get_pronunciation_dictionary_by_id` | Get a pronunciation dictionary by ID |
| **List Pronunciation Dictionaries** | `list_pronunciation_dictionaries` | List all pronunciation dictionaries |
### Voice
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | -------------------------------------------------------- |
| **Clone Voice from Audio Samples** | `clone_voice_from_audio_samples` | Clone a voice from audio samples (Instant Voice Cloning) |
| **Delete Custom Voice** | `delete_custom_voice` | Delete a custom voice |
| **Edit Voice Settings** | `edit_voice_settings` | Edit voice settings and metadata |
| **Get Voice by Id** | `get_voice_by_id` | Get voice details by ID |
| **List Available Voices** | `list_available_voices` | List all available voices |
# Exa
Source: https://docs.noclick.com/integrations/exa
Connect Exa to your workflows: 25 operations across 5 categories.
The Exa node adds Exa operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Exa also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Exa.
You can wire the Exa node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Exa under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://dashboard.exa.ai/api-keys).
## Operations
### Agent
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | --------------------------------------------------------------------------------- | ------- |
| **Cancel Agent Run** | `cancel_agent_run` | Cancel a queued or running Agent run. | |
| **Create Agent Run** | `create_agent_run` | Create an asynchronous Agent run for deep research, list-building, or enrichment. | |
| **Get Agent Run** | `get_agent_run` | Retrieve an Agent run by ID (status, output, citations). | |
| **List Agent Runs** | `list_agent_runs` | Retrieve a paginated list of Agent runs for your team. | |
### Monitors
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Create Monitor** | `create_monitor` | Create a Monitor that runs a recurring Exa search and delivers results to a webhook. | |
| **Delete Monitor** | `delete_monitor` | Delete a monitor (irreversible). | |
| **Get Monitor** | `get_monitor` | Retrieve a single monitor by ID. | |
| **List Monitor Runs** | `list_monitor_runs` | List runs for a monitor (reverse-chronological). | |
| **List Monitors** | `list_monitors` | List all monitors for the authenticated team. | |
| **Trigger Monitor** | `trigger_monitor` | Trigger a monitor run immediately regardless of schedule. | |
| **Update Monitor** | `update_monitor` | Update an existing monitor (schedule, search config). | |
### Search
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ----------------------------------------------------------------------- | ------- |
| **Answer** | `answer` | Get an LLM-generated answer grounded with citations from an Exa search. | |
| **Find Similar** | `find_similar` | Find pages semantically similar to a given URL. | |
| **Get Contents** | `get_contents` | Retrieve clean, LLM-ready parsed content for a list of URLs. | |
| **Search** | `search` | Search the web with Exa's neural/keyword/auto search. | |
### Websets
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | -------------------------------------------------------------------------------- | ------- |
| **Create Webset** | `create_webset` | Create a Webset (search + optional enrichment); begins processing automatically. | |
| **Create Webset Enrichment** | `create_webset_enrichment` | Add an enrichment column (extract/classify a field) to a Webset. | |
| **Create Webset Webhook** | `create_webset_webhook` | Register a webhook to receive Websets event notifications. | |
| **Delete Webset** | `delete_webset` | Delete a Webset. | |
| **Get Webset** | `get_webset` | Retrieve a Webset by ID. | |
| **List Webset Items** | `list_webset_items` | List the verified/enriched result items in a Webset. | |
| **List Websets** | `list_websets` | List all Websets for the team. | |
| **List Websets Events** | `list_websets_events` | List events that have occurred (webset/item/enrichment lifecycle). | |
| **Update Webset** | `update_webset` | Update a Webset's metadata/configuration. | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------------------ | ------- |
| **On Monitor Results** | `on_monitor_results` | Fire the workflow when an Exa Monitor delivers new search results. | Yes |
# Excel
Source: https://docs.noclick.com/integrations/excel
Connect Excel to your workflows: 43 operations across 8 categories.
The Excel node adds Excel operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Excel node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Excel under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Excel account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://graph.microsoft.com/Files.ReadWrite.All`
* `https://graph.microsoft.com/User.Read`
## Operations
### Chart
| Operation | ID | Description |
| ------------------------- | ----------------------- | ----------------------------------------------- |
| **Create Chart** | `create_chart` | Create a new chart from data range |
| **Delete Chart** | `delete_chart` | Delete a chart from worksheet |
| **Get Chart** | `get_chart` | Get chart details by name |
| **Get Chart Image** | `get_chart_image` | Get chart as base64-encoded PNG image |
| **List Worksheet Charts** | `list_worksheet_charts` | List all charts in a worksheet |
| **Update Chart** | `update_chart` | Update chart properties (title, size, position) |
### Filter
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ----------------------------------- |
| **Apply Table Column Filter** | `apply_table_column_filter` | Apply auto-filter to a table column |
| **Clear Table Column Filter** | `clear_table_column_filter` | Clear filter from a table column |
### Named item
| Operation | ID | Description |
| --------------------- | ------------------- | ----------------------------------------------- |
| **Create Named Item** | `create_named_item` | Create a named range or constant |
| **Get Named Item** | `get_named_item` | Get value of a named range or item |
| **List Named Items** | `list_named_items` | List all named ranges and items in the workbook |
### Range
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ------------------------------------------------------------ |
| **Clear Range Contents** | `clear_range_contents` | Clear content, format, or both from a range |
| **Delete Range and Shift Cells** | `delete_range_and_shift_cells` | Delete cells and shift remaining cells up or left |
| **Format Range** | `format_range` | Apply formatting to a range (font, fill, borders, alignment) |
| **Get Range Values** | `get_range_values` | Get data from a specific cell range |
| **Insert Blank Cells in Range** | `insert_blank_cells_in_range` | Insert blank cells and shift existing cells down or right |
| **Merge Range Cells** | `merge_range_cells` | Merge cells into a single region |
| **Sort Range by Column** | `sort_range_by_column` | Sort a range by column |
| **Unmerge Range Cells** | `unmerge_range_cells` | Unmerge merged cells |
| **Update Range Values** | `update_range_values` | Update cell values, formulas, or formatting in a range |
### Session
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ------------------------------------------------------------------ |
| **Close Workbook Session** | `close_workbook_session` | Close a workbook session |
| **Create Workbook Session** | `create_workbook_session` | Create a workbook session for persistent or non-persistent changes |
| **Refresh Workbook Session** | `refresh_workbook_session` | Refresh a workbook session to keep it alive |
### Table
| Operation | ID | Description |
| --------------------------- | ------------------------- | ------------------------------------------------------------------- |
| **Add Table Column** | `add_table_column` | Add a column to a table |
| **Add Table Row** | `add_table_row` | Add a row to a table |
| **Convert Table to Range** | `convert_table_to_range` | Convert table to normal range (keeps data, removes table structure) |
| **Create Table from Range** | `create_table_from_range` | Create a new table from a range |
| **Delete Table** | `delete_table` | Delete a table (converts back to range) |
| **Delete Table Column** | `delete_table_column` | Delete a column from a table |
| **Delete Table Row** | `delete_table_row` | Delete a row from a table by index |
| **Get Table** | `get_table` | Get table details by name |
| **List Table Columns** | `list_table_columns` | List all columns in a table |
| **List Table Rows** | `list_table_rows` | List all rows in a table |
| **List Workbook Tables** | `list_workbook_tables` | List all tables in the workbook |
| **Sort Table by Column** | `sort_table_by_column` | Sort a table by column |
### Workbook
| Operation | ID | Description |
| -------------------------- | ------------------------ | ---------------------------------------------------------- |
| **Execute Excel Function** | `execute_excel_function` | Execute built-in Excel function (300+ functions available) |
| **Recalculate Workbook** | `recalculate_workbook` | Recalculate all formulas in the workbook |
### Worksheet
| Operation | ID | Description |
| ---------------------------- | -------------------------- | -------------------------------------------------------- |
| **Add Worksheet** | `add_worksheet` | Add a new worksheet to the workbook |
| **Delete Worksheet** | `delete_worksheet` | Delete a worksheet from the workbook |
| **Get Worksheet** | `get_worksheet` | Get worksheet details by name |
| **Get Worksheet Used Range** | `get_worksheet_used_range` | Get the used range of a worksheet (all cells with data) |
| **List Workbook Worksheets** | `list_workbook_worksheets` | List all worksheets in a workbook |
| **Update Worksheet** | `update_worksheet` | Update worksheet properties (name, visibility, position) |
# Expensify
Source: https://docs.noclick.com/integrations/expensify
Connect Expensify to your workflows: 16 operations across 5 categories.
The Expensify node adds Expensify operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Expensify also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Expensify.
You can wire the Expensify node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Expensify under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Generate partner credentials at expensify.com/tools/integrations. Both values are shown only once, store them securely.
[Get your credentials here](https://www.expensify.com/tools/integrations/).
## Operations
### Create
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------------------------- | ------- |
| **Create Expense Rules** | `create_expense_rules` | Create automatic expense-tagging rules for an employee. | |
| **Create Expenses** | `create_expenses` | Create individual expenses in a user's account. | |
| **Create Policy** | `create_policy` | Create a new workspace policy. | |
| **Create Report** | `create_report` | Create a new expense report with transactions. | |
### Exports
| Operation | ID | Description | Trigger |
| --------------------------- | ----------------------- | -------------------------------------------------------------------- | ------- |
| **Download Generated File** | `download_file` | Download a previously generated export file by name. | |
| **Export Reports to File** | `export_reports` | Generate an export of report/expense data via a Freemarker template. | |
| **Reconciliation Export** | `reconciliation_export` | Export card-transaction data for given card feeds and date range. | |
### Get
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------------------------------------------- | ------- |
| **Get Domain Card List** | `get_domain_card_list` | Retrieve corporate (domain-level) card info. | |
| **Get Policy Details** | `get_policy` | Retrieve full policy config (categories, tags, tax rates, employees). | |
| **Get Policy List** | `get_policy_list` | List all policies accessible to the credential's user. | |
### Triggers
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------------------------------------------------------- | ------- |
| **On New Report** | `on_new_report` | Trigger the workflow when a new report is submitted/created | Yes |
### Update
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------------------------------------------------------------------- | ------- |
| **Advanced Employee Updater** | `advanced_employee_updater` | Modern employee provisioning (emails, managers, admin status, payroll). | |
| **Mark Reports Reimbursed** | `update_report_status` | Mark reports as reimbursed. | |
| **Update Expense Rules** | `update_expense_rules` | Modify existing expense rules for an employee. | |
| **Update Policy** | `update_policy` | Manage categories, tags, and report fields on a policy. | |
| **Update Tag Approvers** | `update_tag_approvers` | Assign approvers to specific single-level tags. | |
# Extend
Source: https://docs.noclick.com/integrations/extend
Connect Extend to your workflows: 96 operations across 16 categories.
The Extend node adds Extend operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Extend also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Extend.
You can wire the Extend node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Extend under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://dashboard.extend.ai/developers).
## Operations
### Batch
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Get Batch Processor Run** | `get_batch_processor_run` | | |
| **Get Batch Run** | `get_batch_run` | | |
### Classifiers
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Create Classifier** | `create_classifier` | | |
| **Create Classifier Version** | `create_classifier_version` | | |
| **Get Classifier** | `get_classifier` | | |
| **Get Classifier Version** | `get_classifier_version` | | |
| **List Classifier Versions** | `list_classifier_versions` | | |
| **List Classifiers** | `list_classifiers` | | |
| **Update Classifier** | `update_classifier` | | |
### Classify
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------------------------------------- | ------- |
| **Batch Classify Runs** | `batch_classify_runs` | | |
| **Cancel Classify Run** | `cancel_classify_run` | | |
| **Create Classify Run** | `create_classify_run` | Classify a file into one of a configured set of document types. | |
| **Delete Classify Run** | `delete_classify_run` | | |
| **Get Classify Run** | `get_classify_run` | | |
| **List Classify Runs** | `list_classify_runs` | | |
### Edit
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------------------------------------ | ------- |
| **Create Edit Run** | `create_edit_run` | Run a programmatic document edit (config = schema + instructions). | |
| **Delete Edit Run** | `delete_edit_run` | | |
| **Generate Edit Schema** | `generate_edit_schema` | Analyze a document and auto-generate an edit schema. | |
| **Get Edit Run** | `get_edit_run` | | |
| **Get Edit Template** | `get_edit_template` | | |
### Evaluation
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Create Evaluation Set** | `create_evaluation_set` | | |
| **Create Evaluation Set Items** | `create_evaluation_set_items` | | |
| **Create Evaluation Set Run** | `create_evaluation_set_run` | | |
| **Delete Evaluation Set Item** | `delete_evaluation_set_item` | | |
| **Get Evaluation Set** | `get_evaluation_set` | | |
| **Get Evaluation Set Item** | `get_evaluation_set_item` | | |
| **Get Evaluation Set Run** | `get_evaluation_set_run` | | |
| **List Evaluation Set Items** | `list_evaluation_set_items` | | |
| **List Evaluation Sets** | `list_evaluation_sets` | | |
| **Update Evaluation Set Item** | `update_evaluation_set_item` | | |
### Extract
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------------ | ------- |
| **Batch Extract Runs** | `batch_extract_runs` | | |
| **Cancel Extract Run** | `cancel_extract_run` | | |
| **Create Extract Run** | `create_extract_run` | Run structured data extraction on a file using an extractor. | |
| **Delete Extract Run** | `delete_extract_run` | | |
| **Get Extract Run** | `get_extract_run` | Poll an extract run for status and extracted JSON. | |
| **List Extract Runs** | `list_extract_runs` | List extract runs (cursor pagination). | |
### Extractors
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------------------------------------------------- | ------- |
| **Create Extractor** | `create_extractor` | Create a reusable extractor (schema + prompt config). | |
| **Create Extractor Version** | `create_extractor_version` | | |
| **Get Extractor** | `get_extractor` | | |
| **Get Extractor Version** | `get_extractor_version` | | |
| **List Extractor Versions** | `list_extractor_versions` | | |
| **List Extractors** | `list_extractors` | | |
| **Update Extractor** | `update_extractor` | | |
### Files
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ------------------------------------------------------------------------- | ------- |
| **Delete File** | `delete_file` | Delete an uploaded file. | |
| **Get File** | `get_file` | Retrieve a file's metadata, and optionally its parsed text/markdown/html. | |
| **List Files** | `list_files` | List uploaded files (cursor pagination). | |
| **Upload File** | `upload_file` | Upload a document to Extend (multipart) and get a fileId for processing. | |
### Parse
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------------------------- | ------- |
| **Batch Parse Runs** | `batch_parse_runs` | Create many parse runs in one batch. | |
| **Cancel Parse Run** | `cancel_parse_run` | Cancel an in-progress parse run. | |
| **Create Parse Run** | `create_parse_run` | Parse a file into clean, chunked, LLM-ready markdown + structured blocks. | |
| **Delete Parse Run** | `delete_parse_run` | Delete a parse run. | |
| **Get Parse Run** | `get_parse_run` | Poll a parse run for status and parsed output. | |
| **List Parse Runs** | `list_parse_runs` | List parse runs (cursor pagination). | |
### Split
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------- | ------- |
| **Batch Split Runs** | `batch_split_runs` | | |
| **Cancel Split Run** | `cancel_split_run` | | |
| **Create Split Run** | `create_split_run` | Split a multi-document file into logical sub-documents. | |
| **Delete Split Run** | `delete_split_run` | | |
| **Get Split Run** | `get_split_run` | | |
| **List Split Runs** | `list_split_runs` | | |
### Splitters
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Create Splitter** | `create_splitter` | | |
| **Create Splitter Version** | `create_splitter_version` | | |
| **Get Splitter** | `get_splitter` | | |
| **Get Splitter Version** | `get_splitter_version` | | |
| **List Splitter Versions** | `list_splitter_versions` | | |
| **List Splitters** | `list_splitters` | | |
| **Update Splitter** | `update_splitter` | | |
### Sync
| Operation | ID | Description | Trigger |
| ------------------- | ---------- | --------------------------------------------------------------------- | ------- |
| **Classify (Sync)** | `classify` | Classify a document synchronously (≤5 min). | |
| **Edit (Sync)** | `edit` | Edit a document synchronously (≤5 min). | |
| **Extract (Sync)** | `extract` | Run structured extraction synchronously (≤5 min). | |
| **Parse (Sync)** | `parse` | Parse a document synchronously into clean markdown + blocks (≤5 min). | |
| **Split (Sync)** | `split` | Split a multi-document file synchronously (≤5 min). | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Create Webhook Endpoint** | `create_webhook_endpoint` | | |
| **Create Webhook Subscription** | `create_webhook_subscription` | | |
| **Delete Webhook Endpoint** | `delete_webhook_endpoint` | | |
| **Delete Webhook Subscription** | `delete_webhook_subscription` | | |
| **Get Webhook Endpoint** | `get_webhook_endpoint` | | |
| **Get Webhook Subscription** | `get_webhook_subscription` | | |
| **List Webhook Endpoints** | `list_webhook_endpoints` | | |
| **List Webhook Subscriptions** | `list_webhook_subscriptions` | | |
| **Update Webhook Endpoint** | `update_webhook_endpoint` | | |
| **Update Webhook Subscription** | `update_webhook_subscription` | | |
### Workflow runs
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------- | ------- |
| **Batch Workflow Runs** | `batch_workflow_runs` | | |
| **Cancel Workflow Run** | `cancel_workflow_run` | | |
| **Create Workflow Run** | `create_workflow_run` | Run a configured Extend workflow on a file. | |
| **Delete Workflow Run** | `delete_workflow_run` | | |
| **Get Workflow Run** | `get_workflow_run` | | |
| **List Workflow Runs** | `list_workflow_runs` | | |
| **Update Workflow Run** | `update_workflow_run` | | |
### Workflows
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Create Workflow** | `create_workflow` | | |
| **Create Workflow Version** | `create_workflow_version` | | |
| **Get Workflow** | `get_workflow` | | |
| **Get Workflow Version** | `get_workflow_version` | | |
| **List Workflow Versions** | `list_workflow_versions` | | |
| **List Workflows** | `list_workflows` | | |
| **Update Workflow** | `update_workflow` | | |
### Other
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------------------------------------------------------------ | ------- |
| **On Run Completed** | `on_run_completed` | Fire when an Extend document-processing run (parse/extract/classify/split/edit or batch) completes or fails. | Yes |
# Facebook
Source: https://docs.noclick.com/integrations/facebook
Connect Facebook to your workflows: 62 operations across 9 categories.
The Facebook node adds Facebook operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Facebook also includes 11 trigger operations (marked in the tables below) that can start a workflow when something happens in Facebook.
You can wire the Facebook node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Setting up a Facebook trigger
A Facebook trigger receives events on a callback you configure yourself in the Meta Developer Console. Pick the trigger operation on the node, copy **Callback URL** into your Meta app's webhook configuration, set **Verify Token** to the token Meta echoes during the subscription handshake, and put your Meta app's secret in **App Secret**.
Both values are required. The handshake completes only when the verify token matches, and an event is accepted only when its signature checks out against the app secret, so a trigger missing either one receives nothing.
**Callback Mode** stays on **Manual** for that setup. The **Managed** option, which uses your connected Facebook account and a **Page** you pick in place of your own Meta app, needs NoClick's own Facebook app configured for it.
## Credentials
Connect Facebook under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
## Operations
### Account
| Operation | ID | Description | Trigger |
| ------------------ | ------------ | ------------------------------------------------------------------- | ------- |
| **Get My Profile** | `get_me` | Get the authenticated user's basic profile. | |
| **List My Pages** | `list_pages` | List the Facebook Pages the user manages (with Page access tokens). | |
### Advanced
| Operation | ID | Description | Trigger |
| ------------------------ | --------------- | --------------------------------------------------- | ------- |
| **Custom Graph Request** | `graph_request` | Make an arbitrary Graph API request (escape hatch). | |
| **Read Object** | `read_object` | Read any Graph object by ID. | |
### Engagement
| Operation | ID | Description | Trigger |
| ---------------------------- | ---------------- | ------------------------------------------------------ | ------- |
| **Create Comment** | `create_comment` | Comment on a post/photo/video (or reply to a comment). | |
| **Delete Comment** | `delete_comment` | Delete a comment. | |
| **Get Reactions** | `get_reactions` | Get reactions on a post/comment. | |
| **Hide / Unhide Comment** | `hide_comment` | Hide or unhide a comment. | |
| **Like Object** | `like_object` | Like an object (post/comment) as the Page. | |
| **Private Reply to Comment** | `private_reply` | Send a private (Messenger) reply to a comment. | |
| **Read Comments** | `read_comments` | Read comments on a post/photo/video. | |
| **Unlike Object** | `unlike_object` | Remove the Page's like from an object. | |
| **Update Comment** | `update_comment` | Edit a comment. | |
### Insights
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------------ | ------- |
| **Page Insights** | `page_insights` | Get Page-level insights. | |
| **Post Insights** | `post_insights` | Get post-level insights. | |
### Media
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------------------------------------------------------- | ------- |
| **List Albums** | `list_albums` | List a Page's photo albums. | |
| **List Reels** | `list_reels` | List a Page's Reels. | |
| **List Videos** | `list_videos` | List a Page's videos. | |
| **Publish Photo Story** | `publish_photo_story` | Publish a photo Story to a Page (upload unpublished photo → create story). | |
| **Publish Reel** | `publish_reel` | Publish a Reel to a Page from a hosted video URL (resumable start → upload → finish). | |
| **Publish Video Story** | `publish_video_story` | Publish a video Story to a Page from a hosted video URL (resumable start → upload → finish). | |
| **Upload Photo** | `upload_photo` | Upload a photo to a Page (by URL). | |
| **Upload Video** | `upload_video` | Upload a video to a Page (by URL). | |
### Messenger
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Get Messenger Profile** | `get_messenger_profile` | Get the current Messenger Profile fields. | |
| **Get User Profile** | `get_user_profile` | Get a Messenger user's profile by PSID. | |
| **Send Attachment** | `send_attachment` | Send a media attachment (image/audio/video/file) by URL over Messenger. | |
| **Send Message** | `send_message` | Send a Messenger message (text or raw message object) to a recipient. | |
| **Send Sender Action** | `send_sender_action` | Send a sender action (typing indicator / mark seen). | |
| **Set Messenger Profile** | `set_messenger_profile` | Set the Messenger Profile (get started / persistent menu / greeting / ice breakers). | |
| **Thread Control (Handover)** | `thread_control` | Handover Protocol: pass / take / request thread control. | |
| **Upload Message Attachment** | `upload_message_attachment` | Upload a reusable Messenger attachment; returns an attachment\_id. | |
### Pages
| Operation | ID | Description | Trigger |
| ------------------------------ | --------------------------- | ----------------------------------------------------------------------- | ------- |
| **Get Blocked Users** | `get_blocked` | | |
| **Get Conversations (Inbox)** | `get_conversations` | | |
| **Get Page** | `get_page` | Get a Page's fields/details. | |
| **Get Page Events** | `get_events` | | |
| **Get Page Ratings** | `get_ratings` | | |
| **Get Page Roles** | `get_roles` | | |
| **Get Page Settings** | `get_settings` | | |
| **Get Tagged Content** | `get_tagged` | | |
| **List Live Videos** | `list_live_videos` | | |
| **List Webhook Subscriptions** | `list_page_subscriptions` | | |
| **Subscribe Page Webhooks** | `subscribe_page_webhooks` | Subscribe the app to a Page's webhook fields. | |
| **Unsubscribe Page Webhooks** | `unsubscribe_page_webhooks` | Unsubscribe the app from a Page's webhooks. | |
| **Update Page** | `update_page` | Update a Page's settings/metadata (about, phone, website, hours, etc.). | |
### Posts
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------------------------------- | ------- |
| **Delete Post** | `delete_post` | Delete a post. | |
| **Get Post** | `get_post` | Get a single post. | |
| **Get Post Attachments** | `get_post_attachments` | Get a post's attachments (media/links). | |
| **List Posts** | `list_posts` | List a Page's own published posts. | |
| **Publish Post** | `publish_post` | Publish (or schedule) a post to a Page's feed. | |
| **Read Feed** | `read_feed` | Read a Page's feed (posts, statuses, links). | |
| **Update Post** | `update_post` | Edit a post's message. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------- | ------------------------ | ----------- | ------- |
| **On Any Facebook Event** | `on_any_facebook_event` | | Yes |
| **On Feed Activity** | `on_feed` | | Yes |
| **On Message** | `on_messages` | | Yes |
| **On Message Delivered** | `on_message_deliveries` | | Yes |
| **On Message Reaction** | `on_message_reactions` | | Yes |
| **On Message Read** | `on_message_reads` | | Yes |
| **On New Rating** | `on_ratings` | | Yes |
| **On Page Mention** | `on_mention` | | Yes |
| **On Postback** | `on_messaging_postbacks` | | Yes |
| **On Referral** | `on_messaging_referrals` | | Yes |
| **On Standby (Handover)** | `on_standby` | | Yes |
# fal
Source: https://docs.noclick.com/integrations/fal
Connect fal to your workflows: 13 operations across 5 categories.
The fal node adds fal operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
fal also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in fal.
You can wire the fal node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect fal under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://fal.ai/dashboard/keys).
## Operations
### Keys
| Operation | ID | Description | Trigger |
| ------------------ | ------------ | ------------------------------------- | ------- |
| **Create API Key** | `create_key` | Create a new API key for the account. | |
| **Delete API Key** | `delete_key` | Delete an API key by its ID. | |
| **List API Keys** | `list_keys` | List all API keys for the account. | |
### Model run
| Operation | ID | Description | Trigger |
| ---------------------- | ---------------- | ---------------------------------------------------------------------- | ------- |
| **Cancel Request** | `cancel_request` | Cancel a queued or in-progress request. | |
| **Get Request Result** | `get_result` | Fetch the completed result payload of a queued request. | |
| **Get Request Status** | `get_status` | Poll the status of a queued request. | |
| **Run Model (Sync)** | `run_model` | Run a model endpoint synchronously and get the result inline. | |
| **Submit to Queue** | `submit_queue` | Submit an async request to the fal queue (best for long-running jobs). | |
### Platform
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------- | --------------------------------------------------- | ------- |
| **Get Usage** | `get_usage` | Retrieve granular usage line items for the account. | |
| **List Requests by Endpoint** | `list_requests` | List recent requests for a specific model endpoint. | |
| **Search Models** | `search_models` | Search and list available model endpoints. | |
### Storage
| Operation | ID | Description | Trigger |
| ------------------------ | ----------------- | -------------------------------------------------------------------- | ------- |
| **Initiate File Upload** | `initiate_upload` | Initiate a file upload to fal's CDN; returns a presigned upload URL. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | --------------------------------------------------------------------- | ------- |
| **On Job Completed** | `on_job_completed` | Fire the workflow when a queued fal job completes (success or error). | Yes |
# Fathom
Source: https://docs.noclick.com/integrations/fathom
Connect Fathom to your workflows: 14 operations across 5 categories.
The Fathom node adds Fathom operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Fathom also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Fathom.
You can wire the Fathom node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Fathom under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Fathom account when prompted; no keys to copy.
NoClick requests the following permissions:
* `public_api`
### Bearer token
Enter the values manually when creating the credential.
[Get your credentials here](https://developers.fathom.ai/sdks/authentication).
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://fathom.video/settings).
## Operations
### Meetings
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | --------------------------------------------------------------------------------- | ------- |
| **List External Meetings** | `list_external_meetings` | List meetings that had at least one external attendee (preset of list\_meetings). | |
| **List Meeting Types** | `list_meeting_types` | List the configured meeting types used to categorize meetings. | |
| **List Meetings** | `list_meetings` | List meetings/recordings with optional filters and inline content includes. | |
| **List Meetings By Type** | `list_meetings_by_type` | List only meetings of a given configured type (preset of list\_meetings). | |
| **List Meetings With Action Items** | `list_meetings_with_action_items` | List meetings with extracted action items inline (preset of list\_meetings). | |
| **List Meetings With CRM Matches** | `list_meetings_with_crm_matches` | List meetings with matched CRM contacts/companies/deals inline (preset). | |
| **List Meetings With Summaries** | `list_meetings_with_summaries` | List meetings with AI summaries inline (preset of list\_meetings). | |
### Recordings
| Operation | ID | Description | Trigger |
| ---------------------------- | ---------------- | ----------------------------------------------------------- | ------- |
| **Get Recording Summary** | `get_summary` | Get the AI-generated summary for a recording. | |
| **Get Recording Transcript** | `get_transcript` | Get the full speaker-attributed transcript for a recording. | |
### Teams
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | -------------------------------------------------------- | ------- |
| **List Team Members** | `list_team_members` | List team members, optionally filtered to a single team. | |
| **List Teams** | `list_teams` | List teams in the Fathom account. | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------------------------------ | ------- |
| **Create Webhook** | `create_webhook` | Register a Fathom webhook that posts new-meeting content to a URL. | |
| **Delete Webhook** | `delete_webhook` | Delete a previously registered Fathom webhook by id. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------------------------------------------ | ------- |
| **On New Meeting** | `on_new_meeting` | Fire the workflow when a new meeting is processed (Fathom newMeeting webhook). | Yes |
# Fellow
Source: https://docs.noclick.com/integrations/fellow
Connect Fellow to your workflows: 21 operations across 6 categories.
The Fellow node adds Fellow operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Fellow also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Fellow.
You can wire the Fellow node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Fellow under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://help.fellow.ai/en/articles/11817206-developer-api).
## Operations
### Action items
| Operation | ID | Description | Trigger |
| ----------------------------- | ---------------------- | ------------------------------------------------------------------- | ------- |
| **Archive Action Item** | `archive_action_item` | Archive an action item by marking it 'won't do'. | |
| **List Action Items** | `list_action_items` | List action items with optional scope filter and cursor pagination. | |
| **Mark Action Item Complete** | `complete_action_item` | Toggle an action item's completion state. | |
| **Retrieve Action Item** | `get_action_item` | Retrieve a single action item by ID. | |
### Notes
| Operation | ID | Description | Trigger |
| ----------------- | ------------- | ------------------------------------------------------------------- | ------- |
| **Delete Note** | `delete_note` | Permanently delete a note. Requires a Super Admin (privileged) key. | |
| **List Notes** | `list_notes` | List meeting notes with optional filters and cursor pagination. | |
| **Retrieve Note** | `get_note` | Retrieve a single note by ID (structured / AI note content). | |
### Profile
| Operation | ID | Description | Trigger |
| ------------------ | -------- | ----------------------------------------------------------------------- | ------- |
| **Get My Profile** | `get_me` | Retrieve the authenticated user and workspace info (validates the key). | |
### Recordings
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------ | ------------------------------------------------------------------------ | ------- |
| **Delete Recording** | `delete_recording` | Permanently delete a recording. Requires a Super Admin (privileged) key. | |
| **List Recordings** | `list_recordings` | List meeting recordings with optional filters and cursor pagination. | |
| **Retrieve Recording** | `get_recording` | Retrieve one recording, including transcript segments. | |
### Webhooks
| Operation | ID | Description | Trigger |
| -------------------- | ---------------- | --------------------------------------------------------------------------- | ------- |
| **Create Webhook** | `create_webhook` | Create a webhook subscription that receives HTTP POST on subscribed events. | |
| **Delete Webhook** | `delete_webhook` | Delete a webhook subscription by ID. | |
| **List Webhooks** | `list_webhooks` | List webhook subscriptions. | |
| **Retrieve Webhook** | `get_webhook` | Retrieve a single webhook subscription by ID. | |
| **Update Webhook** | `update_webhook` | Partial update of a webhook subscription (only provided fields change). | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------------------------------------------------------------------------- | ------- |
| **On Action Item Assigned** | `on_action_item_assigned` | Fire when a Fellow action item is assigned to someone. | Yes |
| **On Action Item Completed** | `on_action_item_completed` | Fire when a Fellow action item is marked complete. | Yes |
| **On AI Note Generated** | `on_ai_note_generated` | Fire when Fellow generates an AI note for a meeting. | Yes |
| **On AI Note Shared** | `on_ai_note_shared` | Fire when a Fellow AI note is shared to a channel (e.g. Slack, Teams). | Yes |
| **On Fellow Event (Any)** | `on_fellow_event` | Fire on any Fellow AI-note or action-item event (catch-all, backward-compat). | Yes |
# Findymail
Source: https://docs.noclick.com/integrations/findymail
Connect Findymail to your workflows: 37 operations across 8 categories.
The Findymail node adds Findymail operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Findymail also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Findymail.
You can wire the Findymail node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Findymail under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.findymail.com/user/api-tokens).
## Operations
### Credits
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------- | ------- |
| **Get Remaining Credits** | `get_credits` | Return remaining finder / verifier credit balance. | |
| **Get Team Usage Summary** | `get_team_usage_summary` | Return the per-team credit usage report. | |
| **Get Usage Summary** | `get_usage_summary` | Return the per-account credit usage report. | |
### Discovery
| Operation | ID | Description | Trigger |
| --------------------------------- | --------------------- | --------------------------------------------- | ------- |
| **Lookup Technologies By Domain** | `technologies_lookup` | Look up the tech stack detected for a domain. | |
| **Search Lookalike Companies** | `lookalike_search` | Find companies similar to seed companies. | |
| **Search Technologies** | `technologies_search` | Search the technology catalog. | |
### Finder
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------------------------------------------------------------------- | ------- |
| **Find Email From Name** | `find_email_from_name` | Find a verified email from a person's name and company domain. | |
| **Find Emails From Domain** | `find_emails_from_domain` | Find emails associated with a company domain. | |
| **Find Employees** | `find_employees` | Find employees at a company by website and job titles. | |
| **Find From Business Profile** | `find_from_business_profile` | Find an email from a LinkedIn / business profile URL. | |
| **Find Phone** | `find_phone` | Find a direct phone number from a LinkedIn URL (GDPR-compliant, no EU). | |
| **Get Company Information** | `get_company` | Enrich a company by domain, LinkedIn URL, or name. | |
| **Reverse Email Lookup** | `reverse_email` | Find a LinkedIn profile from an email address. | |
### Intellimatch
| Operation | ID | Description | Trigger |
| ------------------------------- | ------------------------- | --------------------------------------------------------------- | ------- |
| **Add Excluded Domains** | `add_excluded_domains` | Add domains to the exclusion list. | |
| **Create Exclusion List** | `create_exclusion_list` | Create an Intellimatch exclusion list. | |
| **Delete Exclusion List** | `delete_exclusion_list` | Delete an exclusion list. | |
| **Get Exclusion List** | `get_exclusion_list` | Fetch one exclusion list by ID. | |
| **Get Export Status** | `intellimatch_status` | Poll the status of an Intellimatch search/export job. | |
| **Get Intellimatch Results** | `intellimatch_data` | Fetch paginated Intellimatch export results. | |
| **List Excluded Domains** | `list_excluded_domains` | List excluded domains. | |
| **List Exclusion Lists** | `list_exclusion_lists` | List Intellimatch exclusion lists. | |
| **Remove Excluded Domains** | `remove_excluded_domains` | Remove excluded domains by ID. | |
| **Search Leads (Intellimatch)** | `intellimatch_search` | Run a natural-language lead search (kicks off an async export). | |
| **Update Exclusion List** | `update_exclusion_list` | Update an exclusion list. | |
### Lists
| Operation | ID | Description | Trigger |
| -------------------------- | --------------------- | ---------------------------------------- | ------- |
| **Create Contact List** | `create_contact_list` | Create a new contact list. | |
| **Delete Contact List** | `delete_contact_list` | Delete a contact list. | |
| **Get Contacts In A List** | `get_contacts` | Retrieve contacts saved in a given list. | |
| **List Contact Lists** | `list_contact_lists` | List the user's saved contact lists. | |
| **Update Contact List** | `update_contact_list` | Rename / update a contact list. | |
### Signals
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------------------------- | ------- |
| **Create Signal Monitor** | `create_signal_monitor` | Create a signal monitor. | |
| **Delete Signal Monitor** | `delete_signal_monitor` | Delete a signal monitor. | |
| **Get A Signal** | `get_signal` | Fetch one signal by its id. | |
| **List Signal Monitors** | `list_signal_monitors` | List signal monitors. | |
| **List Signals** | `list_signals` | List buying / intent signals. | |
| **Update Signal Monitor** | `update_signal_monitor` | Update a signal monitor. | |
### Verifier
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ---------------------------------------------- | ------- |
| **Verify Email** | `verify_email` | Verify the deliverability of an email address. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | --------------------------------------------------------------------------- | ------- |
| **On Signal Match** | `on_signal_match` | Fire the workflow when a signal monitor matches a new buying/intent signal. | Yes |
# Firecrawl
Source: https://docs.noclick.com/integrations/firecrawl
Connect Firecrawl to your workflows: 53 operations across 11 categories.
The Firecrawl node adds Firecrawl operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Firecrawl also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Firecrawl.
You can wire the Firecrawl node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Firecrawl under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://www.firecrawl.dev/app/api-keys).
## Operations
### Crawling
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------------------------------------------- | ------- |
| **Cancel Crawl** | `cancel_crawl` | Cancel an in-progress crawl job. | |
| **Crawl Params Preview** | `crawl_params_preview` | Generate suggested crawl parameters from a natural-language prompt + URL. | |
| **Crawl Website** | `crawl` | Start an async crawl of a site from a starting URL; returns a job id. | |
| **Get Crawl Errors** | `get_crawl_errors` | Retrieve per-URL errors and robots.txt-blocked URLs for a crawl job. | |
| **Get Crawl Status** | `get_crawl` | Poll a crawl job's status by id. | |
| **List Active Crawls** | `list_active_crawls` | List all currently running crawl jobs for the account. | |
### Discovery
| Operation | ID | Description | Trigger |
| ------------------ | -------- | ------------------------------------------------------------------------ | ------- |
| **Map Website** | `map` | Quickly return a complete list of URLs discovered on a website. | |
| **Search the Web** | `search` | Web search returning results, optionally with full-page content scraped. | |
### Extraction
| Operation | ID | Description | Trigger |
| ------------------------------ | -------------- | ---------------------------------------------------------------------- | ------- |
| **Agent (Autonomous Extract)** | `agent` | Autonomous AI web data gathering from a prompt + schema (async). | |
| **Cancel Agent** | `cancel_agent` | Cancel an in-progress agent job. | |
| **Extract Structured Data** | `extract` | LLM-powered structured extraction from URLs (async; returns a job id). | |
| **Get Agent Status** | `get_agent` | Poll an agent job by id. | |
| **Get Extract Status** | `get_extract` | Poll an extract job by id. Deprecated. | |
### Files
| Operation | ID | Description | Trigger |
| ---------------- | ------- | --------------------------------------------------------------------- | ------- |
| **Parse a File** | `parse` | Parse a remote file (PDF, DOCX, etc.) into markdown or other formats. | |
### Interact
| Operation | ID | Description | Trigger |
| ------------------------------- | -------------------------- | -------------------------------------------------- | ------- |
| **Create Interact Session** | `create_interact_session` | Create a Firecrawl interact session. | |
| **Delete Interact Session** | `delete_interact_session` | Delete a Firecrawl interact session. | |
| **Execute in Interact Session** | `execute_interact_session` | Execute code in a Firecrawl interact session. | |
| **Interact With Scrape Job** | `scrape_interact` | Execute code in the scrape-bound interact session. | |
| **List Interact Sessions** | `list_interact_sessions` | List active Firecrawl interact sessions. | |
| **Stop Scrape Interaction** | `stop_scrape_interact` | Stop the scrape-bound interact session. | |
### Monitoring
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------- | ------- |
| **Create Monitor** | `create_monitor` | Create a monitor. | |
| **Delete Monitor** | `delete_monitor` | Delete a monitor. | |
| **Get Monitor** | `get_monitor` | Get a monitor. | |
| **Get Monitor Check** | `get_monitor_check` | Get a single monitor check and page details. | |
| **List Monitor Checks** | `list_monitor_checks` | List checks for a monitor. | |
| **List Monitors** | `list_monitors` | List monitors. | |
| **Run Monitor** | `run_monitor` | Run a monitor immediately. | |
| **Update Monitor** | `update_monitor` | Update a monitor. | |
### Research
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------------- | ------------------------ | ------- |
| **Find Related Papers** | `get_similar_research_papers` | Find related papers. | |
| **Get Paper** | `get_research_paper` | Inspect or read a paper. | |
| **Search GitHub History** | `search_research_github` | Search GitHub history. | |
| **Search Papers** | `search_research_papers` | Search academic papers. | |
### Scraping
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------------------ | ------- |
| **Batch Scrape** | `batch_scrape` | Submit many URLs to scrape asynchronously; returns a job id. | |
| **Cancel Batch Scrape** | `cancel_batch_scrape` | Cancel an in-progress batch scrape job. | |
| **Get Batch Scrape Errors** | `get_batch_scrape_errors` | Retrieve per-URL errors for a batch scrape job. | |
| **Get Batch Scrape Status** | `get_batch_scrape` | Poll a batch scrape job by id. | |
| **Get Scrape Status** | `get_scrape` | Poll an async scrape job by id. | |
| **Scrape URL** | `scrape` | Scrape a single URL and return content as markdown / HTML / links. | |
### Support
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------ | ------------------------------------- | ------- |
| **Ask Firecrawl Support** | `support_ask` | Ask the Firecrawl support agent. | |
| **Search Firecrawl Docs** | `support_docs_search` | Search Firecrawl docs with citations. | |
| **Submit Endpoint Feedback** | `submit_feedback` | Submit feedback for a v2 job. | |
| **Submit Search Feedback** | `submit_search_feedback` | Submit feedback for a search job. | |
### Usage
| Operation | ID | Description | Trigger |
| ------------------------------- | ------------------------- | ------------------------------------------------------ | ------- |
| **Get Credit Usage** | `credit_usage` | Return remaining credits for the account. | |
| **Get Historical Credit Usage** | `credit_usage_historical` | Return historical credit usage for the account's team. | |
| **Get Historical Token Usage** | `token_usage_historical` | Return historical token usage for the account's team. | |
| **Get Queue Status** | `queue_status` | Inspect the account's current job queue depth/status. | |
| **Get Token Usage** | `token_usage` | Return LLM token usage (for extract/agent operations). | |
| **List Team Activity** | `team_activity` | List recent API activity for the authenticated team. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------------- | ----------------------- | ---------------------------------------------- | ------- |
| **On Agent Event** | `on_agent_event` | Receive Firecrawl agent webhook events. | Yes |
| **On Any Firecrawl Event** | `receive_webhook` | Receive any published Firecrawl webhook event. | Yes |
| **On Batch Scrape Event** | `on_batch_scrape_event` | Receive Firecrawl batch scrape webhook events. | Yes |
| **On Crawl Event** | `on_crawl_event` | Receive Firecrawl crawl webhook events. | Yes |
| **On Monitor Event** | `on_monitor_event` | Receive Firecrawl monitor webhook events. | Yes |
# Firestore
Source: https://docs.noclick.com/integrations/firestore
Connect Firestore to your workflows: 56 operations across 12 categories.
The Firestore node adds Firestore operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Firestore also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Firestore.
You can wire the Firestore node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Firestore under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Firestore account when prompted; no keys to copy.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/datastore`
### Service account
Enter the values manually when creating the credential.
[Get your credentials here](https://console.cloud.google.com/iam-admin/serviceaccounts).
### Firebase id token
Enter the values manually when creating the credential.
[Get your credentials here](https://console.firebase.google.com/project/_/settings/general/).
## Operations
### Advanced
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------------------------ | ------- |
| **Custom API Call** | `custom_api_call` | Raw Firestore REST call escape hatch for newly added or niche endpoints. | |
| **Listen Stream** | `listen` | Open a Firestore listen stream request. | |
| **Write Stream** | `write` | Open a Firestore write stream request. | |
### Backups
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------- | ------- |
| **Create Backup Schedule** | `create_backup_schedule` | Create a backup schedule for a Firestore database. | |
| **Delete Backup** | `delete_backup` | Delete a Firestore backup. | |
| **Delete Backup Schedule** | `delete_backup_schedule` | Delete a backup schedule. | |
| **Get Backup** | `get_backup` | Get one Firestore backup. | |
| **Get Backup Schedule** | `get_backup_schedule` | Get one backup schedule. | |
| **List Backup Schedules** | `list_backup_schedules` | List backup schedules for a Firestore database. | |
| **List Backups** | `list_backups` | List Firestore backups in a location. | |
| **Update Backup Schedule** | `update_backup_schedule` | Update a backup schedule. | |
### Batch
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------------ | ------- |
| **Batch Get Documents** | `batch_get_documents` | Retrieve multiple documents by full name in a single call. | |
| **Batch Write** | `batch_write` | Apply a set of writes in one (non-atomic, best-effort) call. | |
### Databases
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ------------------------------------------------ | ------- |
| **Bulk Delete Documents** | `bulk_delete_documents` | Bulk delete collection groups in the background. | |
| **Clone Database** | `clone_database` | Clone an existing Firestore database from PITR. | |
| **Create Database** | `create_database` | Create a Firestore database. | |
| **Delete Database** | `delete_database` | Delete a Firestore database. | |
| **Export Documents** | `export_documents` | Export documents to Cloud Storage. | |
| **Get Database** | `get_database` | Get metadata/config for a database. | |
| **Import Documents** | `import_documents` | Import documents from Cloud Storage. | |
| **List Databases** | `list_databases` | List databases in the project. | |
| **Restore Database** | `restore_database` | Restore a Firestore database from a backup. | |
| **Update Database** | `update_database` | Patch database metadata/configuration. | |
### Documents
| Operation | ID | Description | Trigger |
| ---------------------------- | ----------------- | ---------------------------------------------------------- | ------- |
| **Create Document** | `create_document` | Create a new document in a collection. | |
| **Delete Document** | `delete_document` | Delete a document. | |
| **Get Document** | `get_document` | Fetch a single document by its collection and document id. | |
| **List Documents** | `list_documents` | List documents in a collection. | |
| **Update / Upsert Document** | `update_document` | Update (patch / upsert) fields on a document. | |
### Indexes
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ---------------------------------------------- | ------- |
| **Delete Index** | `delete_index` | Delete a composite index. | |
| **Get Field** | `get_field` | Get one field configuration. | |
| **Get Index** | `get_index` | Get a composite index definition. | |
| **List Fields** | `list_fields` | List field index / TTL configurations. | |
| **List Indexes** | `list_indexes` | List composite indexes for a collection group. | |
| **Update Field** | `update_field` | Patch a field configuration. | |
### Locations
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------- | ------- |
| **Get Location** | `get_location` | Get one Firestore-supported location. | |
| **List Locations** | `list_locations` | List Firestore-supported locations. | |
### Operations
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------------------------ | ------- |
| **Cancel Operation** | `cancel_operation` | Request cancellation for a long-running operation. | |
| **Delete Operation** | `delete_operation` | Delete interest in a long-running operation result. | |
| **Get Operation** | `get_operation` | Poll the status of a long-running operation (export/import/index build). | |
| **List Operations** | `list_operations` | List long-running operations. | |
### Queries
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------------------------------- | ------- |
| **Execute Pipeline** | `execute_pipeline` | Execute a Firestore pipeline query. | |
| **List Collection IDs** | `list_collection_ids` | List collection IDs under the database root or a document. | |
| **Partition Query** | `partition_query` | Partition a structured query for parallel execution. | |
| **Run Aggregation Query** | `run_aggregation_query` | Run a COUNT / SUM / AVG aggregation over a query. | |
| **Run Query** | `run_query` | Run a structured query over a collection. | |
### Transactions
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | -------------------------------------------------------------------- | ------- |
| **Begin Transaction** | `begin_transaction` | Start a read/write transaction; returns a transaction token. | |
| **Commit** | `commit` | Atomically commit a set of writes (optionally within a transaction). | |
| **Rollback** | `rollback` | Abort an in-progress transaction. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------------- | --------------------- | ------------------------------------------------------------------------------ | ------- |
| **On Document Created/Updated** | `on_document_changed` | Trigger: poll a collection for documents created/updated since the last check. | Yes |
### User creds
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | -------------------------------------------- | ------- |
| **Create User Creds** | `create_user_creds` | Create a database user creds resource. | |
| **Delete User Creds** | `delete_user_creds` | Delete a user creds resource. | |
| **Disable User Creds** | `disable_user_creds` | Disable a user creds resource. | |
| **Enable User Creds** | `enable_user_creds` | Enable a user creds resource. | |
| **Get User Creds** | `get_user_creds` | Get a database user creds resource. | |
| **List User Creds** | `list_user_creds` | List user creds for a database. | |
| **Reset User Creds Password** | `reset_user_creds_password` | Reset the password of a user creds resource. | |
# Freshsales
Source: https://docs.noclick.com/integrations/freshsales
Connect Freshsales to your workflows: 65 operations across 12 categories.
The Freshsales node adds Freshsales operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Freshsales also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Freshsales.
You can wire the Freshsales node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Freshsales under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://support.freshsales.io/support/solutions/articles/220099-how-to-find-my-api-key-).
## Operations
### Accounts
| Operation | ID | Description | Trigger |
| ------------------------- | -------------------- | -------------------------------------------------- | ------- |
| **Clone Account** | `clone_account` | Clone an existing sales account. | |
| **Create Account** | `create_account` | Create a sales account (company/organization). | |
| **Delete Account** | `delete_account` | Delete (move to recycle bin) a sales account. | |
| **Forget Account (GDPR)** | `forget_account` | Forget (GDPR hard-delete) a sales account. | |
| **Get Account** | `get_account` | Retrieve a single sales account by ID. | |
| **List Account Views** | `list_account_views` | List saved account views/filters. | |
| **List Accounts (View)** | `list_accounts` | List accounts belonging to a saved view. | |
| **Update Account** | `update_account` | Update fields on a sales account. | |
| **Upsert Account** | `upsert_account` | Create or update a sales account, matched on name. | |
### Activities
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------------------------- | ------- |
| **Create Note** | `create_note` | Attach a note to a contact, account, or deal. | |
| **Create Sales Activity** | `create_sales_activity` | Log a sales activity (call, email, custom activity type). | |
| **Delete Note** | `delete_note` | Delete a note. | |
| **Delete Sales Activity** | `delete_sales_activity` | Delete a sales activity. | |
| **Get Sales Activity** | `get_sales_activity` | Retrieve a single sales activity by ID. | |
| **List Sales Activities** | `list_sales_activities` | List sales activities (paginated). | |
| **Log Phone Call** | `log_phone_call` | Manually log a phone call against a record. | |
| **Update Note** | `update_note` | Update a note's content. | |
| **Update Sales Activity** | `update_sales_activity` | Update a sales activity. | |
### Appointments
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | --------------------------------------------- | ------- |
| **Create Appointment** | `create_appointment` | Create a calendar appointment with attendees. | |
| **Delete Appointment** | `delete_appointment` | Delete an appointment. | |
| **Get Appointment** | `get_appointment` | Retrieve a single appointment by ID. | |
| **List Appointments** | `list_appointments` | List appointments filtered by time. | |
| **Update Appointment** | `update_appointment` | Update an appointment. | |
### Contacts
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------------------------------------------------------------------- | ------- |
| **Clone Contact** | `clone_contact` | Clone an existing contact. | |
| **Create Contact** | `create_contact` | Create a new contact. | |
| **Delete Contact** | `delete_contact` | Delete (move to recycle bin) a contact. | |
| **Forget Contact (GDPR)** | `forget_contact` | Forget (GDPR hard-delete) a contact and its data. | |
| **Get Contact** | `get_contact` | Retrieve a single contact by ID. | |
| **Get Contact Activities** | `get_contact_activities` | List a contact's activity history. | |
| **List Contact Views** | `list_contact_views` | List saved contact views/filters (returns their IDs for List Contacts). | |
| **List Contacts (View)** | `list_contacts` | List contacts belonging to a saved view. | |
| **Update Contact** | `update_contact` | Update fields on an existing contact. | |
| **Upsert Contact** | `upsert_contact` | Create or update a contact, matched on a unique field (e.g. email). | |
### Custom modules
| Operation | ID | Description | Trigger |
| ------------------------------- | ------------------ | -------------------------------------- | ------- |
| **Create Custom Module Record** | `cm_create_record` | Create a record in a custom module. | |
| **Delete Custom Module Record** | `cm_delete_record` | Delete a custom-module record. | |
| **Get Custom Module Record** | `cm_get_record` | Retrieve a custom-module record by ID. | |
| **Update Custom Module Record** | `cm_update_record` | Update a custom-module record. | |
### Deals
| Operation | ID | Description | Trigger |
| ---------------------- | ----------------- | ------------------------------------------- | ------- |
| **Clone Deal** | `clone_deal` | Clone an existing deal. | |
| **Create Deal** | `create_deal` | Create a new deal (opportunity). | |
| **Delete Deal** | `delete_deal` | Delete (move to recycle bin) a deal. | |
| **Forget Deal (GDPR)** | `forget_deal` | Forget (GDPR hard-delete) a deal. | |
| **Get Deal** | `get_deal` | Retrieve a single deal by ID. | |
| **List Deal Views** | `list_deal_views` | List saved deal views/filters. | |
| **List Deals (View)** | `list_deals` | List deals belonging to a saved view. | |
| **Update Deal** | `update_deal` | Update a deal (stage, amount, owner, etc.). | |
### Documents
| Operation | ID | Description | Trigger |
| ------------------------- | ---------------------------- | ----------------------------------------------- | ------- |
| **Attach Link to Record** | `create_document_link` | Attach an external link (document) to a record. | |
| **List Record Documents** | `list_document_associations` | List files and links attached to a record. | |
### Lists
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------- | ------- |
| **Add Contacts to List** | `add_contacts_to_list` | Add contacts to a marketing list. | |
| **Get List Contacts** | `get_list_contacts` | Fetch all contacts belonging to a marketing list. | |
| **List Marketing Lists** | `list_marketing_lists` | Fetch all marketing / contact lists. | |
| **Remove Contacts from List** | `remove_contacts_from_list` | Remove contacts from a marketing list. | |
### Search
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------------------------ | ------- |
| **Filtered Search** | `filtered_search` | Query records of an entity by arbitrary field conditions (filter rules). | |
| **Lookup by Field** | `lookup` | Look up a record by a specific field (e.g. email). | |
| **Search** | `search` | Full-text search across entities. | |
### Selectors
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------------------------------- | ------- |
| **Get Contact Fields** | `get_contact_fields` | List contact field definitions for dynamic field mapping. | |
| **Get Module Fields** | `get_module_fields` | List field definitions for a module (contacts / accounts / deals / activities). | |
| **List Deal Stages** | `list_deal_stages` | List configured deal stages. | |
| **List Owners** | `list_owners` | List users / owners for assignment dropdowns. | |
| **List Selector** | `list_selector` | List values from any Freshsales selector (pipelines, types, currencies, etc.). | |
### Tasks
| Operation | ID | Description | Trigger |
| -------------------------- | ------------- | --------------------------------------------------- | ------- |
| **Create Task** | `create_task` | Create a task linked to a contact / account / deal. | |
| **Delete Task** | `delete_task` | Delete a task. | |
| **Get Task** | `get_task` | Retrieve a single task by ID. | |
| **List Tasks** | `list_tasks` | List tasks filtered by status. | |
| **Update / Complete Task** | `update_task` | Update a task or mark it complete. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------------- | ----------------- | --------------------------------------------------------------- | ------- |
| **Receive Webhook Events** | `receive_webhook` | Receive outbound webhook events fired by a Freshsales Workflow. | Yes |
# GitHub
Source: https://docs.noclick.com/integrations/github-rest
Connect GitHub to your workflows: 255 operations across 20 categories.
The GitHub node adds GitHub operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
GitHub also includes 49 trigger operations (marked in the tables below) that can start a workflow when something happens in GitHub.
You can wire the GitHub node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect GitHub under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your GitHub account when prompted; no keys to copy.
NoClick requests the following permissions:
* `gist`
* `read:org`
* `read:user`
* `repo`
* `user:email`
### Personal access token
Enter the values manually when creating the credential.
[Get your credentials here](https://github.com/settings/tokens).
## Operations
### Artifact
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------- | ------- |
| **Delete Artifact** | `delete_artifact` | Delete an artifact | |
| **Download Artifact** | `download_artifact` | Download an artifact | |
| **Get Artifact** | `get_artifact` | Get an artifact | |
| **List Repo Artifacts** | `list_repo_artifacts` | List repository artifacts | |
### Branch
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------- | ------- |
| **Create Branch** | `create_branch` | Create a new branch | |
| **Delete Branch** | `delete_branch` | Delete a branch | |
| **List Branches** | `list_branches` | List branches in a repository | |
| **List Branches by Head Commit** | `list_branches_by_head_commit` | List branches where commit is the HEAD | |
### Commit
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | -------------------------------------- | ------- |
| **Compare Commits** | `compare_commits` | Compare two commits | |
| **Create Commit Comment** | `create_commit_comment` | Create a comment on a commit | |
| **Create Commit Status** | `create_commit_status` | Create a commit status | |
| **Create Reaction on Commit Comment** | `create_reaction_on_commit_comment` | Create a reaction for a commit comment | |
| **Delete Commit Comment Reaction** | `delete_commit_comment_reaction` | Delete a commit comment reaction | |
| **Get Commit** | `get_commit` | Get a specific commit | |
| **List Commit Check Runs** | `list_commit_check_runs` | List check runs for a git reference | |
| **List Commit Comment Reactions** | `list_commit_comment_reactions` | List reactions for a commit comment | |
| **List Commit Comments** | `list_commit_comments` | List comments for a commit | |
| **List Commits** | `list_commits` | List commits in a repository | |
| **List Repo Contributors** | `list_repo_contributors` | List contributors to a repository | |
### Deployment
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | --------------------------------- | ------- |
| **Create Deployment** | `create_deployment` | Create a deployment | |
| **Create Deployment Status** | `create_deployment_status` | Create a deployment status | |
| **Delete Deployment** | `delete_deployment` | Delete a deployment | |
| **Get Deployment** | `get_deployment` | Get a deployment | |
| **Get Deployment Status** | `get_deployment_status` | Get a deployment status | |
| **List Deployment Statuses** | `list_deployment_statuses` | List deployment statuses | |
| **List Deployments** | `list_deployments` | List deployments for a repository | |
### File
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------------- | ------- |
| **Create or Update File** | `create_or_update_file` | Create or update a file in a repository | |
| **Delete File** | `delete_file` | Delete a file from a repository | |
| **Get File Contents** | `get_file_contents` | Get the contents of a file | |
| **List Repo Directory Contents** | `list_repo_directory_contents` | List contents of a directory in a repository | |
### Gist
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------- | ------- |
| **Check Gist Starred** | `check_gist_starred` | Check if a gist is starred | |
| **Create Gist** | `create_gist` | Create a new gist | |
| **Delete Gist** | `delete_gist` | Delete a gist | |
| **Fork Gist** | `fork_gist` | Fork a gist | |
| **Get Gist** | `get_gist` | Get a specific gist | |
| **Get Gist Revision** | `get_gist_revision` | Get a specific gist revision | |
| **List Authenticated User Gists** | `list_authenticated_user_gists` | List gists for the authenticated user | |
| **List Gist Commits** | `list_gist_commits` | List gist commits | |
| **List Gist Forks** | `list_gist_forks` | List gist forks | |
| **List Public Gists** | `list_public_gists` | List public gists | |
| **List Starred Gists** | `list_starred_gists` | List starred gists | |
| **List User Gists** | `list_user_gists` | List gists for a user | |
| **Star Gist** | `star_gist` | Star a gist | |
| **Unstar Gist** | `unstar_gist` | Unstar a gist | |
| **Update Gist** | `update_gist` | Update a gist | |
### Issue
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | -------------------------------------------- | ------- |
| **Add Labels to Issue** | `add_labels_to_issue` | Add labels to an issue | |
| **Create Issue** | `create_issue` | Create a new issue | |
| **Create Issue Comment** | `create_issue_comment` | Create a comment on an issue or pull request | |
| **Create Reaction on Issue** | `create_reaction_on_issue` | Add a reaction to an issue | |
| **Create Reaction on Issue Comment** | `create_reaction_on_issue_comment` | Create a reaction for an issue comment | |
| **Delete Issue Comment** | `delete_issue_comment` | Delete an issue comment | |
| **Delete Issue Comment Reaction** | `delete_issue_comment_reaction` | Delete an issue comment reaction | |
| **Delete Issue Reaction** | `delete_issue_reaction` | Delete an issue reaction | |
| **Get Issue** | `get_issue` | Get a specific issue | |
| **Get Issue Comment** | `get_issue_comment` | Get a specific issue comment | |
| **List Issue Assignees** | `list_issue_assignees` | List available assignees for a repository | |
| **List Issue Comment Reactions** | `list_issue_comment_reactions` | List reactions for an issue comment | |
| **List Issue Comments** | `list_issue_comments` | List comments on an issue | |
| **List Issue Reactions** | `list_issue_reactions` | List reactions for an issue | |
| **List Issues** | `list_issues` | List issues for a repository | |
| **Lock Issue** | `lock_issue` | Lock an issue conversation | |
| **Remove All Labels from Issue** | `remove_all_labels_from_issue` | Remove all labels from an issue | |
| **Remove Label from Issue** | `remove_label_from_issue` | Remove a label from an issue | |
| **Search Issues** | `search_issues` | Search issues and pull requests | |
| **Set Issue Labels** | `set_issue_labels` | Set labels for an issue (replaces all) | |
| **Unlock Issue** | `unlock_issue` | Unlock an issue conversation | |
| **Update Issue** | `update_issue` | Update an existing issue | |
| **Update Issue Comment** | `update_issue_comment` | Update an issue comment | |
### Label
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------- | ------- |
| **Create Label** | `create_label` | Create a label | |
| **Delete Label** | `delete_label` | Delete a label | |
| **Get Label** | `get_label` | Get a label | |
| **List Repo Labels** | `list_repo_labels` | List labels for a repository | |
| **Update Label** | `update_label` | Update a label | |
### Milestone
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | -------------------------------- | ------- |
| **Create Milestone** | `create_milestone` | Create a milestone | |
| **Delete Milestone** | `delete_milestone` | Delete a milestone | |
| **Get Milestone** | `get_milestone` | Get a milestone | |
| **List Milestones** | `list_milestones` | List milestones for a repository | |
| **Update Milestone** | `update_milestone` | Update a milestone | |
### Notification
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | --------------------------------------------- | ------- |
| **List Notifications** | `list_notifications` | List notifications for the authenticated user | |
| **Mark Notifications As Read** | `mark_notifications_as_read` | Mark notifications as read | |
### Organization
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | --------------------------------------------- | ------- |
| **Add or Update Org Membership** | `add_or_update_org_membership` | Add or update organization membership | |
| **Cancel Org Invitation** | `cancel_org_invitation` | Cancel an organization invitation | |
| **Check Org Membership** | `check_org_membership` | Check organization membership | |
| **Create Org Webhook** | `create_org_webhook` | Create an organization webhook | |
| **Get Org Membership** | `get_org_membership` | Get organization membership for a user | |
| **Get Organization** | `get_organization` | Get an organization | |
| **List Org Invitations** | `list_org_invitations` | List organization invitations | |
| **List Org Members** | `list_org_members` | List members of an organization | |
| **List Org Members Alias** | `list_org_members_alias` | List organization members (alias) | |
| **List Org Teams** | `list_org_teams` | List teams in an organization | |
| **List Org Webhooks** | `list_org_webhooks` | List organization webhooks | |
| **List Pending Org Invitations** | `list_pending_org_invitations` | List pending organization invitations (alias) | |
| **Remove Org Member** | `remove_org_member` | Remove an organization member | |
| **Remove Org Membership** | `remove_org_membership` | Remove organization membership | |
| **Update Organization** | `update_organization` | Update an organization | |
### Pull request
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | -------------------------------------------------- | ------- |
| **Check Pull Request Merged** | `check_pull_request_merged` | Check if a pull request has been merged | |
| **Create Pull Request** | `create_pull_request` | Create a new pull request | |
| **Create Pull Request Review** | `create_pull_request_review` | Create a review on a pull request | |
| **Create Pull Request Review Comment** | `create_pull_request_review_comment` | Create a review comment on a pull request | |
| **Create Reaction on Pr Review Comment** | `create_reaction_on_pr_review_comment` | Create a reaction for a PR review comment | |
| **Delete Pending Pull Request Review** | `delete_pending_pull_request_review` | Delete a pending review | |
| **Delete Pr Review Comment Reaction** | `delete_pr_review_comment_reaction` | Delete a PR review comment reaction | |
| **Delete Pull Request Review Comment** | `delete_pull_request_review_comment` | Delete a review comment | |
| **Dismiss Pull Request Review** | `dismiss_pull_request_review` | Dismiss a review | |
| **Get Pull Request** | `get_pull_request` | Get a specific pull request | |
| **Get Pull Request Review Comment** | `get_pull_request_review_comment` | Get a specific review comment | |
| **List Pr Review Comment Reactions** | `list_pr_review_comment_reactions` | List reactions for a PR review comment | |
| **List Pull Request Commits** | `list_pull_request_commits` | List commits on a pull request | |
| **List Pull Request Files** | `list_pull_request_files` | List files changed in a pull request | |
| **List Pull Request Review Comments** | `list_pull_request_review_comments` | List review comments on a pull request | |
| **List Pull Request Reviews** | `list_pull_request_reviews` | List reviews on a pull request | |
| **List Pull Requests** | `list_pull_requests` | List pull requests for a repository | |
| **List Pull Requests by Commit** | `list_pull_requests_by_commit` | List pull requests associated with a commit | |
| **List Review Comments for Review** | `list_review_comments_for_review` | Get comments for a specific review | |
| **Merge Pull Request** | `merge_pull_request` | Merge a pull request | |
| **Reply to Pull Request Review Comment** | `reply_to_pull_request_review_comment` | Reply to a review comment | |
| **Request Pull Request Reviewers** | `request_pull_request_reviewers` | Request reviewers for a pull request | |
| **Submit Pull Request Review** | `submit_pull_request_review` | Submit a pending review | |
| **Update Pull Request** | `update_pull_request` | Update an existing pull request | |
| **Update Pull Request Branch** | `update_pull_request_branch` | Update pull request branch with latest base branch | |
| **Update Pull Request Review** | `update_pull_request_review` | Update a pending review | |
| **Update Pull Request Review Comment** | `update_pull_request_review_comment` | Update a review comment | |
### Release
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------- | ------- |
| **Create Reaction on Release** | `create_reaction_on_release` | Create a reaction for a release | |
| **Create Release** | `create_release` | Create a new release | |
| **Delete Release** | `delete_release` | Delete a release | |
| **Delete Release Asset** | `delete_release_asset` | Delete a release asset | |
| **Delete Release Reaction** | `delete_release_reaction` | Delete a release reaction | |
| **Generate Release Notes** | `generate_release_notes` | Generate release notes | |
| **Get Latest Release** | `get_latest_release` | Get the latest release | |
| **Get Release** | `get_release` | Get a specific release | |
| **Get Release Asset** | `get_release_asset` | Get a release asset | |
| **Get Release by Tag** | `get_release_by_tag` | Get a release by tag name | |
| **List Release Assets** | `list_release_assets` | List release assets | |
| **List Release Reactions** | `list_release_reactions` | List reactions for a release | |
| **List Releases** | `list_releases` | List releases for a repository | |
| **Update Release** | `update_release` | Update a release | |
| **Update Release Asset** | `update_release_asset` | Update a release asset | |
### Repository
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ---------------------------------------------- | ------- |
| **Add Repo Collaborator** | `add_repo_collaborator` | Add a repository collaborator | |
| **Create Org Repository** | `create_org_repository` | Create an organization repository | |
| **Create Repo for Authenticated User** | `create_repo_for_authenticated_user` | Create a repository for the authenticated user | |
| **Create Repo from Template** | `create_repo_from_template` | Create a repository from a template | |
| **Create Repo Webhook** | `create_repo_webhook` | Create a webhook for a repository | |
| **Delete Repo Webhook** | `delete_repo_webhook` | Delete a repository webhook | |
| **Delete Repository** | `delete_repository` | Delete a repository | |
| **Fork Repository** | `fork_repository` | Fork a repository | |
| **Get Repo Languages** | `get_repo_languages` | Get languages used in a repository | |
| **Get Repo Topics** | `get_repo_topics` | Get topics for a repository | |
| **Get Repo Webhook** | `get_repo_webhook` | Get a repository webhook | |
| **Get Repository** | `get_repository` | Get information about a repository | |
| **Get User Repo Permissions** | `get_user_repo_permissions` | Get repository permissions for a user | |
| **List Authenticated User Repos** | `list_authenticated_user_repos` | List repositories for the authenticated user | |
| **List Org Repos** | `list_org_repos` | List repositories for an organization | |
| **List Org Repos Alias** | `list_org_repos_alias` | List organization repositories (alias) | |
| **List Repo Collaborators** | `list_repo_collaborators` | List collaborators for a repository | |
| **List Repo Forks** | `list_repo_forks` | List forks of a repository | |
| **List Repo Invitations** | `list_repo_invitations` | List repository invitations | |
| **List Repo Stargazers** | `list_repo_stargazers` | List stargazers for a repository | |
| **List Repo Tags** | `list_repo_tags` | List tags in a repository | |
| **Ping Repo Webhook** | `ping_repo_webhook` | Ping a repository webhook | |
| **Remove Repo Collaborator** | `remove_repo_collaborator` | Remove a repository collaborator | |
| **Set Repo Topics** | `set_repo_topics` | Set topics for a repository | |
| **Star Repository** | `star_repository` | Star a repository | |
| **Test Repo Webhook** | `test_repo_webhook` | Test a repository webhook | |
| **Transfer Repository** | `transfer_repository` | Transfer repository ownership | |
| **Unstar Repository** | `unstar_repository` | Unstar a repository | |
| **Update Repo Invitation** | `update_repo_invitation` | Update a repository invitation | |
| **Update Repo Webhook** | `update_repo_webhook` | Update a repository webhook | |
| **Update Repository** | `update_repository` | Update repository settings | |
### Search
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------- | ------- |
| **Search Code** | `search_code` | Search code across repositories | |
| **Search Repositories** | `search_repositories` | Search repositories | |
### Team
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ----------------------------------------- | ------- |
| **Add or Update Team Repo Permissions** | `add_or_update_team_repo_permissions` | Add or update team repository permissions | |
| **Check Team Repo Permissions** | `check_team_repo_permissions` | Check team permissions for a repository | |
| **Create Team** | `create_team` | Create a team | |
| **Delete Team** | `delete_team` | Delete a team | |
| **Get Team** | `get_team` | Get a team | |
| **Get Team Membership** | `get_team_membership` | Get team membership for a user | |
| **List Team Members** | `list_team_members` | List team members | |
| **List Team Repos** | `list_team_repos` | List team repositories | |
| **Remove Repo from Team** | `remove_repo_from_team` | Remove a repository from a team | |
| **Update Team** | `update_team` | Update a team | |
### User
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------- | ------- |
| **Check User Is Collaborator** | `check_user_is_collaborator` | Check if a user is a collaborator | |
| **Get Authenticated User** | `get_authenticated_user` | Get the authenticated user | |
| **Get User** | `get_user` | Get a specific user | |
| **List User Followers** | `list_user_followers` | List followers of a user | |
| **List User Following** | `list_user_following` | List users followed by a user | |
| **List User Repos** | `list_user_repos` | List repositories for a specific user | |
### Webhook
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------------------- | ------- |
| **Get Webhook Delivery** | `get_webhook_delivery` | Get a webhook delivery | |
| **List Webhook Deliveries** | `list_webhook_deliveries` | List webhook deliveries | |
| **Redeliver Webhook** | `redeliver_webhook` | Redeliver a webhook | |
### Workflow
| Operation | ID | Description | Trigger |
| ----------------------------------------- | --------------------------------------- | ------------------------------------------- | ------- |
| **Approve Workflow Run** | `approve_workflow_run` | Approve a workflow run | |
| **Cancel Workflow Run** | `cancel_workflow_run` | Cancel a workflow run | |
| **Delete Workflow Run** | `delete_workflow_run` | Delete a workflow run | |
| **Delete Workflow Run Logs** | `delete_workflow_run_logs` | Delete workflow run logs | |
| **Download Workflow Run Attempt Logs** | `download_workflow_run_attempt_logs` | Download logs for a workflow run attempt | |
| **Download Workflow Run Logs** | `download_workflow_run_logs` | Download workflow run logs | |
| **Get Workflow Run** | `get_workflow_run` | Get a specific workflow run | |
| **Get Workflow Run Attempt** | `get_workflow_run_attempt` | Get a workflow run attempt | |
| **Get Workflow Run Usage** | `get_workflow_run_usage` | Get workflow run usage | |
| **List Workflow Run Artifacts** | `list_workflow_run_artifacts` | List workflow run artifacts | |
| **List Workflow Run Attempt Jobs** | `list_workflow_run_attempt_jobs` | List jobs for a workflow run attempt | |
| **List Workflow Run Jobs** | `list_workflow_run_jobs` | List jobs for a workflow run | |
| **List Workflow Run Pending Deployments** | `list_workflow_run_pending_deployments` | List pending deployments for a workflow run | |
| **List Workflow Runs** | `list_workflow_runs` | List workflow runs for a repository | |
| **List Workflows** | `list_workflows` | List workflows in a repository | |
| **Rerun Workflow** | `rerun_workflow` | Re-run a workflow | |
| **Trigger Workflow Dispatch** | `trigger_workflow_dispatch` | Trigger a workflow dispatch event | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ---------------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **On Issue Assigned** | `on_issue_assigned` | Trigger: fires when a GitHub issue is assigned. | Yes |
| **On Issue Closed** | `on_issue_closed` | Trigger: fires when a GitHub issue is closed. | Yes |
| **On Issue Comment** | `on_issue_comment` | Trigger: fires when a comment is made on an issue or pull request. | Yes |
| **On Issue Deleted** | `on_issue_deleted` | Trigger: fires when a GitHub issue is deleted. | Yes |
| **On Issue Demilestoned** | `on_issue_demilestoned` | Trigger: fires when a milestone is removed from a GitHub issue. | Yes |
| **On Issue Edited** | `on_issue_edited` | Trigger: fires when a GitHub issue is edited. | Yes |
| **On Issue Labeled** | `on_issue_labeled` | Trigger: fires when a label is added to a GitHub issue. | Yes |
| **On Issue Locked** | `on_issue_locked` | Trigger: fires when a GitHub issue is locked. | Yes |
| **On Issue Milestoned** | `on_issue_milestoned` | Trigger: fires when a milestone is added to a GitHub issue. | Yes |
| **On Issue Opened** | `on_issue_opened` | Trigger: fires when a GitHub issue is opened. | Yes |
| **On Issue Pinned** | `on_issue_pinned` | Trigger: fires when a GitHub issue is pinned. | Yes |
| **On Issue Reopened** | `on_issue_reopened` | Trigger: fires when a GitHub issue is reopened. | Yes |
| **On Issue Transferred** | `on_issue_transferred` | Trigger: fires when a GitHub issue is transferred to another repository. | Yes |
| **On Issue Unassigned** | `on_issue_unassigned` | Trigger: fires when a GitHub issue is unassigned. | Yes |
| **On Issue Unlabeled** | `on_issue_unlabeled` | Trigger: fires when a label is removed from a GitHub issue. | Yes |
| **On Issue Unlocked** | `on_issue_unlocked` | Trigger: fires when a GitHub issue is unlocked. | Yes |
| **On Issue Unpinned** | `on_issue_unpinned` | Trigger: fires when a GitHub issue is unpinned. | Yes |
| **On Pull Request Assigned** | `on_pull_request_assigned` | Trigger: fires when a pull request is assigned. | Yes |
| **On Pull Request Auto Merge Disabled** | `on_pull_request_auto_merge_disabled` | Trigger: fires when auto-merge is disabled on a pull request. | Yes |
| **On Pull Request Auto Merge Enabled** | `on_pull_request_auto_merge_enabled` | Trigger: fires when auto-merge is enabled on a pull request. | Yes |
| **On Pull Request Closed** | `on_pull_request_closed` | Trigger: fires when a pull request is closed without being merged. | Yes |
| **On Pull Request Converted To Draft** | `on_pull_request_converted_to_draft` | Trigger: fires when a pull request is converted to draft. | Yes |
| **On Pull Request Demilestoned** | `on_pull_request_demilestoned` | Trigger: fires when a milestone is removed from a pull request. | Yes |
| **On Pull Request Dequeued** | `on_pull_request_dequeued` | Trigger: fires when a pull request is removed from the merge queue. | Yes |
| **On Pull Request Edited** | `on_pull_request_edited` | Trigger: fires when a pull request's title or body is edited. | Yes |
| **On Pull Request Enqueued** | `on_pull_request_enqueued` | Trigger: fires when a pull request is added to the merge queue. | Yes |
| **On Pull Request Labeled** | `on_pull_request_labeled` | Trigger: fires when a label is added to a pull request. | Yes |
| **On Pull Request Locked** | `on_pull_request_locked` | Trigger: fires when a pull request is locked. | Yes |
| **On Pull Request Merged** | `on_pull_request_merged` | Trigger: fires when a pull request is merged (action=closed with merged=true). | Yes |
| **On Pull Request Milestoned** | `on_pull_request_milestoned` | Trigger: fires when a milestone is added to a pull request. | Yes |
| **On Pull Request Opened** | `on_pull_request_opened` | Trigger: fires when a pull request is opened. | Yes |
| **On Pull Request Ready For Review** | `on_pull_request_ready_for_review` | Trigger: fires when a draft pull request is marked as ready for review. | Yes |
| **On Pull Request Reopened** | `on_pull_request_reopened` | Trigger: fires when a closed pull request is reopened. | Yes |
| **On Pull Request Review Request Removed** | `on_pull_request_review_request_removed` | Trigger: fires when a review request is removed from a pull request. | Yes |
| **On Pull Request Review Requested** | `on_pull_request_review_requested` | Trigger: fires when a review is requested on a pull request. | Yes |
| **On Pull Request Synchronize** | `on_pull_request_synchronize` | Trigger: fires when new commits are pushed to a pull request's branch. | Yes |
| **On Pull Request Unassigned** | `on_pull_request_unassigned` | Trigger: fires when a pull request is unassigned. | Yes |
| **On Pull Request Unlabeled** | `on_pull_request_unlabeled` | Trigger: fires when a label is removed from a pull request. | Yes |
| **On Pull Request Unlocked** | `on_pull_request_unlocked` | Trigger: fires when a pull request is unlocked. | Yes |
| **On Push** | `on_push` | Trigger: fires on a push to the repository. | Yes |
| **On Release Created** | `on_release_created` | Trigger: fires when a draft release is created. | Yes |
| **On Release Deleted** | `on_release_deleted` | Trigger: fires when a release is deleted. | Yes |
| **On Release Edited** | `on_release_edited` | Trigger: fires when a release is edited. | Yes |
| **On Release Prereleased** | `on_release_prereleased` | Trigger: fires when a release is marked as a pre-release. | Yes |
| **On Release Published** | `on_release_published` | Trigger: fires when a release is published. | Yes |
| **On Release Released** | `on_release_released` | Trigger: fires when a pre-release is promoted to a full release. | Yes |
| **On Release Unpublished** | `on_release_unpublished` | Trigger: fires when a release is unpublished. | Yes |
| **On Star Created** | `on_star_created` | Trigger: fires when someone stars the repository. | Yes |
| **On Star Deleted** | `on_star_deleted` | Trigger: fires when someone unstars the repository. | Yes |
# GitLab
Source: https://docs.noclick.com/integrations/gitlab
Connect GitLab to your workflows: 83 operations across 21 categories.
The GitLab node adds GitLab operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
GitLab also includes 2 trigger operations (marked in the tables below) that can start a workflow when something happens in GitLab.
You can wire the GitLab node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect GitLab under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your GitLab account when prompted; no keys to copy.
[Get your credentials here](https://gitlab.com/-/user_settings/applications).
NoClick requests the following permissions:
* `api`
* `read_user`
### Access token
Enter the values manually when creating the credential.
[Get your credentials here](https://gitlab.com/-/user_settings/personal_access_tokens).
## Operations
### CI/CD
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | --------------------------------------------- | ------- |
| **Cancel Job** | `cancel_job` | Cancel a single job. | |
| **Cancel Pipeline** | `cancel_pipeline` | Cancel a pipeline's running jobs. | |
| **Create Pipeline** | `create_pipeline` | Trigger a new pipeline on a ref. | |
| **Get Job** | `get_job` | Get a single job. | |
| **Get Job Log** | `get_job_log` | Get a job's log/trace (plain text). | |
| **Get Pipeline** | `get_pipeline` | Get a single pipeline. | |
| **List Pipeline Jobs** | `list_pipeline_jobs` | List jobs for a pipeline. | |
| **List Pipelines** | `list_pipelines` | List CI/CD pipelines. | |
| **Play Job** | `play_job` | Run a manual job. | |
| **Retry Job** | `retry_job` | Retry a single job. | |
| **Retry Pipeline** | `retry_pipeline` | Retry the failed/canceled jobs of a pipeline. | |
### CI/CD variables
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------- | ------- |
| **Create Variable** | `create_variable` | Create a project CI/CD variable. | |
| **Delete Variable** | `delete_variable` | Delete a project CI/CD variable. | |
| **List Variables** | `list_variables` | List a project's CI/CD variables. | |
| **Update Variable** | `update_variable` | Update a project CI/CD variable's value. | |
### Deployments
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------------------------- | ------- |
| **Create Deployment** | `create_deployment` | Create a deployment record. | |
| **Get Deployment** | `get_deployment` | Get a single deployment. | |
| **List Deployments** | `list_deployments` | List a project's deployments. | |
### Environments
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------ | ------- |
| **Create Environment** | `create_environment` | Create an environment. | |
| **Delete Environment** | `delete_environment` | Delete a stopped environment. | |
| **List Environments** | `list_environments` | List a project's environments. | |
| **Stop Environment** | `stop_environment` | Stop an environment. | |
### Epics
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ------------------------------------ | ------- |
| **Create Epic** | `create_epic` | Create an epic in a group (Premium). | |
| **List Epics** | `list_epics` | List a group's epics (Premium). | |
| **Update Epic** | `update_epic` | Update an epic (Premium). | |
### Groups
| Operation | ID | Description | Trigger |
| --------------- | ------------- | --------------------------------- | ------- |
| **List Groups** | `list_groups` | List groups visible to the token. | |
### Issues
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | --------------------------------------------------- | ------- |
| **Add Comment** | `create_note` | Add a comment (note) to an issue or merge request. | |
| **Create Issue** | `create_issue` | Create an issue in a project. | |
| **Delete Issue** | `delete_issue` | Delete an issue. | |
| **Get Issue** | `get_issue` | Get a single issue by its project-scoped IID. | |
| **List Issues** | `list_issues` | List issues in a project. | |
| **List Notes** | `list_notes` | List comments (notes) on an issue or merge request. | |
| **Update Issue** | `update_issue` | Edit issue fields or change its state. | |
### Labels
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ------------------------ | ------- |
| **Create Label** | `create_label` | Create a project label. | |
| **Delete Label** | `delete_label` | Delete a project label. | |
| **List Labels** | `list_labels` | List a project's labels. | |
### Members
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------------------- | ------- |
| **Add Member** | `add_member` | Add a user as a project member. | |
| **Remove Member** | `remove_member` | Remove a project member. | |
### Merge requests
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------ | ------- |
| **Approve Merge Request** | `approve_merge_request` | Approve a merge request. | |
| **Create Merge Request** | `create_merge_request` | Open a merge request. | |
| **Get Merge Request** | `get_merge_request` | Get a single merge request by IID. | |
| **List Merge Requests** | `list_merge_requests` | List merge requests in a project. | |
| **Merge Merge Request** | `merge_merge_request` | Accept/merge a merge request. | |
| **Unapprove Merge Request** | `unapprove_merge_request` | Remove your approval from a merge request. | |
| **Update Merge Request** | `update_merge_request` | Edit a merge request or change its state. | |
### Milestones
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------- | ------- |
| **Create Milestone** | `create_milestone` | Create a project milestone. | |
| **List Milestones** | `list_milestones` | List a project's milestones. | |
### Projects
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------- | -------------------------------------------------- | ------- |
| **Create Project** | `create_project` | Create a new project (repository). | |
| **Get Project** | `get_project` | Retrieve a single project by ID or namespace/path. | |
| **List Project Members** | `list_members` | List members of a project. | |
| **List Projects** | `list_projects` | List projects accessible to the token. | |
### Protected branches
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------- | ------- |
| **List Protected Branches** | `list_protected_branches` | List protected branches. | |
| **Protect Branch** | `protect_branch` | Protect a branch (or wildcard). | |
| **Unprotect Branch** | `unprotect_branch` | Unprotect a branch. | |
### Releases
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------- | ------- |
| **Create Release** | `create_release` | Create a release tied to a tag. | |
| **Delete Release** | `delete_release` | Delete a release (the tag is kept). | |
| **Get Release** | `get_release` | Get a release by tag name. | |
| **List Releases** | `list_releases` | List a project's releases. | |
| **Update Release** | `update_release` | Update a release's name/notes. | |
### Repository
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------- | ---------------------------------------------- | ------- |
| **Create Branch** | `create_branch` | Create a repository branch. | |
| **Create Commit** | `create_commit` | Create a commit with file actions in one call. | |
| **Create Tag** | `create_tag` | Create a git tag. | |
| **Create/Update File** | `upsert_file` | Create or update a single repository file. | |
| **Delete Branch** | `delete_branch` | Delete a repository branch. | |
| **Get File** | `get_file` | Get a repository file's content and metadata. | |
| **List Branches** | `list_branches` | List repository branches. | |
| **List Commits** | `list_commits` | List repository commits. | |
| **Set Commit Status** | `set_commit_status` | Post a build/commit status onto a commit SHA. | |
### Search
| Operation | ID | Description | Trigger |
| ----------------- | -------- | ---------------------------- | ------- |
| **Global Search** | `search` | Global search across GitLab. | |
### Todos
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------------------- | ------- |
| **List Todos** | `list_todos` | List the current user's todos. | |
| **Mark All Todos Done** | `mark_all_todos_done` | Mark all of the current user's todos as done. | |
| **Mark Todo Done** | `mark_todo_done` | Mark a single todo as done. | |
### User
| Operation | ID | Description | Trigger |
| -------------------- | ---------- | ----------------------------------------------------- | ------- |
| **Get Current User** | `get_user` | Return the authenticated user (token validity check). | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ------------- | -------------------------- | ------- |
| **Create Webhook** | `create_hook` | Create a project webhook. | |
| **Delete Webhook** | `delete_hook` | Delete a project webhook. | |
| **List Webhooks** | `list_hooks` | List a project's webhooks. | |
### Wikis
| Operation | ID | Description | Trigger |
| -------------------- | ------------- | ---------------------------- | ------- |
| **Create Wiki Page** | `create_wiki` | Create a wiki page. | |
| **Delete Wiki Page** | `delete_wiki` | Delete a wiki page. | |
| **Get Wiki Page** | `get_wiki` | Get a wiki page by slug. | |
| **List Wiki Pages** | `list_wikis` | List a project's wiki pages. | |
| **Update Wiki Page** | `update_wiki` | Update a wiki page. | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **On Group Event (Premium)** | `on_group_event` | Fire the workflow when a GROUP hook event arrives (across all the group's projects, plus group-level member/subgroup/project events). | Yes |
| **On Project Event** | `on_project_event` | Fire the workflow when a project hook event arrives. | Yes |
# Gmail
Source: https://docs.noclick.com/integrations/gmail
Connect Gmail to your workflows: 29 operations across 7 categories.
The Gmail node adds Gmail operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Gmail also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Gmail.
You can wire the Gmail node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Gmail under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Gmail account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/gmail.modify`
* `https://www.googleapis.com/auth/gmail.compose`
* `https://www.googleapis.com/auth/gmail.labels`
* `https://www.googleapis.com/auth/gmail.settings.basic`
## Operations
### Draft
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | -------------------------- | ------- |
| **Create Email Draft** | `create_email_draft` | Create a draft email | |
| **Delete Email Draft** | `delete_email_draft` | Delete a draft | |
| **Fetch Email Draft** | `fetch_email_draft` | Get a specific draft by ID | |
| **List Email Drafts** | `list_email_drafts` | List all draft emails | |
| **Send Email Draft** | `send_email_draft` | Send an existing draft | |
| **Update Email Draft** | `update_email_draft` | Update an existing draft | |
### Inbox
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ---------------------- | ------- |
| **Fetch Emails from Inbox** | `fetch_emails_from_inbox` | Read emails from inbox | |
### Label
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------- | ------- |
| **Create Email Label** | `create_email_label` | Create a new label | |
| **Delete Email Label** | `delete_email_label` | Delete a label | |
| **Fetch Email Label** | `fetch_email_label` | Get details of a specific label | |
| **List Email Labels** | `list_email_labels` | List all labels in the mailbox | |
| **Update Email Label** | `update_email_label` | Update an existing label | |
### Message
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------------------------------------------------- | ------- |
| **Fetch Email Attachment** | `fetch_email_attachment` | Download a message attachment and extract its content | |
| **Fetch Email Message** | `fetch_email_message` | Get a specific email by ID | |
| **Forward Email Message** | `forward_email_message` | Forward an email | |
| **Move Message to Trash** | `move_message_to_trash` | Move a message to trash | |
| **Permanently Delete Message** | `permanently_delete_message` | Permanently delete a message (cannot be undone) | |
| **Reply to Email Message** | `reply_to_email_message` | Reply to an email | |
| **Restore Message from Trash** | `restore_message_from_trash` | Remove a message from trash | |
| **Send Email Message** | `send_email_message` | Send an email | |
| **Update Message Labels** | `update_message_labels` | Add or remove labels from a message | |
### Profile
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------ | ------- |
| **Fetch User Profile** | `fetch_user_profile` | Get the current user's Gmail profile | |
### Thread
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------------------- | ------- |
| **Fetch Email Thread** | `fetch_email_thread` | Get a specific email thread | |
| **List Email Threads** | `list_email_threads` | List email threads | |
| **Move Thread to Trash** | `move_thread_to_trash` | Move an entire thread to trash | |
| **Permanently Delete Thread** | `permanently_delete_thread` | Permanently delete a thread (cannot be undone) | |
| **Restore Thread from Trash** | `restore_thread_from_trash` | Restore a thread from trash | |
| **Update Thread Labels** | `update_thread_labels` | Add or remove labels from a thread | |
### Other
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------ | ------- |
| **Poll for New Emails** | `poll_for_new_emails` | Trigger workflow on new emails | Yes |
# GoHighLevel
Source: https://docs.noclick.com/integrations/gohighlevel
Connect GoHighLevel to your workflows: 647 operations across 41 categories.
The GoHighLevel node adds GoHighLevel operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
GoHighLevel also includes 74 trigger operations (marked in the tables below) that can start a workflow when something happens in GoHighLevel.
You can wire the GoHighLevel node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect GoHighLevel under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
In GoHighLevel go to Settings → Private Integrations → Create new Integration, choose the scopes you need, and copy the token.
[Get your credentials here](https://help.leadconnectorhq.com/support/solutions/articles/155000002774-private-integrations-everything-you-need-to-know).
## Operations
### Ad manager
| Operation | ID | Description | Trigger |
| ------------------------------------- | ------------------------------------- | --------------------------------- | ------- |
| **Add custom audience member** | `fb_add_custom_audience_member` | Add custom audience member | |
| **Batch update audience members** | `fb_batch_update_audience_members` | Batch update audience members | |
| **Create conversation form** | `fb_create_conversation_form` | Create conversation form | |
| **Create Facebook integration** | `fb_create_integration` | Create Facebook integration | |
| **Create Google integration** | `google_create_integration` | Create Google integration | |
| **Create lead form** | `li_create_lead_form` | Create lead form | |
| **Create LinkedIn integration** | `li_create_integration` | Create LinkedIn integration | |
| **Create offline user list job** | `google_create_offline_user_list_job` | Create offline user list job | |
| **Create page lead form** | `fb_create_page_lead_form` | Create page lead form | |
| **Delete ad** | `fb_delete_ad` | Delete ad | |
| **Delete ad account** | `fb_delete_ad_account` | Delete ad account | |
| **Delete ad account** | `google_delete_ad_account` | Delete ad account | |
| **Delete ad account** | `li_delete_ad_account` | Delete ad account | |
| **Delete ad set** | `fb_delete_adset` | Delete ad set | |
| **Delete campaign** | `fb_delete_campaign` | Delete campaign | |
| **Delete conversion** | `google_delete_conversion` | Delete conversion | |
| **Delete custom audience** | `fb_delete_custom_audience` | Delete custom audience | |
| **Delete Facebook integration** | `fb_delete_integration` | Delete Facebook integration | |
| **Delete page connection** | `fb_delete_page` | Delete page connection | |
| **Delete segment** | `google_delete_segment` | Delete segment | |
| **Duplicate ad** | `fb_duplicate_ad` | Duplicate ad | |
| **Duplicate ad set** | `fb_duplicate_adset` | Duplicate ad set | |
| **Duplicate campaign** | `fb_duplicate_campaign` | Duplicate campaign | |
| **Get ad account details** | `fb_get_ad_account` | Get ad account details | |
| **Get ad account details** | `google_get_ad_account_details` | Get ad account details | |
| **Get ad account details** | `li_get_ad_account_details` | Get ad account details | |
| **Get ad accounts** | `fb_get_ad_accounts` | Get ad accounts | |
| **Get ad analytics** | `li_get_ad_analytics` | Get ad analytics | |
| **Get ad campaign group** | `li_get_campaign_group` | Get ad campaign group | |
| **Get assets** | `google_get_assets` | Get assets | |
| **Get audience by ID** | `google_get_audience_by_id` | Get audience by ID | |
| **Get audiences** | `google_get_audiences` | Get audiences | |
| **Get campaign group reporting** | `li_get_campaign_group_reporting` | Get campaign group reporting | |
| **Get campaign reporting** | `fb_get_campaign_reporting` | Get campaign reporting | |
| **Get campaign reporting** | `google_get_campaign_reporting` | Get campaign reporting | |
| **Get campaign with linked entities** | `fb_get_campaign` | Get campaign with linked entities | |
| **Get conversation forms** | `fb_get_conversation_forms` | Get conversation forms | |
| **Get conversion by ID** | `google_get_conversion_by_id` | Get conversion by ID | |
| **Get conversion goals** | `google_get_conversion_goals` | Get conversion goals | |
| **Get conversion pixels** | `fb_get_pixels` | Get conversion pixels | |
| **Get conversions** | `google_get_conversions` | Get conversions | |
| **Get current Facebook user** | `fb_get_current_user` | Get current Facebook user | |
| **Get current Google user** | `google_get_current_user` | Get current Google user | |
| **Get current LinkedIn user** | `li_get_current_user` | Get current LinkedIn user | |
| **Get custom audience by ID** | `fb_get_custom_audience_by_id` | Get custom audience by ID | |
| **Get custom audiences** | `fb_get_custom_audiences` | Get custom audiences | |
| **Get entities** | `fb_get_entity` | Get entities | |
| **Get entities** | `google_get_entity` | Get entities | |
| **Get Facebook integration** | `fb_get_integration` | Get Facebook integration | |
| **Get Facebook pages** | `fb_get_pages` | Get Facebook pages | |
| **Get Google ad accounts** | `google_get_ad_accounts` | Get Google ad accounts | |
| **Get Google campaign by ID** | `google_get_campaign_by_id` | Get Google campaign by ID | |
| **Get Google integration** | `google_get_integration` | Get Google integration | |
| **Get Instagram accounts for page** | `fb_get_instagram_accounts` | Get Instagram accounts for page | |
| **Get keyword ideas** | `google_get_keyword_ideas` | Get keyword ideas | |
| **Get lead form by ID** | `fb_get_lead_form` | Get lead form by ID | |
| **Get lead forms** | `li_get_lead_forms` | Get lead forms | |
| **Get LinkedIn ad accounts** | `li_get_ad_accounts` | Get LinkedIn ad accounts | |
| **Get LinkedIn integration** | `li_get_integration` | Get LinkedIn integration | |
| **Get page lead forms** | `fb_get_page_lead_forms` | Get page lead forms | |
| **Get reporting data** | `fb_get_reporting` | Get reporting data | |
| **Get reporting data** | `google_get_reporting` | Get reporting data | |
| **Get reporting list** | `fb_get_reporting_list` | Get reporting list | |
| **Get reporting list** | `google_get_reporting_list` | Get reporting list | |
| **Get reporting list** | `li_get_reporting_list` | Get reporting list | |
| **Get segment by ID** | `google_get_segment_by_id` | Get segment by ID | |
| **Get segments** | `google_get_segments` | Get segments | |
| **Get target interests** | `google_get_target_interests` | Get target interests | |
| **Pause ad** | `fb_pause_ad` | Pause ad | |
| **Pause ad set** | `fb_pause_adset` | Pause ad set | |
| **Pause campaign** | `fb_pause_campaign` | Pause campaign | |
| **Publish ad** | `google_publish_ad` | Publish ad | |
| **Publish ad campaign group** | `li_publish_campaign_group` | Publish ad campaign group | |
| **Publish campaign** | `fb_publish_campaign` | Publish campaign | |
| **Remove custom audience member** | `fb_remove_custom_audience_member` | Remove custom audience member | |
| **Resume ad** | `fb_resume_ad` | Resume ad | |
| **Resume ad set** | `fb_resume_adset` | Resume ad set | |
| **Resume campaign** | `fb_resume_campaign` | Resume campaign | |
| **Search targeting options** | `fb_search_targeting` | Search targeting options | |
| **Search targeting options** | `google_search_targeting` | Search targeting options | |
| **Search targeting options** | `li_search_targeting` | Search targeting options | |
| **Set default page** | `fb_set_default_page` | Set default page | |
| **Update ad status** | `li_update_ad_status` | Update ad status | |
| **Update custom audience** | `fb_update_custom_audience` | Update custom audience | |
| **Upsert ad** | `fb_upsert_ad` | Upsert ad | |
| **Upsert ad campaign group** | `li_upsert_campaign_group` | Upsert ad campaign group | |
| **Upsert adset** | `fb_upsert_adset` | Upsert adset | |
| **Upsert assets** | `google_upsert_assets` | Upsert assets | |
| **Upsert audience** | `google_upsert_audience` | Upsert audience | |
| **Upsert campaign** | `fb_upsert_campaign` | Upsert campaign | |
| **Upsert conversion** | `google_upsert_conversion` | Upsert conversion | |
| **Upsert conversion pixel** | `fb_upsert_pixel` | Upsert conversion pixel | |
| **Upsert Google campaign** | `google_upsert_campaign` | Upsert Google campaign | |
| **Upsert segment** | `google_upsert_segment` | Upsert segment | |
### Affiliate manager
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | -------------------------------------------------------- | ------- |
| **Get Affiliate** | `get_affiliate` | Get an affiliate by id. | |
| **List Affiliates** | `list_affiliates` | List affiliates for a location (sub-account). | |
| **List Commissions** | `list_commissions` | List affiliate commissions for a location (sub-account). | |
| **List Payouts** | `list_payouts` | List affiliate payouts for a location (sub-account). | |
### Agent studio
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------------- | ------- |
| **Create Agent** | `create_studio_agent` | Create an agent for a location. | |
| **Delete Agent** | `delete_studio_agent` | Delete an agent. | |
| **Execute Agent** | `execute_agent` | Execute an agent with a message. | |
| **Execute Agent (Deprecated)** | `execute_agent_deprecated` | Execute an agent (deprecated public-api endpoint). | |
| **Get Agent** | `get_agent_by_id` | Get an agent by id. | |
| **Get Agent (Deprecated)** | `get_agent_by_id_deprecated` | Get an agent by id (deprecated public-api endpoint). | |
| **List Agents** | `get_agents` | List agents for a location. | |
| **List Agents (Deprecated)** | `get_agents_deprecated` | List agents (deprecated public-api endpoint). | |
| **Promote to Production** | `promote_and_publish_agent` | Promote an agent version to production and publish. | |
| **Update Agent** | `update_agent_version` | Update an agent version. | |
| **Update Agent Metadata** | `update_agent_metadata` | Update an agent's metadata. | |
### Associations
| Operation | ID | Description | Trigger |
| ---------------------------------- | --------------------------------- | -------------------------------------------------- | ------- |
| **Create Association** | `create_association` | Create an association. | |
| **Create Relation** | `create_relation` | Create a relation between two associated records. | |
| **Delete Association** | `delete_association` | Delete an association. | |
| **Delete Relation** | `delete_relation` | Delete a relation. | |
| **Find Associations** | `find_associations` | Get all associations for a sub-account / location. | |
| **Get Association By ID** | `get_association_by_id` | Get an association by id. | |
| **Get Association By Key Name** | `get_association_key_by_key_name` | Get an association by its unique key name. | |
| **Get Association By Object Keys** | `get_association_by_object_keys` | Get an association by object keys. | |
| **Get Relations By Record** | `get_relations_by_record_id` | Get all relations by record id. | |
| **Update Association** | `update_association` | Update an association by id. | |
### Blogs
| Operation | ID | Description | Trigger |
| ------------------------ | ------------------------------------- | ----------------------------------------------------------------- | ------- |
| **Check Blog URL Slug** | `check_url_slug_exists` | Check whether a blog post url slug already exists for a location. | |
| **Create Blog Post** | `create_blog_post` | Create a blog post. | |
| **List Blog Authors** | `get_all_blog_authors_by_location` | List blog authors for a location. | |
| **List Blog Categories** | `get_all_blog_categories_by_location` | List blog categories for a location. | |
| **List Blog Posts** | `get_blog_posts_by_blog` | Get blog posts by blog id. | |
| **List Blogs** | `get_blogs_by_location` | List blogs (sites) for a location. | |
| **Update Blog Post** | `update_blog_post` | Update a blog post. | |
### Brand boards
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------------------ | ----------------------------------------------- | ------- |
| **Create Brand Board** | `create_brand_board` | Create a new brand board. | |
| **Delete Brand Board** | `delete_brand_board` | Delete a brand board. | |
| **Get Brand Board** | `get_brand_board_by_id` | Get a brand board by id. | |
| **List Brand Boards** | `get_brand_boards_by_location` | List brand boards for a location (sub-account). | |
| **Update Brand Board** | `update_brand_board` | Update a brand board. | |
### Businesses
| Operation | ID | Description | Trigger |
| ------------------- | ---------------------------- | --------------------------------------------- | ------- |
| **Create Business** | `create_business` | Create a business within a location. | |
| **Delete Business** | `delete_business` | Delete a business. | |
| **Get Business** | `get_business` | Get a business by id. | |
| **List Businesses** | `get_businesses_by_location` | List businesses for a location (sub-account). | |
| **Update Business** | `update_business` | Update a business. | |
### Calendars
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------- |
| **Add Calendar To Schedule** | `add_calendar_to_schedule` | Apply a user availability schedule to a calendar. | |
| **Create Appointment** | `create_appointment` | Create an appointment on a calendar. | |
| **Create Appointment Note** | `create_appointment_note` | Create a note on an appointment. | |
| **Create Availability Schedule** | `create_availability_schedule` | Create a user availability schedule. | |
| **Create Block Slot** | `create_block_slot` | Create a block slot. | |
| **Create Calendar** | `create_calendar` | Create a calendar. Complex nested fields (notifications, teamMembers, openHours, availabilities, locationConfigurations, recurring) accept raw JSON strings. | |
| **Create Calendar Group** | `create_calendar_group` | Create a calendar group. | |
| **Create Calendar Notification** | `create_calendar_notification` | Create calendar notifications. The API accepts a JSON array of notification objects. | |
| **Create Calendar Resource** | `create_calendar_resource` | Create a calendar resource. | |
| **Delete Appointment Note** | `delete_appointment_note` | Delete a note on an appointment. | |
| **Delete Availability Schedule** | `delete_availability_schedule` | Delete a user availability schedule. | |
| **Delete Calendar** | `delete_calendar` | Delete a calendar. | |
| **Delete Calendar Event** | `delete_calendar_event` | Delete a calendar event (appointment or block slot). | |
| **Delete Calendar Group** | `delete_calendar_group` | Delete a calendar group. | |
| **Delete Calendar Notification** | `delete_calendar_notification` | Delete a calendar notification. | |
| **Delete Calendar Resource** | `delete_calendar_resource` | Delete a calendar resource. | |
| **Disable/Enable Calendar Group** | `disable_calendar_group` | Enable or disable a calendar group. | |
| **Get Appointment** | `get_appointment` | Get an appointment by event id. | |
| **Get Availability Schedule** | `get_availability_schedule` | Get a user availability schedule by id. | |
| **Get Blocked Slots** | `get_blocked_slots` | Get blocked slots in a time range. | |
| **Get Calendar** | `get_calendar` | Get a calendar by id. | |
| **Get Calendar Events** | `get_calendar_events` | Get calendar events in a time range. | |
| **Get Calendar Notification** | `find_calendar_notification` | Get a single calendar notification. | |
| **Get Calendar Resource** | `get_calendar_resource` | Get a calendar resource by type and id. | |
| **Get Free Slots** | `get_free_slots` | Get free/available slots for a calendar. | |
| **List Appointment Notes** | `get_appointment_notes` | List notes on an appointment. | |
| **List Availability Schedules** | `get_availability_schedules` | List user availability schedules. | |
| **List Calendar Groups** | `get_calendar_groups` | List calendar groups for a location. | |
| **List Calendar Notifications** | `get_calendar_notifications` | List notifications configured on a calendar. | |
| **List Calendar Resources** | `list_calendar_resources` | List calendar resources of a type. | |
| **List Calendars** | `get_calendars` | List calendars for a location. | |
| **Remove Calendar From Schedule** | `remove_calendar_from_schedule` | Remove a user availability schedule from a calendar. | |
| **Update Appointment** | `edit_appointment` | Update an existing appointment. | |
| **Update Appointment Note** | `update_appointment_note` | Update a note on an appointment. | |
| **Update Availability Schedule** | `update_availability_schedule` | Update a user availability schedule. | |
| **Update Block Slot** | `edit_block_slot` | Update a block slot. | |
| **Update Calendar** | `update_calendar` | Update a calendar. Complex nested fields accept raw JSON strings. | |
| **Update Calendar Group** | `update_calendar_group` | Update a calendar group. | |
| **Update Calendar Notification** | `update_calendar_notification` | Update a calendar notification. | |
| **Update Calendar Resource** | `update_calendar_resource` | Update a calendar resource. | |
| **Validate Group Slug** | `validate_calendar_group_slug` | Validate a calendar group slug is available. | |
### Campaigns
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | -------------------------------------------- | ------- |
| **Get Campaigns** | `get_campaigns` | List campaigns for a location (sub-account). | |
### Companies
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ----------------------------- | ------- |
| **Get Company** | `get_company` | Get a company (agency) by id. | |
### Contacts
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ------------------------------------ | ----------------------------------------------------- | ------- |
| **Add Contact Followers** | `add_contact_followers` | Add followers to a contact. | |
| **Add Contact Tags** | `add_contact_tags` | Add tags to a contact. | |
| **Add Contact To Campaign** | `add_contact_to_campaign` | Add a contact to a campaign. | |
| **Add Contact To Workflow** | `add_contact_to_workflow` | Add a contact to a workflow. | |
| **Bulk Add/Remove Contacts From Business** | `bulk_update_contacts_business` | Add or remove multiple contacts from a business. | |
| **Bulk Update Contacts Tags** | `bulk_update_contacts_tags` | Bulk add or remove tags across many contacts. | |
| **Create Contact** | `create_contact` | Create a contact. | |
| **Create Contact Note** | `create_contact_note` | Create a note for a contact. | |
| **Create Contact Task** | `create_contact_task` | Create a task for a contact. | |
| **Delete Contact** | `delete_contact` | Delete a contact. | |
| **Delete Contact Note** | `delete_contact_note` | Delete a contact's note. | |
| **Delete Contact Task** | `delete_contact_task` | Delete a contact's task. | |
| **Get Appointments For Contact** | `get_appointments_for_contact` | Get appointments for a contact. | |
| **Get Contact** | `get_contact` | Get a contact by id. | |
| **Get Contact Note** | `get_contact_note` | Get a single note for a contact. | |
| **Get Contact Notes** | `get_contact_notes` | Get all notes for a contact. | |
| **Get Contact Task** | `get_contact_task` | Get a single task for a contact. | |
| **Get Contact Tasks** | `get_contact_tasks` | Get all tasks for a contact. | |
| **Get Contacts By Business** | `get_contacts_by_business_id` | Get contacts belonging to a business. | |
| **Get Duplicate Contact** | `get_duplicate_contact` | Find a duplicate contact by phone number or email. | |
| **List Contacts** | `get_contacts` | List contacts for a location. | |
| **Remove Contact Followers** | `remove_contact_followers` | Remove followers from a contact. | |
| **Remove Contact From Campaign** | `remove_contact_from_campaign` | Remove a contact from a campaign. | |
| **Remove Contact From Every Campaign** | `remove_contact_from_every_campaign` | Remove a contact from every campaign. | |
| **Remove Contact From Workflow** | `remove_contact_from_workflow` | Remove a contact from a workflow. | |
| **Remove Contact Tags** | `remove_contact_tags` | Remove tags from a contact. | |
| **Search Contacts (Advanced)** | `search_contacts_advanced` | Advanced search for contacts (POST /contacts/search). | |
| **Update Contact** | `update_contact` | Update a contact. | |
| **Update Contact Note** | `update_contact_note` | Update a contact's note. | |
| **Update Contact Task** | `update_contact_task` | Update a contact's task. | |
| **Update Contact Task Completed** | `update_contact_task_completed` | Set the completed flag on a contact's task. | |
| **Upsert Contact** | `upsert_contact` | Create or update a contact (upsert). | |
### Conversation AI
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ---------------------------------------------- | ------- |
| **Create Agent** | `create_conversation_ai_agent` | Create a Conversation AI agent (employee). | |
| **Create Agent Action** | `create_agent_action` | Attach an action to a Conversation AI agent. | |
| **Delete Agent** | `delete_conversation_ai_agent` | Delete a Conversation AI agent. | |
| **Delete Agent Action** | `delete_agent_action` | Remove an action from an agent. | |
| **Get Agent** | `get_conversation_ai_agent` | Get a Conversation AI agent by id. | |
| **Get Agent Action** | `get_agent_action_by_id` | Get a single agent action by id. | |
| **Get Generation Details** | `get_generation_details` | Get generation details for a message. | |
| **List Agent Actions** | `list_agent_actions` | List the actions attached to an agent. | |
| **Search Agents** | `search_conversation_ai_agents` | Search Conversation AI agents. | |
| **Update Agent** | `update_conversation_ai_agent` | Update a Conversation AI agent. | |
| **Update Agent Action** | `update_agent_action` | Update an agent action. | |
| **Update Agent Followup Settings** | `update_agent_followup_settings` | Update an agent's advanced follow-up settings. | |
### Conversations
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | ----------------------------------------------------------------- | ------- |
| **Add An Inbound Message** | `add_an_inbound_message` | Add an inbound message to a conversation. | |
| **Add An Outbound Message** | `add_an_outbound_message` | Add an external outbound call message. | |
| **Add Message Attachments** | `add_message_attachments` | Add attachments to an existing message. | |
| **Cancel Scheduled Email Message** | `cancel_scheduled_email_message` | Cancel a scheduled email message. | |
| **Cancel Scheduled Message** | `cancel_scheduled_message` | Cancel a scheduled message. | |
| **Complete File Upload** | `complete_file_upload` | Complete a file upload. | |
| **Create Conversation** | `create_conversation` | Create a conversation. | |
| **Create Custom Subtype** | `create_custom_subtype` | Create a custom message subtype. | |
| **Delete Conversation** | `delete_conversation` | Delete a conversation. | |
| **Download Message Transcription** | `download_message_transcription` | Download a call transcription by message id. | |
| **Export Messages By Location** | `export_messages_by_location` | Export messages for a location. | |
| **Get All Custom Subtypes** | `get_all_custom_subtypes` | List all custom message subtypes for a location. | |
| **Get Contact Unsubscription Status** | `get_contact_unsubscription_status` | Get a contact's unsubscription status. | |
| **Get Conversation** | `get_conversation` | Get a conversation by id. | |
| **Get Email By ID** | `get_email_by_id` | Get an email message by id. | |
| **Get Message** | `get_message` | Get a message by id. | |
| **Get Message Recording** | `get_message_recording` | Get a call recording by message id. | |
| **Get Message Transcription** | `get_message_transcription` | Get a call transcription by message id. | |
| **Get Messages** | `get_messages` | Get messages for a conversation. | |
| **Initiate File Upload** | `initiate_file_upload` | Initiate a file upload to GCS. | |
| **Live Chat Agent Typing** | `live_chat_agent_typing` | Send a live-chat agent typing indicator. | |
| **Search Conversations** | `search_conversation` | Search conversations within a location. | |
| **Send A New Message** | `send_a_new_message` | Send a new message. | |
| **Send Review Reply** | `send_review_reply` | Send a review reply to Google My Business. | |
| **Update Conversation** | `update_conversation` | Update a conversation. | |
| **Update Custom Subtype** | `update_custom_subtype` | Update a custom message subtype. | |
| **Update Message Status** | `update_message_status` | Update a message's delivery status. | |
| **Upload File Attachments** | `upload_file_attachments` | Upload file attachments (from attachment URLs) to a conversation. | |
| **User Subscription Change** | `user_subscription_change` | Change a user's subscription (subscribe/unsubscribe). | |
### Courses
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------------------------------- | ------- |
| **Import Courses** | `import_courses` | Import courses (products) into a location via the courses exporter. | |
### Custom fields
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ------------------------------------- | ------- |
| **Create Custom Field** | `create_custom_field_v2` | Create a custom field. | |
| **Create Custom Field Folder** | `create_custom_field_folder` | Create a custom field folder. | |
| **Delete Custom Field** | `delete_custom_field_v2` | Delete a custom field by id. | |
| **Delete Custom Field Folder** | `delete_custom_field_folder` | Delete a custom field folder. | |
| **Get Custom Field / Folder By ID** | `get_custom_field_by_id` | Get a custom field or folder by id. | |
| **Get Custom Fields By Object Key** | `get_custom_fields_by_object_key` | List custom fields for an object key. | |
| **Update Custom Field** | `update_custom_field_v2` | Update a custom field by id. | |
| **Update Custom Field Folder** | `update_custom_field_folder` | Update a custom field folder name. | |
### Custom menus
| Operation | ID | Description | Trigger |
| --------------------------- | ----------------------- | -------------------------------------- | ------- |
| **Create Custom Menu Link** | `create_custom_menu` | Create a new custom menu link. | |
| **Delete Custom Menu Link** | `delete_custom_menu` | Delete a custom menu link. | |
| **Get Custom Menu Link** | `get_custom_menu_by_id` | Fetch a single custom menu link by id. | |
| **List Custom Menu Links** | `get_custom_menus` | List custom menu links. | |
| **Update Custom Menu Link** | `update_custom_menu` | Update an existing custom menu link. | |
### Custom objects
| Operation | ID | Description | Trigger |
| ------------------------ | ----------------------------- | ------------------------------------ | ------- |
| **Create Custom Object** | `create_custom_object_schema` | Create a custom object schema. | |
| **Create Record** | `create_object_record` | Create an object record. | |
| **Delete Record** | `delete_object_record` | Delete an object record. | |
| **Get Object Schema** | `get_object_schema_by_key` | Get an object schema by key / id. | |
| **Get Record** | `get_object_record_by_id` | Get an object record by id. | |
| **List Objects** | `get_object_by_location_id` | Get all objects for a location. | |
| **Search Records** | `search_object_records` | Search object records. | |
| **Update Object Schema** | `update_custom_object` | Update an object schema by key / id. | |
| **Update Record** | `update_object_record` | Update an object record. | |
### Email builder
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------------- | ------- |
| **Create Email Template** | `create_email_template` | Create a new email template. | |
| **Delete Email Template** | `delete_email_template` | Delete an email template. | |
| **Fetch Email Templates** | `fetch_email_templates` | Fetch email templates for a location. | |
| **Get Email Campaigns** | `fetch_email_campaigns` | Get email campaigns/schedules for a location. | |
| **Update Email Template** | `update_email_template` | Update an email template (save builder data). | |
### Email verification
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ------------------------------------------------------------ | ------- |
| **Verify Email** | `verify_email` | Verify an email address or a contact's email deliverability. | |
### Forms
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------- | ------------------------------------------- | ------- |
| **Get Form Submissions** | `get_forms_submissions` | Get form submissions for a location. | |
| **Get Forms** | `get_forms` | Get forms for a location. | |
| **Upload Files to Custom Fields** | `upload_to_custom_fields` | Upload files to custom fields on a contact. | |
### Funnels
| Operation | ID | Description | Trigger |
| ---------------------- | ----------------------------- | --------------------------------------------- | ------- |
| **Count Funnel Pages** | `get_funnel_pages_count` | Fetch the count of funnel pages for a funnel. | |
| **Create Redirect** | `create_funnel_redirect` | Create a funnel redirect. | |
| **Delete Redirect** | `delete_funnel_redirect` | Delete a funnel redirect by id. | |
| **List Funnel Pages** | `get_funnel_pages` | Fetch the list of funnel pages for a funnel. | |
| **List Funnels** | `get_funnels` | Fetch the list of funnels. | |
| **List Redirects** | `fetch_funnel_redirects_list` | Fetch the list of funnel redirects. | |
| **Update Redirect** | `update_funnel_redirect` | Update a funnel redirect by id. | |
### Invoices
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ------------------------------------------------- | ------------------------------------------------------------- | ------- |
| **Auto Payment Invoice Schedule** | `auto_payment_invoice_schedule` | Manage auto-payment for an invoice schedule. | |
| **Cancel Invoice Schedule** | `cancel_invoice_schedule` | Cancel an invoice schedule. | |
| **Create Estimate** | `create_new_estimate` | Create a new estimate. | |
| **Create Estimate Template** | `create_estimate_template` | Create an estimate template. | |
| **Create Invoice** | `create_invoice` | Create an invoice. | |
| **Create Invoice From Estimate** | `create_invoice_from_estimate` | Create an invoice from an estimate. | |
| **Create Invoice Schedule** | `create_invoice_schedule` | Create an invoice schedule (recurring invoice). | |
| **Create Invoice Template** | `create_invoice_template` | Create an invoice template. | |
| **Delete Estimate** | `delete_estimate` | Delete an estimate. | |
| **Delete Estimate Template** | `delete_estimate_template` | Delete an estimate template. | |
| **Delete Invoice** | `delete_invoice` | Delete an invoice. | |
| **Delete Invoice Schedule** | `delete_invoice_schedule` | Delete an invoice schedule. | |
| **Delete Invoice Template** | `delete_invoice_template` | Delete an invoice template. | |
| **Generate Estimate Number** | `generate_estimate_number` | Generate the next estimate number. | |
| **Generate Invoice Number** | `generate_invoice_number` | Generate the next invoice number. | |
| **Get Invoice** | `get_invoice` | Get an invoice by id. | |
| **Get Invoice Schedule** | `get_invoice_schedule` | Get an invoice schedule by id. | |
| **Get Invoice Settings** | `get_invoice_settings` | Get invoice settings for a location. | |
| **Get Invoice Template** | `get_invoice_template` | Get an invoice template by id. | |
| **List Estimate Templates** | `list_estimate_templates` | List estimate templates. | |
| **List Estimates** | `list_estimates` | List estimates. | |
| **List Invoice Schedules** | `list_invoice_schedules` | List invoice schedules. | |
| **List Invoice Templates** | `list_invoice_templates` | List invoice templates. | |
| **List Invoices** | `list_invoices` | List invoices. | |
| **Preview Estimate Template** | `preview_estimate_template` | Preview an estimate template. | |
| **Record Invoice Payment** | `record_invoice` | Record a manual payment against an invoice. | |
| **Schedule Invoice Schedule** | `schedule_invoice_schedule` | Schedule an invoice schedule. | |
| **Send Estimate** | `send_estimate` | Send an estimate. | |
| **Send Invoice** | `send_invoice` | Send an invoice. | |
| **Text2Pay Invoice** | `text2pay_invoice` | Create & send a text2pay invoice. | |
| **Update And Schedule Invoice Schedule** | `update_and_schedule_invoice_schedule` | Update and schedule an invoice schedule. | |
| **Update Estimate** | `update_estimate` | Update an estimate. | |
| **Update Estimate Last Visited At** | `update_estimate_last_visited_at` | Update the last-visited-at stat for an estimate. | |
| **Update Estimate Template** | `update_estimate_template` | Update an estimate template. | |
| **Update Invoice** | `update_invoice` | Update an invoice. | |
| **Update Invoice Last Visited At** | `update_invoice_last_visited_at` | Update the last-visited-at stat for an invoice. | |
| **Update Invoice Late Fees Config** | `update_invoice_late_fees_configuration` | Update late-fees configuration for an invoice. | |
| **Update Invoice Schedule** | `update_invoice_schedule` | Update an invoice schedule. | |
| **Update Invoice Template** | `update_invoice_template` | Update an invoice template. | |
| **Update Template Late Fees Config** | `update_invoice_template_late_fees_configuration` | Update late-fees configuration for an invoice template. | |
| **Update Template Payment Methods Config** | `update_invoice_payment_methods_configuration` | Update payment-methods configuration for an invoice template. | |
| **Void Invoice** | `void_invoice` | Void an invoice. | |
### Knowledge base
| Operation | ID | Description | Trigger |
| ------------------------------- | --------------------------------------------- | ------------------------------------------------------------------ | ------- |
| **Create Knowledge Base** | `create_knowledge_base` | Create a new knowledge base (max 15 knowledge bases per location). | |
| **Create Knowledge Base FAQ** | `create_knowledge_base_faq` | Create a new FAQ inside knowledge base. | |
| **Delete Knowledge Base** | `delete_knowledge_base` | Delete a knowledge base. | |
| **Delete Knowledge Base FAQ** | `delete_knowledge_base_faq` | Delete an existing knowledge base FAQ. | |
| **Delete Trained Website URLs** | `delete_trained_urls_for_knowledge_base` | Delete trained pages. | |
| **Discover Website Pages** | `discover_website` | Start crawling and discover pages for training. | |
| **Get Crawling Status** | `get_crawling_status_for_latest_operation` | Get crawling status for the latest operation. | |
| **Get Knowledge Base** | `get_knowledge_base_by_id` | Get knowledge base by ID. | |
| **List Knowledge Base FAQs** | `list_knowledge_base_faqs` | Get all FAQs by knowledge base with pagination support. | |
| **List Knowledge Bases** | `list_all_knowledge_bases_paginated` | Get all knowledge bases for a location by location Id (paginated). | |
| **List Trained Website URLs** | `get_all_website_urls_data_by_knowledge_base` | Get all trained page links by knowledge base. | |
| **Train Discovered URLs** | `train_discovered_urls` | Train discovered website pages and ingest into the knowledge base. | |
| **Update Knowledge Base** | `update_knowledge_base` | Update a knowledge base. | |
| **Update Knowledge Base FAQ** | `update_knowledge_base_faq` | Update an existing knowledge base FAQ. | |
### Locations
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------------------ | ------- |
| **Create Custom Field** | `create_custom_field` | Create a custom field in a sub-account (location). | |
| **Create Custom Value** | `create_custom_value` | Create a custom value in a sub-account (location). | |
| **Create Location Tag** | `create_location_tag` | Create a tag in a sub-account (location). | |
| **Create Recurring Task** | `create_recurring_task` | Create a recurring task within a sub-account (location). | |
| **Create Sub-Account** | `create_location` | Create a sub-account (location). | |
| **Delete Custom Field** | `delete_custom_field` | Delete a custom field. | |
| **Delete Custom Value** | `delete_custom_value` | Delete a custom value. | |
| **Delete Location Tag** | `delete_location_tag` | Delete a location tag. | |
| **Delete Recurring Task** | `delete_recurring_task` | Delete a recurring task. | |
| **Delete Sub-Account** | `delete_location` | Delete a sub-account (location). | |
| **Delete Template** | `delete_location_template` | Delete an email/SMS template. | |
| **Get Custom Field** | `get_custom_field` | Get a custom field by id. | |
| **Get Custom Fields** | `get_custom_fields` | Get custom fields for a sub-account (location). | |
| **Get Custom Value** | `get_custom_value` | Get a custom value by id. | |
| **Get Custom Values** | `get_custom_values` | Get custom values for a sub-account (location). | |
| **Get Location Tag By ID** | `get_location_tag_by_id` | Get a location tag by id. | |
| **Get Location Tags** | `get_location_tags` | Get tags for a sub-account (location). | |
| **Get Recurring Task By ID** | `get_recurring_task_by_id` | Get a recurring task by id. | |
| **Get Sub-Account** | `get_location` | Get a sub-account (location) by id. | |
| **Get Templates** | `get_location_templates` | Get all or email/SMS templates for a sub-account (location). | |
| **Get Timezones** | `get_location_timezones` | Fetch available timezones for a sub-account (location). | |
| **Search Location Tasks** | `location_task_search` | Search tasks within a sub-account (location). | |
| **Search Sub-Accounts** | `search_locations` | Search sub-accounts (locations). | |
| **Update Custom Field** | `update_custom_field` | Update a custom field. | |
| **Update Custom Value** | `update_custom_value` | Update a custom value. | |
| **Update Location Tag** | `update_location_tag` | Update a location tag. | |
| **Update Recurring Task** | `update_recurring_task` | Update a recurring task. | |
| **Update Sub-Account** | `put_location` | Update a sub-account (location). | |
| **Upload Custom Fields File** | `upload_custom_fields_file` | Upload a file to custom fields (multipart/form-data). | |
### Marketplace
| Operation | ID | Description | Trigger |
| -------------------------------- | --------------------------------- | ------------------------------------------------------------------------ | ------- |
| **Delete Charge** | `delete_marketplace_charge` | Delete a previously raised charge by id. | |
| **Get Charge** | `get_specific_marketplace_charge` | Get a single charge by id. | |
| **Get Installer Details** | `get_installer_details` | Get installation/installer details for a marketplace app. | |
| **Get Rebilling Config For App** | `get_rebilling_config_for_app` | Get the rebilling configuration for an app in a location. | |
| **Has Funds** | `marketplace_has_funds` | Check whether the installation has funds available for charging. | |
| **List Charges** | `get_marketplace_charges` | List raised charges, optionally filtered by meter/event/user/date. | |
| **Migrate Connection** | `migrate_connection` | Migrate an external auth connection into a marketplace app installation. | |
| **Raise Charge** | `create_marketplace_charge` | Raise a usage-based (metered) charge for an app installation. | |
| **Uninstall Application** | `uninstall_application` | Uninstall a marketplace app from a company or location. | |
### Media library
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------- | ------------------------------------------------------------------------------------------------------------ | ------- |
| **Bulk Delete/Trash Files/Folders** | `bulk_delete_media_objects` | Bulk soft-delete or trash multiple files and folders. | |
| **Bulk Update Files/Folders** | `bulk_update_media_objects` | Bulk update metadata or status of multiple files and folders. | |
| **Create Folder** | `create_media_folder` | Create a new folder in the media storage. | |
| **Delete File/Folder** | `delete_media_content` | Delete a specific file or folder from media storage. | |
| **List Files/Folders** | `fetch_media_content` | Get list of files and folders from the media storage. | |
| **Update File/Folder** | `update_media_object` | Update a single file or folder by id. | |
| **Upload File** | `upload_media_content` | Upload a file into media storage. If hosted is true, fileUrl is required; else file is required (max 25 MB). | |
### Opportunities
| Operation | ID | Description | Trigger |
| ----------------------------------- | ------------------------------- | ------------------------------------------------- | ------- |
| **Add Followers** | `add_followers_opportunity` | Add followers to an opportunity. | |
| **Create Opportunity** | `create_opportunity` | Create an opportunity. | |
| **Delete Opportunity** | `delete_opportunity` | Delete an opportunity. | |
| **Get Lost Reasons** | `get_opportunity_lost_reason` | Get lost reasons for a location. | |
| **Get Opportunity** | `get_opportunity` | Get an opportunity by id. | |
| **Get Pipelines** | `get_opportunity_pipelines` | Get pipelines for a location. | |
| **Remove Followers** | `remove_followers_opportunity` | Remove followers from an opportunity. | |
| **Search Opportunities** | `search_opportunity` | Search opportunities (GET query-param based). | |
| **Search Opportunities (Advanced)** | `search_opportunities_advanced` | Search opportunities (POST body based, advanced). | |
| **Update Opportunity** | `update_opportunity` | Update an opportunity. | |
| **Update Opportunity Status** | `update_opportunity_status` | Update an opportunity's status. | |
| **Upsert Opportunity** | `upsert_opportunity` | Upsert (create or update) an opportunity. | |
### Payments
| Operation | ID | Description | Trigger |
| ------------------------------------------- | ---------------------------------------- | ------------------------------------------------------------------- | ------- |
| **Create Coupon** | `create_coupon` | Create a coupon. | |
| **Create Custom Provider Config** | `create_custom_provider_config` | Create a custom payment provider's connect config (live/test keys). | |
| **Create Custom Provider Integration** | `create_custom_provider_integration` | Create a custom payment provider integration. | |
| **Create Order Fulfillment** | `create_order_fulfillment` | Create a fulfillment for an order. | |
| **Create White-label Integration Provider** | `create_whitelabel_integration_provider` | Create a white-label payment integration provider. | |
| **Delete Coupon** | `delete_coupon` | Delete a coupon. | |
| **Delete Custom Provider Integration** | `delete_custom_provider_integration` | Delete a custom payment provider integration. | |
| **Disconnect Custom Provider Config** | `disconnect_custom_provider_config` | Disconnect a custom payment provider's connect config. | |
| **Fetch Custom Provider Config** | `fetch_custom_provider_config` | Fetch a custom payment provider's connect config. | |
| **Get Coupon** | `get_coupon` | Get a coupon by id or code. | |
| **Get Order** | `get_order_by_id` | Get an order by id. | |
| **Get Subscription** | `get_subscription_by_id` | Get a subscription by id. | |
| **Get Transaction** | `get_transaction_by_id` | Get a transaction by id. | |
| **List Coupons** | `list_coupons` | List coupons. | |
| **List Order Fulfillments** | `list_order_fulfillment` | List fulfillments for an order. | |
| **List Order Notes** | `list_order_notes` | List notes for an order. | |
| **List Orders** | `list_orders` | List orders. | |
| **List Subscriptions** | `list_subscriptions` | List subscriptions. | |
| **List Transactions** | `list_transactions` | List transactions. | |
| **List White-label Integration Providers** | `list_whitelabel_integration_providers` | List white-label payment integration providers. | |
| **Record Order Payment** | `record_order_payment` | Record a manual payment against an order. | |
| **Update Coupon** | `update_coupon` | Update a coupon. | |
| **Update Custom Provider Capabilities** | `update_custom_provider_capabilities` | Update a custom payment provider marketplace app's capabilities. | |
### Phone system
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------------- | ------- |
| **List Active Numbers** | `list_active_numbers` | List active phone numbers for a location. | |
| **List Available Numbers** | `list_available_numbers` | List available phone numbers to purchase for a location. | |
| **List Number Pools** | `get_number_pool_list` | List phone number pools for a location. | |
| **Purchase Phone Number** | `purchase_phone_number` | Purchase a phone number for a location. | |
### Products
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | --------------------------------------------------------------------- | ------- |
| **Bulk Edit Products** | `bulk_edit_products` | Bulk edit products (upsert list of product objects). | |
| **Bulk Update Product Reviews** | `bulk_update_product_reviews` | Bulk update product reviews. | |
| **Bulk Update Products** | `bulk_update_products` | Bulk update products (price/availability/collection/currency/delete). | |
| **Create Price For Product** | `create_price_for_product` | Create a price for a product. | |
| **Create Product** | `create_product` | Create a product. | |
| **Create Product Collection** | `create_product_collection` | Create a product collection. | |
| **Delete Price For Product** | `delete_price_for_product` | Delete a price by id for a product. | |
| **Delete Product** | `delete_product` | Delete a product by id. | |
| **Delete Product Collection** | `delete_product_collection` | Delete a product collection. | |
| **Delete Product Review** | `delete_product_review` | Delete a product review. | |
| **Get Price For Product** | `get_price_for_product` | Get a price by id for a product. | |
| **Get Product** | `get_product` | Get a product by id. | |
| **Get Product Collection** | `get_product_collection` | Get a product collection by id. | |
| **Get Product Inventory** | `get_product_inventory` | List product inventory. | |
| **Get Product Reviews Count** | `get_product_reviews_count` | Get product reviews count. | |
| **Get Product Store Stats** | `get_product_store_stats` | Get product store stats. | |
| **List Prices For Product** | `list_prices_for_product` | List prices for a product. | |
| **List Product Collections** | `list_product_collections` | List product collections. | |
| **List Product Reviews** | `list_product_reviews` | List product reviews. | |
| **List Products** | `list_products` | List products for a location (sub-account). | |
| **Update Price For Product** | `update_price_for_product` | Update a price by id for a product. | |
| **Update Product** | `update_product` | Update a product by id. | |
| **Update Product Collection** | `update_product_collection` | Update a product collection. | |
| **Update Product Display Priority** | `update_product_display_priority` | Update product display priority within a store. | |
| **Update Product Inventory** | `update_product_inventory` | Update product inventory (list of items). | |
| **Update Product Review** | `update_product_review` | Update a product review. | |
| **Update Product Store Status** | `update_product_store_status` | Update store status for products (include/exclude). | |
### Proposals
| Operation | ID | Description | Trigger |
| ------------------ | ------------------------- | ------------------------------------------------------------- | ------- |
| **List Documents** | `list_proposal_documents` | List proposal/estimate documents & contracts for a location. | |
| **List Templates** | `list_proposal_templates` | List proposal/estimate templates for a location. | |
| **Send Document** | `send_proposal_document` | Send an existing proposal/contract document. | |
| **Send Template** | `send_proposal_template` | Create & optionally send a document from a proposal template. | |
### SaaS
| Operation | ID | Description | Trigger |
| -------------------------------------------------- | -------------------------------------- | ------------------------------------------------------------------ | ------- |
| **Bulk Enable SaaS** | `bulk_enable_saas` | Bulk enable SaaS for a list of locations. | |
| **Bulk Enable SaaS (Deprecated)** | `bulk_enable_saas_deprecated` | \[Deprecated] Bulk enable SaaS for a list of locations. | |
| **Disable SaaS For Locations** | `bulk_disable_saas` | Disable SaaS for a list of locations. | |
| **Disable SaaS For Locations (Deprecated)** | `bulk_disable_saas_deprecated` | \[Deprecated] Disable SaaS for a list of locations. | |
| **Enable SaaS For Sub-Account** | `enable_saas_location` | Enable SaaS for a sub-account (location). | |
| **Enable SaaS For Sub-Account (Deprecated)** | `enable_saas_location_deprecated` | \[Deprecated] Enable SaaS for a sub-account (location). | |
| **Get Agency Plans** | `get_agency_plans` | Get agency (SaaS) plans for a company. | |
| **Get Agency Plans (Deprecated)** | `get_agency_plans_deprecated` | \[Deprecated] Get agency (SaaS) plans for a company. | |
| **Get Location Subscription Details** | `get_location_subscription` | Get SaaS subscription details for a location. | |
| **Get Location Subscription Details (Deprecated)** | `get_location_subscription_deprecated` | \[Deprecated] Get SaaS subscription details for a location. | |
| **Get Locations By Stripe ID** | `locations` | Get locations by stripe id with company id. | |
| **Get Locations By Stripe ID (Deprecated)** | `locations_deprecated` | \[Deprecated] Get locations by stripe id with company id. | |
| **Get SaaS Locations** | `get_saas_locations` | Get SaaS locations for a company. | |
| **Get SaaS Locations (Deprecated)** | `get_saas_locations_deprecated` | \[Deprecated] Get SaaS locations for a company. | |
| **Get SaaS Plan** | `get_saas_plan` | Get a SaaS plan by id. | |
| **Get SaaS Plan (Deprecated)** | `get_saas_plan_deprecated` | \[Deprecated] Get a SaaS plan by id. | |
| **Pause Location** | `pause_location` | Pause or unpause a location. | |
| **Pause Location (Deprecated)** | `pause_location_deprecated` | \[Deprecated] Pause or unpause a location. | |
| **Update Rebilling** | `update_rebilling` | Update rebilling settings for a company's locations. | |
| **Update Rebilling (Deprecated)** | `update_rebilling_deprecated` | \[Deprecated] Update rebilling settings for a company's locations. | |
| **Update SaaS Subscription** | `generate_payment_link` | Update SaaS subscription (generate payment link). | |
| **Update SaaS Subscription (Deprecated)** | `update_saas_subscription_deprecated` | \[Deprecated] Update SaaS subscription. | |
### Snapshots
| Operation | ID | Description | Trigger |
| ----------------------------------- | ---------------------------- | ------------------------------------------- | ------- |
| **Create Snapshot Share Link** | `create_snapshot_share_link` | Create a share link for a snapshot. | |
| **Get Last Snapshot Push** | `get_latest_snapshot_push` | Get the last snapshot push for a location. | |
| **Get Snapshot Push Between Dates** | `get_snapshot_push` | Get snapshot push status between two dates. | |
| **List Snapshots** | `get_snapshots` | List snapshots for an agency (company). | |
### Social posting
| Operation | ID | Description | Trigger |
| -------------------------------- | ---------------------------------- | ------------------------------------------------------------------- | ------- |
| **Attach Facebook Page** | `attach_facebook_page_group` | Attach a Facebook page/group to the social planner account. | |
| **Attach Instagram Account** | `attach_instagram_page_group` | Attach an Instagram account to the social planner account. | |
| **Attach LinkedIn Page** | `attach_linkedin_page_profile` | Attach a LinkedIn page/profile to the social planner account. | |
| **Attach TikTok Profile** | `attach_tiktok_profile` | Attach a TikTok profile to the social planner account. | |
| **Attach Twitter Profile** | `attach_twitter_profile` | Attach a Twitter/X profile to the social planner account. | |
| **Bulk Delete Social Posts** | `bulk_delete_social_planner_posts` | Bulk delete social planner posts by ids. | |
| **Create Social Post** | `create_social_post` | Create a social planner post. | |
| **Delete CSV Post** | `delete_social_csv_post` | Delete a single post from a CSV upload. | |
| **Delete CSV Upload** | `delete_social_csv` | Delete a CSV upload and all its posts. | |
| **Delete Social Account** | `delete_social_account` | Delete a connected social planner account. | |
| **Delete Social Post** | `delete_social_post` | Delete a social planner post by id. | |
| **Edit Social Post** | `edit_social_post` | Edit an existing social planner post. | |
| **Finalize CSV Upload** | `start_social_csv_finalize` | Start finalizing (scheduling) a CSV upload's posts. | |
| **Get CSV Posts** | `get_social_csv_post` | Get the posts contained in a CSV upload. | |
| **Get Facebook Pages** | `get_facebook_page_group` | Get Facebook pages/groups for an OAuth account. | |
| **Get Google Locations** | `get_google_locations` | Get Google (GMB) locations for an OAuth account. | |
| **Get Instagram Accounts** | `get_instagram_page_group` | Get Instagram accounts for an OAuth account. | |
| **Get LinkedIn Pages** | `get_linkedin_page_profile` | Get LinkedIn pages/profiles for an OAuth account. | |
| **Get Social Category** | `get_social_category` | Get a social planner category by id. | |
| **Get Social Media Statistics** | `get_social_media_statistics` | Get social media posting statistics for the given profiles. | |
| **Get Social Post** | `get_social_post` | Get a social planner post by id. | |
| **Get Social Tags By IDs** | `get_social_tags_by_ids` | Get social planner tags by their ids. | |
| **Get TikTok Business Profiles** | `get_tiktok_business_profile` | Get TikTok Business profiles for an OAuth account. | |
| **Get TikTok Profiles** | `get_tiktok_profile` | Get TikTok profiles for an OAuth account. | |
| **Get Twitter Profiles** | `get_twitter_profile` | Get Twitter/X profiles for an OAuth account. | |
| **List CSV Upload Status** | `get_social_csv_upload_status` | List CSV upload statuses for a location. | |
| **List Social Accounts** | `get_social_account` | List connected social planner accounts and groups for a location. | |
| **List Social Categories** | `get_social_categories` | List social planner categories for a location. | |
| **List Social Posts** | `get_social_posts` | Search/list social planner posts. | |
| **List Social Tags** | `get_social_tags` | List social planner tags for a location. | |
| **Set Google Location** | `set_google_locations` | Attach a Google (GMB) location to the social planner account. | |
| **Set Social Accounts** | `set_social_accounts` | Set accounts for a bulk CSV import. | |
| **Start Facebook OAuth** | `start_facebook_oauth` | Start the Facebook OAuth connection flow for social planner. | |
| **Start Google OAuth** | `start_google_oauth` | Start the Google (GMB) OAuth connection flow for social planner. | |
| **Start Instagram OAuth** | `start_instagram_oauth` | Start the Instagram OAuth connection flow for social planner. | |
| **Start LinkedIn OAuth** | `start_linkedin_oauth` | Start the LinkedIn OAuth connection flow for social planner. | |
| **Start TikTok Business OAuth** | `start_tiktok_business_oauth` | Start the TikTok Business OAuth connection flow for social planner. | |
| **Start TikTok OAuth** | `start_tiktok_oauth` | Start the TikTok OAuth connection flow for social planner. | |
| **Start Twitter OAuth** | `start_twitter_oauth` | Start the Twitter/X OAuth connection flow for social planner. | |
| **Upload Social CSV** | `upload_social_csv` | Upload a CSV of posts for bulk scheduling (multipart file upload). | |
### Store
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------ | ------- |
| **Create Shipping Carrier** | `create_shipping_carrier` | Create a shipping carrier for a location. | |
| **Create Shipping Rate** | `create_shipping_rate` | Create a shipping rate within a shipping zone. | |
| **Create Shipping Zone** | `create_shipping_zone` | Create a shipping zone for a location. | |
| **Create/Update Store Settings** | `create_store_setting` | Create or update store settings for a location. | |
| **Delete Shipping Carrier** | `delete_shipping_carrier` | Delete a shipping carrier. | |
| **Delete Shipping Rate** | `delete_shipping_rate` | Delete a shipping rate. | |
| **Delete Shipping Zone** | `delete_shipping_zone` | Delete a shipping zone. | |
| **Get Available Shipping Rates** | `get_available_shipping_rates` | Get available shipping rates for a cart / order. | |
| **Get Shipping Carrier** | `get_shipping_carrier` | Get a shipping carrier by id. | |
| **Get Shipping Rate** | `get_shipping_rate` | Get a shipping rate by id. | |
| **Get Shipping Zone** | `get_shipping_zone` | Get a shipping zone by id. | |
| **Get Store Settings** | `get_store_settings` | Get store settings for a location. | |
| **List Shipping Carriers** | `list_shipping_carriers` | List shipping carriers for a location. | |
| **List Shipping Rates** | `list_shipping_rates` | List shipping rates within a shipping zone. | |
| **List Shipping Zones** | `list_shipping_zones` | List shipping zones for a location. | |
| **Update Shipping Carrier** | `update_shipping_carrier` | Update a shipping carrier. | |
| **Update Shipping Rate** | `update_shipping_rate` | Update a shipping rate. | |
| **Update Shipping Zone** | `update_shipping_zone` | Update a shipping zone. | |
### Surveys
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------- | -------------------------------------- | ------- |
| **Get Survey Submissions** | `get_surveys_submissions` | Get survey submissions for a location. | |
| **Get Surveys** | `get_surveys` | List surveys for a location. | |
### Trigger links
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------------------------- | ------- |
| **Create Link** | `create_link` | Create a trigger link within a location. | |
| **Delete Link** | `delete_link` | Delete a trigger link. | |
| **Get Link by ID** | `get_link_by_id` | Get a trigger link by id. | |
| **List Links** | `get_links` | List trigger links for a location. | |
| **Search Trigger Links** | `search_trigger_links` | Search trigger links for a location. | |
| **Update Link** | `update_link` | Update a trigger link. | |
### Users
| Operation | ID | Description | Trigger |
| -------------------------- | ----------------------- | ---------------------------------------- | ------- |
| **Create User** | `create_user` | Create a user. | |
| **Delete User** | `delete_user` | Delete a user. | |
| **Filter Users by Email** | `filter_users_by_email` | Filter users by a list of emails. | |
| **Get User** | `get_user` | Get a user by id. | |
| **List Users by Location** | `get_user_by_location` | List users for a location (sub-account). | |
| **Search Users** | `search_users` | Search users within a company. | |
| **Update User** | `update_user` | Update a user. | |
### Voice AI
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------ | ------------------------------------ | ------- |
| **Create Voice AI Action** | `create_voice_ai_action` | Create a Voice AI agent action. | |
| **Create Voice AI Agent** | `create_voice_ai_agent` | Create a Voice AI agent. | |
| **Delete Voice AI Action** | `delete_voice_ai_action` | Delete a Voice AI agent action. | |
| **Delete Voice AI Agent** | `delete_voice_ai_agent` | Delete a Voice AI agent. | |
| **Get Voice AI Action** | `get_voice_ai_action` | Get a Voice AI agent action by id. | |
| **Get Voice AI Agent** | `get_voice_ai_agent` | Get a Voice AI agent by id. | |
| **Get Voice AI Call Log** | `get_voice_ai_call_log` | Get a Voice AI call log by id. | |
| **List Voice AI Agents** | `get_voice_ai_agents` | List Voice AI agents for a location. | |
| **List Voice AI Call Logs** | `get_voice_ai_call_logs` | List Voice AI call logs. | |
| **Patch Voice AI Agent** | `patch_voice_ai_agent` | Patch (update) a Voice AI agent. | |
| **Update Voice AI Action** | `update_voice_ai_action` | Update a Voice AI agent action. | |
### Workflows
| Operation | ID | Description | Trigger |
| ------------------ | -------------- | -------------------------------------------- | ------- |
| **List Workflows** | `get_workflow` | List workflows for a location (sub-account). | |
### Other
| Operation | ID | Description | Trigger |
| --------------------------------------------- | -------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **On Any Webhook Event** | `on_webhook` | Catch-all: fire on ANY HighLevel webhook POSTed to this URL (no event filter). Useful with a marketplace-app single-URL subscription or when you want one endpoint for all of a workflow's events. | Yes |
| **On App Installed** | `on_app_install` | | Yes |
| **On App Uninstalled** | `on_app_uninstall` | | Yes |
| **On App Updated** | `on_app_update` | | Yes |
| **On Appointment Created** | `on_appointment_create` | | Yes |
| **On Appointment Deleted** | `on_appointment_delete` | | Yes |
| **On Appointment Updated** | `on_appointment_update` | | Yes |
| **On Association Created** | `on_association_create` | | Yes |
| **On Association Deleted** | `on_association_delete` | | Yes |
| **On Association Updated** | `on_association_update` | | Yes |
| **On Campaign Status Changed** | `on_campaign_status_update` | | Yes |
| **On Contact Created** | `on_contact_create` | | Yes |
| **On Contact Deleted** | `on_contact_delete` | | Yes |
| **On Contact DND Updated** | `on_contact_dnd_update` | | Yes |
| **On Contact Tags Updated** | `on_contact_tag_update` | | Yes |
| **On Contact Updated** | `on_contact_update` | | Yes |
| **On Conversation Unread Change** | `on_conversation_unread` | | Yes |
| **On Conversation Updated** | `on_conversation_update` | | Yes |
| **On Email Stats (delivered/opened/clicked)** | `on_email_stats` | | Yes |
| **On External Auth Connected** | `on_external_auth_connected` | | Yes |
| **On Inbound Message** | `on_inbound_message` | | Yes |
| **On Invoice Created** | `on_invoice_create` | | Yes |
| **On Invoice Deleted** | `on_invoice_delete` | | Yes |
| **On Invoice Paid** | `on_invoice_paid` | | Yes |
| **On Invoice Partially Paid** | `on_invoice_partially_paid` | | Yes |
| **On Invoice Sent** | `on_invoice_sent` | | Yes |
| **On Invoice Updated** | `on_invoice_update` | | Yes |
| **On Invoice Voided** | `on_invoice_void` | | Yes |
| **On Knowledge Base Created** | `on_knowledge_base_create` | | Yes |
| **On Knowledge Base Deleted** | `on_knowledge_base_delete` | | Yes |
| **On Knowledge Base FAQ Changed** | `on_knowledge_base_faq_change` | | Yes |
| **On Knowledge Base File Changed** | `on_knowledge_base_file_change` | | Yes |
| **On Knowledge Base Table Changed** | `on_knowledge_base_table_file_change` | | Yes |
| **On Knowledge Base Text Changed** | `on_knowledge_base_rich_text_change` | | Yes |
| **On Knowledge Base Updated** | `on_knowledge_base_update` | | Yes |
| **On Knowledge Base URL Trained** | `on_knowledge_base_trained_url_change` | | Yes |
| **On Note Created** | `on_note_create` | | Yes |
| **On Note Deleted** | `on_note_delete` | | Yes |
| **On Note Updated** | `on_note_update` | | Yes |
| **On Object Schema Created** | `on_object_schema_create` | | Yes |
| **On Object Schema Updated** | `on_object_schema_update` | | Yes |
| **On Opportunity Assignee Changed** | `on_opportunity_assigned_to_update` | | Yes |
| **On Opportunity Created** | `on_opportunity_create` | | Yes |
| **On Opportunity Deleted** | `on_opportunity_delete` | | Yes |
| **On Opportunity Stage Changed** | `on_opportunity_stage_update` | | Yes |
| **On Opportunity Status Changed** | `on_opportunity_status_update` | | Yes |
| **On Opportunity Updated** | `on_opportunity_update` | | Yes |
| **On Opportunity Value Changed** | `on_opportunity_monetary_value_update` | | Yes |
| **On Order Created** | `on_order_create` | | Yes |
| **On Order Status Changed** | `on_order_status_update` | | Yes |
| **On Outbound Message** | `on_outbound_message` | | Yes |
| **On Price Created** | `on_price_create` | | Yes |
| **On Price Deleted** | `on_price_delete` | | Yes |
| **On Price Updated** | `on_price_update` | | Yes |
| **On Product Created** | `on_product_create` | | Yes |
| **On Product Deleted** | `on_product_delete` | | Yes |
| **On Product Updated** | `on_product_update` | | Yes |
| **On Provider Outbound Message** | `on_provider_outbound_message` | | Yes |
| **On Record Created** | `on_record_create` | | Yes |
| **On Record Deleted** | `on_record_delete` | | Yes |
| **On Record Updated** | `on_record_update` | | Yes |
| **On Relation Created** | `on_relation_create` | | Yes |
| **On Relation Deleted** | `on_relation_delete` | | Yes |
| **On SaaS Plan Changed** | `on_plan_change` | | Yes |
| **On SaaS Plan Created** | `on_saas_plan_create` | | Yes |
| **On Sub-Account Created** | `on_location_create` | | Yes |
| **On Sub-Account Updated** | `on_location_update` | | Yes |
| **On Task Completed** | `on_task_complete` | | Yes |
| **On Task Created** | `on_task_create` | | Yes |
| **On Task Deleted** | `on_task_delete` | | Yes |
| **On User Created** | `on_user_create` | | Yes |
| **On User Deleted** | `on_user_delete` | | Yes |
| **On User Updated** | `on_user_update` | | Yes |
| **On Voice AI Call Ended** | `on_voice_ai_call_end` | | Yes |
# Google Ads
Source: https://docs.noclick.com/integrations/google-ads
Connect Google Ads to your workflows: 5 operations.
The Google Ads node adds Google Ads operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Ads node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Ads under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Ads account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/adwords`
## Operations
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ------------------------ |
| **Get Ad Group Performance Metrics** | `get_ad_group_performance_metrics` | Get ad group performance |
| **Get Campaign Performance Metrics** | `get_campaign_performance_metrics` | Get campaign performance |
| **Get Keyword Performance Metrics** | `get_keyword_performance_metrics` | Get keyword performance |
| **Get Search Terms Triggering Ads** | `get_search_terms_triggering_ads` | Get search terms report |
| **Run Gaql Query** | `run_gaql_query` | Run a custom GAQL query |
# Google Analytics
Source: https://docs.noclick.com/integrations/google-analytics
Connect Google Analytics to your workflows: 3 operations across 2 categories.
The Google Analytics node adds Google Analytics operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Analytics node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Analytics under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Analytics account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/analytics.readonly`
## Operations
### Metadata
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ------------------------------------- |
| **Fetch Ga4 Dimensions and Metrics** | `fetch_ga4_dimensions_and_metrics` | List available dimensions and metrics |
### Report
| Operation | ID | Description |
| --------------------------- | ------------------------- | ------------------------- |
| **Run Ga4 Realtime Report** | `run_ga4_realtime_report` | Run a GA4 realtime report |
| **Run Ga4 Standard Report** | `run_ga4_standard_report` | Run a GA4 report |
# Google Business Profile
Source: https://docs.noclick.com/integrations/google-business-profile
Connect Google Business Profile to your workflows: 26 operations across 6 categories.
The Google Business Profile node adds Google Business Profile operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Business Profile node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Business Profile under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Business Profile account when prompted; no keys to copy.
Google Business Profile API requires your own Google Cloud project. Create an OAuth 2.0 Web Application client at console.cloud.google.com → APIs & Services → Credentials, enable the My Business Account Management API and My Business Business Information API, then add this app's callback URL as an Authorised Redirect URI.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/business.manage`
## Operations
### Analytics
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------ |
| **Fetch Location Performance Metrics** | `fetch_location_performance_metrics` | Get daily performance metrics for a location over a date range. |
| **Fetch Location Search Keywords** | `fetch_location_search_keywords` | Get search keywords that led customers to discover the business profile. |
### Local posts
| Operation | ID | Description |
| --------------------------- | ------------------------- | ----------------------------------------------------------- |
| **Create Local Post** | `create_local_post` | Create a new local post (Standard, Event, Offer, or Alert). |
| **Delete Local Post** | `delete_local_post` | Delete a local post. |
| **Get Local Post** | `get_local_post` | Get a single local post. |
| **Get Local Post Insights** | `get_local_post_insights` | Get view and click insights for one or more local posts. |
| **List Local Posts** | `list_local_posts` | List local posts for a location. |
| **Update Local Post** | `update_local_post` | Update an existing local post. |
### Location
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ----------------------------------------------------------------------------- |
| **Get Location** | `get_location` | Get full details for a single location. |
| **Get Location Attributes** | `get_location_attributes` | Get all attributes (amenities, accessibility, payments, etc.) for a location. |
| **List Business Profile Locations** | `list_business_profile_locations` | List all locations/businesses for a Google Business Profile account. |
| **Update Location** | `update_location` | Update a location's core fields (name, phone, website, description). |
| **Update Location Attributes** | `update_location_attributes` | Update location attributes (e.g. wheelchair access, Wi-Fi, payment methods). |
### Media
| Operation | ID | Description |
| ----------------------- | --------------------- | ----------------------------------------------------- |
| **Delete Media Item** | `delete_media` | Delete a media item from a location. |
| **Get Media Item** | `get_media` | Get a single media item. |
| **List Customer Media** | `list_customer_media` | List customer-contributed photos for a location. |
| **List Media** | `list_media` | List media items (photos/videos) for a location. |
| **Upload Media** | `create_media` | Upload a photo or video to a location via public URL. |
### Place actions
| Operation | ID | Description |
| ---------------------------- | -------------------------- | -------------------------------------------------------------- |
| **Create Place Action Link** | `create_place_action_link` | Create a new booking/reservation/ordering link for a location. |
| **Delete Place Action Link** | `delete_place_action_link` | Delete a place action link. |
| **List Place Action Links** | `list_place_action_links` | List booking/reservation/ordering links for a location. |
| **Update Place Action Link** | `update_place_action_link` | Update an existing place action link. |
### Reviews
| Operation | ID | Description |
| ------------------------- | ----------------------- | --------------------------------------------- |
| **Delete Review Reply** | `delete_review_reply` | Delete the owner reply from a review. |
| **Get Review** | `get_review` | Get a single review by its resource name. |
| **List Location Reviews** | `list_location_reviews` | List reviews for a specific location. |
| **Reply to Review** | `reply_to_review` | Create or update the owner reply to a review. |
# Google Calendar
Source: https://docs.noclick.com/integrations/google-calendar
Connect Google Calendar to your workflows: 18 operations across 4 categories.
The Google Calendar node adds Google Calendar operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google Calendar also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Google Calendar.
You can wire the Google Calendar node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Calendar under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Calendar account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/calendar`
## Operations
### Availability
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------ | ------- |
| **Query Calendar Availability** | `query_calendar_availability` | Check availability | |
### Calendar
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------- | ------- |
| **Clear Calendar Events** | `clear_calendar_events` | Clear all events | |
| **Create New Calendar** | `create_new_calendar` | Create a new calendar | |
| **Fetch Calendar Metadata** | `fetch_calendar_metadata` | Get calendar details | |
| **List User Calendars** | `list_user_calendars` | List all calendars | |
### Event
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ------------------------------ | ------- |
| **Create Calendar Event** | `create_calendar_event` | Create a new event | |
| **Create Event from Text** | `create_event_from_text` | Create event from text | |
| **Delete Calendar Event** | `delete_calendar_event` | Delete an event | |
| **Fetch Calendar Event** | `fetch_calendar_event` | Get a specific event | |
| **Fetch Recurring Event Instances** | `fetch_recurring_event_instances` | Get recurring event instances | |
| **List Calendar Events** | `list_calendar_events` | List events from calendar | |
| **Move Event to Calendar** | `move_event_to_calendar` | Move event to another calendar | |
| **Update Calendar Event** | `update_calendar_event` | Update an existing event | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------------- | ------- |
| **On Calendar Event** | `on_calendar_event` | Trigger: fires when events change on a Google Calendar. | Yes |
| **On Event Cancelled** | `on_event_cancelled` | Trigger: fires when a calendar event is cancelled or deleted. | Yes |
| **On Event Created** | `on_event_created` | Trigger: fires when a new calendar event is created. | Yes |
| **On Event Tentative** | `on_event_tentative` | Trigger: fires when a calendar event is tentatively accepted. | Yes |
| **On Event Updated** | `on_event_updated` | Trigger: fires when an existing calendar event is modified. | Yes |
# Google Cloud Storage
Source: https://docs.noclick.com/integrations/google-cloud-storage
Connect Google Cloud Storage to your workflows: 89 operations across 14 categories.
The Google Cloud Storage node adds Google Cloud Storage operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google Cloud Storage also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Google Cloud Storage.
You can wire the Google Cloud Storage node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Cloud Storage under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Google Cloud Storage account when prompted; no keys to copy.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/devstorage.read_write`
* `https://www.googleapis.com/auth/devstorage.full_control`
### Service account
Enter the values manually when creating the credential.
Create a JSON key for a service account that has the required Cloud Storage IAM roles. Prefer user OAuth for user-delegated access; use service accounts for server-to-server automation.
[Get your credentials here](https://console.cloud.google.com/iam-admin/serviceaccounts).
## Operations
### Anywhere cache
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ---------------------------------------- | ------- |
| **Create Anywhere Cache** | `create_anywhere_cache` | Create a Rapid Cache instance. | |
| **Disable Anywhere Cache** | `disable_anywhere_cache` | Disable a Rapid Cache instance. | |
| **Get Anywhere Cache** | `get_anywhere_cache` | Get a Rapid Cache instance. | |
| **List Anywhere Caches** | `list_anywhere_caches` | List Rapid Cache instances for a bucket. | |
| **Pause Anywhere Cache** | `pause_anywhere_cache` | Pause an Anywhere Cache instance. | |
| **Resume Anywhere Cache** | `resume_anywhere_cache` | Resume a Rapid Cache instance. | |
| **Update Anywhere Cache** | `update_anywhere_cache` | Update a Rapid Cache instance. | |
### Bucket ACLs
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------ | ------- |
| **Create Bucket ACL** | `create_bucket_acl` | Create a bucket ACL entry. | |
| **Delete Bucket ACL** | `delete_bucket_acl` | Delete a bucket ACL entry. | |
| **Get Bucket ACL** | `get_bucket_acl` | Get a single bucket ACL entry. | |
| **List Bucket ACLs** | `list_bucket_acl` | List ACL entries on a bucket. | |
| **Patch Bucket ACL** | `patch_bucket_acl` | Patch a bucket ACL entry. | |
| **Update Bucket ACL** | `update_bucket_acl` | Replace a bucket ACL entry. | |
### Buckets
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | -------------------------------------------------------------- | ------- |
| **Create Bucket** | `create_bucket` | Create a new bucket in a project. | |
| **Delete Bucket** | `delete_bucket` | Delete an empty bucket. | |
| **Get Bucket** | `get_bucket` | Get a bucket's metadata. | |
| **Get Storage Layout** | `get_storage_layout` | Return a bucket's storage layout and HNS status. | |
| **List Buckets** | `list_buckets` | List the buckets in a project. | |
| **Lock Retention Policy** | `lock_retention_policy` | Permanently lock a bucket's retention policy. | |
| **Patch Bucket** | `patch_bucket` | Partially update a bucket's metadata (e.g. labels, lifecycle). | |
| **Relocate Bucket** | `relocate_bucket` | Start a dry-run or live bucket relocation operation. | |
| **Restore Bucket** | `restore_bucket` | Restore a soft-deleted bucket generation. | |
| **Update Bucket** | `update_bucket` | Replace a bucket's metadata (full update). | |
### Default object ACLs
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | -------------------------------------------- | ------- |
| **Create Default Object ACL** | `create_default_object_acl` | Create a default object ACL entry. | |
| **Delete Default Object ACL** | `delete_default_object_acl` | Delete a default object ACL entry. | |
| **Get Default Object ACL** | `get_default_object_acl` | Get a single default object ACL entry. | |
| **List Default Object ACLs** | `list_default_object_acl` | List default object ACL entries on a bucket. | |
| **Patch Default Object ACL** | `patch_default_object_acl` | Patch a default object ACL entry. | |
| **Update Default Object ACL** | `update_default_object_acl` | Replace a default object ACL entry. | |
### Folders
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------------- | --------------------------------------------------------------- | ------- |
| **Create Folder** | `create_folder` | Create a folder in an HNS-enabled bucket. | |
| **Delete Folder** | `delete_folder` | Delete an empty folder from an HNS-enabled bucket. | |
| **Delete Folder Recursively** | `delete_folder_recursive` | Delete a folder and all descendants from an HNS-enabled bucket. | |
| **Get Folder** | `get_folder` | Get folder metadata from an HNS-enabled bucket. | |
| **List Folders** | `list_folders` | List folders in an HNS-enabled bucket. | |
| **Rename Folder** | `rename_folder` | Rename a folder in an HNS-enabled bucket. | |
### IAM
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | -------------------------------------------- | ------- |
| **Get Bucket IAM Policy** | `get_bucket_iam` | Read a bucket's IAM policy. | |
| **Get Object IAM Policy** | `get_object_iam` | Read an object's IAM policy. | |
| **Set Bucket IAM Policy** | `set_bucket_iam` | Replace a bucket's IAM policy. | |
| **Set Object IAM Policy** | `set_object_iam` | Replace an object's IAM policy. | |
| **Test IAM Permissions** | `test_iam_permissions` | Check the caller's permissions on a bucket. | |
| **Test Object IAM Permissions** | `test_object_iam_permissions` | Check the caller's permissions on an object. | |
### Managed folders
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | -------------------------------------------- | ------- |
| **Create Managed Folder** | `create_managed_folder` | Create a managed folder. | |
| **Delete Managed Folder** | `delete_managed_folder` | Delete a managed folder. | |
| **Get Managed Folder** | `get_managed_folder` | Get a managed folder. | |
| **Get Managed Folder IAM Policy** | `get_managed_folder_iam` | Get the IAM policy for a managed folder. | |
| **List Managed Folders** | `list_managed_folders` | List managed folders in a bucket. | |
| **Set Managed Folder IAM Policy** | `set_managed_folder_iam` | Set the IAM policy for a managed folder. | |
| **Test Managed Folder IAM Permissions** | `test_managed_folder_iam_permissions` | Test caller permissions on a managed folder. | |
### Notifications
| Operation | ID | Description | Trigger |
| ------------------------------ | --------------------- | ------------------------------------------------------- | ------- |
| **Create Notification Config** | `create_notification` | Create a Pub/Sub notification config for bucket events. | |
| **Delete Notification Config** | `delete_notification` | Delete a notification config. | |
| **Get Notification Config** | `get_notification` | Get a notification config by ID. | |
| **List Notification Configs** | `list_notifications` | List a bucket's Pub/Sub notification configs. | |
### Object ACLs
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------ | ------- |
| **Create Object ACL Entry** | `create_object_acl_entry` | Create an object ACL entry. | |
| **Delete Object ACL Entry** | `delete_object_acl_entry` | Delete an object ACL entry. | |
| **Get Object ACL Entry** | `get_object_acl_entry` | Get a single object ACL entry. | |
| **List Object ACLs** | `list_object_acl_entries` | List ACL entries on an object. | |
| **Patch Object ACL Entry** | `patch_object_acl_entry` | Patch an object ACL entry. | |
| **Update Object ACL Entry** | `update_object_acl_entry` | Replace an object ACL entry. | |
### Objects
| Operation | ID | Description | Trigger |
| -------------------------- | ---------------------- | -------------------------------------------------------------------------- | ------- |
| **Bulk Restore Objects** | `bulk_restore_objects` | Start a long-running bulk restore for soft-deleted objects in a bucket. | |
| **Compose Objects** | `compose_objects` | Concatenate up to 32 source objects into one destination object. | |
| **Copy Object** | `copy_object` | Copy an object to a new destination. | |
| **Delete Object** | `delete_object` | Delete an object (or a specific generation). | |
| **Download Object** | `download_object` | Download an object's bytes. | |
| **Get Object ACL** | `get_object_acl` | List the access-control entries for an object. | |
| **Get Object Metadata** | `get_object` | Get an object's metadata. | |
| **List Objects** | `list_objects` | List the objects in a bucket. | |
| **Move Object** | `move_object` | Rename/move an object within a bucket (HNS-enabled buckets). | |
| **Patch Object Metadata** | `patch_object` | Partially update an object's metadata (e.g. contentType, custom metadata). | |
| **Restore Object** | `restore_object` | Restore a soft-deleted object generation. | |
| **Rewrite Object** | `rewrite_object` | Rewrite/copy large objects (resumable via rewriteToken). | |
| **Update Object Metadata** | `update_object` | Replace an object's metadata (full update). | |
| **Upload Object** | `upload_object` | Upload a new object using simple, multipart, or resumable upload. | |
### Operations
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | -------------------------------------------------------- | ------- |
| **Advance Relocate Bucket** | `advance_relocate_bucket` | Advance a relocation operation to final synchronization. | |
| **Cancel Operation** | `cancel_operation` | Cancel a long-running bucket operation. | |
| **Get Operation** | `get_operation` | Get a long-running bucket operation. | |
| **List Operations** | `list_operations` | List long-running bucket operations. | |
### Projects
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------ | ------- |
| **Create HMAC Key** | `create_hmac_key` | Create an HMAC key for a service account. | |
| **Delete HMAC Key** | `delete_hmac_key` | Delete an HMAC key. | |
| **Get HMAC Key** | `get_hmac_key` | Get HMAC key metadata. | |
| **Get Service Account** | `get_service_account` | Get the project's Cloud Storage service account email. | |
| **List HMAC Keys** | `list_hmac_keys` | List a project's HMAC keys. | |
| **Update HMAC Key** | `update_hmac_key` | Update an HMAC key's state. | |
### Storage intelligence
| Operation | ID | Description | Trigger |
| ------------------------------------------- | ----------------------------------------- | ----------------------------------------------------------- | ------- |
| **Get Folder Intelligence Config** | `get_folder_intelligence_config` | Get the Storage Intelligence config for a folder. | |
| **Get Organization Intelligence Config** | `get_organization_intelligence_config` | Get the Storage Intelligence config for an organization. | |
| **Get Project Intelligence Config** | `get_project_intelligence_config` | Get the Storage Intelligence config for a project. | |
| **Update Folder Intelligence Config** | `update_folder_intelligence_config` | Update the Storage Intelligence config for a folder. | |
| **Update Organization Intelligence Config** | `update_organization_intelligence_config` | Update the Storage Intelligence config for an organization. | |
| **Update Project Intelligence Config** | `update_project_intelligence_config` | Update the Storage Intelligence config for a project. | |
### Triggers
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ---------------------------------------------------------- | ------- |
| **On New Object** | `on_new_object` | Poll a bucket/prefix and trigger on newly-created objects. | Yes |
# Google Contacts
Source: https://docs.noclick.com/integrations/google-contacts
Connect Google Contacts to your workflows: 11 operations across 2 categories.
The Google Contacts node adds Google Contacts operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Contacts node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Contacts under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Contacts account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/contacts`
## Operations
### Contact
| Operation | ID | Description |
| ------------------- | ----------------- | ---------------------- |
| **Create Contact** | `create_contact` | Create a new contact |
| **Delete Contact** | `delete_contact` | Delete a contact |
| **Get Contact** | `get_contact` | Get a specific contact |
| **List Contacts** | `list_contacts` | List all contacts |
| **Search Contacts** | `search_contacts` | Search contacts |
| **Update Contact** | `update_contact` | Update a contact |
### Contact group
| Operation | ID | Description |
| ------------------------ | ---------------------- | ---------------------------- |
| **Create Contact Group** | `create_contact_group` | Create a new contact group |
| **Delete Contact Group** | `delete_contact_group` | Delete a contact group |
| **Get Contact Group** | `get_contact_group` | Get a specific contact group |
| **List Contact Groups** | `list_contact_groups` | List all contact groups |
| **Update Contact Group** | `update_contact_group` | Update a contact group |
# Google Docs
Source: https://docs.noclick.com/integrations/google-docs
Connect Google Docs to your workflows: 6 operations.
The Google Docs node adds Google Docs operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Docs node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Docs under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Docs account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/documents`
* `https://www.googleapis.com/auth/drive`
## Operations
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | -------------------------- |
| **Append Text to Document** | `append_text_to_document` | Append text to document |
| **Create New Document** | `create_new_document` | Create a new document |
| **Fetch Document Content** | `fetch_document_content` | Get a document |
| **Insert Text in Document** | `insert_text_in_document` | Insert text at position |
| **List Google Drive Documents** | `list_google_drive_documents` | List Google Docs documents |
| **Replace Document Text** | `replace_document_text` | Replace text in document |
# Google Drive
Source: https://docs.noclick.com/integrations/google-drive
Connect Google Drive to your workflows: 45 operations across 9 categories.
The Google Drive node adds Google Drive operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google Drive also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Google Drive.
You can wire the Google Drive node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Drive under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Drive account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/drive`
## Operations
### Comment reply
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------------------- | ------- |
| **Create Comment Reply** | `create_comment_reply` | Add a reply to an existing comment | |
| **Delete Comment Reply** | `delete_comment_reply` | Delete a reply from a comment | |
| **Get Comment Reply** | `get_comment_reply` | Get a specific reply by ID | |
| **List Comment Replies** | `list_comment_replies` | List all replies to a comment | |
| **Update Comment Reply** | `update_comment_reply` | Update an existing reply | |
### Drive
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------- | ------- |
| **Empty Drive Trash** | `empty_drive_trash` | Permanently delete all files in trash | |
| **Get Drive Storage Info** | `get_drive_storage_info` | Get storage quota and user info | |
### File
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------- | ------- |
| **Copy File** | `copy_file` | Copy a file | |
| **Delete File** | `delete_file` | Delete a file permanently | |
| **Download File** | `download_file` | Download file content | |
| **Export Google Workspace File** | `export_google_workspace_file` | Export Google Docs/Sheets/Slides to other formats | |
| **Get File Metadata** | `get_file_metadata` | Get file metadata | |
| **List Files** | `list_files` | List files from Google Drive | |
| **Move File** | `move_file` | Move a file to another folder | |
| **Move File to Trash** | `move_file_to_trash` | Move a file to trash | |
| **Remove File Permission** | `remove_file_permission` | Remove sharing permissions from a file | |
| **Restore File from Trash** | `restore_file_from_trash` | Restore a file from trash | |
| **Search Files** | `search_files` | Search files with advanced query | |
| **Share File** | `share_file` | Share a file with others | |
| **Update File Metadata** | `update_file_metadata` | Update file name or description | |
| **Upload File** | `upload_file` | Upload a file | |
### File comment
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ---------------------------- | ------- |
| **Create File Comment** | `create_file_comment` | Add a comment to a file | |
| **Delete File Comment** | `delete_file_comment` | Delete a comment from a file | |
| **Get File Comment** | `get_file_comment` | Get a specific comment by ID | |
| **List File Comments** | `list_file_comments` | List all comments on a file | |
| **Update File Comment** | `update_file_comment` | Update an existing comment | |
### File permission
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------ | ------- |
| **Get File Permission** | `get_file_permission` | Get details of a specific permission | |
| **List File Permissions** | `list_file_permissions` | List who has access to a file | |
| **Update File Permission** | `update_file_permission` | Update a permission (change role) | |
### File revision
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------------------- | ------- |
| **Delete File Revision** | `delete_file_revision` | Delete a specific file revision | |
| **Get File Revision** | `get_file_revision` | Get a specific file revision | |
| **List File Revisions** | `list_file_revisions` | List all versions of a file | |
| **Update File Revision** | `update_file_revision` | Update revision metadata (keep forever, etc.) | |
### Folder
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------- | ------- |
| **Create Folder** | `create_folder` | Create a new folder | |
### Shared drive
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------------- | ------- |
| **Create Shared Drive** | `create_shared_drive` | Create a new shared drive | |
| **Delete Shared Drive** | `delete_shared_drive` | Delete a shared drive (must be empty) | |
| **Get Shared Drive** | `get_shared_drive` | Get details of a specific shared drive | |
| **Hide Shared Drive** | `hide_shared_drive` | Hide a shared drive from the default view | |
| **List Shared Drives** | `list_shared_drives` | List all shared drives accessible to the user | |
| **Unhide Shared Drive** | `unhide_shared_drive` | Unhide a shared drive (restore to default view) | |
### Other
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------------------------------- | ------- |
| **On Drive Change** | `on_drive_change` | Trigger: fires when files change in the connected Google Drive. | Yes |
| **On File Changed** | `on_file_changed` | Trigger: fires when a file is created or modified in Google Drive. | Yes |
| **On File Removed** | `on_file_removed` | Trigger: fires when a file is trashed or permanently deleted from Google Drive. | Yes |
| **On Folder Changed** | `on_folder_changed` | Trigger: fires when a folder is created or modified in Google Drive. | Yes |
| **On Folder Removed** | `on_folder_removed` | Trigger: fires when a folder is trashed or permanently deleted from Google Drive. | Yes |
# Google Forms
Source: https://docs.noclick.com/integrations/google-forms
Connect Google Forms to your workflows: 7 operations across 3 categories.
The Google Forms node adds Google Forms operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google Forms also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Google Forms.
You can wire the Google Forms node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Forms under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Forms account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/forms.body`
* `https://www.googleapis.com/auth/forms.responses.readonly`
* `https://www.googleapis.com/auth/drive`
## Operations
### Form
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | -------------------- | ------- |
| **Create New Form** | `create_new_form` | Create a new form | |
| **Get Form Metadata** | `get_form_metadata` | Get a form | |
| **List Google Drive Forms** | `list_google_drive_forms` | List Google Forms | |
| **Update Form Metadata** | `update_form_metadata` | Update form metadata | |
### Response
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------- | ------- |
| **Get Form Response** | `get_form_response` | Get a specific response | |
| **List Form Responses** | `list_form_responses` | List form responses | |
### Other
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------------------------------------------- | ------- |
| **On Form Response** | `on_form_response` | Trigger: polls a form on a schedule and fires for new responses. | Yes |
# Google Maps
Source: https://docs.noclick.com/integrations/google-maps
Connect Google Maps to your workflows: 33 operations across 15 categories.
The Google Maps node adds Google Maps operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Maps node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Maps under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://console.cloud.google.com/google/maps-apis/credentials).
## Operations
### Address validation
| Operation | ID | Description |
| -------------------- | ------------------ | ------------------------------------------------------------------------ |
| **Validate Address** | `validate_address` | Address Validation: validate, correct, and standardize a postal address. |
### Aerial view
| Operation | ID | Description |
| ------------------------ | --------------------- | -------------------------------------------------------------------------- |
| **Look Up Aerial Video** | `aerial_lookup_video` | Aerial View: look up a previously requested aerial video by ID or address. |
| **Render Aerial Video** | `aerial_render_video` | Aerial View: request rendering of an aerial video for an address (async). |
### Air quality
| Operation | ID | Description |
| -------------------------- | ---------------------- | ---------------------------------------------------------------- |
| **Air Quality (Current)** | `air_quality_current` | Air Quality: current air quality conditions for a location. |
| **Air Quality (Forecast)** | `air_quality_forecast` | Air Quality: hourly air quality forecast (up to 96 hours ahead). |
| **Air Quality (History)** | `air_quality_history` | Air Quality: historical hourly air quality (past 30 days). |
### Geocoding
| Operation | ID | Description |
| ------------------------- | ------------------ | ---------------------------------------------------------------------------- |
| **Geocode Address** | `geocode` | Forward geocode: convert an address into lat-lng coordinates and a place ID. |
| **Geocode Place ID (v4)** | `geocode_v4_place` | Geocoding v4: resolve geographic info for a given place ID. |
| **Reverse Geocode** | `reverse_geocode` | Reverse geocode: convert lat-lng coordinates into a formatted address. |
### Geolocation
| Operation | ID | Description |
| ------------- | ----------- | --------------------------------------------------------------------- |
| **Geolocate** | `geolocate` | Geolocation: estimate a location from cell towers / WiFi / caller IP. |
### Legacy places
| Operation | ID | Description |
| ------------------------- | --------------------- | ---------------------------------------------------------------------- |
| **Autocomplete (Legacy)** | `legacy_autocomplete` | Legacy Places autocomplete: typeahead predictions for a partial query. |
| **Find Place (Legacy)** | `find_place` | Legacy Places find place: single best-match place from text input. |
### Legacy routing
| Operation | ID | Description |
| ---------------------------- | ----------------- | ------------------------------------------------------------------------------ |
| **Directions (Legacy)** | `directions` | Legacy Directions: turn-by-turn directions between two points. |
| **Distance Matrix (Legacy)** | `distance_matrix` | Legacy Distance Matrix: travel distance/time between origins and destinations. |
### Places
| Operation | ID | Description |
| ---------------------- | --------------- | -------------------------------------------------------------------------- |
| **Nearby Search** | `nearby_search` | Places (New) nearby search: find places within a circle around a location. |
| **Place Autocomplete** | `autocomplete` | Places (New) autocomplete: place/query predictions for a partial input. |
| **Place Details** | `place_details` | Places (New) place details: full details for a place by ID. |
| **Place Photo** | `place_photo` | Places (New) place photo: fetch metadata/redirect for a photo resource. |
| **Text Search** | `text_search` | Places (New) text search: find places from a free-text query. |
### Places insights
| Operation | ID | Description |
| -------------------- | ------------------ | ------------------------------------------------------------------------- |
| **Compute Insights** | `compute_insights` | Places Aggregate: count or list places matching a location + type filter. |
### Pollen
| Operation | ID | Description |
| ------------------- | ----------------- | ------------------------------------------------------------ |
| **Pollen Forecast** | `pollen_forecast` | Pollen: daily pollen forecast (up to 5 days) for a location. |
### Roads
| Operation | ID | Description |
| ----------------- | --------------- | -------------------------------------------------------- |
| **Nearest Roads** | `nearest_roads` | Roads: nearest road segment(s) to a set of coordinates. |
| **Snap to Roads** | `snap_to_roads` | Roads: snap GPS points to the most likely road geometry. |
### Routes
| Operation | ID | Description |
| ------------------------ | ---------------------- | ------------------------------------------------------------------------ |
| **Compute Route Matrix** | `compute_route_matrix` | Routes API: compute route info for every origin-destination combination. |
| **Compute Routes** | `compute_routes` | Routes API: compute the primary route between origin and destination. |
### Solar
| Operation | ID | Description |
| --------------------------- | ------------------------- | ----------------------------------------------------------------------- |
| **Solar Building Insights** | `solar_building_insights` | Solar: solar potential insights for the building closest to a location. |
| **Solar Data Layers** | `solar_data_layers` | Solar: solar data layers (DSM, imagery, flux) around a location. |
### Utilities
| Operation | ID | Description |
| ------------- | ----------- | --------------------------------------------------------- |
| **Elevation** | `elevation` | Elevation: elevation (meters above sea level) for points. |
| **Time Zone** | `timezone` | Time Zone: time zone for a location and timestamp. |
### Weather
| Operation | ID | Description |
| ----------------------------- | ------------------------ | --------------------------------------------------- |
| **Weather (Current)** | `weather_current` | Weather: current weather conditions for a location. |
| **Weather (Daily Forecast)** | `weather_forecast_days` | Weather: daily weather forecast (up to 10 days). |
| **Weather (Hourly Forecast)** | `weather_forecast_hours` | Weather: hourly weather forecast (up to 240 hours). |
| **Weather (Hourly History)** | `weather_history_hours` | Weather: historical hourly weather (past 24 hours). |
# Google Meet
Source: https://docs.noclick.com/integrations/google-meet
Connect Google Meet to your workflows: 19 operations across 8 categories.
The Google Meet node adds Google Meet operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google Meet also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Google Meet.
You can wire the Google Meet node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Meet under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Meet account when prompted; no keys to copy.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/meetings.space.created`
* `https://www.googleapis.com/auth/meetings.space.readonly`
* `https://www.googleapis.com/auth/meetings.space.settings`
## Operations
### Conference records
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------------------------------------------------- | ------- |
| **Get Conference Record** | `get_conference_record` | Get a single past-meeting conference record. | |
| **List Conference Records** | `list_conference_records` | List past conference records; supports a filter and pagination. | |
### Participant sessions
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------------ | ------- |
| **Get Participant Session** | `get_participant_session` | Get one join/leave session for a participant. | |
| **List Participant Sessions** | `list_participant_sessions` | List a participant's device-level join/leave sessions. | |
### Participants
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------ | ------- |
| **Get Participant** | `get_participant` | Get a single participant of a conference record. | |
| **List Participants** | `list_participants` | List all participants for a conference record. | |
### Recordings
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------------------- | ------- |
| **Get Recording** | `get_recording` | Get a recording's metadata and Drive file reference. | |
| **List Recordings** | `list_recordings` | List recordings produced by a conference record. | |
### Smart notes
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | -------------------------------------------------------------------------- | ------- |
| **Get Smart Notes** | `get_smart_notes` | Get a smart-notes (Gemini summary) artifact's metadata and Docs reference. | |
| **List Smart Notes** | `list_smart_notes` | List the smart-notes (Gemini summary) artifacts for a conference record. | |
### Spaces
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | -------------------------------------------------------------------------- | ------- |
| **Create Meeting Space** | `create_space` | Create a new meeting space; returns the shareable meeting URI and code. | |
| **End Active Conference** | `end_active_conference` | End the conference currently active in a space (removes all participants). | |
| **Get Meeting Space** | `get_space` | Get a meeting space by resource name (spaces/\{space}) or meeting code. | |
| **Update Meeting Space** | `update_space` | Update a meeting space's configuration (access type, moderation). | |
### Transcripts
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------------- | ------- |
| **Get Transcript** | `get_transcript` | Get a transcript's metadata and Google Docs reference. | |
| **Get Transcript Entry** | `get_transcript_entry` | Get a single spoken transcript entry (speaker, text, timing). | |
| **List Transcript Entries** | `list_transcript_entries` | List the structured transcript entries for a transcript. | |
| **List Transcripts** | `list_transcripts` | List transcripts for a conference record. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------ | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **On New Meeting** | `on_new_conference_record` | Trigger: polls conferenceRecords.list on a schedule and fires for newly ended meetings. Google Meet has no push webhooks, so this baselines on the first poll and then emits each new conference record exactly once, deduplicating on the... | Yes |
# Google Search Console
Source: https://docs.noclick.com/integrations/google-search-console
Connect Google Search Console to your workflows: 11 operations across 5 categories.
The Google Search Console node adds Google Search Console operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Search Console node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Search Console under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Search Console account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/webmasters`
## Operations
### Analytics
| Operation | ID | Description |
| -------------------------- | ------------------------ | ---------------------------------------------------------------------- |
| **Query Search Analytics** | `query_search_analytics` | Query search performance data: clicks, impressions, CTR, and position. |
### Sitemaps
| Operation | ID | Description |
| ------------------ | ---------------- | ----------------------------------------------------------------------------- |
| **Delete Sitemap** | `delete_sitemap` | Remove a sitemap from the Sitemaps report in Google Search Console. |
| **Get Sitemap** | `get_sitemap` | Get submission status, error counts, and URL coverage for a specific sitemap. |
| **List Sitemaps** | `list_sitemaps` | List all submitted sitemaps for a verified site with coverage statistics. |
| **Submit Sitemap** | `submit_sitemap` | Submit or re-submit a sitemap URL to Google Search Console. |
### Sites
| Operation | ID | Description |
| --------------- | ------------- | ------------------------------------------------------------------- |
| **Add Site** | `add_site` | Add a new property to Google Search Console. |
| **Delete Site** | `delete_site` | Remove a property from your Google Search Console account. |
| **Get Site** | `get_site` | Get permission level and details for a specific verified property. |
| **List Sites** | `list_sites` | List all verified Google Search Console properties for the account. |
### URL inspection
| Operation | ID | Description |
| --------------- | ------------- | --------------------------------------------------------------------- |
| **Inspect URL** | `inspect_url` | Inspect indexing status, crawl state, and mobile usability for a URL. |
### URL testing
| Operation | ID | Description |
| ------------------------ | ---------------------- | ----------------------------------------------------------------------------------- |
| **Mobile Friendly Test** | `mobile_friendly_test` | Run Google's Mobile-Friendly Test on any public URL, no verified property required. |
# Google Sheets
Source: https://docs.noclick.com/integrations/google-sheets
Connect Google Sheets to your workflows: 86 operations across 11 categories.
The Google Sheets node adds Google Sheets operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google Sheets also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Google Sheets.
You can wire the Google Sheets node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Sheets under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Sheets account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/spreadsheets`
* `https://www.googleapis.com/auth/drive.metadata.readonly`
## Operations
### Chart
| Operation | ID | Description | Trigger |
| ------------------------ | ------------------ | ------------------------------------------------------------ | ------- |
| **Add Chart** | `add_chart` | Build a chart from a range and place it on a sheet | |
| **Delete Chart** | `delete_chart` | Remove a chart from the spreadsheet | |
| **Edit Chart** | `update_chart` | Change a chart's type, title or the data it plots | |
| **Move Or Resize Chart** | `move_chart` | Reposition a chart, resize it, or move it onto its own sheet | |
| **Set Chart Border** | `set_chart_border` | Colour the border around a chart | |
### Column
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------------------------- | ------- |
| **Delete Sheet Columns** | `delete_sheet_columns` | Delete columns from a sheet | |
| **Insert Sheet Columns** | `insert_sheet_columns` | Insert columns at a position | |
| **Split Text To Columns** | `split_text_to_columns` | Split one column of delimited text across several columns | |
### Data source
| Operation | ID | Description | Trigger |
| -------------------------------- | ---------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Cancel Data Source Refresh** | `cancel_data_source_refresh` | Stop a refresh that is currently running | |
| **Connect BigQuery Data Source** | `add_data_source` | Attach a BigQuery table or query to the spreadsheet as a connected data source | |
| **Delete Data Source** | `delete_data_source` | Disconnect a data source and remove the sheets it backs | |
| **Refresh Data Source** | `refresh_data_source` | Re-run a connected data source so its sheets pick up new rows | |
| **Repoint Data Source** | `repoint_data_source` | Repoint a connected data source at a different table or query | |
### Format
| Operation | ID | Description | Trigger |
| ---------------------------------- | --------------------------------- | -------------------------------------------------------------------------------- | ------- |
| **Add Alternating Colours** | `add_alternating_colors` | Apply banded row colours to a range | |
| **Add Conditional Formatting** | `add_conditional_format_rule` | Colour cells automatically based on their value | |
| **Add Dropdown Or Input Rule** | `set_data_validation` | Restrict a range to a set of values, a checkbox, or a validated input | |
| **Add Or Remove Borders** | `format_borders` | Draw or clear borders around and inside a range | |
| **Auto-Resize Columns Or Rows** | `auto_resize_dimensions` | Resize columns or rows to fit their contents | |
| **Clear Filter** | `clear_basic_filter` | Remove the sort and filter controls from a sheet | |
| **Convert Range To Table** | `add_table` | Turn a range into a table, with chip dropdowns and typed columns | |
| **Delete Table** | `delete_table` | Remove a table, leaving its values in place | |
| **Edit Conditional Formatting** | `update_conditional_format_rule` | Change a conditional formatting rule, or move it up or down the priority order | |
| **Edit Table** | `update_table` | Rename a table, resize it, or retype its columns | |
| **Format Cells** | `format_cells` | Set font, colour, alignment and number format on a range | |
| **Merge Cells** | `merge_cells` | Merge a range into a single cell | |
| **Recolour Alternating Colours** | `update_alternating_colors` | Change the colours of banding that is already applied, without removing it first | |
| **Remove Alternating Colours** | `clear_alternating_colors` | Strip banded row colours from a sheet so they can be reapplied | |
| **Remove Conditional Formatting** | `delete_conditional_format_rules` | Delete one conditional formatting rule, or every rule on the sheet | |
| **Remove Dropdown Or Input Rule** | `clear_data_validation` | Strip data validation from a range | |
| **Set Column Width Or Row Height** | `set_dimension_size` | Set an exact pixel width for columns or height for rows | |
| **Set Filter** | `set_basic_filter` | Add sort and filter controls to a header range | |
| **Unmerge Cells** | `unmerge_cells` | Split merged cells back apart | |
| **Update Sheet Properties** | `update_sheet_properties` | Freeze header rows or columns, set the tab colour, toggle gridlines | |
### Metadata
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Add Developer Metadata** | `create_developer_metadata` | Tag a sheet, row or column with a key/value that survives edits and reordering | |
| **Delete Developer Metadata** | `delete_developer_metadata` | Remove every metadata entry stored under a key | |
| **Update Developer Metadata** | `update_developer_metadata` | Change the value stored against a metadata key | |
### Range
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | --------------------------------------------------------------------- | ------- |
| **Add Named Range** | `add_named_range` | Give a range a name so formulas can refer to it | |
| **Append Rows to Sheet** | `append_rows_to_sheet` | Append rows to spreadsheet | |
| **Auto-Fill Range** | `auto_fill` | Continue a pattern or series across a range | |
| **Cell Notes** | `set_cell_notes` | Attach a hover note to every cell in a range, or clear them | |
| **Clear Multiple Sheet Ranges** | `clear_multiple_sheet_ranges` | Clear multiple ranges at once | |
| **Clear Sheet Range** | `clear_sheet_range` | Clear values from a range | |
| **Copy And Paste Range** | `copy_paste_range` | Copy a range over another, optionally values-only or format-only | |
| **Cut And Paste Range** | `cut_paste_range` | Move a range somewhere else, leaving the source empty | |
| **Delete Cells** | `delete_cells` | Delete cells, shifting the remaining cells up or left | |
| **Delete Named Range** | `delete_named_range` | Remove a named range. The cells and their values stay. | |
| **Insert Cells** | `insert_cells` | Insert blank cells, shifting existing cells down or right | |
| **Insert Smart Chips** | `insert_smart_chips` | Turn cells into people chips or rich link chips | |
| **Paste Delimited Text** | `paste_data` | Paste CSV or tab-separated text into a range, splitting it into cells | |
| **Pivot Table** | `insert_pivot_table` | Summarise a source range into a pivot table anchored at a cell | |
| **Protect Range** | `add_protected_range` | Stop a range being edited, or warn when someone tries | |
| **Randomise Range** | `randomize_range` | Shuffle the rows of a range into random order | |
| **Read Multiple Sheet Ranges** | `read_multiple_sheet_ranges` | Read multiple ranges at once | |
| **Read Sheet Data** | `read_sheet_data` | Read data from spreadsheet | |
| **Sort Range** | `sort_range` | Sort rows in a range by a column | |
| **Trim Whitespace** | `trim_whitespace` | Strip leading, trailing and repeated spaces from a range | |
| **Unprotect Range** | `delete_protected_range` | Remove protection from a range | |
| **Update Named Range** | `update_named_range` | Rename a named range or point it at a different range | |
| **Update Protected Range** | `update_protected_range` | Change a protected range's extent, description or editors | |
| **Write Sheet Data** | `write_sheet_data` | Write data to spreadsheet | |
| **Write to Multiple Sheet Ranges** | `write_to_multiple_sheet_ranges` | Write to multiple ranges at once | |
### Row
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------------- | ------- |
| **Append Rows After Data** | `append_cells` | Add rows directly after the last row that has data | |
| **Append Rows Or Columns** | `append_rows_or_columns` | Add blank rows or columns to the end of a sheet | |
| **Delete Sheet Rows** | `delete_sheet_rows` | Delete rows from a sheet | |
| **Insert Sheet Rows** | `insert_sheet_rows` | Insert rows at a position | |
| **Move Rows Or Columns** | `move_rows_or_columns` | Move a block of rows or columns to a different position | |
| **Remove Duplicate Rows** | `remove_duplicate_rows` | Delete rows that repeat, optionally comparing only some columns | |
### Sheet
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ---------------------------------------- | ------- |
| **Add Spreadsheet Sheet** | `add_spreadsheet_sheet` | Add a new sheet/tab to spreadsheet | |
| **Copy Sheet to Spreadsheet** | `copy_sheet_to_spreadsheet` | Copy a sheet to another spreadsheet | |
| **Delete Spreadsheet Sheet** | `delete_spreadsheet_sheet` | Delete a sheet/tab from spreadsheet | |
| **Duplicate Sheet in Spreadsheet** | `duplicate_sheet_in_spreadsheet` | Duplicate a sheet within the spreadsheet | |
| **Rename Spreadsheet Sheet** | `rename_spreadsheet_sheet` | Rename a sheet/tab | |
### Spreadsheet
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Create New Spreadsheet** | `create_new_spreadsheet` | Create a new spreadsheet | |
| **Fetch Spreadsheet Metadata** | `fetch_spreadsheet_metadata` | Get spreadsheet info, properties, and optionally its tables, charts and rules | |
| **Find and Replace in Spreadsheet** | `find_and_replace_in_spreadsheet` | Find and replace text in spreadsheet | |
| **Update Spreadsheet Properties** | `update_spreadsheet_properties` | Rename the spreadsheet or change its locale, timezone or recalculation setting | |
### View
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------- | ------------------------------------------------------------------------- | ------- |
| **Add Slicer** | `add_slicer` | Place an interactive filter control on the sheet | |
| **Collapse Or Expand Group** | `collapse_group` | Fold a group of rows or columns away, or open it back up | |
| **Delete Filter View** | `delete_filter_view` | Remove a saved filter view | |
| **Duplicate Filter View** | `duplicate_filter_view` | Copy a filter view so it can be tweaked without touching the original | |
| **Filter View** | `save_filter_view` | Save a named filter that only you see, leaving everyone else's view alone | |
| **Group Rows Or Columns** | `group_rows_or_columns` | Make a block of rows or columns collapsible | |
| **Ungroup Rows Or Columns** | `ungroup_rows_or_columns` | Remove a collapsible group, leaving the rows or columns in place | |
| **Update Filter View** | `update_filter_view` | Rename a filter view, move it, or change how it sorts | |
| **Update Slicer** | `update_slicer` | Retitle a slicer or point it at a different column | |
### Other
| Operation | ID | Description | Trigger |
| -------------- | ------------ | -------------------------------------------------------------------- | ------- |
| **On New Row** | `on_new_row` | Trigger: polls a sheet on a schedule and fires for newly added rows. | Yes |
# Google Slides
Source: https://docs.noclick.com/integrations/google-slides
Connect Google Slides to your workflows: 7 operations across 2 categories.
The Google Slides node adds Google Slides operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Slides node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Slides under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Slides account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/presentations`
* `https://www.googleapis.com/auth/drive`
## Operations
### Presentation
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | -------------------------------- |
| **Create New Presentation** | `create_new_presentation` | Create a new presentation |
| **Get Presentation Metadata** | `get_presentation_metadata` | Get a presentation |
| **List Google Drive Presentations** | `list_google_drive_presentations` | List Google Slides presentations |
### Slide
| Operation | ID | Description |
| ----------------------------- | --------------------------- | --------------------------- |
| **Add Presentation Slide** | `add_presentation_slide` | Add a new slide |
| **Delete Presentation Slide** | `delete_presentation_slide` | Delete a slide |
| **Get Slide Page** | `get_slide_page` | Get a specific slide |
| **Get Slide Thumbnail** | `get_slide_thumbnail` | Get a slide thumbnail image |
# Google Tasks
Source: https://docs.noclick.com/integrations/google-tasks
Connect Google Tasks to your workflows: 12 operations across 2 categories.
The Google Tasks node adds Google Tasks operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google Tasks node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Tasks under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Google Tasks account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/tasks`
## Operations
### Task
| Operation | ID | Description |
| ------------------------- | ----------------------- | ----------------------------------- |
| **Clear Completed Tasks** | `clear_completed_tasks` | Clear all completed tasks |
| **Create New Task** | `create_new_task` | Create a new task |
| **Delete Task from List** | `delete_task_from_list` | Delete a task |
| **Fetch Task from List** | `fetch_task_from_list` | Get a specific task |
| **List Tasks in List** | `list_tasks_in_list` | List tasks in a task list |
| **Move Task to Position** | `move_task_to_position` | Move a task to a different position |
| **Update Task in List** | `update_task_in_list` | Update a task |
### Task list
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ------------------------ |
| **Create New Task List** | `create_new_task_list` | Create a new task list |
| **Delete Task List** | `delete_task_list` | Delete a task list |
| **Fetch Task List** | `fetch_task_list` | Get a specific task list |
| **List All Task Lists** | `list_all_task_lists` | List all task lists |
| **Update Task List Metadata** | `update_task_list_metadata` | Update a task list |
# Google Translate
Source: https://docs.noclick.com/integrations/google-translate
Connect Google Translate to your workflows: 13 operations across 7 categories.
The Google Translate node adds Google Translate operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Google Translate also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Google Translate.
You can wire the Google Translate node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google Translate under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Google Translate account when prompted; no keys to copy.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/cloud-translation`
### Service account
Enter the values manually when creating the credential.
Create a service account with the 'Cloud Translation API User' role, download its JSON key, and paste client\_email, private\_key and project\_id.
[Get your credentials here](https://console.cloud.google.com/iam-admin/serviceaccounts).
### API key
Enter the values manually when creating the credential.
API keys run v2 Basic operations only. v3 Advanced operations (romanize, document/batch translate, glossaries, operations) reject API keys, connect a Google account (OAuth) or add a service-account key for those.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
## Operations
### Batch
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------------- | ------------------------------------------------------------------- | ------- |
| **Batch Translate Text (v3)** | `v3_batch_translate_text` | Async bulk text translation from/to Cloud Storage (returns an LRO). | |
### Documents
| Operation | ID | Description | Trigger |
| --------------------------- | ----------------------- | ------------------------------------------------------------------------ | ------- |
| **Translate Document (v3)** | `v3_translate_document` | Translate a single document inline, preserving formatting (v3 Advanced). | |
### Glossaries
| Operation | ID | Description | Trigger |
| ------------------------ | -------------------- | ---------------------------------------------------------- | ------- |
| **Create Glossary (v3)** | `v3_create_glossary` | Create a glossary for custom terminology (returns an LRO). | |
| **List Glossaries (v3)** | `v3_list_glossaries` | List glossaries in a project/location. | |
### Operations
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------ | ------------------------------------------------------------------ | ------- |
| **Get Operation Status (v3)** | `v3_get_operation` | Poll the status of a long-running operation (batch/glossary jobs). | |
### Translate
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------ | ----------------------------------------------------------------- | ------- |
| **Detect Language (v3)** | `v3_detect_language` | Detect the source language of input text (v3 Advanced). | |
| **Get Supported Languages (v3)** | `v3_supported_languages` | List languages supported for translation/detection (v3 Advanced). | |
| **Romanize Text (v3)** | `v3_romanize_text` | Transliterate non-Latin-script text into Latin (romanization). | |
| **Translate Text (v3)** | `v3_translate_text` | Translate one or more strings with the v3 Advanced API. | |
### Translate (Basic)
| Operation | ID | Description | Trigger |
| --------------------------- | -------------------- | -------------------------------------------------------------------- | ------- |
| **Detect Language (Basic)** | `v2_detect_language` | Detect the source language of text using the v2 Basic API (API key). | |
| **List Languages (Basic)** | `v2_list_languages` | List supported languages using the v2 Basic API (API key). | |
| **Translate Text (Basic)** | `v2_translate_text` | Translate text using the v2 Basic API (API key). | |
### Triggers
| Operation | ID | Description | Trigger |
| -------------------------------- | -------------------- | ------------------------------------------------ | ------- |
| **On Batch Operation Completed** | `on_batch_completed` | Trigger when a batch/glossary/model job finishes | Yes |
# Hacker News
Source: https://docs.noclick.com/integrations/hackernews
Connect Hacker News to your workflows: 12 operations across 4 categories.
The Hacker News node adds Hacker News operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Hacker News node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
The Hacker News node works without credentials. Add it to a workflow and it is ready to run.
## Operations
### Item
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ------------------------------------------------------------------- |
| **Fetch Changed Items and Profiles** | `fetch_changed_items_and_profiles` | Config for fetching changed items and profiles |
| **Fetch Item by Id** | `fetch_item_by_id` | Config for fetching a single item (story, comment, job, poll) by ID |
| **Fetch Largest Item Id** | `fetch_largest_item_id` | Config for fetching the current largest item ID |
### Search
| Operation | ID | Description |
| ------------------------- | ----------------------- | --------------------------------------------------------------------------- |
| **Search by Recent Date** | `search_by_recent_date` | Config for Algolia search sorted by date (most recent first) |
| **Search by Relevance** | `search_by_relevance` | Config for Algolia search (sorted by relevance, then points, then comments) |
### Story
| Operation | ID | Description |
| ------------------------- | ----------------------- | ----------------------------------- |
| **Fetch Ask Hn Stories** | `fetch_ask_hn_stories` | Config for fetching Ask HN stories |
| **Fetch Best Stories** | `fetch_best_stories` | Config for fetching best stories |
| **Fetch Job Postings** | `fetch_job_postings` | Config for fetching job postings |
| **Fetch Newest Stories** | `fetch_newest_stories` | Config for fetching newest stories |
| **Fetch Show Hn Stories** | `fetch_show_hn_stories` | Config for fetching Show HN stories |
| **Fetch Top Stories** | `fetch_top_stories` | Config for fetching top stories |
### User
| Operation | ID | Description |
| ---------------------- | -------------------- | ---------------------------------------------- |
| **Fetch User Profile** | `fetch_user_profile` | Config for fetching a user profile by username |
# Hex
Source: https://docs.noclick.com/integrations/hex
Connect Hex to your workflows: 29 operations across 10 categories.
The Hex node adds Hex operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Hex also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Hex.
You can wire the Hex node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Hex under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.hex.tech/settings/api-keys).
## Operations
### Admin
| Operation | ID | Description | Trigger |
| -------------------- | ----------------- | -------------------------------------------------- | ------- |
| **Deactivate User** | `deactivate_user` | Deactivate a workspace user. | |
| **Get Current User** | `get_me` | Return the token owner's user info. | |
| **List Users** | `list_users` | List workspace users (Admin API; Team/Enterprise). | |
### Collections
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------ | ------- |
| **Create Collection** | `create_collection` | Create a collection. | |
| **Edit Collection** | `edit_collection` | Edit a collection; upsert user/group/workspace access. | |
| **Get Collection** | `get_collection` | Fetch a collection's details. | |
| **List Collections** | `list_collections` | List all collections. | |
### Data connections
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------------- | ------- |
| **Edit Data Connection** | `edit_data_connection` | Edit a data connection / rotate secrets. | |
| **List Data Connections** | `list_data_connections` | List configured data connections. | |
### Embedding
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------------------- | ------- |
| **Create Embed URL** | `create_embed_url` | Create a signed embed URL for a project. | |
### Groups
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ------------------------------------- | ------- |
| **Create Group** | `create_group` | Create a new group. | |
| **Delete Group** | `delete_group` | Delete a group. | |
| **Edit Group** | `edit_group` | Rename a group or add/remove members. | |
| **Get Group** | `get_group` | Fetch a group's details. | |
| **List Groups** | `list_groups` | List all groups. | |
### Projects
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------ | ------- |
| **Get Project** | `get_project` | Fetch metadata for a single project. | |
| **List Projects** | `list_projects` | List all projects the caller can view. | |
| **Update Project** | `update_project` | Update a project's status or endorsements. | |
### Runs
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ---------------------------------------------------------- | ------- |
| **Cancel Run** | `cancel_run` | Cancel an in-progress run. | |
| **Get Project Runs** | `get_project_runs` | List recent runs for a project. | |
| **Get Run Cell Image** | `get_run_cell_image` | Download a rendered PNG of a chart/cell output from a run. | |
| **Get Run Status** | `get_run_status` | Get the status of a single project run. | |
| **Run Project** | `run_project` | Trigger a run of a project's latest published version. | |
### Semantic models
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------------------------------------------------- | ------- |
| **Ingest Semantic Project** | `ingest_semantic_project` | Ingest a semantic project from a zip (max 3 req/min). | |
### Sharing
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------- | -------------------------------------------------------- | ------- |
| **Update Collection Sharing** | `update_collection_sharing` | Add or remove a project from collections. | |
| **Update Group Sharing** | `update_group_sharing` | Add groups or change their access level on a project. | |
| **Update User Sharing** | `update_user_sharing` | Add users or change their access level on a project. | |
| **Update Workspace/Public Sharing** | `update_workspace_sharing` | Set workspace-wide or public access level for a project. | |
### Triggers
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------ | ---------------------------------------------------------------------------------- | ------- |
| **On Project Run Completed** | `on_run_completed` | Trigger: poll a project's runs for newly-finished runs (COMPLETED/ERRORED/KILLED). | Yes |
# Honeycomb
Source: https://docs.noclick.com/integrations/honeycomb
Connect Honeycomb to your workflows: 88 operations across 11 categories.
The Honeycomb node adds Honeycomb operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Honeycomb also includes 2 trigger operations (marked in the tables below) that can start a workflow when something happens in Honeycomb.
You can wire the Honeycomb node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Honeycomb under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://docs.honeycomb.io/configure/environments/manage-api-keys).
### Management key
Enter the values manually when creating the credential.
[Get your credentials here](https://docs.honeycomb.io/configure/teams/manage-api-keys).
## Operations
### Advanced
| Operation | ID | Description | Trigger |
| ---------------------- | -------------- | ---------------------------------------------------- | ------- |
| **REST Request (Raw)** | `rest_request` | Make an arbitrary Honeycomb REST request (v1 or v2). | |
### Boards
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ---------------------------------------------------- | ------- |
| **Create Board** | `create_board` | Create a new Board. | |
| **Create Board View** | `create_board_view` | Create a saved filter view on a board. | |
| **Delete Board** | `delete_board` | Delete a Board by id. | |
| **Delete Board View** | `delete_board_view` | Delete a board view. | |
| **Get Board** | `get_board` | Get a single Board by id. | |
| **Get Board View** | `get_board_view` | Get a single board view by id. | |
| **List Board Views** | `list_board_views` | List all saved views for a board (max 50 per board). | |
| **List Boards** | `list_boards` | List all non-secret Boards in the environment. | |
| **Update Board** | `update_board` | Update an existing Board by id (full replacement). | |
| **Update Board View** | `update_board_view` | Update a board view's name and filters. | |
### Datasets & columns
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | -------------------------------------------------------------------------- | ------- |
| **Create Column** | `create_column` | Create a new column in a dataset. | |
| **Create Dataset** | `create_dataset` | Create a new dataset. | |
| **Create Derived Column** | `create_derived_column` | Create a derived column in a dataset (or **all** for environment-wide). | |
| **Delete Column** | `delete_column` | Delete a column by id. | |
| **Delete Dataset** | `delete_dataset` | Delete a dataset by slug (must not be delete-protected). | |
| **Delete Derived Column** | `delete_derived_column` | Delete a derived column by id. | |
| **Get Column** | `get_column` | Get a single column by key name (query) or by column id (path). | |
| **Get Dataset** | `get_dataset` | Get a single dataset by slug. | |
| **Get Dataset Definitions** | `get_dataset_definitions` | Get the definition mappings (trace id, span name, etc.) for a dataset. | |
| **Get Derived Column** | `get_derived_column` | Get a single derived column by id. | |
| **List Columns** | `list_columns` | List all columns in a dataset (or across all datasets with **all**). | |
| **List Datasets** | `list_datasets` | List all datasets in the environment. | |
| **List Derived Columns** | `list_derived_columns` | List all derived columns in a dataset (or **all** for environment-wide). | |
| **Update Column** | `update_column` | Update an existing column by id. | |
| **Update Dataset** | `update_dataset` | Update a dataset's settings. Complex settings go in the JSON body. | |
| **Update Dataset Definitions** | `update_dataset_definitions` | Update dataset definition mappings. Body maps definition types to \{name}. | |
| **Update Derived Column** | `update_derived_column` | Update an existing derived column by id. | |
### Events
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------------------------------------------- | ------- |
| **Send Batch Events** | `send_batch_events` | Send a batch of events to a dataset (a JSON array of event wrappers). | |
| **Send Event** | `send_event` | Send a single event to a dataset (arbitrary fields as a JSON object). | |
| **Send Kinesis Events** | `send_kinesis_events` | Send events via an AWS Kinesis Firehose payload to a dataset. | |
### Management (v2)
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------------------------------------------- | ------- |
| **Create API Key** | `create_api_key` | Create an API key (v2 JSON:API: data.type=api-keys, attributes + environment relationship). | |
| **Create Environment** | `create_environment` | Create an environment (v2 JSON:API envelope: data.type=environments). | |
| **Delete API Key** | `delete_api_key` | Delete an API key by id (v2 Management API). | |
| **Delete Environment** | `delete_environment` | Delete an environment by id (v2 Management API). | |
| **Get API Key** | `get_api_key` | Get a single API key by id (v2 Management API). | |
| **Get Auth (v1)** | `get_auth` | Return metadata about the v1 API key in use (X-Honeycomb-Team). | |
| **Get Auth (v2)** | `get_auth_v2` | Return metadata about the v2 Management key in use (Bearer key\_id:secret). | |
| **Get Environment** | `get_environment` | Get a single environment by id (v2 Management API). | |
| **List API Keys** | `list_api_keys` | List API keys for the team (v2 Management API). | |
| **List Environments** | `list_environments` | List environments for the team (v2 Management API). | |
| **Update API Key** | `update_api_key` | Update an API key by id (v2 JSON:API envelope; PATCH; e.g. disable/rename). | |
| **Update Environment** | `update_environment` | Update an environment by id (v2 JSON:API envelope; PATCH). | |
### Markers
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------------------------------------------- | ------- |
| **Create Marker** | `create_marker` | Create a marker on a dataset (or **all** for the environment). | |
| **Create Marker Setting** | `create_marker_setting` | Create a marker setting (color for a marker type) on a dataset. | |
| **Delete Marker** | `delete_marker` | Delete a marker by id. | |
| **Delete Marker Setting** | `delete_marker_setting` | Delete a marker setting by id. | |
| **List Marker Settings** | `list_marker_settings` | List all marker settings on a dataset. | |
| **List Markers** | `list_markers` | List all markers on a dataset (or **all** for the environment). | |
| **Update Marker** | `update_marker` | Update an existing marker by id. | |
| **Update Marker Setting** | `update_marker_setting` | Update a marker setting by id (type cannot be changed after creation). | |
### Queries
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Create Map Dependency Request** | `create_map_dependency_request` | Create a service-map dependency request (async computation of service dependencies). | |
| **Create Query** | `create_query` | Create a query specification in a dataset (returns a reusable query id). | |
| **Create Query Annotation** | `create_query_annotation` | Create a query annotation (name/description for a saved query). | |
| **Create Query Result** | `create_query_result` | Kick off asynchronous execution of a query and get a query result id. | |
| **Delete Query Annotation** | `delete_query_annotation` | Delete a query annotation. | |
| **Get Map Dependencies** | `get_map_dependencies` | Get results of a service-map dependency request (paginated dependencies). | |
| **Get Query** | `get_query` | Retrieve a query specification by id. | |
| **Get Query Annotation** | `get_query_annotation` | Retrieve a single query annotation by id. | |
| **Get Query Result** | `get_query_result` | Poll for the result of a previously created query result. | |
| **List Query Annotations** | `list_query_annotations` | List all query annotations in a dataset. | |
| **Update Query Annotation** | `update_query_annotation` | Update a query annotation's name/description. | |
### Recipients
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------------------- | ------------------------------------------------ | ------- |
| **Create Recipient** | `create_recipient` | Create a recipient (notification target). | |
| **Delete Recipient** | `delete_recipient` | Delete a recipient by ID. | |
| **Get Recipient** | `get_recipient` | Get a single recipient by ID. | |
| **Get Triggers For Recipient** | `get_triggers_associated_with_recipient` | List all triggers that notify a given recipient. | |
| **List Recipients** | `list_recipients` | List all recipients for the team/environment. | |
| **Update Recipient** | `update_recipient` | Update a recipient (full object replace). | |
### SLOs & burn alerts
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | --------------------------------------------------------------------------------- | ------- |
| **Create Burn Alert** | `create_burn_alert` | Create a burn alert for an SLO. | |
| **Create SLO** | `create_slo` | Create an SLO in a dataset. | |
| **Delete Burn Alert** | `delete_burn_alert` | Delete a burn alert from a dataset. | |
| **Delete SLO** | `delete_slo` | Delete an SLO from a dataset. | |
| **Get Burn Alert** | `get_burn_alert` | Get a single burn alert. | |
| **Get SLO** | `get_slo` | Get a single SLO, optionally with budget/compliance detail. | |
| **Get SLO History** | `get_slo_history` | Get a weekly breakdown of historical data for a list of SLOs (up to 24 ids). | |
| **Get SLO Hourly Counts History** | `get_slo_hourly_counts_history` | Get hourly-bucketed total and error event counts for an SLO over a time range. | |
| **Get SLO Realtime Counts** | `get_slo_realtime_counts` | Get per-minute success/failure event counts for an SLO from a rolling 24h window. | |
| **List Burn Alerts** | `list_burn_alerts` | List burn alerts for a specific SLO in a dataset. | |
| **List SLOs** | `list_slos` | List all SLOs in a dataset. | |
| **Update Burn Alert** | `update_burn_alert` | Update a burn alert (full replace, send all fields). | |
| **Update SLO** | `update_slo` | Update an SLO (full replace, send all fields). | |
### Triggers
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------------------------------------------------- | ------- |
| **On Burn Alert** | `on_burn_alert` | Fires when a Honeycomb SLO Burn Alert notifies this webhook recipient. | Yes |
| **On Trigger Fired** | `on_trigger_fired` | Fires when a Honeycomb Trigger notifies this webhook recipient. | Yes |
### Triggers (Alerts)
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------------------------ | ------- |
| **Create Trigger** | `create_trigger` | Create a trigger (alert) in a dataset. | |
| **Delete Trigger** | `delete_trigger` | Delete a trigger by ID. | |
| **Get Trigger** | `get_trigger` | Get a single trigger by ID. | |
| **List Triggers** | `list_triggers` | List all triggers in a dataset. | |
| **Update Trigger** | `update_trigger` | Update a trigger by ID (full replacement of trigger fields). | |
# HTTP Request
Source: https://docs.noclick.com/integrations/http-request
Connect HTTP Request to your workflows: 5 operations.
The HTTP Request node adds HTTP Request operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the HTTP Request node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect HTTP Request under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Bearer token
Enter the values manually when creating the credential.
### Basic auth
Enter the values manually when creating the credential.
### API key
Enter the values manually when creating the credential.
### OAuth2 client credentials
Enter the values manually when creating the credential.
## Operations
| Operation | ID | Description |
| ---------------------------- | -------------------------- | --------------------------------- |
| **Send Http Delete Request** | `send_http_delete_request` | HTTP DELETE request configuration |
| **Send Http Get Request** | `send_http_get_request` | HTTP GET request configuration |
| **Send Http Patch Request** | `send_http_patch_request` | HTTP PATCH request configuration |
| **Send Http Post Request** | `send_http_post_request` | HTTP POST request configuration |
| **Send Http Put Request** | `send_http_put_request` | HTTP PUT request configuration |
# HubSpot
Source: https://docs.noclick.com/integrations/hubspot
Connect HubSpot to your workflows: 236 operations across 46 categories.
The HubSpot node adds HubSpot operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
HubSpot also includes 7 trigger operations (marked in the tables below) that can start a workflow when something happens in HubSpot.
You can wire the HubSpot node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Setup Guide
This guide walks you through connecting HubSpot to NoClick and setting up your first automation.
### Prerequisites
* A HubSpot account with admin access
* A NoClick account
* Understanding of your HubSpot data structure (contacts, companies, deals, etc.)
### Step 1: Choose Your Authentication Method
HubSpot supports two authentication methods in NoClick:
#### Option A: OAuth (Recommended)
OAuth is the easiest method and recommended for most users. It requires no manual key copying and automatically handles token refresh.
**Pros:**
* Simple one-click authorization
* Automatic token refresh
* Secure credential handling
**Cons:**
* Limited to browser-based setup
#### Option B: Private App Access Token
Use a Personal Access Token (PAT) for server-to-server integrations or headless workflows.
**Pros:**
* Works in all environments
* Long-lived credentials (no expiration)
* Fine-grained scope control
**Cons:**
* Requires manual token creation and copying
### Step 2: Connect Your HubSpot Account
#### Using OAuth:
1. Open NoClick and create a new workflow
2. Add a HubSpot node to your canvas
3. Click **Connect** under the Credentials section
4. Click **Sign in with HubSpot**
5. Log in to your HubSpot account
6. Review the requested permissions and click **Install app**
7. You'll be automatically redirected back to NoClick with your connection established
NoClick asks for the core CRM permissions as required, and requests everything past them (HubDB, files, lists, sequences, marketing campaigns, custom objects, and the rest) as optional. HubSpot grants each optional permission your account's plan supports and skips the others, so the install works on every HubSpot tier. An operation whose permission was not granted returns a clear error naming what is missing.
A connection keeps only the permissions it was granted when you made it. If you connected HubSpot before July 30, 2026, reconnect the credential to pick up the wider set.
#### Using Private App Access Token:
1. Go to [HubSpot Private Apps](https://app.hubspot.com/private-apps/)
2. Click **Create app** and name it "NoClick"
3. Under the **Scopes** tab, select the permissions you need:
* For contacts: `crm.objects.contacts.read`, `crm.objects.contacts.write`
* For companies: `crm.objects.companies.read`, `crm.objects.companies.write`
* For deals: `crm.objects.deals.read`, `crm.objects.deals.write`
* For tickets: `tickets`
* For OAuth: `oauth`
4. Click **Create app**
5. Go to the **Auth** tab and copy your access token
6. In NoClick, select the **Private App Access Token** credential type
7. Paste your token in the **Private App Access Token** field
### Step 3: Create Your First Workflow
#### Basic Example: Create a Contact from Form
1. Add a HubSpot node to your canvas
2. Select the operation **Create Contact**
3. Fill in the required fields:
* **Email**: The contact's email address
* **First Name**: Contact's first name (optional)
* **Last Name**: Contact's last name (optional)
4. (Optional) Add additional fields like phone, company, or custom properties
5. Run the workflow to create a contact in HubSpot
#### Trigger Example: Run workflow when a contact is created
1. Add a HubSpot trigger node
2. Select **On Contact Created** or another trigger event
3. Configure the trigger (filter by contact properties if needed)
4. Add subsequent nodes to process the new contact
* Send an email notification
* Create an associated company
* Add a task for your sales team
### Step 4: Configure Your Automation
#### Common Configurations:
**Sync Data Between Systems:**
* Trigger: Contact created in HubSpot
* Action: Create a record in your CRM or database
**Smart Notifications:**
* Trigger: Deal moved to specific stage
* Action: Send Slack/Email notification to sales team
**Lead Scoring:**
* Trigger: Contact property changed
* Action: Update HubSpot contact properties based on engagement
**Bulk Operations:**
* Use List operations to fetch multiple records
* Process them with filters and conditions
* Perform batch updates
### Step 5: Test and Monitor
1. **Run a test**: Click **Run** to test your workflow
2. **Check HubSpot**: Verify the changes appear in HubSpot
3. **Monitor execution**: View logs in NoClick to ensure workflows complete successfully
4. **Enable triggers**: Once tested, enable any triggers to start automations
5. **Monitor performance**: Check workflow history for errors or issues
### Troubleshooting
**"Connection failed" error:**
* Verify your HubSpot account has admin access
* Ensure your Private App token is still valid (hasn't been revoked)
* For OAuth, try re-authorizing by disconnecting and reconnecting
**"Missing permission" error:**
* Read the error before reconnecting. HubSpot returns the same generic permission error whether the permission is missing or your plan does not cover the feature, so NoClick checks your connection's actual permissions and tells you which one it is. An error that says your connection already carries the permission is a plan or edition limit, and reconnecting will not change it.
* Ensure your Private App has the required scopes for your operation
* For OAuth, reconnect the credential so the install requests the current permission set
* Check that your HubSpot plan includes the feature the operation uses, since HubSpot skips permissions your tier does not cover
**Uploading files and importing data:**
* **Upload File** brings a file into HubSpot from a URL you provide. Its **File Data** field takes JSON with the file's `url` and an `access` level of `PRIVATE`, `PUBLIC_INDEXABLE`, or `PUBLIC_NOT_INDEXABLE`, plus an optional `folderPath`, `name`, and `overwrite`.
* **Create Data Import** takes the address of the CSV or spreadsheet to import in its **File Url** field, alongside the import definition.
**No data returned from "List" operations:**
* Verify the HubSpot objects (contacts, companies, deals) exist
* Check filters are not excluding all results
* Use **Get** operation on a specific ID to verify connectivity
### Best Practices
1. **Start Simple**: Build one workflow at a time before creating complex automations
2. **Use Filters**: Filter trigger data to reduce unnecessary workflow runs
3. **Batch Updates**: Use batch operations for better performance with large datasets
4. **Monitor Costs**: HubSpot API calls count toward your app's rate limits
5. **Backup Data**: For critical operations, consider logging changes to a database
6. **Test Triggers**: Always test trigger workflows with sample data before enabling them
## Credentials
Connect HubSpot under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your HubSpot account when prompted; no keys to copy.
Sign in with your HubSpot account to authorize NoClick. See the setup guide for detailed installation and configuration instructions.
[Get your credentials here](https://developers.hubspot.com/docs/apps/developer-platform/list-apps/listing-your-app/create-an-app-listing-setup-guide).
NoClick requests the following permissions:
* `oauth`
* `crm.objects.contacts.read`
* `crm.objects.contacts.write`
* `crm.objects.companies.read`
* `crm.objects.companies.write`
* `crm.objects.deals.read`
* `crm.objects.deals.write`
* `tickets`
### Personal access token
Enter the values manually when creating the credential.
Create a private app in HubSpot to get your access token. See the setup guide for detailed installation and configuration instructions.
[Get your credentials here](https://app.hubspot.com/private-apps/).
## Operations
### Account
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ----------- | ------- |
| **Get Access Token Info** | `get_access_token_info` | | |
| **Get Account Info** | `get_account_info` | | |
| **Get Contact Subscription Status** | `get_contact_subscription_status` | | |
| **List Subscription Types** | `list_subscription_types` | | |
| **Revoke Access Token** | `revoke_access_token` | | |
| **Validate Access Token** | `validate_access_token` | | |
### Activity
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Create Call Activity** | `create_call_activity` | | |
| **Create Email Activity** | `create_email_activity` | | |
| **Create Meeting Activity** | `create_meeting_activity` | | |
| **Create Note Activity** | `create_note_activity` | | |
| **Create Task Activity** | `create_task_activity` | | |
| **Delete Call Activity** | `delete_call_activity` | | |
| **Delete Email Activity** | `delete_email_activity` | | |
| **Delete Meeting Activity** | `delete_meeting_activity` | | |
| **Delete Note Activity** | `delete_note_activity` | | |
| **Delete Task Activity** | `delete_task_activity` | | |
| **Get Call Activity** | `get_call_activity` | | |
| **Get Email Activity** | `get_email_activity` | | |
| **Get Meeting Activity** | `get_meeting_activity` | | |
| **Get Note Activity** | `get_note_activity` | | |
| **Get Task Activity** | `get_task_activity` | | |
| **List Call Activities** | `list_call_activities` | | |
| **List Email Activities** | `list_email_activities` | | |
| **List Meeting Activities** | `list_meeting_activities` | | |
| **List Note Activities** | `list_note_activities` | | |
| **List Task Activities** | `list_task_activities` | | |
| **Search Call Activities** | `search_call_activities` | | |
| **Search Email Activities** | `search_email_activities` | | |
| **Search Meeting Activities** | `search_meeting_activities` | | |
| **Search Note Activities** | `search_note_activities` | | |
| **Search Task Activities** | `search_task_activities` | | |
| **Update Call Activity** | `update_call_activity` | | |
| **Update Email Activity** | `update_email_activity` | | |
| **Update Meeting Activity** | `update_meeting_activity` | | |
| **Update Note Activity** | `update_note_activity` | | |
| **Update Task Activity** | `update_task_activity` | | |
### API scope
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **List Api Scopes** | `list_api_scopes` | | |
### Association
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Create Record Association** | `create_record_association` | | |
| **Delete Record Association** | `delete_record_association` | | |
| **List Record Associations** | `list_record_associations` | | |
### Audit log
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **List Audit Logs** | `list_audit_logs` | | |
### Blog author
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------- | ------- |
| **Create Blog Author** | `create_blog_author` | | |
| **Get Blog Author** | `get_blog_author` | | |
| **List Blog Authors** | `list_blog_authors` | | |
### Blog post
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Create Blog Post** | `create_blog_post` | | |
| **Delete Blog Post** | `delete_blog_post` | | |
| **Get Blog Post** | `get_blog_post` | | |
| **List Blog Posts** | `list_blog_posts` | | |
| **Update Blog Post** | `update_blog_post` | | |
### Blog topic
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Get Blog Topic** | `get_blog_topic` | | |
| **List Blog Topics** | `list_blog_topics` | | |
### Bulk operation
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Batch Archive Records** | `batch_archive_records` | | |
| **Batch Create Records** | `batch_create_records` | | |
| **Batch Read Records** | `batch_read_records` | | |
| **Batch Update Records** | `batch_update_records` | | |
| **Batch Upsert Records** | `batch_upsert_records` | | |
### Business unit
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Get Business Unit** | `get_business_unit` | | |
| **List Business Units** | `list_business_units` | | |
### Campaign
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Create Marketing Campaign** | `create_marketing_campaign` | | |
| **Delete Marketing Campaign** | `delete_marketing_campaign` | | |
| **Get Campaign Assets** | `get_campaign_assets` | | |
| **Get Marketing Campaign** | `get_marketing_campaign` | | |
| **List Marketing Campaigns** | `list_marketing_campaigns` | | |
| **Update Campaign Budget** | `update_campaign_budget` | | |
| **Update Marketing Campaign** | `update_marketing_campaign` | | |
### Communication channel
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Get Communication Channel** | `get_communication_channel` | | |
| **List Communication Channels** | `list_communication_channels` | | |
### Company
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Create Company** | `create_company` | | |
| **Delete Company** | `delete_company` | | |
| **Get Company** | `get_company` | | |
| **List Companies** | `list_companies` | | |
| **Search Companies** | `search_companies` | | |
| **Update Company** | `update_company` | | |
### Contact
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ----------- | ------- |
| **Add Contacts to List Batch** | `add_contacts_to_list_batch` | | |
| **Create Contact** | `create_contact` | | |
| **Delete Contact** | `delete_contact` | | |
| **Enroll Contact in Sequence** | `enroll_contact_in_sequence` | | |
| **Enroll Contact in Workflow** | `enroll_contact_in_workflow` | | |
| **Get Contact** | `get_contact` | | |
| **List Contacts** | `list_contacts` | | |
| **Search Contacts** | `search_contacts` | | |
| **Subscribe Contact to List** | `subscribe_contact_to_list` | | |
| **Unenroll Contact from Sequence** | `unenroll_contact_from_sequence` | | |
| **Unenroll Contact from Workflow** | `unenroll_contact_from_workflow` | | |
| **Unsubscribe Contact from List** | `unsubscribe_contact_from_list` | | |
| **Update Contact** | `update_contact` | | |
### Content search
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------- | ------- |
| **Search Website Content** | `search_website_content` | | |
### Conversation
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------- | ------- |
| **Get Conversation Thread** | `get_conversation_thread` | | |
| **List Conversation Messages** | `list_conversation_messages` | | |
| **List Conversation Threads** | `list_conversation_threads` | | |
| **Send Conversation Message** | `send_conversation_message` | | |
| **Update Conversation Status** | `update_conversation_status` | | |
### Custom event
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ----------- | ------- |
| **Create Custom Event Definition** | `create_custom_event_definition` | | |
| **List Custom Event Definitions** | `list_custom_event_definitions` | | |
| **Send Custom Event** | `send_custom_event` | | |
| **Update Custom Event Definition** | `update_custom_event_definition` | | |
### Custom object
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Create Custom Object Schema** | `create_custom_object_schema` | | |
| **Delete Custom Object Schema** | `delete_custom_object_schema` | | |
| **Get Custom Object Schema** | `get_custom_object_schema` | | |
| **List Custom Object Schemas** | `list_custom_object_schemas` | | |
| **Purge Custom Object Schema** | `purge_custom_object_schema` | | |
| **Update Custom Object Schema** | `update_custom_object_schema` | | |
### Data Import/Export
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Create Data Export** | `create_data_export` | | |
| **Create Data Import** | `create_data_import` | | |
| **Download Data Export** | `download_data_export` | | |
| **Get Export Status** | `get_export_status` | | |
| **Get Import Status** | `get_import_status` | | |
### Database (HubDB)
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Clone Hubdb Table** | `clone_hubdb_table` | | |
| **Create Hubdb Row** | `create_hubdb_row` | | |
| **Create Hubdb Table** | `create_hubdb_table` | | |
| **Delete Hubdb Row** | `delete_hubdb_row` | | |
| **Delete Hubdb Table** | `delete_hubdb_table` | | |
| **Get Hubdb Row** | `get_hubdb_row` | | |
| **Get Hubdb Table** | `get_hubdb_table` | | |
| **List Hubdb Rows** | `list_hubdb_rows` | | |
| **List Hubdb Tables** | `list_hubdb_tables` | | |
| **Publish Hubdb Table** | `publish_hubdb_table` | | |
| **Update Hubdb Row** | `update_hubdb_row` | | |
| **Update Hubdb Table** | `update_hubdb_table` | | |
### Deal
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ----------- | ------- |
| **Create Deal** | `create_deal` | | |
| **Delete Deal** | `delete_deal` | | |
| **Get Deal** | `get_deal` | | |
| **List Deals** | `list_deals` | | |
| **Search Deals** | `search_deals` | | |
| **Update Deal** | `update_deal` | | |
### Domain
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ----------- | ------- |
| **Get Domain** | `get_domain` | | |
| **List Domains** | `list_domains` | | |
### Event attendance
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Create Event Attendance** | `create_event_attendance` | | |
| **Delete Event Attendance** | `delete_event_attendance` | | |
| **Get Event Attendance** | `get_event_attendance` | | |
### Feedback submission
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Get Feedback Submission** | `get_feedback_submission` | | |
| **List Feedback Submissions** | `list_feedback_submissions` | | |
### File
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ----------- | ------- |
| **Delete File** | `delete_file` | | |
| **Get File** | `get_file` | | |
| **List Files** | `list_files` | | |
| **Update File** | `update_file` | | |
| **Upload File** | `upload_file` | | |
### Goal
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ----------- | ------- |
| **Get Goal** | `get_goal` | | |
| **List Goals** | `list_goals` | | |
### Lead
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ----------- | ------- |
| **Create Lead** | `create_lead` | | |
| **Delete Lead** | `delete_lead` | | |
| **Get Lead** | `get_lead` | | |
| **List Leads** | `list_leads` | | |
| **Search Leads** | `search_leads` | | |
| **Update Lead** | `update_lead` | | |
### Line item
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Create Line Item** | `create_line_item` | | |
| **Delete Line Item** | `delete_line_item` | | |
| **Get Line Item** | `get_line_item` | | |
| **List Line Items** | `list_line_items` | | |
| **Search Line Items** | `search_line_items` | | |
| **Update Line Item** | `update_line_item` | | |
### List
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Create Contact List** | `create_contact_list` | | |
| **Delete Contact List** | `delete_contact_list` | | |
| **Get Contact List** | `get_contact_list` | | |
| **List Contact Lists** | `list_contact_lists` | | |
| **Update Contact List** | `update_contact_list` | | |
### Marketing event
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------- | ------- |
| **Create Marketing Event** | `create_marketing_event` | | |
| **Delete Marketing Event** | `delete_marketing_event` | | |
| **Get Marketing Event** | `get_marketing_event` | | |
| **List Marketing Events** | `list_marketing_events` | | |
| **Update Marketing Event** | `update_marketing_event` | | |
### Order
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------- | ------- |
| **Create Order** | `create_order` | | |
| **Delete Order** | `delete_order` | | |
| **Get Order** | `get_order` | | |
| **List Orders** | `list_orders` | | |
| **Search Orders** | `search_orders` | | |
| **Update Order** | `update_order` | | |
### Owner
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **List Account Owners** | `list_account_owners` | | |
### Pipeline
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------- | ------- |
| **Create Pipeline** | `create_pipeline` | | |
| **Create Pipeline Stage** | `create_pipeline_stage` | | |
| **Delete Pipeline** | `delete_pipeline` | | |
| **Delete Pipeline Stage** | `delete_pipeline_stage` | | |
| **Get Pipeline** | `get_pipeline` | | |
| **Get Pipeline Stage** | `get_pipeline_stage` | | |
| **List Pipeline Stages** | `list_pipeline_stages` | | |
| **List Pipelines** | `list_pipelines` | | |
| **Replace Pipeline** | `replace_pipeline` | | |
| **Replace Pipeline Stage** | `replace_pipeline_stage` | | |
| **Update Pipeline** | `update_pipeline` | | |
| **Update Pipeline Stage** | `update_pipeline_stage` | | |
### Product
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **Create Product** | `create_product` | | |
| **Delete Product** | `delete_product` | | |
| **Get Product** | `get_product` | | |
| **List Products** | `list_products` | | |
| **Search Products** | `search_products` | | |
| **Update Product** | `update_product` | | |
### Property
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Archive Custom Property** | `archive_custom_property` | | |
| **Create Custom Property** | `create_custom_property` | | |
| **Get Custom Property** | `get_custom_property` | | |
| **List Custom Properties** | `list_custom_properties` | | |
| **Update Custom Property** | `update_custom_property` | | |
### Quote
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------- | ------- |
| **Create Quote** | `create_quote` | | |
| **Delete Quote** | `delete_quote` | | |
| **Get Quote** | `get_quote` | | |
| **List Quotes** | `list_quotes` | | |
| **Search Quotes** | `search_quotes` | | |
| **Update Quote** | `update_quote` | | |
### Role
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ----------- | ------- |
| **Get Role** | `get_role` | | |
| **List Roles** | `list_roles` | | |
### Sequence
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Get Sequence** | `get_sequence` | | |
| **List Sequences** | `list_sequences` | | |
### Team
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ----------- | ------- |
| **Get Team** | `get_team` | | |
| **List Teams** | `list_teams` | | |
### Ticket
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------- | ------- |
| **Create Support Ticket** | `create_support_ticket` | | |
| **Delete Support Ticket** | `delete_support_ticket` | | |
| **Get Support Ticket** | `get_support_ticket` | | |
| **List Support Tickets** | `list_support_tickets` | | |
| **Search Support Tickets** | `search_support_tickets` | | |
| **Update Support Ticket** | `update_support_ticket` | | |
### URL mapping
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Create Url Redirect** | `create_url_redirect` | | |
| **Delete Url Redirect** | `delete_url_redirect` | | |
| **Get Url Redirect** | `get_url_redirect` | | |
| **List Url Redirects** | `list_url_redirects` | | |
| **Update Url Redirect** | `update_url_redirect` | | |
### User
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ----------- | ------- |
| **Create User** | `create_user` | | |
| **Delete User** | `delete_user` | | |
| **Get User** | `get_user` | | |
| **List Users** | `list_users` | | |
| **Update User** | `update_user` | | |
### Visitor
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------- | ------- |
| **Get Visitor** | `get_visitor` | | |
| **Identify Website Visitor** | `identify_website_visitor` | | |
### Website page
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Create Website Page** | `create_website_page` | | |
| **Delete Website Page** | `delete_website_page` | | |
| **Get Website Page** | `get_website_page` | | |
| **List Website Pages** | `list_website_pages` | | |
| **Publish Website Page** | `publish_website_page` | | |
| **Update Website Page** | `update_website_page` | | |
### Workflow
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Get Workflow** | `get_workflow` | | |
| **List Workflows** | `list_workflows` | | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ---------------------------------------------------------------------- | ------- |
| **On Company Created** | `on_company_created` | Trigger: fires when a company is created in the HubSpot account. | Yes |
| **On Contact Created** | `on_contact_created` | Trigger: fires when a contact is created in the HubSpot account. | Yes |
| **On Contact Deleted** | `on_contact_deleted` | Trigger: fires when a contact is deleted in the HubSpot account. | Yes |
| **On Contact Updated** | `on_contact_updated` | Trigger: fires when a contact property changes in the HubSpot account. | Yes |
| **On Deal Created** | `on_deal_created` | Trigger: fires when a deal is created in the HubSpot account. | Yes |
| **On Deal Updated** | `on_deal_updated` | Trigger: fires when a deal property changes in the HubSpot account. | Yes |
| **On Ticket Created** | `on_ticket_created` | Trigger: fires when a ticket is created in the HubSpot account. | Yes |
# Instagram
Source: https://docs.noclick.com/integrations/instagram
Connect Instagram to your workflows: 39 operations across 6 categories.
The Instagram node adds Instagram operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Instagram also includes 2 trigger operations (marked in the tables below) that can start a workflow when something happens in Instagram.
You can wire the Instagram node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
Instagram has two kinds of connection. The **Login** option below signs you in with an Instagram professional account and needs no Facebook Page. The **System user token** and **Page access token** options reach Instagram through Facebook, which needs a Page linked to the account.
Hashtag search, product tagging, and business discovery are not part of a **Login** connection. On one, **Search Hashtag Id**, **Get Hashtag Media**, **Discover Business Account**, **Tag Products in Media**, **Get Media Product Tags**, and **Delete Product Tags from Media** stop with a message telling you to connect through Facebook Login instead.
**Get Mentioned Media** and **Get Mentioned Comments** each look up one mention by its id, in the **Media ID** and **Comment ID** fields. Instagram has no endpoint that lists mentions, so the id comes from the mentions webhook Instagram sends when someone @mentions the account.
**On Comment** and **On Message** start a run when someone comments on the connected account's posts or sends it a direct message. Instagram signs and pushes each event, so nothing is polled. Both triggers need a **Login** connection, and they do not make the list operations return anything they did not return before.
Set **Media ID** on **On Comment** to receive comments on one post only, or **Sender ID** on **On Message** to receive messages from one Instagram-scoped sender only. Leave either blank to receive events across the connected account. Comments the account wrote itself and echoes of messages it sent are skipped, so an automated reply cannot trigger the workflow again.
Running either step by hand reports that no event was delivered, because events reach the workflow through the trigger rather than through the step. The trigger's **Status** field means the subscription is registered with Instagram, not that a delivery has been seen. Instagram's own permissions decide which accounts events are delivered for.
## Credentials
Connect Instagram under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Login
Sign in with your Instagram account when prompted; no keys to copy.
NoClick requests the following permissions:
* `instagram_business_basic`
* `instagram_business_content_publish`
* `instagram_business_manage_comments`
* `instagram_business_manage_messages`
### System user token
Enter the values manually when creating the credential.
[Get your credentials here](https://business.facebook.com/settings/system-users).
### Page access token
Enter the values manually when creating the credential.
[Get your credentials here](https://developers.facebook.com/tools/explorer/).
## Operations
### Comment
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------------------------------- | ------- |
| **Create Media Comment** | `create_media_comment` | Create a comment on a media item | |
| **Delete Comment** | `delete_comment` | Delete a comment | |
| **Get Comment** | `get_comment` | Read one comment selected by ID, including its author and parent media. | |
| **Get Mentioned Comments** | `get_mentioned_comments` | Get comments where the account is @mentioned | |
| **Hide or Unhide Comment** | `hide_or_unhide_comment` | Hide or unhide a comment | |
| **List Media Comments** | `list_media_comments` | List comments on a media item | |
| **On Comment** | `on_comment` | A new customer comment delivered by Instagram's signed webhook. | Yes |
| **Reply to Comment** | `reply_to_comment` | Reply to a comment | |
| **Scrape Post Comments** | `scrape_post_comments` | Scrape comments from Instagram posts or reels via Apify (\$1–\$1.50/1k comments). | |
### Hashtag
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------------------------------------------------- | ------- |
| **Get Hashtag Media** | `get_hashtag_media` | Get top or recent media for a hashtag | |
| **Scrape Hashtag Posts** | `scrape_hashtag_posts` | Scrape recent posts for a hashtag via Apify (\$1.50/1k results). | |
| **Search Hashtag Id** | `search_hashtag_id` | Search for a hashtag ID | |
### Media
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Delete Product Tags from Media** | `delete_product_tags_from_media` | Delete product tags from a media post | |
| **Get Media Details** | `get_media_details` | Get details of a specific media item | |
| **Get Media Insights** | `get_media_insights` | Get insights for a specific media item | |
| **Get Media Product Tags** | `get_media_product_tags` | Get product tags on a media post | |
| **Get Mentioned Media** | `get_mentioned_media` | Get media where the account is @mentioned | |
| **List User Media** | `list_user_media` | List media from the authenticated user's account | |
| **Publish Carousel Post** | `publish_carousel_post` | Publish a carousel (multiple images/videos) to Instagram | |
| **Publish Photo Post** | `publish_photo_post` | Publish a photo to Instagram | |
| **Publish Video Reel** | `publish_video_reel` | Publish a video (Reel) to Instagram | |
| **Scrape Individual Post** | `scrape_individual_post` | Scrape a specific Instagram post or reel by URL via Apify (\$1.50/1k results). | |
| **Tag Products in Media** | `tag_products_in_media` | Tag products in a media post for Instagram Shopping | |
### Messaging
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | -------------------------------------------------------------------- | ------- |
| **Get Conversation** | `get_conversation` | Get a conversation and its messages | |
| **Get DM Message** | `get_dm_message` | Get a single direct message | |
| **List Conversations** | `list_conversations` | List Instagram DM conversations | |
| **Mark DM Seen** | `mark_dm_seen` | Mark direct messages from a sender as seen | |
| **On Message** | `on_message` | An inbound customer message delivered by Instagram's signed webhook. | Yes |
| **Send DM** | `send_dm` | Send a text direct message | |
| **Send DM Attachment** | `send_dm_attachment` | Send a media attachment (image/video/audio) as a direct message | |
| **Send DM Reaction** | `send_dm_reaction` | React to a direct message | |
### Profile
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------------------------------------------------------------- | ------- |
| **Discover Business Account** | `discover_business_account` | Discover public business/creator account information | |
| **Get Account Insights** | `get_account_insights` | Get insights for the Instagram account | |
| **Get User Profile** | `get_user_profile` | Get the authenticated user's Instagram profile | |
| **Scrape Profile Metadata** | `scrape_profile_metadata` | Scrape public Instagram profile metadata via Apify (\$1.60/1k profiles). | |
| **Scrape Profile Posts** | `scrape_profile_posts` | Scrape recent posts from one or more public Instagram profiles via Apify (\$1/1k posts). | |
| **Scrape Profile Reels** | `scrape_profile_reels` | Scrape reels from public Instagram profiles via Apify (\$1/1k reels). | |
### Story
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ---------------------------------- | ------- |
| **Publish Photo Story** | `publish_photo_story` | Publish a photo story to Instagram | |
| **Publish Video Story** | `publish_video_story` | Publish a video story to Instagram | |
# Instantly
Source: https://docs.noclick.com/integrations/instantly
Connect Instantly to your workflows: 35 operations across 7 categories.
The Instantly node adds Instantly operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Instantly also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Instantly.
You can wire the Instantly node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Instantly under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.instantly.ai/app/settings/integrations).
## Operations
### Analytics
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------ | ------- |
| **Get Account Warmup Analytics** | `get_account_warmup_analytics` | Get warmup analytics for an email account. | |
### Campaign
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | -------------------------------------------------- | ------- |
| **Activate Campaign** | `activate_campaign` | Activate (start/resume) a campaign. | |
| **Create Campaign** | `create_campaign` | Create a new email campaign. | |
| **Delete Campaign** | `delete_campaign` | Delete a campaign. | |
| **Get Campaign** | `get_campaign` | Get details of a specific campaign. | |
| **Get Campaign Analytics** | `get_campaign_analytics` | Get analytics for a campaign. | |
| **Get Daily Campaign Analytics** | `get_daily_campaign_analytics` | Get daily campaign analytics across all campaigns. | |
| **List Campaigns** | `list_campaigns` | List campaigns in your workspace. | |
| **Pause Campaign** | `pause_campaign` | Pause (stop) a running campaign. | |
| **Search Campaigns by Contact Email** | `search_campaigns_by_contact_email` | Search campaigns by lead email address. | |
| **Update Campaign** | `update_campaign` | Update an existing campaign. | |
### Email
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------- | ------- |
| **Count Unread Emails** | `count_unread_emails` | Count unread emails in your inbox. | |
| **Get Email** | `get_email` | Get details of a specific email. | |
| **List Emails** | `list_emails` | List emails with optional filters. | |
| **Mark Email Thread As Read** | `mark_email_thread_as_read` | Mark an email thread as read. | |
| **Reply to Email** | `reply_to_email` | Reply to an email thread. | |
### Email account
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------------------- | ------- |
| **Create Email Account** | `create_email_account` | Add a new email account to your workspace. | |
| **Delete Email Account** | `delete_email_account` | Delete an email account from your workspace. | |
| **Get Email Account** | `get_email_account` | Get details of a specific email account. | |
| **List Email Accounts** | `list_email_accounts` | List email accounts in your workspace. | |
| **Pause Email Account** | `pause_email_account` | Pause an email account. | |
| **Resume Email Account** | `resume_email_account` | Resume a paused email account. | |
### Lead
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------- | ------- |
| **Bulk Add Leads to Campaign** | `bulk_add_leads_to_campaign` | Add up to 1000 leads to a campaign or list. | |
| **Create Lead** | `create_lead` | Create a new lead. | |
| **Delete Lead** | `delete_lead` | Delete a lead. | |
| **Get Lead** | `get_lead` | Get details of a specific lead. | |
| **List Leads** | `list_leads` | List leads with optional filters. | |
| **Move Leads to Campaign** | `move_leads_to_campaign` | Move leads to a different campaign or list. | |
| **Update Lead** | `update_lead` | Update an existing lead. | |
### Lead list
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------ | ------- |
| **Create Lead List** | `create_lead_list` | Create a new lead list. | |
| **Delete Lead List** | `delete_lead_list` | Delete a lead list. | |
| **Get Lead List** | `get_lead_list` | Get details of a specific lead list. | |
| **List Lead Lists** | `list_lead_lists` | List all lead lists. | |
| **Update Lead List** | `update_lead_list` | Update an existing lead list. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------------------------------------------ | ------- |
| **Receive Webhook Events** | `receive_webhook_events` | Receive webhook events from Instantly (e.g. reply\_received, positive\_reply). | Yes |
# Intercom
Source: https://docs.noclick.com/integrations/intercom
Connect Intercom to your workflows: 53 operations across 8 categories.
The Intercom node adds Intercom operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Intercom also includes 4 trigger operations (marked in the tables below) that can start a workflow when something happens in Intercom.
You can wire the Intercom node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Intercom under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Intercom account when prompted; no keys to copy.
[Get your credentials here](https://app.intercom.com/a/apps/_/developer-hub).
NoClick requests the following permissions:
* `read_write_users`
* `read_write_companies`
* `read_write_conversations`
* `read_write_tags`
* `read_write_events`
* `read_write_tickets`
* `read_admins`
* `read_teams`
### Access token
Enter the values manually when creating the credential.
Create a private app in the Intercom Developer Hub, open Configure > Authentication, copy the Access Token, and select the region matching your workspace's data residency.
[Get your credentials here](https://app.intercom.com/a/apps/_/developer-hub).
## Operations
### Companies
| Operation | ID | Description | Trigger |
| ---------------------------- | ----------------------- | ------------------------------------------ | ------- |
| **Create or Update Company** | `create_company` | Create or upsert a company by company\_id. | |
| **Delete Company** | `delete_company` | | |
| **Get Company** | `get_company` | Retrieve a company by its Intercom ID. | |
| **List Companies** | `list_companies` | | |
| **List Company Contacts** | `list_company_contacts` | List contacts attached to a company. | |
### Contacts
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------------- | ------- |
| **Archive Contact** | `archive_contact` | Archive (soft-delete) a contact. | |
| **Attach Contact to Company** | `attach_contact_to_company` | | |
| **Create Contact Note** | `create_note` | Add an internal note to a contact. | |
| **Create or Update Contact** | `create_contact` | Create (or upsert) a contact, a user or a lead. | |
| **Delete Contact** | `delete_contact` | | |
| **Detach Contact from Company** | `detach_contact_from_company` | | |
| **Get Contact** | `get_contact` | Retrieve a single contact by its Intercom ID. | |
| **List Contact Companies** | `list_contact_companies` | | |
| **List Contact Notes** | `list_contact_notes` | | |
| **List Contacts** | `list_contacts` | List/cursor-paginate all contacts. | |
| **Merge Contacts** | `merge_contacts` | Merge a lead into a user. | |
| **Search Contacts** | `search_contacts` | Search contacts by attribute filters (JSON query body). | |
| **Tag Contact** | `tag_contact` | | |
| **Unarchive Contact** | `unarchive_contact` | | |
| **Untag Contact** | `untag_contact` | | |
| **Update Contact** | `update_contact` | Update a contact's attributes. | |
### Conversations
| Operation | ID | Description | Trigger |
| ------------------------- | ---------------------- | --------------------------------------------------------------- | ------- |
| **Create Conversation** | `create_conversation` | Start a conversation from a contact. | |
| **Get Conversation** | `get_conversation` | Retrieve a conversation with its parts. | |
| **List Conversations** | `list_conversations` | List all conversations. | |
| **Manage Conversation** | `manage_conversation` | Assign, snooze, open, or close a conversation. | |
| **Reply to Conversation** | `reply_conversation` | Add an admin or user reply (comment or note) to a conversation. | |
| **Search Conversations** | `search_conversations` | Search conversations by filters (JSON query body). | |
| **Tag Conversation** | `tag_conversation` | Attach a tag to a conversation. | |
| **Untag Conversation** | `untag_conversation` | | |
### Help center
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Create Article** | `create_article` | | |
| **Delete Article** | `delete_article` | | |
| **Get Article** | `get_article` | | |
| **List Articles** | `list_articles` | | |
| **Update Article** | `update_article` | | |
### Messaging
| Operation | ID | Description | Trigger |
| --------------------- | -------------- | ---------------------------------------------------------------- | ------- |
| **Send Message** | `send_message` | Send an in-app or email message from an admin to a contact. | |
| **Submit Data Event** | `submit_event` | Submit a custom data event for a contact (analytics / triggers). | |
### Tickets
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------- | ------- |
| **Create Ticket** | `create_ticket` | Create a support, back-office, or tracker ticket. | |
| **Get Ticket** | `get_ticket` | Retrieve a ticket by ID. | |
| **List Ticket Types** | `list_ticket_types` | | |
| **Reply to Ticket** | `reply_ticket` | | |
| **Search Tickets** | `search_tickets` | Search tickets by filters (JSON query body). | |
| **Update Ticket** | `update_ticket` | Update ticket state, attributes, or assignee. | |
### Workspace
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------------------- | ------- |
| **Create Tag** | `create_tag` | Create a tag (or update an existing tag by name). | |
| **Delete Tag** | `delete_tag` | | |
| **List Admins** | `list_admins` | List all admins (teammates) in the workspace. | |
| **List Data Attributes** | `list_data_attributes` | List custom/standard data attributes (schema). | |
| **List Segments** | `list_segments` | List all segments. | |
| **List Tags** | `list_tags` | List all tags in the workspace. | |
| **List Teams** | `list_teams` | List all teams in the workspace. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------------------- | ----------------------- | ------------------------------------------------------------------------- | ------- |
| **On Company / Workspace Event** | `on_company_event` | Trigger: fire when an Intercom company, admin, or workspace event occurs. | Yes |
| **On Contact Event** | `on_contact_event` | Trigger: fire when an Intercom contact event occurs. | Yes |
| **On Conversation Event** | `on_conversation_event` | Trigger: fire when an Intercom conversation event occurs. | Yes |
| **On Ticket Event** | `on_ticket_event` | Trigger: fire when an Intercom ticket event occurs. | Yes |
# Jira
Source: https://docs.noclick.com/integrations/jira
Connect Jira to your workflows: 197 operations across 28 categories.
The Jira node adds Jira operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Jira also includes 4 trigger operations (marked in the tables below) that can start a workflow when something happens in Jira.
You can wire the Jira node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Jira under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Jira account when prompted; no keys to copy.
NoClick requests the following permissions:
* `delete:sprint:jira-software`
* `manage:jira-configuration`
* `manage:jira-project`
* `manage:jira-webhook`
* `offline_access`
* `read:board-scope:jira-software`
* `read:epic:jira-software`
* `read:issue-details:jira`
* `read:jira-user`
* `read:jira-work`
* `read:jql:jira`
* `read:project:jira`
* `read:sprint:jira-software`
* `write:epic:jira-software`
* `write:jira-work`
* `write:sprint:jira-software`
### API token
Enter the values manually when creating the credential.
[Get your credentials here](https://id.atlassian.com/manage-profile/security/api-tokens).
## Operations
### Attachment
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------ | ------- |
| **Delete Attachment** | `delete_attachment` | Delete an attachment | |
| **Get Attachment Metadata** | `get_attachment_metadata` | Get metadata for an attachment | |
### Board
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------ | ------- |
| **Get Board** | `get_board` | Get a board by ID | |
| **Get Board Backlog** | `get_board_backlog` | Get backlog issues for a board | |
| **List Board Issues** | `list_board_issues` | Get issues for a board | |
| **List Boards** | `list_boards` | Get all boards | |
### Component
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------- | ------- |
| **Create Project Component** | `create_project_component` | Create a project component | |
| **Delete Component** | `delete_component` | Delete a component | |
| **Get Component** | `get_component` | Get a component by ID | |
| **Get Component Issue Count** | `get_component_issue_count` | Get issue count for a component | |
| **Update Component** | `update_component` | Update a component | |
### Dashboard
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------- | ------- |
| **Create Dashboard** | `create_dashboard` | Create a new dashboard | |
| **Delete Dashboard** | `delete_dashboard` | Delete a dashboard | |
| **Get Dashboard** | `get_dashboard` | Get a dashboard by ID | |
| **List Dashboards** | `list_dashboards` | Get all dashboards | |
| **Update Dashboard** | `update_dashboard` | Update a dashboard | |
### Epic
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------ | ------- |
| **Get Epic** | `get_epic` | Get an epic by ID or key | |
| **List Epic Issues** | `list_epic_issues` | Get issues in an epic | |
### Field
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | -------------------------------------- | ------- |
| **Create Custom Field** | `create_custom_field` | Create a custom field | |
| **Get Field Configuration** | `get_field_configuration` | Get a field configuration by ID | |
| **Get Field Configuration Scheme** | `get_field_configuration_scheme` | Get a field configuration scheme by ID | |
| **List Field Configuration Schemes** | `list_field_configuration_schemes` | Get all field configuration schemes | |
| **List Field Configurations** | `list_field_configurations` | Get all field configurations | |
| **List Fields** | `list_fields` | Get all fields | |
### Filter
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------- | ------- |
| **Create Jql Filter** | `create_jql_filter` | Create a filter (saved JQL query) | |
| **Delete Filter** | `delete_filter` | Delete a filter | |
| **Get Filter** | `get_filter` | Get a filter by ID | |
| **Search Filters** | `search_filters` | Search for filters | |
| **Update Filter** | `update_filter` | Update a filter | |
### Group
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------- | ------- |
| **Add User to Group** | `add_user_to_group` | Add a user to a group | |
| **Create Group** | `create_group` | Create a new group | |
| **Delete Group** | `delete_group` | Delete a group | |
| **Get Group** | `get_group` | Get a group by name | |
| **List Group Members** | `list_group_members` | Get members of a group | |
| **List Groups** | `list_groups` | Get all groups | |
| **Remove User from Group** | `remove_user_from_group` | Remove a user from a group | |
### Issue
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | -------------------------------------------------------- | ------- |
| **Add Attachment to Issue** | `add_attachment_to_issue` | Add attachment to an issue | |
| **Add Comment to Issue** | `add_comment_to_issue` | Add a comment to an issue | |
| **Add Labels to Issue** | `add_labels_to_issue` | Add labels to an issue | |
| **Add Vote to Issue** | `add_vote_to_issue` | Add vote to an issue | |
| **Add Watcher to Issue** | `add_watcher_to_issue` | Add watcher to an issue | |
| **Add Worklog to Issue** | `add_worklog_to_issue` | Add worklog to an issue (time tracking) | |
| **Assign Issue to User** | `assign_issue_to_user` | Assign an issue to a user | |
| **Bulk Create Issues** | `bulk_create_issues` | Create multiple issues in bulk | |
| **Bulk Delete Issues** | `bulk_delete_issues` | Delete multiple issues in bulk | |
| **Bulk Update Issues** | `bulk_update_issues` | Update multiple issues in bulk | |
| **Create Issue** | `create_issue` | Create a new issue | |
| **Create Remote Link on Issue** | `create_remote_link_on_issue` | Create a remote link on an issue | |
| **Delete Issue** | `delete_issue` | Delete an issue | |
| **Delete Issue Comment** | `delete_issue_comment` | Delete a comment | |
| **Delete Issue Link** | `delete_issue_link` | Delete an issue link | |
| **Delete Issue Property** | `delete_issue_property` | Delete a property from an issue | |
| **Delete Remote Link** | `delete_remote_link` | Delete a remote link | |
| **Delete Worklog** | `delete_worklog` | Delete a worklog | |
| **Download Attachment** | `download_attachment` | Download an attachment (returns a stored file reference) | |
| **Get Attachment Human Readable** | `get_attachment_human_readable` | Get attachment with expanded human-readable data | |
| **Get Issue** | `get_issue` | Get a specific issue by key or ID | |
| **Get Issue Changelog** | `get_issue_changelog` | Get changelog for an issue | |
| **Get Issue Comment** | `get_issue_comment` | Get a comment by ID | |
| **Get Issue Labels** | `get_issue_labels` | Get all labels for an issue | |
| **Get Issue Link** | `get_issue_link` | Get an issue link by ID | |
| **Get Issue Property** | `get_issue_property` | Get a property value for an issue | |
| **Get Issue Security Level** | `get_issue_security_level` | Get issue security level by ID | |
| **Get Issue Votes** | `get_issue_votes` | Get votes for an issue | |
| **Get Worklog** | `get_worklog` | Get a worklog by ID | |
| **Link Two Issues** | `link_two_issues` | Create a link between two issues | |
| **List Issue Attachments** | `list_issue_attachments` | Get all attachments for an issue | |
| **List Issue Comments** | `list_issue_comments` | Get all comments for an issue | |
| **List Issue Property Keys** | `list_issue_property_keys` | Get all property keys for an issue | |
| **List Issue Remote Links** | `list_issue_remote_links` | Get remote links for an issue | |
| **List Issue Transitions** | `list_issue_transitions` | List available transitions for an issue | |
| **List Issue Watchers** | `list_issue_watchers` | Get watchers for an issue | |
| **List Issue Worklogs** | `list_issue_worklogs` | Get all worklogs for an issue | |
| **List Worklog Property Keys** | `list_worklog_property_keys` | Get all worklog property keys for a worklog | |
| **Move Issues to Epic** | `move_issues_to_epic` | Move issues to an epic | |
| **Move Issues to Sprint** | `move_issues_to_sprint` | Move issues to a sprint | |
| **Remove Vote from Issue** | `remove_vote_from_issue` | Remove vote from an issue | |
| **Remove Watcher from Issue** | `remove_watcher_from_issue` | Remove watcher from an issue | |
| **Replace Issue Labels** | `replace_issue_labels` | Set labels for an issue (replaces existing) | |
| **Search Issues with Jql** | `search_issues_with_jql` | Search for issues using JQL | |
| **Send Issue Notification** | `send_issue_notification` | Send notification for an issue | |
| **Set Issue Property** | `set_issue_property` | Set a property value for an issue | |
| **Transition Issue Status** | `transition_issue_status` | Transition an issue to a new status | |
| **Update Issue** | `update_issue` | Update an existing issue | |
| **Update Issue Comment** | `update_issue_comment` | Update a comment | |
| **Update Worklog** | `update_worklog` | Update a worklog | |
### Issue link type
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ---------------------------- | ------- |
| **Create Issue Link Type** | `create_issue_link_type` | Create a new issue link type | |
| **Delete Issue Link Type** | `delete_issue_link_type` | Delete an issue link type | |
| **Get Issue Link Type** | `get_issue_link_type` | Get an issue link type by ID | |
| **List Issue Link Types** | `list_issue_link_types` | Get all issue link types | |
| **Update Issue Link Type** | `update_issue_link_type` | Update an issue link type | |
### Issue security
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ---------------------------------- | ------- |
| **Get Issue Security Scheme** | `get_issue_security_scheme` | Get an issue security scheme by ID | |
| **List Issue Security Schemes** | `list_issue_security_schemes` | Get all issue security schemes | |
### Issue type
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------- | ------- |
| **Create Issue Type** | `create_issue_type` | Create a new issue type | |
| **Create Issue Type Scheme** | `create_issue_type_scheme` | Create an issue type scheme | |
| **Delete Issue Type** | `delete_issue_type` | Delete an issue type | |
| **Delete Issue Type Scheme** | `delete_issue_type_scheme` | Delete an issue type scheme | |
| **Get Issue Type** | `get_issue_type` | Get an issue type by ID | |
| **Get Issue Type Scheme** | `get_issue_type_scheme` | Get an issue type scheme by ID | |
| **Get Issue Type Screen Scheme** | `get_issue_type_screen_scheme` | Get an issue type screen scheme by ID | |
| **List Issue Type Avatars** | `list_issue_type_avatars` | Get all avatars for an issue type | |
| **List Issue Type Schemes** | `list_issue_type_schemes` | Get all issue type schemes | |
| **List Issue Type Screen Schemes** | `list_issue_type_screen_schemes` | Get all issue type screen schemes | |
| **List Issue Types** | `list_issue_types` | Get all issue types | |
| **Update Issue Type** | `update_issue_type` | Update an issue type | |
| **Update Issue Type Scheme** | `update_issue_type_scheme` | Update an issue type scheme | |
### JQL
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ------------------------------------- | ------- |
| **Get Jql Autocomplete Suggestions** | `get_jql_autocomplete_suggestions` | Get auto-complete suggestions for JQL | |
| **Validate Jql Query** | `validate_jql_query` | Validate a JQL query | |
### Notification scheme
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------- | ------- |
| **Get Notification Scheme** | `get_notification_scheme` | Get a notification scheme by ID | |
| **List Notification Schemes** | `list_notification_schemes` | Get all notification schemes | |
### Permission
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------- | ------- |
| **Check User Permissions** | `check_user_permissions` | Check if user has specific permissions | |
| **List All Permissions** | `list_all_permissions` | Get all permissions in the system | |
### Permission scheme
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------ | ------- |
| **Create Permission Scheme** | `create_permission_scheme` | Create a new permission scheme | |
| **Delete Permission Scheme** | `delete_permission_scheme` | Delete a permission scheme | |
| **Get Permission Scheme** | `get_permission_scheme` | Get a permission scheme by ID | |
| **List Permission Schemes** | `list_permission_schemes` | Get all permission schemes | |
### Priority
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------- | ------- |
| **Create Priority** | `create_priority` | Create a new priority | |
| **Delete Priority** | `delete_priority` | Delete a priority | |
| **Get Priority** | `get_priority` | Get a priority by ID | |
| **Get Priority Scheme** | `get_priority_scheme` | Get a priority scheme by ID | |
| **List Priorities** | `list_priorities` | Get all priorities | |
| **List Priority Schemes** | `list_priority_schemes` | Get all priority schemes | |
| **Update Priority** | `update_priority` | Update a priority | |
### Project
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ------------------------------------------- | ------- |
| **Add Actors to Project Role** | `add_actors_to_project_role` | Add actors (users/groups) to a project role | |
| **Archive Project** | `archive_project` | Archive a project | |
| **Create Project Category** | `create_project_category` | Create a project category | |
| **Delete Project Category** | `delete_project_category` | Delete a project category | |
| **Get Project** | `get_project` | Get project details | |
| **Get Project Category** | `get_project_category` | Get a project category by ID | |
| **Get Project Role** | `get_project_role` | Get a specific project role | |
| **List Project Avatars** | `list_project_avatars` | Get all avatars for a project | |
| **List Project Categories** | `list_project_categories` | Get all project categories | |
| **List Project Components** | `list_project_components` | Get all components for a project | |
| **List Project Issue Types** | `list_project_issue_types` | Get issue types for a project | |
| **List Project Roles** | `list_project_roles` | Get all project roles for a project | |
| **List Project Versions** | `list_project_versions` | Get all versions for a project | |
| **List Projects** | `list_projects` | List accessible projects | |
| **Remove Actors from Project Role** | `remove_actors_from_project_role` | Remove actors from a project role | |
| **Restore Archived Project** | `restore_archived_project` | Restore an archived project | |
| **Search Projects** | `search_projects` | Search for projects | |
| **Update Project Category** | `update_project_category` | Update a project category | |
### Resolution
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------------------- | ------- |
| **Create Resolution** | `create_resolution` | Create a new resolution | |
| **Delete Resolution** | `delete_resolution` | Delete a resolution | |
| **Get Resolution** | `get_resolution` | Get a resolution by ID | |
| **List Resolutions** | `list_resolutions` | Get all resolutions | |
| **Update Resolution** | `update_resolution` | Update a resolution | |
### Screen
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------- | ------- |
| **Get Screen** | `get_screen` | Get a screen by ID | |
| **List Screen Tab Fields** | `list_screen_tab_fields` | Get all fields for a screen tab | |
| **List Screen Tabs** | `list_screen_tabs` | Get all tabs for a screen | |
| **List Screens** | `list_screens` | Get all screens | |
### Sprint
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------------------- | ------- |
| **Create Sprint** | `create_sprint` | Create a sprint | |
| **Delete Sprint** | `delete_sprint` | Delete a sprint | |
| **Get Sprint** | `get_sprint` | Get a sprint by ID | |
| **List Board Sprints** | `list_board_sprints` | Get sprints for a board | |
| **List Sprint Issues** | `list_sprint_issues` | Get issues in a sprint | |
| **Update Sprint** | `update_sprint` | Update a sprint | |
### Status
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------- | ------- |
| **Create Status** | `create_status` | Create a new status | |
| **Delete Status** | `delete_status` | Delete a status | |
| **Get Status** | `get_status` | Get a status by ID | |
| **List Statuses** | `list_statuses` | Get all statuses | |
| **Update Status** | `update_status` | Update a status | |
### System
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------ | ------- |
| **Get Application Property** | `get_application_property` | Get an application property | |
| **Get Audit Log** | `get_audit_log` | Get audit log records | |
| **Get Global Configuration** | `get_global_configuration` | Get global configuration | |
| **Get Jira License Info** | `get_jira_license_info` | Get Jira license information | |
| **Get Jira Server Info** | `get_jira_server_info` | Get Jira server information | |
| **List Application Properties** | `list_application_properties` | Get all application properties | |
| **Set Application Property** | `set_application_property` | Set an application property | |
### User
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------ | ------- |
| **Delete User Property** | `delete_user_property` | Delete a property from a user | |
| **Get Current User** | `get_current_user` | Get current user details | |
| **Get Current User Permissions** | `get_current_user_permissions` | Get permissions for the current user | |
| **Get Current User Preferences** | `get_current_user_preferences` | Get current user preferences | |
| **Get User** | `get_user` | Get a user by account ID | |
| **Get User Property** | `get_user_property` | Get a property for a user | |
| **List User Groups** | `list_user_groups` | Get groups that a user belongs to | |
| **List User Properties** | `list_user_properties` | Get all properties for a user | |
| **Search Users** | `search_users` | Search for users | |
| **Set Current User Preference** | `set_current_user_preference` | Set a user preference | |
| **Set User Property** | `set_user_property` | Set a property for a user | |
### Version
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------------- | ------- |
| **Create Project Version** | `create_project_version` | Create a project version/release | |
| **Delete Version** | `delete_version` | Delete a version | |
| **Get Version** | `get_version` | Get a version by ID | |
| **Get Version Issue Counts** | `get_version_issue_counts` | Get issue counts for a version | |
| **Get Version Unresolved Count** | `get_version_unresolved_count` | Get count of unresolved issues for a version | |
| **Merge Project Versions** | `merge_project_versions` | Merge two versions | |
| **Move Version Position** | `move_version_position` | Move version position | |
| **Update Version** | `update_version` | Update a version | |
### Workflow
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------- | ------- |
| **Get Workflow** | `get_workflow` | Get a workflow by name | |
| **Get Workflow Scheme** | `get_workflow_scheme` | Get a workflow scheme by ID | |
| **List Workflow Schemes** | `list_workflow_schemes` | Get all workflow schemes | |
| **List Workflows** | `list_workflows` | Get all workflows | |
### Worklog
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------ | ------- |
| **List Deleted Worklog Ids** | `list_deleted_worklog_ids` | Get list of IDs for deleted worklogs | |
| **List Updated Worklog Ids** | `list_updated_worklog_ids` | Get list of IDs for updated worklogs | |
### Other
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------- | ------- |
| **On Comment Added** | `on_comment_added` | Trigger: fires when a comment is added to a Jira issue. | Yes |
| **On Issue Created** | `on_issue_created` | Trigger: fires when a Jira issue is created. | Yes |
| **On Issue Deleted** | `on_issue_deleted` | Trigger: fires when a Jira issue is deleted. | Yes |
| **On Issue Updated** | `on_issue_updated` | Trigger: fires when a Jira issue is updated. | Yes |
# Klaviyo
Source: https://docs.noclick.com/integrations/klaviyo
Connect Klaviyo to your workflows: 107 operations across 16 categories.
The Klaviyo node adds Klaviyo operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Klaviyo also includes 33 trigger operations (marked in the tables below) that can start a workflow when something happens in Klaviyo.
You can wire the Klaviyo node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Klaviyo under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Klaviyo account when prompted; no keys to copy.
[Get your credentials here](https://developers.klaviyo.com/en/docs/set_up_oauth).
NoClick requests the following permissions:
* `accounts:read`
* `campaigns:read`
* `campaigns:write`
* `catalogs:read`
* `catalogs:write`
* `coupons:read`
* `coupons:write`
* `coupon-codes:read`
* `coupon-codes:write`
* `data-privacy:write`
* `events:read`
* `events:write`
* `flows:read`
* `flows:write`
* `images:read`
* `images:write`
* `lists:read`
* `lists:write`
* `metrics:read`
* `profiles:read`
* `profiles:write`
* `segments:read`
* `segments:write`
* `subscriptions:read`
* `subscriptions:write`
* `tags:read`
* `tags:write`
* `templates:read`
* `templates:write`
* `webhooks:read`
* `webhooks:write`
### API key
Enter the values manually when creating the credential.
In Klaviyo, go to Settings → API keys → Create Private API Key. Give it Full Access (scopes can't be changed later) and paste the pk\_ key here.
[Get your credentials here](https://www.klaviyo.com/settings/account/api-keys).
## Operations
### Account
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------- | ------- |
| **Get Account** | `get_account` | | |
| **Request Profile Deletion** | `request_profile_deletion` | | |
### Campaigns
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Clone Campaign** | `clone_campaign` | | |
| **Create Campaign** | `create_campaign` | | |
| **Delete Campaign** | `delete_campaign` | | |
| **Get Campaign** | `get_campaign` | | |
| **Get Campaign Messages** | `get_campaign_messages` | | |
| **Get Campaigns** | `list_campaigns` | | |
| **Send Campaign** | `send_campaign` | | |
| **Update Campaign** | `update_campaign` | | |
### Catalog
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Create Catalog Item** | `create_catalog_item` | | |
| **Delete Catalog Item** | `delete_catalog_item` | | |
| **Get Catalog Item** | `get_catalog_item` | | |
| **Get Catalog Items** | `list_catalog_items` | | |
| **Update Catalog Item** | `update_catalog_item` | | |
### Coupons
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------- | ------- |
| **Create Coupon** | `create_coupon` | | |
| **Create Coupon Code** | `create_coupon_code` | | |
| **Get Coupon Codes** | `list_coupon_codes` | | |
| **Get Coupons** | `list_coupons` | | |
### Events
| Operation | ID | Description | Trigger |
| --------------- | -------------- | ----------- | ------- |
| **Get Event** | `get_event` | | |
| **Get Events** | `list_events` | | |
| **Track Event** | `create_event` | | |
### Flows
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------- | ------- |
| **Get Flow** | `get_flow` | | |
| **Get Flow Actions** | `get_flow_actions` | | |
| **Get Flow Messages** | `get_flow_messages` | | |
| **Get Flows** | `list_flows` | | |
| **Update Flow Status** | `update_flow_status` | | |
### Images
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Get Images** | `list_images` | | |
| **Upload Image from URL** | `upload_image_from_url` | | |
### Lists
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Add Profiles to List** | `add_profiles_to_list` | | |
| **Create List** | `create_list` | | |
| **Delete List** | `delete_list` | | |
| **Get List** | `get_list` | | |
| **Get List Profiles** | `get_list_profiles` | | |
| **Get Lists** | `list_lists` | | |
| **Remove Profiles from List** | `remove_profiles_from_list` | | |
| **Update List** | `update_list` | | |
### Metrics
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Get Metric** | `get_metric` | | |
| **Get Metrics** | `list_metrics` | | |
| **Query Metric Aggregates** | `query_metric_aggregates` | | |
### Profiles
| Operation | ID | Description | Trigger |
| ---------------------------- | ---------------------- | ----------- | ------- |
| **Create or Update Profile** | `upsert_profile` | | |
| **Create Profile** | `create_profile` | | |
| **Get Profile** | `get_profile` | | |
| **Get Profile's Lists** | `get_profile_lists` | | |
| **Get Profile's Segments** | `get_profile_segments` | | |
| **List Profiles** | `list_profiles` | | |
| **Merge Profiles** | `merge_profiles` | | |
| **Suppress Profiles** | `suppress_profiles` | | |
| **Unsuppress Profiles** | `unsuppress_profiles` | | |
| **Update Profile** | `update_profile` | | |
### Segments
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Create Segment** | `create_segment` | | |
| **Delete Segment** | `delete_segment` | | |
| **Get Segment** | `get_segment` | | |
| **Get Segment Profiles** | `get_segment_profiles` | | |
| **Get Segments** | `list_segments` | | |
| **Update Segment** | `update_segment` | | |
### Subscriptions
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Subscribe Profiles** | `subscribe_profiles` | | |
| **Unsubscribe Profiles** | `unsubscribe_profiles` | | |
### Tags
| Operation | ID | Description | Trigger |
| ------------------ | ----------------- | ----------- | ------- |
| **Create Tag** | `create_tag` | | |
| **Get Tag Groups** | `list_tag_groups` | | |
| **Get Tags** | `list_tags` | | |
### Templates
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **Clone Template** | `clone_template` | | |
| **Create Template** | `create_template` | | |
| **Delete Template** | `delete_template` | | |
| **Get Template** | `get_template` | | |
| **Get Templates** | `list_templates` | | |
| **Render Template** | `render_template` | | |
| **Update Template** | `update_template` | | |
### Triggers
| Operation | ID | Description | Trigger |
| ---------------------------------------------- | --------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Email Bounced** | `on_email_bounced` | | Yes |
| **Email Clicked** | `on_email_clicked` | | Yes |
| **Email Clicked to Unsubscribe** | `on_email_clicked_to_unsubscribe` | | Yes |
| **Email Dropped** | `on_email_dropped` | | Yes |
| **Email Marked as Spam** | `on_email_marked_spam` | | Yes |
| **Email Opened** | `on_email_opened` | | Yes |
| **Email Received** | `on_email_received` | | Yes |
| **Manually Suppressed from Email Marketing** | `on_manually_suppressed_email` | | Yes |
| **Manually Unsuppressed from Email Marketing** | `on_manually_unsuppressed_email` | | Yes |
| **On Event (custom topic)** | `on_event` | Fire on a custom / account-specific Klaviyo topic (choose from the live list). | Yes |
| **Profile Merged** | `on_profile_merged` | | Yes |
| **Push Bounced** | `on_push_bounced` | | Yes |
| **Push Opened** | `on_push_opened` | | Yes |
| **Push Received** | `on_push_received` | | Yes |
| **Ready to Review** | `on_ready_to_review` | | Yes |
| **Skipped Send** | `on_skipped_send` | | Yes |
| **SMS Automated Response Failed** | `on_sms_auto_response_failed` | | Yes |
| **SMS Automated Response Received** | `on_sms_auto_response_received` | | Yes |
| **SMS Clicked** | `on_sms_clicked` | | Yes |
| **SMS Failed to Deliver** | `on_sms_failed` | | Yes |
| **SMS Received** | `on_sms_received` | | Yes |
| **SMS Sent** | `on_sms_sent` | | Yes |
| **Social Comment** | `on_social_comment` | | Yes |
| **Social DM** | `on_social_dm` | | Yes |
| **Social UGC** | `on_social_ugc` | | Yes |
| **Submitted Rating** | `on_submitted_rating` | | Yes |
| **Submitted Review** | `on_submitted_review` | | Yes |
| **Subscribed to Email Marketing** | `on_subscribed_email` | | Yes |
| **Subscribed to List** | `on_subscribed_to_list` | | Yes |
| **Subscribed to SMS Marketing** | `on_subscribed_sms` | | Yes |
| **Unsubscribed from Email Marketing** | `on_unsubscribed_email` | | Yes |
| **Unsubscribed from SMS Marketing** | `on_unsubscribed_sms` | | Yes |
| **Updated Email Preferences** | `on_updated_email_preferences` | | Yes |
### Webhooks
| Operation | ID | Description | Trigger |
| ---------------------- | --------------------- | ----------- | ------- |
| **Create Webhook** | `create_webhook` | | |
| **Delete Webhook** | `delete_webhook` | | |
| **Get Webhook** | `get_webhook` | | |
| **Get Webhook Topics** | `list_webhook_topics` | | |
| **Get Webhooks** | `list_webhooks` | | |
| **Update Webhook** | `update_webhook` | | |
# LaunchDarkly
Source: https://docs.noclick.com/integrations/launchdarkly
Connect LaunchDarkly to your workflows: 208 operations across 35 categories.
The LaunchDarkly node adds LaunchDarkly operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
LaunchDarkly also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in LaunchDarkly.
You can wire the LaunchDarkly node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect LaunchDarkly under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Account settings -> Authorization -> Create token. Use a personal or service token (Reader/Writer/Admin scope as needed). SDK, mobile, and client-side keys cannot access the REST API.
[Get your credentials here](https://app.launchdarkly.com/settings/authorization).
## Operations
### Access tokens
| Operation | ID | Description | Trigger |
| ----------------------- | -------------- | ---------------------------------------------------------------------------------------- | ------- |
| **Create Access Token** | `create_token` | Create an access token. | |
| **Delete Access Token** | `delete_token` | Delete an access token. | |
| **Get Access Token** | `get_token` | Get a single access token by ID. | |
| **Reset Access Token** | `reset_token` | Reset an access token's secret, optionally keeping the old one valid for a grace period. | |
| **Update Access Token** | `update_token` | Update an access token via JSON Patch. | |
### Account
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | -------------------------------------------------- | ------- |
| **Create Approval Request** | `create_approval_request` | Create an approval request for a flag change. | |
| **Get Audit Log** | `get_audit_log` | Query the audit log. | |
| **List Access Tokens** | `list_tokens` | List API access tokens for the account. | |
| **List Custom Roles** | `list_roles` | List custom roles defined in the account. | |
| **List Metrics** | `list_metrics` | List experimentation/release metrics in a project. | |
| **List Teams** | `list_teams` | List teams in the account. | |
### Account members
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------ | ---------------------------------------------------------------- | ------- |
| **Add Member To Teams** | `add_member_teams` | Add an account member to one or more teams. | |
| **Delete Account Member** | `delete_member` | Delete an account member. | |
| **Get Account Member** | `get_member` | Get a single account member by ID. | |
| **Modify Account Member** | `update_member` | Modify a single account member via JSON Patch. | |
| **Modify Account Members** | `update_members` | Modify multiple account members via semantic-patch instructions. | |
### Announcements
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------- | ------- |
| **Create Announcement** | `create_announcement` | Create an announcement. | |
| **Delete Announcement** | `delete_announcement` | Delete an announcement. | |
| **Get Announcements** | `list_announcements` | List announcements in the account. | |
| **Update Announcement** | `update_announcement` | Update an announcement via JSON Patch. | |
### Approvals
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | ---------------------------------------------------------------------------------- | ------- |
| **Apply Approval Request** | `apply_approval_request` | Apply an approved approval request. | |
| **Apply Flag Approval Request** | `apply_flag_approval_request` | Apply an approved approval request for a feature flag in an environment. | |
| **Create Flag Approval Request** | `create_flag_approval_request` | Create an approval request for a feature flag in an environment. | |
| **Create Flag Copy Approval Request** | `create_flag_copy_approval_request` | Create an approval request to copy flag configurations across environments. | |
| **Delete Approval Request** | `delete_approval_request` | Delete an approval request. | |
| **Delete Flag Approval Request** | `delete_flag_approval_request` | Delete an approval request for a feature flag in an environment. | |
| **Get Approval Request** | `get_approval_request` | Get a single approval request. | |
| **Get Flag Approval Request** | `get_flag_approval_request` | Get a single approval request for a feature flag in an environment. | |
| **List Approval Requests** | `list_approval_requests` | List approval requests in the account. | |
| **List Flag Approval Requests** | `list_flag_approval_requests` | List approval requests for a feature flag in an environment. | |
| **Review Approval Request** | `review_approval_request` | Review (approve/decline) an approval request. | |
| **Review Flag Approval Request** | `review_flag_approval_request` | Review (approve/decline) an approval request for a feature flag in an environment. | |
### Audit log
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------------------------------------------------------- | ------- |
| **Get Audit Log Entry** | `get_audit_log_entry` | Get a single audit log entry by ID. | |
| **Get Audit Log Entry Counts** | `get_audit_log_entry_counts` | Get counts of audit log entries bucketed over a time range. | |
| **List Audit Log Entries** | `list_audit_log_entries` | List audit log entries in the account. | |
| **Search Audit Log Entries** | `search_audit_log_entries` | Search audit log entries using a list of policy statements. | |
### Code references
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ---------------------------------- | ---------------------------------------------------------- | ------- |
| **Create Extinction** | `create_extinction` | Create extinction events for a branch. | |
| **Create Repository** | `create_repository` | Create a code reference repository. | |
| **Delete Branches** | `delete_branches` | Queue a task to delete branches from a repository. | |
| **Delete Repository** | `delete_repository` | Delete a code reference repository. | |
| **Get Branch** | `get_branch` | Get a branch for a code reference repository. | |
| **Get Code References Statistics (Root)** | `get_code_refs_statistics` | Get links to code reference repositories for each project. | |
| **Get Project Code References Statistics** | `get_project_code_refs_statistics` | Get code references statistics for the flags in a project. | |
| **Get Repository** | `get_repository` | Get a code reference repository. | |
| **List Branches** | `list_branches` | List branches for a code reference repository. | |
| **List Extinctions** | `list_extinctions` | List extinctions (removed flag code references). | |
| **List Repositories** | `list_repositories` | List code reference repositories. | |
| **Update Repository** | `update_repository` | Update a code reference repository via JSON Patch. | |
| **Upsert Branch** | `upsert_branch` | Create or update a branch and its code references. | |
### Context settings
| Operation | ID | Description | Trigger |
| ------------------------------------ | ----------------------------- | ----------------------------------------------- | ------- |
| **Update Flag Settings For Context** | `update_context_flag_setting` | Update the flag setting for a specific context. | |
### Contexts
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------ | -------------------------------------------------------- | ------- |
| **Create or Update Context Kind** | `upsert_context_kind` | Create or update a context kind. | |
| **Delete Context Instances** | `delete_context_instance` | Delete context instances by ID. | |
| **Evaluate Flags For Context Instance** | `evaluate_context_instance` | Evaluate all flags for a given context instance. | |
| **Get Context Attribute Names** | `get_context_attribute_names` | Get context attribute names for an environment. | |
| **Get Context Attribute Values** | `get_context_attribute_values` | Get context attribute values for a given attribute name. | |
| **Get Context Instances** | `get_context_instance` | Get context instances by ID. | |
| **Get Context Kinds** | `get_context_kinds` | Get all context kinds for a project. | |
| **Get Contexts** | `get_context` | Get contexts by kind and key. | |
| **Search Context Instances** | `search_context_instances` | Search for context instances in an environment. | |
| **Search Contexts** | `search_contexts` | Search for contexts in an environment. | |
### Custom roles
| Operation | ID | Description | Trigger |
| ---------------------- | ------------- | ------------------------------------ | ------- |
| **Create Custom Role** | `create_role` | Create a custom role. | |
| **Delete Custom Role** | `delete_role` | Delete a custom role. | |
| **Get Custom Role** | `get_role` | Get a custom role by key. | |
| **Update Custom Role** | `update_role` | Update a custom role via JSON patch. | |
### Data export destinations
| Operation | ID | Description | Trigger |
| ----------------------------------------------- | ----------------------------------------- | ----------------------------------------------------------------------------- | ------- |
| **Complete Warehouse Destination Setup** | `complete_destination_setup` | Complete warehouse destination setup for a given destination kind. | |
| **Create Data Export Destination** | `create_destination` | Create a Data Export destination in an environment. | |
| **Delete Data Export Destination** | `delete_destination` | Delete a Data Export destination. | |
| **Generate Environment Snowflake Key Pair** | `generate_environment_warehouse_key_pair` | Generate a Snowflake destination key pair for a specific project environment. | |
| **Generate Snowflake Destination Key Pair** | `generate_warehouse_key_pair` | Generate a Snowflake Data Export destination key pair. | |
| **Generate Trust Policy** | `generate_destination_trust_policy` | Generate a trust policy for a Data Export destination in an environment. | |
| **Generate Warehouse Destination Setup Script** | `generate_destination_setup_script` | Generate a warehouse destination setup script for a given destination kind. | |
| **Get Destination** | `get_destination` | Get a single Data Export destination. | |
| **List Destinations** | `list_destinations` | List all Data Export destinations across the account. | |
| **Update Data Export Destination** | `update_destination` | Update a Data Export destination via a JSON Patch document. | |
### Environments
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ---------------------------------------------------------------------------------- | ------- |
| **Create Environment** | `create_environment` | Create an environment within a project. | |
| **Delete Environment** | `delete_environment` | Delete an environment. | |
| **Get Environment** | `get_environment` | Get a single environment in a project. | |
| **List Environments** | `list_environments` | List environments within a project. | |
| **Reset Environment Mobile Key** | `reset_environment_mobile_key` | Reset an environment's mobile SDK key. | |
| **Reset Environment SDK Key** | `reset_environment_sdk_key` | Reset an environment's SDK key, optionally keeping the old key alive for a period. | |
| **Update Environment** | `update_environment` | Update an environment via JSON Patch. | |
### Experiments
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | -------------------------------------------------------------- | ------- |
| **Create Experiment** | `create_experiment` | Create an experiment in an environment. | |
| **Create Experiment Iteration** | `create_experiment_iteration` | Create an iteration for an experiment. | |
| **Get Experiment** | `get_experiment` | Get a single experiment. | |
| **Get Experimentation Settings** | `get_experimentation_settings` | Get experimentation settings for a project. | |
| **List Experiments** | `list_experiments` | Get experiments in an environment. | |
| **List Project Experiments** | `list_project_experiments` | Get experiments across all environments in a project. | |
| **Update Experiment** | `update_experiment` | Update an experiment via semantic-patch instructions. | |
| **Update Experimentation Settings** | `update_experimentation_settings` | Update experimentation (randomization) settings for a project. | |
### Feature flags
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ---------------------------------------------------------------------------------------- | ------- |
| **Get Expiring Context Targets** | `get_expiring_context_targets` | Get expiring context targets for a feature flag in an environment. | |
| **Get Expiring User Targets** | `get_expiring_user_targets` | Get expiring user targets for a feature flag in an environment. | |
| **Get Flag Status Across Environments** | `get_flag_status_across_environments` | Get the status of a feature flag across all environments. | |
| **Get Migration Safety Issues** | `get_migration_safety_issues` | Get migration safety issues for a proposed set of semantic-patch instructions on a flag. | |
| **List Feature Flag Statuses** | `list_flag_statuses` | List the statuses of all feature flags in an environment. | |
| **Update Expiring Context Targets** | `update_expiring_context_targets` | Update expiring context targets on a feature flag via semantic-patch instructions. | |
| **Update Expiring User Targets** | `update_expiring_user_targets` | Update expiring user targets on a feature flag via semantic-patch instructions. | |
### Feature flags
| Operation | ID | Description | Trigger |
| ----------------------- | ----------------- | --------------------------------------------------------------------------------- | ------- |
| **Copy Flag Settings** | `copy_flag` | Copy a flag's targeting config from a source environment to a target environment. | |
| **Create Feature Flag** | `create_flag` | Create a new feature flag in a project. | |
| **Delete Feature Flag** | `delete_flag` | Delete a feature flag. | |
| **Get Feature Flag** | `get_flag` | Get a single feature flag's configuration and targeting. | |
| **Get Flag Status** | `get_flag_status` | Get a flag's status (new/active/launched/inactive) in an environment. | |
| **List Feature Flags** | `list_flags` | List all feature flags in a project. | |
| **Toggle Feature Flag** | `update_flag` | Toggle a feature flag on or off in an environment (semantic patch). | |
### Flag triggers
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------- | ------- |
| **Create Flag Trigger** | `create_flag_trigger` | Create a trigger for a feature flag in an environment. | |
| **Delete Flag Trigger** | `delete_flag_trigger` | Delete a flag trigger by ID. | |
| **Get Flag Trigger** | `get_flag_trigger` | Get a single flag trigger by ID. | |
| **List Flag Triggers** | `list_flag_triggers` | List all triggers for a feature flag in an environment. | |
| **Update Flag Trigger** | `update_flag_trigger` | Update a flag trigger via semantic-patch instructions. | |
### Follow flags
| Operation | ID | Description | Trigger |
| ----------------------------------- | ---------------------------- | --------------------------------------------------------------------- | ------- |
| **Add Flag Follower** | `add_flag_follower` | Add a member as a follower of a flag in a project and environment. | |
| **List Environment Flag Followers** | `list_environment_followers` | Get followers of all flags in a given project and environment. | |
| **List Flag Followers** | `list_flag_followers` | Get followers of a flag in a project and environment. | |
| **Remove Flag Follower** | `remove_flag_follower` | Remove a member as a follower of a flag in a project and environment. | |
### Holdouts
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------- | ------- |
| **Create Holdout** | `create_holdout` | Create a holdout in an environment. | |
| **Get Holdout** | `get_holdout` | Get a holdout by its key. | |
| **Get Holdout by Id** | `get_holdout_by_id` | Get a holdout by its id. | |
| **List Holdouts** | `list_holdouts` | Get all holdouts in an environment. | |
| **Update Holdout** | `update_holdout` | Update a holdout via semantic-patch instructions. | |
### Integration audit log subscriptions
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | -------------------------------------------------------- | ------- |
| **Create Integration Subscription** | `create_integration_subscription` | Create an audit log subscription for an integration. | |
| **Delete Integration Subscription** | `delete_integration_subscription` | Delete an audit log subscription. | |
| **Get Integration Subscription** | `get_integration_subscription` | Get an audit log subscription by ID. | |
| **List Integration Subscriptions** | `list_integration_subscriptions` | Get all audit log subscriptions for a given integration. | |
| **Update Integration Subscription** | `update_integration_subscription` | Update an audit log subscription via a JSON Patch array. | |
### Layers
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ----------------------------------------------- | ------- |
| **Create Layer** | `create_layer` | Create a layer in a project. | |
| **List Layers** | `list_layers` | List layers in a project. | |
| **Update Layer** | `update_layer` | Update a layer via semantic-patch instructions. | |
### Members
| Operation | ID | Description | Trigger |
| ----------------- | ---------------- | ----------------------------------- | ------- |
| **Invite Member** | `invite_members` | Invite a new member to the account. | |
| **List Members** | `list_members` | List members of the account. | |
### Metrics
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | -------------------------------------------- | ------- |
| **Create Metric** | `create_metric` | Create a metric in a project. | |
| **Delete Metric** | `delete_metric` | Delete a metric from a project. | |
| **Get Metric** | `get_metric` | Get a single metric from a project. | |
| **Update Metric** | `update_metric` | Update a metric via JSON Patch instructions. | |
### OAuth2 clients
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------------------------- | ------- |
| **Create OAuth Client** | `create_oauth_client` | Create a LaunchDarkly OAuth 2.0 client. | |
| **Delete OAuth Client** | `delete_oauth_client` | Delete an OAuth 2.0 client by ID. | |
| **Get OAuth Client** | `get_oauth_client` | Get a single OAuth 2.0 client by ID. | |
| **List OAuth Clients** | `list_oauth_client` | Get all OAuth 2.0 clients registered in the account. | |
| **Patch OAuth Client** | `patch_oauth_client` | Patch an OAuth 2.0 client by ID using JSON Patch instructions. | |
### Projects
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------------------------------------------------------------- | ------- |
| **Create Project** | `create_project` | Create a new project. | |
| **Delete Project** | `delete_project` | Delete a project. | |
| **Get Flag Defaults** | `get_flag_defaults` | Get the flag defaults for a project. | |
| **Get Project** | `get_project` | Get a single project. | |
| **List Projects** | `list_projects` | List all projects in the account. | |
| **Update Flag Defaults** | `update_flag_defaults` | Update the flag defaults for a project via a JSON Patch document. | |
| **Update Project** | `update_project` | Update a project via a JSON Patch document. | |
| **Upsert Flag Defaults** | `upsert_flag_defaults` | Create or update (replace) the flag defaults for a project. | |
### Relay proxy configurations
| Operation | ID | Description | Trigger |
| -------------------------------- | --------------------------- | ----------------------------------------------- | ------- |
| **Create Relay Proxy Config** | `create_relay_proxy_config` | Create a new Relay Proxy config. | |
| **Delete Relay Proxy Config** | `delete_relay_proxy_config` | Delete a Relay Proxy config by ID. | |
| **Get Relay Proxy Config** | `get_relay_proxy_config` | Get a single Relay Proxy config by ID. | |
| **List Relay Proxy Configs** | `list_relay_proxy_configs` | List Relay Proxy configs in the account. | |
| **Reset Relay Proxy Config Key** | `reset_relay_proxy_config` | Reset a Relay Proxy configuration's secret key. | |
| **Update Relay Proxy Config** | `update_relay_proxy_config` | Update a Relay Proxy config via a JSON patch. | |
### Scheduled changes
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------------------------- | ------- |
| **Create Scheduled Change** | `create_scheduled_change` | Create a scheduled changes workflow for a feature flag in an environment. | |
| **Delete Scheduled Change** | `delete_scheduled_change` | Delete a scheduled changes workflow. | |
| **Get Scheduled Change** | `get_scheduled_change` | Get a single scheduled change by ID. | |
| **List Scheduled Changes** | `list_scheduled_changes` | List scheduled changes for a feature flag in an environment. | |
| **Update Scheduled Change** | `update_scheduled_change` | Update a scheduled changes workflow via semantic-patch instructions. | |
### Segments
| Operation | ID | Description | Trigger |
| ------------------------------------------------- | -------------------------------------- | ------------------------------------------------------------------ | ------- |
| **Create Big Segment Export** | `create_big_segment_export` | Create a big segment export. | |
| **Create Big Segment Import** | `create_big_segment_import` | Create a big segment import. | |
| **Create Segment** | `create_segment` | Create a user/context segment. | |
| **Delete Segment** | `delete_segment` | Delete a segment. | |
| **Get Big Segment Export** | `get_big_segment_export` | Get a big segment export. | |
| **Get Big Segment Import** | `get_big_segment_import` | Get a big segment import. | |
| **Get Big Segment Membership For Context** | `get_segment_context_membership` | Get big segment membership for a context. | |
| **Get Big Segment Membership For User** | `get_segment_user_membership` | Get big segment membership for a user. | |
| **Get Expiring Targets For Segment** | `get_segment_expiring_targets` | Get expiring targets for a segment. | |
| **Get Expiring User Targets For Segment** | `get_segment_expiring_user_targets` | Get expiring user targets for a segment. | |
| **Get Segment** | `get_segment` | Get a single segment. | |
| **List Segment Memberships For Context Instance** | `evaluate_segment_memberships` | List segment memberships for a context instance in an environment. | |
| **List Segments** | `list_segments` | List segments in a project/environment. | |
| **Update Context Targets On Big Segment** | `update_big_segment_context_targets` | Update context targets on a big segment. | |
| **Update Expiring Targets For Segment** | `update_segment_expiring_targets` | Update expiring targets for a segment via instructions. | |
| **Update Expiring User Targets For Segment** | `update_segment_expiring_user_targets` | Update expiring user targets for a segment via instructions. | |
| **Update Segment** | `update_segment` | Patch a segment's included/excluded targets (JSON patch array). | |
| **Update User Context Targets On Big Segment** | `update_big_segment_user_targets` | Update user context targets on a big segment. | |
### Tags
| Operation | ID | Description | Trigger |
| ------------- | ----------- | ----------------------------- | ------- |
| **List Tags** | `list_tags` | List all tags in the account. | |
### Teams
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | -------------------------------------------------------------- | ------- |
| **Add Team Members** | `add_team_members` | Add members to a team (semantic-patch addMembers instruction). | |
| **Create Team** | `create_team` | Create a team. | |
| **Delete Team** | `delete_team` | Delete a team. | |
| **Get Team** | `get_team` | Get a single team by key. | |
| **List Team Maintainers** | `list_team_maintainers` | Get the maintainers of a team. | |
| **List Team Roles** | `list_team_roles` | Get the custom roles associated with a team. | |
| **Update Team** | `update_team` | Update a team via semantic-patch instructions. | |
### User settings
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | -------------------------------------------------------- | ------- |
| **Get Expiring User Target** | `get_expiring_user_target` | Get expiring dates on flags for a user. | |
| **Get User Flag Setting** | `get_user_flag_setting` | Get a single flag setting for a user. | |
| **List User Flag Settings** | `list_user_flag_settings` | List flag settings for a user. | |
| **Update Expiring User Target** | `update_expiring_user_target` | Update expiring user targets for flags via instructions. | |
| **Update User Flag Setting** | `update_user_flag_setting` | Update a flag setting for a user. | |
### Users
| Operation | ID | Description | Trigger |
| --------------- | -------------- | ------------------------------------------- | ------- |
| **Delete User** | `delete_user` | Delete a user from a project environment. | |
| **Find Users** | `search_users` | Find users in a project environment. | |
| **Get User** | `get_user` | Get a single user in a project environment. | |
| **List Users** | `list_users` | List users in a project environment. | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | --------------------------------------------- | ------- |
| **Create Webhook** | `create_webhook` | Create an account webhook. | |
| **Delete Webhook** | `delete_webhook` | Delete an account webhook. | |
| **Get Webhook** | `get_webhook` | Get a single webhook by ID. | |
| **List Webhooks** | `list_webhooks` | List all account webhooks. | |
| **Update Webhook** | `update_webhook` | Update a webhook using a JSON Patch document. | |
### Workflow templates
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | -------------------------------------- | ------- |
| **Create Workflow Template** | `create_workflow_template` | Create a workflow template. | |
| **Delete Workflow Template** | `delete_workflow_template` | Delete a workflow template. | |
| **Get Workflow Templates** | `list_workflow_templates` | Get workflow templates in the account. | |
### Workflows
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------- | ------- |
| **Create Workflow** | `create_workflow` | Create a workflow for a feature flag in an environment. | |
| **Delete Workflow** | `delete_workflow` | Delete a workflow by ID. | |
| **Get Workflow** | `get_workflow` | Get a custom workflow by ID. | |
| **List Workflows** | `list_workflows` | List workflows for a feature flag in an environment. | |
### Other
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------------- | ------- |
| **Get Caller Identity** | `get_caller_identity` | Identify the caller associated with the API access token. | |
| **Get OpenAPI Spec** | `get_openapi_spec` | Get the LaunchDarkly OpenAPI specification in JSON. | |
| **Get Public IP List** | `get_public_ip_list` | Get the list of public IP addresses used by LaunchDarkly. | |
| **Get Root Resource** | `get_root` | Get the root resource of the LaunchDarkly API. | |
| **Get Versions** | `get_versions` | Get LaunchDarkly API version information. | |
| **On Account Activity** | `on_account_activity` | Fire the workflow when LaunchDarkly reports account activity. | Yes |
# Linear
Source: https://docs.noclick.com/integrations/linear
Connect Linear to your workflows: 59 operations across 9 categories.
The Linear node adds Linear operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Linear also includes 9 trigger operations (marked in the tables below) that can start a workflow when something happens in Linear.
You can wire the Linear node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Linear under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Linear account when prompted; no keys to copy.
NoClick requests the following permissions:
* `read`
* `write`
* `issues:create`
* `comments:create`
* `admin`
### Personal access token
Enter the values manually when creating the credential.
[Get your credentials here](https://linear.app/settings/api).
## Operations
### Attachment
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ---------------------------------------- | ------- |
| **Create Issue Attachment** | `create_issue_attachment` | Create an attachment (link URL to issue) | |
| **Delete Attachment** | `delete_attachment` | Delete an attachment | |
| **List Issue Attachments** | `list_issue_attachments` | List attachments for an issue | |
### Cycle
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------ | ------- |
| **Archive Cycle** | `archive_cycle` | Archive a cycle | |
| **Create Cycle** | `create_cycle` | Create a new cycle (sprint) for a team | |
| **List Team Cycles** | `list_team_cycles` | Retrieve cycles for a specific Linear team | |
| **Update Cycle** | `update_cycle` | Update an existing cycle | |
### Document
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------------------------------ | ------- |
| **Create Document** | `create_document` | Create a new document. Requires exactly one of: projectId, teamId, or issueId. | |
| **Delete Document** | `delete_document` | Delete a document | |
| **Get Document** | `get_document` | Retrieve a Linear document by ID | |
| **List Documents** | `list_documents` | List documents in the user's Linear workspace | |
| **Update Document** | `update_document` | Update an existing document | |
### Issue
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | -------------------------------------------------- | ------- |
| **Archive Issue** | `archive_issue` | Archive an issue | |
| **Create Issue** | `create_issue` | Create a new Linear issue | |
| **Create Issue Comment** | `create_issue_comment` | Create a comment on a specific Linear issue | |
| **Create Issue Label** | `create_issue_label` | Create a new Linear issue label | |
| **Create Issue Relation** | `create_issue_relation` | Create a relation between issues | |
| **Delete Issue** | `delete_issue` | Delete a Linear issue | |
| **Delete Issue Comment** | `delete_issue_comment` | Delete a comment | |
| **Delete Issue Label** | `delete_issue_label` | Delete an issue label | |
| **Delete Issue Relation** | `delete_issue_relation` | Delete an issue relation | |
| **Get Issue** | `get_issue` | Retrieve detailed information about an issue by ID | |
| **List Issue Comments** | `list_issue_comments` | List comments for a specific Linear issue | |
| **List Issue Labels** | `list_issue_labels` | List available issue labels in a Linear workspace | |
| **List Issue Relations** | `list_issue_relations` | List issue relations (blocks, related, duplicate) | |
| **List Issues** | `list_issues` | List issues in the user's Linear workspace | |
| **Search Issues** | `search_issues` | Search issues by query string | |
| **Unarchive Issue** | `unarchive_issue` | Unarchive an issue | |
| **Update Issue** | `update_issue` | Update an existing Linear issue | |
| **Update Issue Comment** | `update_issue_comment` | Update an existing comment | |
| **Update Issue Label** | `update_issue_label` | Update an issue label | |
### Project
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | -------------------------------------------- | ------- |
| **Archive Project** | `archive_project` | Archive a project (soft delete) | |
| **Create Project** | `create_project` | Create a new project in Linear | |
| **Create Project Milestone** | `create_project_milestone` | Create a project milestone | |
| **Delete Project** | `delete_project` | Permanently delete a project | |
| **Delete Project Milestone** | `delete_project_milestone` | Delete a project milestone | |
| **Get Project** | `get_project` | Retrieve details of a specific project | |
| **List Project Milestones** | `list_project_milestones` | List milestones for a project | |
| **List Projects** | `list_projects` | List projects in the user's Linear workspace | |
| **Update Project** | `update_project` | Update an existing Linear project | |
| **Update Project Milestone** | `update_project_milestone` | Update a project milestone | |
### Team
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------ | ------- |
| **Get Team** | `get_team` | Retrieve details of a specific Linear team | |
| **List Team Workflow States** | `list_team_workflow_states` | List workflow states (statuses) for a team | |
| **List Teams** | `list_teams` | List teams in the user's Linear workspace | |
### User
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------ | ------- |
| **Get Authenticated User** | `get_authenticated_user` | Get the currently authenticated user | |
| **Get User** | `get_user` | Retrieve details of a specific Linear user | |
| **List Users** | `list_users` | Retrieve users in the Linear workspace | |
### Webhook
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ---------------------------------- | ------- |
| **Create Webhook** | `create_webhook` | Create a webhook | |
| **Delete Webhook** | `delete_webhook` | Delete a webhook | |
| **List Webhooks** | `list_webhooks` | List webhooks for the organization | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------ | ------- |
| **On Comment Created** | `on_comment_created` | Trigger: fires when a Linear comment is created. | Yes |
| **On Comment Deleted** | `on_comment_deleted` | Trigger: fires when a Linear comment is deleted. | Yes |
| **On Comment Updated** | `on_comment_updated` | Trigger: fires when a Linear comment is updated. | Yes |
| **On Issue Created** | `on_issue_created` | Trigger: fires when a Linear issue is created. | Yes |
| **On Issue Deleted** | `on_issue_deleted` | Trigger: fires when a Linear issue is deleted. | Yes |
| **On Issue Updated** | `on_issue_updated` | Trigger: fires when a Linear issue is updated. | Yes |
| **On Project Created** | `on_project_created` | Trigger: fires when a Linear project is created. | Yes |
| **On Project Deleted** | `on_project_deleted` | Trigger: fires when a Linear project is deleted. | Yes |
| **On Project Updated** | `on_project_updated` | Trigger: fires when a Linear project is updated. | Yes |
# LinkedIn
Source: https://docs.noclick.com/integrations/linkedin
Connect LinkedIn to your workflows: 10 operations across 4 categories.
The LinkedIn node adds LinkedIn operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the LinkedIn node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect LinkedIn under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your LinkedIn account when prompted; no keys to copy.
NoClick requests the following permissions:
* `openid`
* `profile`
* `email`
* `w_member_social`
## Operations
### Company
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ----------------------------------------------------------------------------------------- |
| **Scrape Company Employees** | `scrape_company_employees` | Scrape employees of a LinkedIn company via Apify (harvestapi/linkedin-company-employees). |
| **Search Companies** | `search_companies` | Search LinkedIn companies via Apify (harvestapi/linkedin-company-search). |
### Job
| Operation | ID | Description |
| ----------------------- | --------------------- | ------------------------------------------------------------------------ |
| **Search Job Listings** | `search_job_listings` | Search LinkedIn job listings via Apify (harvestapi/linkedin-job-search). |
### Post
| Operation | ID | Description |
| ----------------------- | --------------------- | ------------------------------------------------------------------------------------ |
| **Create Article Post** | `create_article_post` | Create an article/link post on LinkedIn |
| **Create Text Post** | `create_text_post` | Create a text post on LinkedIn |
| **Delete Post** | `delete_post` | Delete a LinkedIn post |
| **Search Posts** | `search_posts` | Search LinkedIn posts via Apify (harvestapi/linkedin-post-search). \$2 per 1k posts. |
### Profile
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ------------------------------------------------------------------------ |
| **Get Authenticated Profile** | `get_authenticated_profile` | Get the authenticated user's profile information |
| **Scrape User Profiles** | `scrape_user_profiles` | Scrape LinkedIn profiles by URL/handle/ID via Apify (harvestapi). |
| **Search User Profiles** | `search_user_profiles` | Search LinkedIn profiles via Apify (harvestapi/linkedin-profile-search). |
# Loops
Source: https://docs.noclick.com/integrations/loops
Connect Loops to your workflows: 46 operations across 15 categories.
The Loops node adds Loops operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Loops also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Loops.
You can wire the Loops node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Loops under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.loops.so/settings?page=api).
## Operations
### Account
| Operation | ID | Description | Trigger |
| ------------------------------ | ------------------ | ----------------------------------------------------- | ------- |
| **List Dedicated Sending IPs** | `list_sending_ips` | Retrieve the team's dedicated sending IP addresses. | |
| **Test API Key** | `test_api_key` | Verify the API key is valid and return the team name. | |
### Audience
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------------------------------------- | ------- |
| **Get Audience Segment** | `get_audience_segment` | Retrieve a single audience segment by id. | |
| **List Audience Segments** | `list_audience_segments` | List audience segments (paginated). | |
### Campaign groups
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------- | ------- |
| **Create Campaign Group** | `create_campaign_group` | Create a new campaign group. | |
| **Get Campaign Group** | `get_campaign_group` | Retrieve a single campaign group by id. | |
| **List Campaign Groups** | `list_campaign_groups` | List campaign groups (paginated). | |
| **Update Campaign Group** | `update_campaign_group` | Update an existing campaign group. | |
### Campaigns
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------- | ------- |
| **Create Campaign** | `create_campaign` | Create a new draft campaign. | |
| **Get Campaign** | `get_campaign` | Retrieve a single campaign by id. | |
| **List Campaigns** | `list_campaigns` | List campaigns (paginated). | |
| **Update Campaign** | `update_campaign` | Update a draft campaign's details. | |
### Contact properties
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------------------------------------- | ------- |
| **Create Contact Property** | `create_contact_property` | Define a new custom contact property. | |
| **List Contact Properties** | `list_contact_properties` | List all contact properties for the team. | |
### Contacts
| Operation | ID | Description | Trigger |
| -------------------------- | -------------------- | --------------------------------------------------------------- | ------- |
| **Create Contact** | `create_contact` | Add a new contact (by email) to the audience. | |
| **Delete Contact** | `delete_contact` | Remove a contact from the audience by email or userId. | |
| **Find Contact** | `find_contact` | Look up a contact by email or userId. | |
| **Get Suppression Status** | `get_suppression` | Check whether a contact is suppressed and the removal quota. | |
| **Remove Suppression** | `remove_suppression` | Restore (un-suppress) a previously suppressed contact. | |
| **Update Contact** | `update_contact` | Update an existing contact's properties (upserts if not found). | |
### Design
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------- | ------- |
| **Get Component** | `get_component` | Retrieve a single reusable email component by id. | |
| **Get Theme** | `get_theme` | Retrieve a single email theme by id. | |
| **List Components** | `list_components` | List reusable email components (paginated). | |
| **List Themes** | `list_themes` | List email themes (paginated). | |
### Email messages
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | --------------------------------------------------------------------- | ------- |
| **Get Email Message** | `get_email_message` | Retrieve an email message (campaign content) with compiled output. | |
| **Send Email Message Preview** | `send_email_message_preview` | Send a preview of an email message to one or more addresses. | |
| **Update Email Message** | `update_email_message` | Update subject, sender, preview text, or content of an email message. | |
### Events
| Operation | ID | Description | Trigger |
| -------------- | ------------ | --------------------------------------------------------- | ------- |
| **Send Event** | `send_event` | Send an event for a contact to trigger event-based loops. | |
### Mailing lists
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------- | ------- |
| **List Mailing Lists** | `list_mailing_lists` | Retrieve the account's mailing lists. | |
### Transactional
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | --------------------------------------------------------------------------------- | ------- |
| **Create Transactional Email** | `create_transactional_email` | Create a new transactional email template. | |
| **Ensure Transactional Email Draft** | `ensure_transactional_email_draft` | Ensure a transactional email is in draft state (revert from published if needed). | |
| **Get Transactional Email** | `get_transactional` | Retrieve a single transactional email by id. | |
| **List Transactional Emails** | `list_transactional` | List transactional emails (paginated). | |
| **Publish Transactional Email** | `publish_transactional_email` | Publish a transactional email template so it can be sent. | |
| **Send Transactional Email** | `send_transactional` | Send a published transactional email to a contact. | |
| **Update Transactional Email** | `update_transactional_email` | Update an existing transactional email template's name or group. | |
### Transactional groups
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | -------------------------------------------- | ------- |
| **Create Transactional Group** | `create_transactional_group` | Create a new transactional group. | |
| **Get Transactional Group** | `get_transactional_group` | Retrieve a single transactional group by id. | |
| **List Transactional Groups** | `list_transactional_groups` | List transactional groups (paginated). | |
| **Update Transactional Group** | `update_transactional_group` | Update an existing transactional group. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ---------------------------------------------------------------------------------------- | ------- |
| **On Loops Event** | `on_loops_event` | Receive outbound webhook events from Loops (Settings → Webhooks in the Loops dashboard). | Yes |
### Uploads
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------------------------------------------------------------- | ------- |
| **Complete Upload** | `complete_upload` | Finalize a previously initiated upload and get the public URL. | |
| **Upload Image** | `create_upload` | Upload an image asset to Loops via the platform upload component. | |
### Workflows
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------------- | ------- |
| **Get Workflow** | `get_workflow` | Retrieve a single automation workflow by id (alpha). | |
| **Get Workflow Node** | `get_workflow_node` | Retrieve a single node inside an automation workflow (alpha). | |
| **List Workflows** | `list_workflows` | List automation workflows (alpha, paginated). | |
# Mailchimp
Source: https://docs.noclick.com/integrations/mailchimp
Connect Mailchimp to your workflows: 384 operations across 42 categories.
The Mailchimp node adds Mailchimp operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Mailchimp node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Mailchimp under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Mailchimp account when prompted; no keys to copy.
[Get your credentials here](https://mailchimp.com/developer/marketing/guides/access-user-data-oauth-2/).
NoClick requests the following permissions:
* `marketing:read`
* `marketing:write`
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://mailchimp.com/help/about-api-keys/).
### Mandrill
Enter the values manually when creating the credential.
[Get your credentials here](https://mandrillapp.com/settings).
## Operations
### Abuse report
| Operation | ID | Description |
| ---------------------- | -------------------- | ----------------------------- |
| **Fetch Abuse Report** | `fetch_abuse_report` | Get a specific abuse report. |
| **List Abuse Reports** | `list_abuse_reports` | Get abuse reports for a list. |
### Account
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | ------------------------------------------------ |
| **Create Account Export** | `create_account_export` | Create a new account export. |
| **Disconnect Authorized App** | `disconnect_authorized_app` | Disconnect an authorized app. |
| **Fetch Account Export** | `fetch_account_export` | Get information about a specific account export. |
| **Fetch Account Info** | `fetch_account_info` | Get account information. |
| **Fetch Activity Feed** | `fetch_activity_feed` | Get recent activity feed (Chimp Chatter). |
| **Fetch Api Root Info** | `fetch_api_root_info` | Get API root information. |
| **Fetch Authorized App** | `fetch_authorized_app` | Get details about a specific authorized app. |
| **Fetch Growth History for Month** | `fetch_growth_history_for_month` | Get growth history for a specific month. |
| **List Account Exports** | `list_account_exports` | List account exports. |
| **List Authorized Apps** | `list_authorized_apps` | List all authorized apps for the account. |
| **List Growth History** | `list_growth_history` | Get growth history for a list. |
| **Ping Api Connection** | `ping_api_connection` | Ping the Mailchimp API to verify connectivity. |
### Audience
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ------------------------------------------ |
| **Create Audience** | `create_audience` | Create a new audience (v2 contacts API). |
| **Delete Audience** | `delete_audience` | Delete an audience. |
| **Fetch Audience** | `fetch_audience` | Get information about a specific audience. |
| **List Audiences** | `list_audiences` | List all audiences (v2 contacts API). |
| **Update Audience Settings** | `update_audience_settings` | Update settings for an audience. |
### Automation
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ---------------------------------------------------------------- |
| **Add Member to Automation Queue** | `add_member_to_automation_queue` | Add a subscriber to an automation email queue. |
| **Archive Automation Workflow** | `archive_automation_workflow` | Archive an automation workflow. |
| **Fetch Automation Email** | `fetch_automation_email` | Get information about a specific automation email. |
| **Fetch Automation Queue Member** | `fetch_automation_queue_member` | Get information about a specific subscriber in automation queue. |
| **Fetch Automation Removed Member** | `fetch_automation_removed_member` | Get information about a removed subscriber. |
| **Fetch Automation Workflow** | `fetch_automation_workflow` | Get information about a specific automation workflow. |
| **List Automation Emails** | `list_automation_emails` | List all automation emails for a workflow. |
| **List Automation Queue Members** | `list_automation_queue_members` | List all subscribers in automation email queue. |
| **List Automation Removed Members** | `list_automation_removed_members` | List subscribers removed from automation workflow. |
| **List Automation Workflows** | `list_automation_workflows` | Get all classic automation workflows. |
| **Pause Automation Email** | `pause_automation_email` | Pause an automation email. |
| **Pause Automation Workflow** | `pause_automation_workflow` | Pause all emails in an automation workflow. |
| **Remove Member from Automation** | `remove_member_from_automation` | Remove a subscriber from an automation workflow. |
| **Start Automation Email** | `start_automation_email` | Start an automation email. |
| **Start Automation Workflow** | `start_automation_workflow` | Start all emails in an automation workflow. |
### Batch
| Operation | ID | Description |
| ------------------------- | ----------------------- | ---------------------------------------------------------------------- |
| **Cancel Batch Request** | `cancel_batch_request` | Stop and remove a batch request. |
| **Fetch Batch Status** | `fetch_batch_status` | Get the status of a specific batch operation. |
| **List Batch Operations** | `list_batch_operations` | Get a list of all batch operations. |
| **Start Batch Operation** | `start_batch_operation` | Start a batch operation to run multiple API operations asynchronously. |
### Campaign
| Operation | ID | Description |
| ------------------------------------------- | ----------------------------------------- | ---------------------------------------------------------------- |
| **Add Campaign Feedback** | `add_campaign_feedback` | Add feedback to a campaign. |
| **Cancel Campaign Send** | `cancel_campaign_send` | Cancel a scheduled campaign. |
| **Create Campaign** | `create_campaign` | Create a new email campaign. |
| **Create Campaign Folder** | `create_campaign_folder` | Create a campaign folder. |
| **Create Campaign Resend** | `create_campaign_resend` | Create a resend to non-openers. |
| **Delete Campaign** | `delete_campaign` | Delete a campaign. |
| **Delete Campaign Feedback** | `delete_campaign_feedback` | Delete campaign feedback. |
| **Delete Campaign Folder** | `delete_campaign_folder` | Delete a campaign folder. |
| **Duplicate Campaign** | `duplicate_campaign` | Create a copy of a campaign. |
| **Fetch Campaign** | `fetch_campaign` | Get information about a specific campaign. |
| **Fetch Campaign Abuse Report** | `fetch_campaign_abuse_report` | Get a specific abuse report. |
| **Fetch Campaign Advice** | `fetch_campaign_advice` | Get advice for improving a campaign. |
| **Fetch Campaign Checklist** | `fetch_campaign_checklist` | Get send checklist for a campaign. |
| **Fetch Campaign Click Details** | `fetch_campaign_click_details` | Get click details for a campaign. |
| **Fetch Campaign Click Details for Member** | `fetch_campaign_click_details_for_member` | Get click details for a specific subscriber on a specific link. |
| **Fetch Campaign Content** | `fetch_campaign_content` | Get the HTML and plain-text content for a campaign. |
| **Fetch Campaign Domain Performance** | `fetch_campaign_domain_performance` | Get domain performance stats for a campaign. |
| **Fetch Campaign Eepurl Activity** | `fetch_campaign_eepurl_activity` | Get EepURL activity for a campaign. |
| **Fetch Campaign Email Activity** | `fetch_campaign_email_activity` | Get email activity for a campaign. |
| **Fetch Campaign Feedback** | `fetch_campaign_feedback` | Get specific campaign feedback. |
| **Fetch Campaign Folder** | `fetch_campaign_folder` | Get a specific campaign folder. |
| **Fetch Campaign Opens** | `fetch_campaign_opens` | Get all opens for a campaign. |
| **Fetch Campaign Recipient Info** | `fetch_campaign_recipient_info` | Get information about a specific subscriber in a sent-to report. |
| **Fetch Campaign Report** | `fetch_campaign_report` | Get report for a specific campaign. |
| **Fetch Campaign Subreports** | `fetch_campaign_subreports` | Get sub-reports for a campaign. |
| **Fetch Campaign Top Locations** | `fetch_campaign_top_locations` | Get top locations for a campaign. |
| **Fetch Campaign Unsubscribed Member** | `fetch_campaign_unsubscribed_member` | Get information about a specific unsubscribed member. |
| **Fetch Link Click Details** | `fetch_link_click_details` | Get click details for a specific link. |
| **List Campaign Abuse Reports** | `list_campaign_abuse_reports` | Get abuse reports for a campaign. |
| **List Campaign Feedback** | `list_campaign_feedback` | List feedback for a campaign. |
| **List Campaign Folders** | `list_campaign_folders` | List all campaign folders. |
| **List Campaign Recipients** | `list_campaign_recipients` | Get list of subscribers a campaign was sent to. |
| **List Campaign Reports** | `list_campaign_reports` | Get all campaign reports. |
| **List Campaign Unsubscribes** | `list_campaign_unsubscribes` | Get unsubscribed members from a campaign. |
| **List Campaigns** | `list_campaigns` | Get all campaigns. |
| **List Members Who Clicked Link** | `list_members_who_clicked_link` | Get members who clicked a specific link. |
| **Pause Rss Campaign** | `pause_rss_campaign` | Pause an RSS-Driven campaign. |
| **Resume Rss Campaign** | `resume_rss_campaign` | Resume an RSS-Driven campaign. |
| **Schedule Campaign for Delivery** | `schedule_campaign_for_delivery` | Schedule a campaign for future delivery. |
| **Search Campaigns by Name** | `search_campaigns_by_name` | Search for campaigns. |
| **Send Campaign Immediately** | `send_campaign_immediately` | Send a campaign immediately. |
| **Send Campaign Test Email** | `send_campaign_test_email` | Send a test email for a campaign. |
| **Unschedule Campaign** | `unschedule_campaign` | Unschedule a scheduled campaign. |
| **Update Campaign Content** | `update_campaign_content` | Set the content for a campaign. |
| **Update Campaign Folder** | `update_campaign_folder` | Update a campaign folder. |
| **Update Campaign Settings** | `update_campaign_settings` | Update campaign settings. |
### Connected site
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ------------------------------------------------ |
| **Create Connected Site** | `create_connected_site` | Create a new connected site. |
| **Delete Connected Site** | `delete_connected_site` | Delete a connected site. |
| **Fetch Connected Site** | `fetch_connected_site` | Get information about a specific connected site. |
| **List Connected Sites** | `list_connected_sites` | List all connected sites. |
| **Update Connected Site** | `update_connected_site` | Update a connected site. |
| **Verify Connected Site Script** | `verify_connected_site_script` | Verify connected site script installation. |
### Conversation
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ---------------------------------------------- |
| **Delete Conversation Message** | `delete_conversation_message` | Delete a conversation message. |
| **Fetch Conversation** | `fetch_conversation` | Get information about a specific conversation. |
| **Fetch Conversation Message** | `fetch_conversation_message` | Get a specific conversation message. |
| **List Conversation Messages** | `list_conversation_messages` | List all messages in a conversation. |
| **List Conversations** | `list_conversations` | List all conversations. |
| **Post Conversation Message** | `post_conversation_message` | Add a message to a conversation. |
| **Update Conversation Message** | `update_conversation_message` | Update a conversation message. |
### Domain
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ---------------------------------------- |
| **Add Domain for Verification** | `add_domain_for_verification` | Add a domain to verify. |
| **Delete Verified Domain** | `delete_verified_domain` | Delete a verified domain. |
| **Fetch Verified Domain** | `fetch_verified_domain` | Get information about a verified domain. |
| **List Verified Domains** | `list_verified_domains` | List all verified domains. |
| **Update Verified Domain** | `update_verified_domain` | Update a verified domain. |
| **Verify Domain for Sending** | `verify_domain_for_sending` | Verify a domain for sending. |
### E-commerce cart
| Operation | ID | Description |
| ------------------------- | ----------------------- | ------------------------------------------- |
| **Create Cart Line Item** | `create_cart_line_item` | Add a line item to a cart. |
| **Create Ecommerce Cart** | `create_ecommerce_cart` | Add a new cart to a store. |
| **Delete Cart Line Item** | `delete_cart_line_item` | Delete a cart line. |
| **Delete Ecommerce Cart** | `delete_ecommerce_cart` | Delete a cart. |
| **Fetch Cart Line Item** | `fetch_cart_line_item` | Get information about a specific cart line. |
| **Fetch Ecommerce Cart** | `fetch_ecommerce_cart` | Get information about a specific cart. |
| **List Cart Line Items** | `list_cart_line_items` | Get all line items for a cart. |
| **List Ecommerce Carts** | `list_ecommerce_carts` | Get all carts for a store. |
| **Update Cart Line Item** | `update_cart_line_item` | Update a cart line. |
| **Update Ecommerce Cart** | `update_ecommerce_cart` | Update a cart. |
### E-commerce customer
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ------------------------------------------ |
| **Create Ecommerce Customer** | `create_ecommerce_customer` | Add a new customer to a store. |
| **Delete Ecommerce Customer** | `delete_ecommerce_customer` | Delete a customer. |
| **Fetch Ecommerce Customer** | `fetch_ecommerce_customer` | Get information about a specific customer. |
| **List Ecommerce Customers** | `list_ecommerce_customers` | Get all customers for a store. |
| **Update Ecommerce Customer** | `update_ecommerce_customer` | Update a customer. |
| **Upsert Ecommerce Customer** | `upsert_ecommerce_customer` | Add or update a customer (upsert). |
### E-commerce order
| Operation | ID | Description |
| ----------------------------- | --------------------------- | -------------------------------------------- |
| **Create Ecommerce Order** | `create_ecommerce_order` | Add a new order to a store. |
| **Create Order Line Item** | `create_order_line_item` | Add a line item to an order. |
| **Delete Ecommerce Order** | `delete_ecommerce_order` | Delete an order. |
| **Delete Order Line Item** | `delete_order_line_item` | Delete an order line. |
| **Fetch Ecommerce Order** | `fetch_ecommerce_order` | Get information about a specific order. |
| **Fetch Order Line Item** | `fetch_order_line_item` | Get information about a specific order line. |
| **List All Ecommerce Orders** | `list_all_ecommerce_orders` | List all orders across all stores. |
| **List Ecommerce Orders** | `list_ecommerce_orders` | Get all orders for a store. |
| **List Order Line Items** | `list_order_line_items` | Get all line items for an order. |
| **Update Ecommerce Order** | `update_ecommerce_order` | Update an order. |
| **Update Order Line Item** | `update_order_line_item` | Update an order line. |
### E-commerce product
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | ------------------------------------------------- |
| **Add Product Image** | `add_product_image` | Add a new image to a product. |
| **Create Ecommerce Product** | `create_ecommerce_product` | Add a new product to a store. |
| **Create Product Variant** | `create_product_variant` | Add a new variant to a product. |
| **Delete Ecommerce Product** | `delete_ecommerce_product` | Delete a product. |
| **Delete Product Image** | `delete_product_image` | Delete a product image. |
| **Delete Product Variant** | `delete_product_variant` | Delete a product variant. |
| **Fetch Ecommerce Product** | `fetch_ecommerce_product` | Get information about a specific product. |
| **Fetch Product Activity Report** | `fetch_product_activity_report` | Get product activity report. |
| **Fetch Product Image** | `fetch_product_image` | Get information about a specific product image. |
| **Fetch Product Variant** | `fetch_product_variant` | Get information about a specific product variant. |
| **List Ecommerce Products** | `list_ecommerce_products` | Get all products in a store. |
| **List Product Images** | `list_product_images` | Get all images for a product. |
| **List Product Variants** | `list_product_variants` | Get all variants for a product. |
| **Update Ecommerce Product** | `update_ecommerce_product` | Update a product. |
| **Update Product Image** | `update_product_image` | Update a product image. |
| **Update Product Variant** | `update_product_variant` | Update a product variant. |
### E-commerce store
| Operation | ID | Description |
| -------------------------- | ------------------------ | --------------------------------------- |
| **Create Ecommerce Store** | `create_ecommerce_store` | Add a new e-commerce store. |
| **Delete Ecommerce Store** | `delete_ecommerce_store` | Delete an e-commerce store. |
| **Fetch Ecommerce Store** | `fetch_ecommerce_store` | Get information about a specific store. |
| **List Ecommerce Stores** | `list_ecommerce_stores` | Get all e-commerce stores. |
| **Update Ecommerce Store** | `update_ecommerce_store` | Update an e-commerce store. |
### Facebook ad
| Operation | ID | Description |
| ---------------------------------------- | -------------------------------------- | --------------------------------------------- |
| **Fetch Facebook Ad** | `fetch_facebook_ad` | Get information about a specific Facebook ad. |
| **Fetch Facebook Ad Ecommerce Activity** | `fetch_facebook_ad_ecommerce_activity` | Get e-commerce activity for a Facebook ad. |
| **Fetch Facebook Ad Report** | `fetch_facebook_ad_report` | Get a specific Facebook ad report. |
| **List Facebook Ad Reports** | `list_facebook_ad_reports` | List Facebook ad reports. |
| **List Facebook Ads** | `list_facebook_ads` | List all Facebook ads. |
### File
| Operation | ID | Description |
| ------------------------ | ---------------------- | ------------------------------------- |
| **Create File Folder** | `create_file_folder` | Create a new File Manager folder. |
| **Delete File** | `delete_file` | Delete a File Manager file. |
| **Delete File Folder** | `delete_file_folder` | Delete a File Manager folder. |
| **Fetch File** | `fetch_file` | Get a specific File Manager file. |
| **Fetch File Folder** | `fetch_file_folder` | Get a specific File Manager folder. |
| **List File Folders** | `list_file_folders` | List all folders in the File Manager. |
| **List Files** | `list_files` | List all files in the File Manager. |
| **List Files in Folder** | `list_files_in_folder` | List all files in a folder. |
| **Update File** | `update_file` | Update a File Manager file. |
| **Update File Folder** | `update_file_folder` | Update a File Manager folder. |
| **Upload File** | `upload_file` | Upload a file to the File Manager. |
### Interest
| Operation | ID | Description |
| ---------------------------- | -------------------------- | --------------------------------------------------- |
| **Create Category Interest** | `create_category_interest` | Create a new interest in an interest category. |
| **Create Interest Category** | `create_interest_category` | Create a new interest category. |
| **Delete Category Interest** | `delete_category_interest` | Delete an interest. |
| **Delete Interest Category** | `delete_interest_category` | Delete an interest category. |
| **Fetch Category Interest** | `fetch_category_interest` | Get information about a specific interest. |
| **Fetch Interest Category** | `fetch_interest_category` | Get information about a specific interest category. |
| **List Category Interests** | `list_category_interests` | Get all interests in an interest category. |
| **List Interest Categories** | `list_interest_categories` | Get all interest categories for a list. |
| **Update Category Interest** | `update_category_interest` | Update an interest. |
| **Update Interest Category** | `update_interest_category` | Update an interest category. |
### Landing page
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ---------------------------------------------- |
| **Create Landing Page** | `create_landing_page` | Create a new landing page. |
| **Delete Landing Page** | `delete_landing_page` | Delete a landing page. |
| **Fetch Landing Page** | `fetch_landing_page` | Get information about a specific landing page. |
| **Fetch Landing Page Content** | `fetch_landing_page_content` | Get landing page content. |
| **Fetch Landing Page Report** | `fetch_landing_page_report` | Get a specific landing page report. |
| **List Landing Page Reports** | `list_landing_page_reports` | List landing page reports. |
| **List Landing Pages** | `list_landing_pages` | Get all landing pages. |
| **Publish Landing Page** | `publish_landing_page` | Publish a landing page. |
| **Unpublish Landing Page** | `unpublish_landing_page` | Unpublish a landing page. |
| **Update Landing Page** | `update_landing_page` | Update a landing page. |
| **Update Landing Page Html** | `update_landing_page_html` | Update landing page content. |
### List
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ---------------------------------------------------------- |
| **Archive List** | `archive_list` | Delete a list (archives it - does not permanently delete). |
| **Create List** | `create_list` | Create a new list/audience. |
| **Fetch List** | `fetch_list` | Get information about a specific list. |
| **Fetch List Activity** | `fetch_list_activity` | Get recent activity for a list. |
| **Fetch List Email Clients** | `fetch_list_email_clients` | Get top email clients for a list. |
| **Fetch List Subscriber Locations** | `fetch_list_subscriber_locations` | Get subscriber locations for a list. |
| **List All Lists** | `list_all_lists` | Get all lists/audiences in the account. |
| **Update List Settings** | `update_list_settings` | Update settings for a list. |
### Mandrill allowlist
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ---------------------------- |
| **Add Email to Allowlist** | `add_email_to_allowlist` | Add email to allowlist. |
| **List Allowlisted Emails** | `list_allowlisted_emails` | List allowlisted emails. |
| **Remove Email from Allowlist** | `remove_email_from_allowlist` | Remove email from allowlist. |
### Mandrill denylist
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | --------------------------- |
| **Add Email to Denylist** | `add_email_to_denylist` | Add email to denylist. |
| **List Denylisted Emails** | `list_denylisted_emails` | List denylisted emails. |
| **Remove Email from Denylist** | `remove_email_from_denylist` | Delete email from denylist. |
### Mandrill export
| Operation | ID | Description |
| --------------------------- | ------------------------- | ------------------------ |
| **Export Activity History** | `export_activity_history` | Export activity history. |
| **Export Allowlist** | `export_allowlist` | Export Allowlist. |
| **Export Denylist** | `export_denylist` | Export denylist. |
| **Export Whitelist** | `export_whitelist` | Export Allowlist. |
| **Fetch Export Info** | `fetch_export_info` | View export info. |
| **List Exports** | `list_exports` | List exports. |
### Mandrill inbound
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | ---------------------- |
| **Add Inbound Domain** | `add_inbound_domain` | Add inbound domain. |
| **Add Mailbox Route** | `add_mailbox_route` | Add mailbox route. |
| **Delete Inbound Domain** | `delete_inbound_domain` | Delete inbound domain. |
| **Delete Mailbox Route** | `delete_mailbox_route` | Delete mailbox route. |
| **List Inbound Domains** | `list_inbound_domains` | List inbound domains. |
| **List Mailbox Routes** | `list_mailbox_routes` | List mailbox routes. |
| **Send Raw Mime Message** | `send_raw_mime_message` | Send mime document. |
| **Update Mailbox Route** | `update_mailbox_route` | Update mailbox route. |
| **Verify Inbound Domain Settings** | `verify_inbound_domain_settings` | Check domain settings. |
### Mandrill IP
| Operation | ID | Description |
| ------------------------- | ----------------------- | -------------------------- |
| **Cancel Ip Warmup** | `cancel_ip_warmup` | Cancel ip warmup. |
| **Create Ip Pool** | `create_ip_pool` | Add ip pool. |
| **Delete Ip Address** | `delete_ip_address` | Delete ip address. |
| **Delete Ip Pool** | `delete_ip_pool` | Delete ip pool. |
| **Fetch Ip Info** | `fetch_ip_info` | Get ip info. |
| **Fetch Ip Pool Info** | `fetch_ip_pool_info` | Get ip pool info. |
| **List Ip Addresses** | `list_ip_addresses` | List ip addresses. |
| **List Ip Pools** | `list_ip_pools` | List ip pools. |
| **Move Ip to Pool** | `move_ip_to_pool` | Move ip to different pool. |
| **Request Additional Ip** | `request_additional_ip` | Request additional ip. |
| **Set Ip Custom Dns** | `set_ip_custom_dns` | Set custom dns. |
| **Start Ip Warmup** | `start_ip_warmup` | Start ip warmup. |
| **Test Ip Custom Dns** | `test_ip_custom_dns` | Test custom dns. |
### Mandrill message
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ---------------------------- |
| **Cancel Scheduled Email** | `cancel_scheduled_email` | Cancel scheduled email. |
| **Fetch Message Content** | `fetch_message_content` | Get message content. |
| **Fetch Message Info** | `fetch_message_info` | Get message info. |
| **List Scheduled Emails** | `list_scheduled_emails` | List scheduled emails. |
| **Parse Mime Message** | `parse_mime_message` | Parse mime document. |
| **Reschedule Scheduled Email** | `reschedule_scheduled_email` | Reschedule email. |
| **Search Messages by Date** | `search_messages_by_date` | Search messages by date. |
| **Search Messages by Hour** | `search_messages_by_hour` | Search messages by hour. |
| **Send Message** | `send_message` | Send new message. |
| **Send Raw Mime Email** | `send_raw_mime_email` | Send mime document. |
| **Send Sms Message** | `send_sms_message` | Send SMS message. |
| **Send Templated Message** | `send_templated_message` | Send using message template. |
### Mandrill metadata
| Operation | ID | Description |
| ------------------------- | ----------------------- | ---------------------- |
| **Create Metadata Field** | `create_metadata_field` | Add metadata field. |
| **Delete Metadata Field** | `delete_metadata_field` | Delete metadata field. |
| **List Metadata Fields** | `list_metadata_fields` | List metadata fields. |
| **Update Metadata Field** | `update_metadata_field` | Update metadata field. |
### Mandrill sender
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ---------------------- |
| **Add Sender Domain** | `add_sender_domain` | Add sender domain. |
| **Fetch Sender History** | `fetch_sender_history` | View sender history. |
| **Fetch Sender Info** | `fetch_sender_info` | Get sender info. |
| **List Account Senders** | `list_account_senders` | List account senders. |
| **List Sender Domains** | `list_sender_domains` | List sender domains. |
| **Verify Sender Domain for Sending** | `verify_sender_domain_for_sending` | Verify domain. |
| **Verify Sender Domain Settings** | `verify_sender_domain_settings` | Check domain settings. |
### Mandrill subaccount
| Operation | ID | Description |
| ------------------------- | ----------------------- | -------------------- |
| **Create Subaccount** | `create_subaccount` | Add subaccount. |
| **Delete Subaccount** | `delete_subaccount` | Delete subaccount. |
| **Fetch Subaccount Info** | `fetch_subaccount_info` | Get subaccount info. |
| **List Subaccounts** | `list_subaccounts` | List subaccounts. |
| **Pause Subaccount** | `pause_subaccount` | Pause subaccount. |
| **Resume Subaccount** | `resume_subaccount` | Resume subaccount. |
| **Update Subaccount** | `update_subaccount` | Update subaccount. |
### Mandrill tag
| Operation | ID | Description |
| -------------------------- | ------------------------ | ---------------------------------- |
| **Delete Tag** | `delete_tag` | Delete tag. |
| **Fetch All Tags History** | `fetch_all_tags_history` | View all tags history. |
| **Fetch Tag History** | `fetch_tag_history` | View tag history. |
| **Fetch Tag Info** | `fetch_tag_info` | Get tag info. |
| **List Tags** | `list_tags` | List tags. |
| **Search List Tags** | `search_list_tags` | Search for tags by name in a list. |
### Mandrill template
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ------------------------- |
| **Create Mandrill Template** | `create_mandrill_template` | Add template. |
| **Delete Mandrill Template** | `delete_mandrill_template` | Delete template. |
| **Fetch Mandrill Template History** | `fetch_mandrill_template_history` | Get template history. |
| **Fetch Mandrill Template Info** | `fetch_mandrill_template_info` | Get template info. |
| **List Mandrill Templates** | `list_mandrill_templates` | List templates. |
| **Publish Mandrill Template** | `publish_mandrill_template` | Publish template content. |
| **Render Html Template** | `render_html_template` | Render html template. |
| **Update Mandrill Template** | `update_mandrill_template` | Update template. |
### Mandrill URL
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ------------------------- |
| **Add Tracking Domain** | `add_tracking_domain` | Add tracking domains. |
| **Fetch Url History** | `fetch_url_history` | Get url history. |
| **List Most Clicked Urls** | `list_most_clicked_urls` | List most clicked urls. |
| **List Tracking Domains** | `list_tracking_domains` | List tracking domains. |
| **Search Most Clicked Urls** | `search_most_clicked_urls` | Search most clicked urls. |
| **Verify Tracking Domain Cname** | `verify_tracking_domain_cname` | Check cname settings. |
### Mandrill user
| Operation | ID | Description |
| ---------------------------- | -------------------------- | --------------------- |
| **Fetch User Info** | `fetch_user_info` | Get user info. |
| **List Api Account Senders** | `list_api_account_senders` | List account senders. |
| **Ping Mandrill Api** | `ping_mandrill_api` | Ping. |
| **Ping Mandrill Api V2** | `ping_mandrill_api_v2` | Ping 2. |
### Mandrill webhook
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ----------------- |
| **Create Mandrill Webhook** | `create_mandrill_webhook` | Add webhook. |
| **Delete Mandrill Webhook** | `delete_mandrill_webhook` | Delete webhook. |
| **Fetch Mandrill Webhook Info** | `fetch_mandrill_webhook_info` | Get webhook info. |
| **List Mandrill Webhooks** | `list_mandrill_webhooks` | List webhooks. |
| **Update Mandrill Webhook** | `update_mandrill_webhook` | Update webhook. |
### Mandrill whitelist
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ---------------------------- |
| **Add Email to Whitelist** | `add_email_to_whitelist` | Add email to allowlist. |
| **List Whitelisted Emails** | `list_whitelisted_emails` | List allowlisted emails. |
| **Remove Email from Whitelist** | `remove_email_from_whitelist` | Remove email from allowlist. |
### Member
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ------------------------------------------------------------- |
| **Add Member Note** | `add_member_note` | Add a note to a list member. |
| **Archive List Contact** | `archive_list_contact` | Archive a contact in an audience. |
| **Archive List Member** | `archive_list_member` | Archive a list member (soft delete). |
| **Create Audience Contact** | `create_audience_contact` | Add a new contact to an audience. |
| **Create List Member** | `create_list_member` | Add a new member to a list. |
| **Create Member Event** | `create_member_event` | Add an event for a list member. |
| **Delete Member Note** | `delete_member_note` | Delete a member note. |
| **Fetch Audience Contact** | `fetch_audience_contact` | Get information about a specific contact. |
| **Fetch List Member** | `fetch_list_member` | Get information about a specific list member. |
| **Fetch Member Activity** | `fetch_member_activity` | Get recent activity for a list member. |
| **Fetch Member Campaign Opens** | `fetch_member_campaign_opens` | Get opens by a specific member. |
| **Fetch Member Goals** | `fetch_member_goals` | Get goals for a list member. |
| **Fetch Member Note** | `fetch_member_note` | Get a specific member note. |
| **List Audience Contacts** | `list_audience_contacts` | List all contacts in an audience. |
| **List List Members** | `list_list_members` | Get members/subscribers in a list. |
| **List Member Activity Feed** | `list_member_activity_feed` | Get activity feed for a list member. |
| **List Member Notes** | `list_member_notes` | Get notes for a list member. |
| **List Member Tags** | `list_member_tags` | Get tags assigned to a list member. |
| **Permanently Delete Contact Data** | `permanently_delete_contact_data` | Delete all personally identifiable information for a contact. |
| **Permanently Delete List Member** | `permanently_delete_list_member` | Permanently delete a list member (cannot be undone). |
| **Search List Members** | `search_list_members` | Search for list members. |
| **Trigger Customer Journey Step** | `trigger_customer_journey_step` | Trigger a step in a customer journey. |
| **Update Audience Contact** | `update_audience_contact` | Update a contact in an audience. |
| **Update List Member** | `update_list_member` | Update an existing list member. |
| **Update Member Note** | `update_member_note` | Update a member note. |
| **Update Member Tags** | `update_member_tags` | Add or remove tags from a list member. |
| **Upsert List Member** | `upsert_list_member` | Add or update a list member (upsert operation). |
### Merge field
| Operation | ID | Description |
| ---------------------- | -------------------- | --------------------------------------------- |
| **Create Merge Field** | `create_merge_field` | Add a new merge field to a list. |
| **Delete Merge Field** | `delete_merge_field` | Delete a merge field. |
| **Fetch Merge Field** | `fetch_merge_field` | Get information about a specific merge field. |
| **List Merge Fields** | `list_merge_fields` | Get all merge fields for a list. |
| **Update Merge Field** | `update_merge_field` | Update a merge field. |
### Promo
| Operation | ID | Description |
| --------------------- | ------------------- | -------------------------------------------- |
| **Create Promo Code** | `create_promo_code` | Create a new promo code. |
| **Create Promo Rule** | `create_promo_rule` | Create a new promo rule. |
| **Delete Promo Code** | `delete_promo_code` | Delete a promo code. |
| **Delete Promo Rule** | `delete_promo_rule` | Delete a promo rule. |
| **Fetch Promo Code** | `fetch_promo_code` | Get information about a specific promo code. |
| **Fetch Promo Rule** | `fetch_promo_rule` | Get information about a specific promo rule. |
| **List Promo Codes** | `list_promo_codes` | Get all promo codes for a promo rule. |
| **List Promo Rules** | `list_promo_rules` | Get all promo rules for a store. |
| **Update Promo Code** | `update_promo_code` | Update a promo code. |
| **Update Promo Rule** | `update_promo_rule` | Update a promo rule. |
### Segment
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | -------------------------------------------------- |
| **Add Member to Segment** | `add_member_to_segment` | Add a member to a static segment. |
| **Create List Segment** | `create_list_segment` | Create a new segment in a list. |
| **Delete List Segment** | `delete_list_segment` | Delete a segment. |
| **Fetch List Segment** | `fetch_list_segment` | Get information about a specific segment. |
| **Fetch Segment Member** | `fetch_segment_member` | Get information about a segment member. |
| **List List Segments** | `list_list_segments` | Get all segments in a list. |
| **List Segment Members** | `list_segment_members` | List members in a segment. |
| **Remove Member from Segment** | `remove_member_from_segment` | Remove a member from a static segment. |
| **Update List Segment** | `update_list_segment` | Update a segment. |
| **Update Segment Members Batch** | `update_segment_members_batch` | Batch add or remove members from a static segment. |
### Signup form
| Operation | ID | Description |
| ---------------------- | -------------------- | ------------------------------------------ |
| **Create Signup Form** | `create_signup_form` | Create a signup form for a list. |
| **Fetch Signup Forms** | `fetch_signup_forms` | Get signup forms for a list. |
| **List Signup Forms** | `list_signup_forms` | List all signup forms for a specific list. |
| **Update Signup Form** | `update_signup_form` | Update a signup form. |
### Survey
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ------------------------------------------------- |
| **Create Survey** | `create_survey` | Create a new survey. |
| **Delete Survey** | `delete_survey` | Delete a survey. |
| **Fetch Survey** | `fetch_survey` | Get information about a specific survey. |
| **Fetch Survey Question** | `fetch_survey_question` | Get information about a specific survey question. |
| **Fetch Survey Report** | `fetch_survey_report` | Get a specific survey report. |
| **Fetch Survey Response** | `fetch_survey_response` | Get a specific survey response. |
| **List Survey Question Answers** | `list_survey_question_answers` | List all answers for a survey question. |
| **List Survey Questions** | `list_survey_questions` | List all questions in a survey. |
| **List Survey Reports** | `list_survey_reports` | List survey reports. |
| **List Survey Responses** | `list_survey_responses` | List all responses to a survey. |
| **List Surveys** | `list_surveys` | List all surveys for a list. |
| **Publish Survey** | `publish_survey` | Publish a survey. |
| **Send Survey Email** | `send_survey_email` | Send a survey email. |
| **Unpublish Survey** | `unpublish_survey` | Unpublish a survey. |
| **Update Survey** | `update_survey` | Update a survey. |
### Template
| Operation | ID | Description |
| ----------------------------------- | --------------------------------- | ------------------------------------------ |
| **Create Email Template** | `create_email_template` | Create a new template. |
| **Create Template Folder** | `create_template_folder` | Create a template folder. |
| **Delete Email Template** | `delete_email_template` | Delete a template. |
| **Delete Template Folder** | `delete_template_folder` | Delete a template folder. |
| **Fetch Email Template** | `fetch_email_template` | Get information about a specific template. |
| **Fetch Template Default Content** | `fetch_template_default_content` | Get default content for a template. |
| **Fetch Template Folder** | `fetch_template_folder` | Get a specific template folder. |
| **List Email Templates** | `list_email_templates` | Get all templates in the account. |
| **List Template Folders** | `list_template_folders` | List all template folders. |
| **Update Email Template** | `update_email_template` | Update a template. |
| **Update Template Default Content** | `update_template_default_content` | Update default content for a template. |
| **Update Template Folder** | `update_template_folder` | Update a template folder. |
### Webhook
| Operation | ID | Description |
| ------------------------ | ---------------------- | ------------------------------------------------ |
| **Create Batch Webhook** | `create_batch_webhook` | Create a new batch webhook. |
| **Create List Webhook** | `create_list_webhook` | Create a new webhook for a list. |
| **Delete Batch Webhook** | `delete_batch_webhook` | Delete a batch webhook. |
| **Delete List Webhook** | `delete_list_webhook` | Delete a webhook from a list. |
| **Fetch Batch Webhook** | `fetch_batch_webhook` | Get information about a specific batch webhook. |
| **Fetch List Webhook** | `fetch_list_webhook` | Get information about a specific webhook. |
| **List Batch Webhooks** | `list_batch_webhooks` | List all batch webhooks. |
| **List List Webhooks** | `list_list_webhooks` | Get all webhooks configured for a specific list. |
| **Update List Webhook** | `update_list_webhook` | Update an existing webhook configuration. |
# Mailgun
Source: https://docs.noclick.com/integrations/mailgun
Connect Mailgun to your workflows: 37 operations across 10 categories.
The Mailgun node adds Mailgun operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Mailgun also includes 9 trigger operations (marked in the tables below) that can start a workflow when something happens in Mailgun.
You can wire the Mailgun node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Mailgun under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.mailgun.com/app/account/security/api_keys).
## Operations
### Analytics
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ---------------------------------------------------------------- | ------- |
| **Get Metrics** | `get_metrics` | Retrieve aggregated sending analytics (Metrics API). | |
| **List Events** | `list_events` | Query message events (accepted, delivered, opened, failed, ...). | |
| **Query Logs** | `query_logs` | Query the newer Logs/analytics API for message activity. | |
### Domains
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ---------------------------------------------- | ------- |
| **Create Domain** | `create_domain` | Add a new sending domain. | |
| **Delete Domain** | `delete_domain` | Remove a sending domain. | |
| **Get Domain** | `get_domain` | Get details and DNS records for a domain. | |
| **List Domains** | `list_domains` | List sending domains. | |
| **Verify Domain** | `verify_domain` | Trigger / check DNS verification for a domain. | |
### Mailing lists
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------------------- | ------- |
| **Add Member** | `add_member` | Add a single member to a mailing list. | |
| **Bulk Add Members** | `bulk_add_members` | Add up to 1000 members to a mailing list in one call. | |
| **Create Mailing List** | `create_mailing_list` | Create a new mailing list. | |
| **Delete Member** | `delete_member` | Remove a member from a mailing list. | |
| **List Mailing Lists** | `list_mailing_lists` | List all mailing lists. | |
| **List Members** | `list_members` | List members of a mailing list. | |
### Messages
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------- | ------- |
| **Get Stored Message** | `get_stored_message` | Retrieve a stored / inbound message by its storage key. | |
| **Send Message** | `send_message` | Send an email message through a sending domain. | |
| **Send MIME Message** | `send_mime` | Send a pre-built raw MIME (RFC 2822) message. | |
### Routes
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ----------------------------------------------------- | ------- |
| **Create Route** | `create_route` | Create an inbound route (match expression -> action). | |
| **Delete Route** | `delete_route` | Delete an inbound route. | |
| **List Routes** | `list_routes` | List inbound-email routing rules. | |
### Suppressions
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | -------------------------------------------------- | ------- |
| **Add Unsubscribe** | `add_unsubscribe` | Add an unsubscribe record to the suppression list. | |
| **List Bounces** | `list_bounces` | List suppressed bounce addresses. | |
### Templates
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------ | ------- |
| **Create Template** | `create_template` | Store a new reusable email template. | |
| **Create Template Version** | `create_template_version` | Add a new version to an existing template. | |
| **Get Template** | `get_template` | Retrieve a template and its versions. | |
| **List Templates** | `list_templates` | List stored account-level templates. | |
### Validation
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------ | ------------------------------------------------------------------- | ------- |
| **Validate Email Address** | `validate_address` | Validate a single email address (deliverability, risk, role flags). | |
### Webhooks
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | -------------------------------------------- | ------- |
| **List Webhooks** | `list_webhooks` | List configured event webhooks for a domain. | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------- | --------------------------------------------------------------------------- | ------- |
| **On Email Accepted** | `on_accepted` | Fire when Mailgun accepts a message for delivery. | Yes |
| **On Email Clicked** | `on_clicked` | Fire when a recipient clicks a tracked link (click tracking required). | Yes |
| **On Email Delivered** | `on_delivered` | Fire when a message is delivered to the recipient's server. | Yes |
| **On Email Opened** | `on_opened` | Fire when a recipient opens a message (open tracking required). | Yes |
| **On Hard Bounce** | `on_hard_bounce` | Fire on a permanent failure / hard bounce. | Yes |
| **On Inbound Email** | `on_inbound_email` | Fire when an email is RECEIVED at the domain (via a Mailgun route forward). | Yes |
| **On Soft Bounce** | `on_soft_bounce` | Fire on a temporary failure / soft bounce (deferred). | Yes |
| **On Spam Complaint** | `on_spam_complaint` | Fire when a recipient marks a message as spam. | Yes |
| **On Unsubscribe** | `on_unsubscribed` | Fire when a recipient unsubscribes. | Yes |
# Meta
Source: https://docs.noclick.com/integrations/meta
Connect Meta to your workflows: 157 operations across 19 categories.
The Meta node adds Meta operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Meta also includes 8 trigger operations (marked in the tables below) that can start a workflow when something happens in Meta.
You can wire the Meta node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Meta under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
## Operations
### Ad
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ------------------------------------------------------------ | ------- |
| **Create Ad** | `create_ad` | Create an ad (links an ad set to a creative; enters review). | |
| **Delete Ad** | `delete_ad` | | |
| **Get Ad** | `get_ad` | | |
| **List Ads** | `list_ads` | | |
| **Preview Ad** | `preview_ad` | Generate a rendered preview for an ad. | |
| **Update Ad** | `update_ad` | Update an ad. | |
### Ad account
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ---------------------------------------------------------------- | ------- |
| **Assign Ad Account User** | `assign_ad_account_user` | Assign a user to an ad account with a set of tasks. | |
| **Create Publisher Block List** | `create_publisher_block_list` | Create a publisher block list under an ad account. | |
| **Get Ad Account** | `get_ad_account` | Read an ad account, including spend / funding / limits. | |
| **Get Custom Audience TOS** | `get_custom_audience_tos` | | |
| **Get DSA Recommendations** | `get_dsa_recommendations` | | |
| **Get Targeting Sentence Lines** | `get_targeting_sentence_lines` | Get human-readable targeting summary lines for a targeting spec. | |
| **List Ad Account Users** | `list_ad_account_users` | List users assigned to an ad account (with their tasks/roles). | |
| **List Ad Accounts** | `list_ad_accounts` | List the ad accounts the token can access (/me/adaccounts). | |
| **List Minimum Budgets** | `list_minimum_budgets` | | |
| **List Promote Pages** | `list_promote_pages` | | |
| **List Publisher Block Lists** | `list_publisher_block_lists` | | |
| **Remove Ad Account User** | `remove_ad_account_user` | Remove a user's assignment from an ad account. | |
| **Update Ad Account** | `update_ad_account` | Update ad account settings (name, spend cap, ...). | |
### Ad creative
| Operation | ID | Description | Trigger |
| ---------------------- | ----------------- | ------------------------------------------------------------------- | ------- |
| **Create Ad Creative** | `create_creative` | Create an ad creative in the account library. | |
| **Delete Ad Creative** | `delete_creative` | | |
| **Get Ad Creative** | `get_creative` | | |
| **List Ad Creatives** | `list_creatives` | | |
| **Update Ad Creative** | `update_creative` | Update a creative (limited mutable fields: name, status, adlabels). | |
### Ad rules
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------------------------- | ------- |
| **Create Ad Rule** | `create_ad_rule` | Create an automated ad rule in the account's rules library. | |
| **Delete Ad Rule** | `delete_ad_rule` | | |
| **Get Ad Rule** | `get_ad_rule` | | |
| **Get Ad Rule History** | `get_ad_rule_history` | Get the execution history of an automated ad rule. | |
| **List Ad Rules** | `list_ad_rules` | | |
| **Update Ad Rule** | `update_ad_rule` | Update an automated ad rule. | |
### Ad set
| Operation | ID | Description | Trigger |
| ----------------- | -------------- | ----------------------------------------------------- | ------- |
| **Create Ad Set** | `create_adset` | Create an ad set (targeting + budget + optimization). | |
| **Delete Ad Set** | `delete_adset` | | |
| **Get Ad Set** | `get_adset` | | |
| **List Ad Sets** | `list_adsets` | | |
| **Update Ad Set** | `update_adset` | Update an ad set. | |
### Ad studies
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------------------------- | ------- |
| **Create Ad Study** | `create_ad_study` | Create an A/B test / ad study on a business. | |
| **Delete Ad Study** | `delete_ad_study` | | |
| **Get Ad Study** | `get_ad_study` | | |
| **List Ad Studies** | `list_ad_studies` | List A/B tests / ad studies under a business. | |
| **List Study Cells** | `list_study_cells` | List the cells (test/control groups) of an ad study. | |
| **List Study Objectives** | `list_study_objectives` | List the objectives of an ad study. | |
| **Update Ad Study** | `update_ad_study` | Update an A/B test / ad study. | |
### Advanced
| Operation | ID | Description | Trigger |
| ------------------------ | --------------- | ------------------------------------------------------------- | ------- |
| **Custom Graph Request** | `graph_request` | Make an arbitrary Graph/Marketing API request (escape hatch). | |
| **Get Object** | `get_object` | Read any Graph object by ID with a field set. | |
### Audiences
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------------ | ------- |
| **Add Audience Users** | `add_audience_users` | Add users to a custom audience (pre-hashed data). | |
| **Create Custom Audience** | `create_custom_audience` | Create a custom audience in an ad account. | |
| **Create Lookalike Audience** | `create_lookalike_audience` | Create a lookalike audience from an origin audience. | |
| **Create Saved Audience** | `create_saved_audience` | Create a saved audience from a targeting spec. | |
| **Delete Custom Audience** | `delete_custom_audience` | | |
| **Delete Saved Audience** | `delete_saved_audience` | | |
| **Get Custom Audience** | `get_custom_audience` | | |
| **Get Saved Audience** | `get_saved_audience` | | |
| **List Custom Audiences** | `list_custom_audiences` | | |
| **List Saved Audiences** | `list_saved_audiences` | | |
| **Remove Audience Users** | `remove_audience_users` | Remove users from a custom audience (pre-hashed data). | |
| **Share Audience** | `share_audience` | Share a custom audience with other ad accounts. | |
| **Update Custom Audience** | `update_custom_audience` | Update a custom audience. | |
| **Update Saved Audience** | `update_saved_audience` | Update a saved audience. | |
### Business
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | --------------------------------------------------------------------- | ------- |
| **Assign Asset User** | `assign_asset_user` | Assign a user to a business asset with tasks. | |
| **Create Ad Account** | `create_ad_account` | Create a new ad account under a business. | |
| **Create Owned Business** | `create_owned_business` | Create a child business owned by a business. | |
| **Create System User** | `create_system_user` | Create a system user under a business. | |
| **Generate System User Token** | `generate_system_user_token` | Generate an access token for a system user (install the app first). | |
| **Get Business** | `get_business` | | |
| **Install App to System User** | `install_app_to_system_user` | Install an app to a system user (prerequisite for minting its token). | |
| **List Agencies** | `list_agencies` | List agencies that have access to a business. | |
| **List Assigned Users** | `list_assigned_users` | List users assigned to a business asset. | |
| **List Business Users** | `list_business_users` | List business users of a business. | |
| **List Businesses** | `list_businesses` | List businesses the user has access to. | |
| **List Client Ad Accounts** | `list_client_ad_accounts` | List ad accounts a business has client access to. | |
| **List Clients** | `list_clients` | List client businesses managed by a business. | |
| **List Extended Credits** | `list_extended_credits` | List extended credit lines available to a business. | |
| **List Owned Ad Accounts** | `list_owned_ad_accounts` | List ad accounts owned by a business. | |
| **List Owned Businesses** | `list_owned_businesses` | List businesses owned by a business. | |
| **List Owned Pages** | `list_owned_pages` | List pages owned by a business. | |
| **List Pending Client Ad Accounts** | `list_pending_client_ad_accounts` | List pending client ad account requests for a business. | |
| **List Pending Users** | `list_pending_users` | List pending user invitations for a business. | |
| **List System Users** | `list_system_users` | List system users of a business. | |
| **Remove Agency** | `remove_agency` | Remove an agency's access to a business. | |
### Campaign
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------ | ------- |
| **Create Campaign** | `create_campaign` | Create an ad campaign (ODAX objective). | |
| **Delete Campaign** | `delete_campaign` | | |
| **Get Campaign** | `get_campaign` | | |
| **List Campaigns** | `list_campaigns` | | |
| **Update Campaign** | `update_campaign` | Update a campaign (fields incl. status, budget, name). | |
### Catalog
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------------------------- | ------- |
| **Add External Event Source** | `add_external_event_source` | Link pixels/datasets to a catalog as external event sources. | |
| **Create Catalog** | `create_catalog` | Create a product catalog under a business. | |
| **Create Feed Upload** | `create_feed_upload` | Trigger an upload for a product feed. | |
| **Create Product** | `create_product` | Create a product in a catalog. | |
| **Create Product Audience** | `create_product_audience` | Create a product audience (dynamic retargeting) from a product set. | |
| **Create Product Feed** | `create_product_feed` | Create a product feed on a catalog. | |
| **Create Product Set** | `create_product_set` | Create a product set in a catalog. | |
| **Delete Catalog** | `delete_catalog` | | |
| **Delete Product Feed** | `delete_product_feed` | | |
| **Get Catalog** | `get_catalog` | | |
| **Get Catalog Diagnostics** | `get_catalog_diagnostics` | Read setup/quality diagnostics for a product catalog. | |
| **Get Catalog Event Stats** | `get_catalog_event_stats` | Read event stats (matched/unmatched content) for a catalog. | |
| **Get Feed Upload** | `get_feed_upload` | | |
| **Get Feed Upload Errors** | `get_feed_upload_errors` | List errors for a product feed upload. | |
| **Get Product Feed** | `get_product_feed` | | |
| **Items Batch** | `items_batch` | Batch create/update/delete catalog items. | |
| **List Catalogs** | `list_catalogs` | List product catalogs owned by a business. | |
| **List External Event Sources** | `list_external_event_sources` | List pixels/datasets linked to a catalog as external event sources. | |
| **List Feed Uploads** | `list_feed_uploads` | List uploads for a product feed. | |
| **List Product Feeds** | `list_product_feeds` | List product feeds for a catalog. | |
| **List Product Sets** | `list_product_sets` | List product sets in a catalog. | |
| **List Products** | `list_products` | List products in a catalog. | |
| **Localized Items Batch** | `localized_items_batch` | Batch upsert/delete localized catalog items (per-locale overrides). | |
| **Update Catalog** | `update_catalog` | Update a product catalog. | |
| **Update Product Feed** | `update_product_feed` | Update a product feed. | |
### Conversions API
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------------------------------------------ | ------- |
| **Send Conversion Events** | `send_conversion_events` | Send server-side conversion events to a pixel/dataset via the Conversions API. | |
| **Send Offline Events** | `send_offline_events` | Send offline conversion events to a dataset via the Conversions API. | |
### Custom conversions
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | -------------------------------------------- | ------- |
| **Create Custom Conversion** | `create_custom_conversion` | Create a custom conversion on an ad account. | |
| **Delete Custom Conversion** | `delete_custom_conversion` | | |
| **Get Custom Conversion** | `get_custom_conversion` | | |
| **Get Custom Conversion Stats** | `get_custom_conversion_stats` | Get stats for a custom conversion. | |
| **List Custom Conversions** | `list_custom_conversions` | | |
| **Update Custom Conversion** | `update_custom_conversion` | Update a custom conversion. | |
### Insights
| Operation | ID | Description | Trigger |
| ---------------------------------- | ------------------------ | ------------------------------------------------------------------------ | ------- |
| **Create Insights Report (Async)** | `create_insights_report` | Kick off an async insights report; returns a report\_run\_id to poll. | |
| **Fetch Insights Report Results** | `fetch_insights_report` | Fetch the results page of a completed async insights report. | |
| **Get Insights** | `get_insights` | Read performance insights for any ad object (account/campaign/adset/ad). | |
| **Get Insights Report Status** | `get_insights_report` | | |
### Lead ads
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **Archive Lead Form** | `archive_leadgen_form` | Archive a lead gen form (no hard delete exists). | |
| **Create Lead Form** | `create_leadgen_form` | Create a lead gen form on a Page. | |
| **Create Test Lead** | `create_test_lead` | Create a test lead for a lead gen form. | |
| **Get Lead** | `get_lead` | | |
| **Get Lead Form** | `get_leadgen_form` | | |
| **List Ad Leads** | `list_ad_leads` | List leads generated by a specific ad. | |
| **List Lead Forms** | `list_leadgen_forms` | List lead gen forms on a Page. | |
| **List Leads** | `list_leads` | List leads for a lead gen form. | |
| **List Test Leads** | `list_test_leads` | List test leads for a lead gen form. | |
| **Subscribe Page Webhooks** | `subscribe_page_webhooks` | Subscribe the app to a Page's webhook fields (e.g. leadgen) so the on\_leadgen trigger receives events. POST /\{page\_id}/subscribed\_apps requires pages\_manage\_metadata + the Page's own access token. | |
### Media
| Operation | ID | Description | Trigger |
| ------------------- | -------------- | ------------------------------------------------------------------------- | ------- |
| **Delete Ad Video** | `delete_video` | | |
| **Get Ad Video** | `get_video` | | |
| **List Ad Images** | `list_images` | | |
| **List Ad Videos** | `list_videos` | | |
| **Upload Ad Image** | `upload_image` | Upload an image to the ad account (by URL). Returns a hash for creatives. | |
| **Upload Ad Video** | `upload_video` | Upload a video to the ad account (by hosted URL). | |
### Pixel
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------- | ------- |
| **Create Pixel** | `create_pixel` | Create a new ads pixel on an ad account. | |
| **Get Pixel** | `get_pixel` | | |
| **Get Pixel Stats** | `get_pixel_stats` | Get event statistics for a pixel. | |
| **List Pixels** | `list_pixels` | | |
| **Share Pixel** | `share_pixel` | Share a pixel with another ad account. | |
| **Update Pixel** | `update_pixel` | Update an existing ads pixel. | |
### Targeting
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------------------------------------------------------------- | ------- |
| **Browse Targeting** | `browse_targeting` | Browse the targeting category tree for an ad account. | |
| **Delivery Estimate** | `delivery_estimate` | Estimate daily outcomes for a targeting spec + optimization goal. | |
| **Reach Estimate** | `reach_estimate` | Estimate reach for a targeting spec. | |
| **Search Targeting** | `search_targeting` | Search Meta's targeting taxonomy (interests, geo, categories). | |
| **Targeting Suggestions** | `targeting_suggestions` | Get targeting suggestions from a seed targeting list. | |
| **Validate Targeting** | `validate_targeting` | Validate targeting ids/names/specs against an ad account. | |
### Triggers
| Operation | ID | Description | Trigger |
| ----------------------------- | ----------------------- | ----------- | ------- |
| **On Ad Issue / Disapproval** | `on_ad_issues` | | Yes |
| **On Ad Recommendation** | `on_ad_recommendations` | | Yes |
| **On Ad Review Complete** | `on_ad_in_process` | | Yes |
| **On Any Meta Event** | `on_any_meta_event` | | Yes |
| **On Async Ad Creation** | `on_async_ad_creation` | | Yes |
| **On Creative Fatigue** | `on_creative_fatigue` | | Yes |
| **On New Lead (Lead Ads)** | `on_leadgen` | | Yes |
| **On Product Set Issue** | `on_product_set_issue` | | Yes |
# Microsoft Teams
Source: https://docs.noclick.com/integrations/microsoft-teams
Connect Microsoft Teams to your workflows: 40 operations across 11 categories.
The Microsoft Teams node adds Microsoft Teams operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Microsoft Teams also includes 3 trigger operations (marked in the tables below) that can start a workflow when something happens in Microsoft Teams.
You can wire the Microsoft Teams node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Microsoft Teams under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Microsoft Teams account when prompted; no keys to copy.
Connect your Microsoft work/school account to access Teams via Microsoft Graph. Personal Microsoft accounts are not supported for Teams messaging.
[Get your credentials here](https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade).
NoClick requests the following permissions:
* `https://graph.microsoft.com/User.Read`
* `https://graph.microsoft.com/Team.ReadBasic.All`
* `https://graph.microsoft.com/Team.Create`
* `https://graph.microsoft.com/Channel.ReadBasic.All`
* `https://graph.microsoft.com/Channel.Create`
* `https://graph.microsoft.com/Channel.Delete.All`
* `https://graph.microsoft.com/ChannelMessage.Read.All`
* `https://graph.microsoft.com/ChannelMessage.Send`
* `https://graph.microsoft.com/Chat.ReadWrite`
* `https://graph.microsoft.com/ChatMessage.Send`
* `https://graph.microsoft.com/TeamMember.ReadWrite.All`
* `https://graph.microsoft.com/TeamsAppInstallation.ReadWriteForTeam`
* `https://graph.microsoft.com/TeamsTab.ReadWriteForTeam`
* `https://graph.microsoft.com/OnlineMeetings.ReadWrite`
* `https://graph.microsoft.com/Presence.Read.All`
## Operations
### Apps
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------------------------- | ------- |
| **Uninstall App** | `uninstall_app` | Uninstall an app from a team. | |
### Apps & tabs
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------- | ------- |
| **Add Channel Tab** | `add_channel_tab` | Pin a configured tab to a channel. | |
| **Install App** | `install_app` | Install an app from the catalog into a team. | |
| **List Channel Tabs** | `list_channel_tabs` | List tabs pinned to a channel. | |
| **List Installed Apps** | `list_installed_apps` | List apps installed in a team. | |
### Channel messages
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------------------ | ------- |
| **Get Channel Message** | `get_channel_message` | Retrieve a single channel message. | |
| **List Channel Message Replies** | `list_channel_message_replies` | List replies in a channel message thread. | |
| **List Channel Messages** | `list_channel_messages` | List top-level messages in a channel. | |
| **Reply to Channel Message** | `reply_channel_message` | Reply within a channel message thread. | |
| **Send Channel Message** | `send_channel_message` | Post a message to a channel (delegated ChannelMessage.Send). | |
### Channels
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------------------------------- | ------- |
| **Create Channel** | `create_channel` | Create a standard / private / shared channel in a team. | |
| **Delete Channel** | `delete_channel` | Soft-delete a channel. | |
| **Get Channel** | `get_channel` | Retrieve a single channel. | |
| **List Channel Members** | `list_channel_members` | List the members of a channel (private/shared channels). | |
| **List Channels** | `list_channels` | List channels in a team. | |
| **Update Channel** | `update_channel` | Update a channel's properties (PATCH). | |
### Chats
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ---------------------------------------------------------------- | ------- |
| **Create Chat** | `create_chat` | Create a new 1:1 or group chat with members. | |
| **Get Chat** | `get_chat` | Retrieve a single chat. | |
| **Get Chat Message** | `get_chat_message` | Fetch a single chat message. | |
| **List Chat Members** | `list_chat_members` | List the members of a chat. | |
| **List Chat Messages** | `list_chat_messages` | List messages in a chat. | |
| **List Chats** | `list_chats` | List the signed-in user's 1:1 / group / meeting chats. | |
| **Send Chat Message** | `send_chat_message` | Post a message to an existing chat (delegated ChatMessage.Send). | |
### Meetings
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------------------- | ------- |
| **Create Online Meeting** | `create_online_meeting` | Create a Teams online meeting and get the join URL. | |
| **Get Online Meeting** | `get_online_meeting` | Retrieve an online meeting's details. | |
### Members
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | --------------------------------------- | ------- |
| **Add Team Member** | `add_team_member` | Add a member to a team. | |
| **List Team Members** | `list_team_members` | List members and their roles in a team. | |
| **Remove Team Member** | `remove_team_member` | Remove a member from a team. | |
### Presence
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------------ | ------- |
| **Get My Presence** | `get_my_presence` | Get the signed-in user's presence. | |
| **Get User Presence** | `get_user_presence` | Get a user's availability / activity (e.g. Available, Busy). | |
### Tabs
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ---------------------------- | ------- |
| **Delete Channel Tab** | `delete_channel_tab` | Remove a tab from a channel. | |
### Teams
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------- | ------- |
| **Archive Team** | `archive_team` | Archive a team (read-only for members; POST /archive). | |
| **Create Team** | `create_team` | Create a new team (async; returns an operation location). | |
| **Get Team** | `get_team` | Retrieve a team's properties and settings. | |
| **List Joined Teams** | `list_joined_teams` | List teams the signed-in user is a member of. | |
| **Unarchive Team** | `unarchive_team` | Restore an archived team (POST /unarchive). | |
| **Update Team** | `update_team` | Update a team's properties (PATCH). | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------------------- | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| **On Change Notification (Advanced)** | `on_change_notification` | Advanced: subscribe to any Microsoft Graph change-notification resource (e.g. team/channel/membership lifecycle, presence) by pasting the resource. | Yes |
| **On Channel Message** | `on_channel_message` | Fire when a message is posted in a specific channel (like Slack's "on channel message"). Subscribes to that channel's messages resource. | Yes |
| **On Chat Message** | `on_chat_message` | Fire when a message is posted in a specific chat (1:1 or group DM). Subscribes to that chat's messages resource. | Yes |
# Microsoft To Do
Source: https://docs.noclick.com/integrations/microsoft-todo
Connect Microsoft To Do to your workflows: 10 operations across 2 categories.
The Microsoft To Do node adds Microsoft To Do operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Microsoft To Do node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Microsoft To Do under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Microsoft To Do account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://graph.microsoft.com/Tasks.Read`
* `https://graph.microsoft.com/Tasks.ReadWrite`
* `https://graph.microsoft.com/User.Read`
* `offline_access`
## Operations
### Task
| Operation | ID | Description |
| --------------- | ------------- | ------------------------- |
| **Create Task** | `create_task` | Create a new task |
| **Delete Task** | `delete_task` | Delete a task |
| **Get Task** | `get_task` | Get a specific task |
| **List Tasks** | `list_tasks` | List tasks in a task list |
| **Update Task** | `update_task` | Update a task |
### Task list
| Operation | ID | Description |
| -------------------- | ------------------ | ------------------------ |
| **Create Task List** | `create_task_list` | Create a new task list |
| **Delete Task List** | `delete_task_list` | Delete a task list |
| **Get Task List** | `get_task_list` | Get a specific task list |
| **List Task Lists** | `list_task_lists` | List all task lists |
| **Update Task List** | `update_task_list` | Update a task list |
# Milvus
Source: https://docs.noclick.com/integrations/milvus
Connect Milvus to your workflows: 37 operations across 6 categories.
The Milvus node adds Milvus operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Milvus node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Milvus under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://cloud.zilliz.com/).
## Operations
### Alias
| Operation | ID | Description |
| ------------------ | ---------------- | ----------- |
| **Alter Alias** | `alter_alias` | |
| **Create Alias** | `create_alias` | |
| **Describe Alias** | `describe_alias` | |
| **Drop Alias** | `drop_alias` | |
| **List Aliases** | `list_aliases` | |
### Collection
| Operation | ID | Description |
| ------------------------ | ---------------------- | ----------- |
| **Compact Collection** | `compact` | |
| **Create Collection** | `create_collection` | |
| **Describe Collection** | `describe_collection` | |
| **Drop Collection** | `drop_collection` | |
| **Flush Collection** | `flush` | |
| **Get Collection Stats** | `get_collection_stats` | |
| **Get Load State** | `get_load_state` | |
| **Has Collection** | `has_collection` | |
| **List Collections** | `list_collections` | |
| **Load Collection** | `load_collection` | |
| **Release Collection** | `release_collection` | |
| **Rename Collection** | `rename_collection` | |
### Database
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Create Database** | `create_database` | |
| **Describe Database** | `describe_database` | |
| **Drop Database** | `drop_database` | |
| **List Databases** | `list_databases` | |
### Entities
| Operation | ID | Description |
| --------------------------- | ------------------ | ----------- |
| **Delete Entities** | `delete` | |
| **Get Entities** | `get` | |
| **Hybrid Search** | `hybrid_search` | |
| **Insert** | `insert` | |
| **Query** | `query` | |
| **Search** | `search` | |
| **Upload & Index Document** | `upload_and_index` | |
| **Upsert** | `upsert` | |
### Index
| Operation | ID | Description |
| ------------------ | ---------------- | ----------- |
| **Create Index** | `create_index` | |
| **Describe Index** | `describe_index` | |
| **Drop Index** | `drop_index` | |
| **List Indexes** | `list_indexes` | |
### Partition
| Operation | ID | Description |
| -------------------- | ------------------ | ----------- |
| **Create Partition** | `create_partition` | |
| **Drop Partition** | `drop_partition` | |
| **Has Partition** | `has_partition` | |
| **List Partitions** | `list_partitions` | |
# Monday.com
Source: https://docs.noclick.com/integrations/monday
Connect Monday.com to your workflows: 68 operations across 14 categories.
The Monday.com node adds Monday.com operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Monday.com also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Monday.com.
You can wire the Monday.com node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Monday.com under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Monday OAuth
Sign in with your Monday.com account when prompted; no keys to copy.
[Get your credentials here](https://monday.com/developers/apps).
NoClick requests the following permissions:
* `account:read`
* `boards:read`
* `boards:write`
* `docs:read`
* `docs:write`
* `workspaces:read`
* `workspaces:write`
* `users:read`
* `users:write`
* `teams:read`
* `teams:write`
* `updates:read`
* `updates:write`
* `notifications:write`
* `webhooks:read`
* `webhooks:write`
* `assets:read`
* `tags:read`
* `me:read`
### Monday api token
Enter the values manually when creating the credential.
[Get your credentials here](https://monday.com/developers/v2/try-it-yourself).
## Operations
### Account
| Operation | ID | Description | Trigger |
| -------------------- | ----------------- | ------------------------------------------------------ | ------- |
| **Get Current User** | `get_me` | Get the authenticated user's profile and account info. | |
| **List Users** | `list_users` | List account users. | |
| **List Workspaces** | `list_workspaces` | List workspaces in the account. | |
### Boards
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | -------------------------------------------------------------------------- | ------- |
| **Add Teams to Board** | `add_teams_to_board` | Add teams as subscribers to a board. | |
| **Add Users to Board** | `add_users_to_board` | Subscribe users to a board as subscribers or owners. | |
| **Archive Board** | `archive_board` | Archive a board. | |
| **Create Board** | `create_board` | Create a new board. | |
| **Delete Board** | `delete_board` | Permanently delete a board. | |
| **Duplicate Board** | `duplicate_board` | Duplicate a board (structure only, with items, or with items and updates). | |
| **Get Board** | `get_board` | Fetch a single board's metadata, columns, and groups by ID. | |
| **List Boards** | `list_boards` | List boards in the account (name, columns, groups). | |
| **Remove Users from Board** | `remove_users_from_board` | Remove subscribers from a board. | |
| **Update Board** | `update_board` | Update a board's name, description, or communication settings. | |
### Docs
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | --------------------------------------------------------------------------- | ------- |
| **Create Doc** | `create_doc` | Create a new monday.com Doc in a workspace. | |
| **Create Doc Block** | `create_doc_block` | Add a content block to a monday.com Doc. | |
| **Delete Doc Block** | `delete_doc_block` | Delete a block from a monday.com Doc. | |
| **Get Docs** | `get_docs` | List monday.com Docs, optionally filtered by workspace or specific doc IDs. | |
| **Update Doc Block** | `update_doc_block` | Update the content of an existing monday.com Doc block. | |
### Files
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ------------------------------------------- | ------- |
| **Get Assets** | `get_assets` | Get file assets (attachments) by their IDs. | |
### Folders
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | -------------------------------------------------- | ------- |
| **Create Folder** | `create_folder` | Create a folder in a workspace to organize boards. | |
| **Delete Folder** | `delete_folder` | Delete a folder. | |
| **List Folders** | `list_folders` | List folders in a workspace. | |
| **Update Folder** | `update_folder` | Rename or move a folder. | |
### Groups & columns
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------------------------------------- | ------- |
| **Archive Group** | `archive_group` | Archive a group and all its items. | |
| **Create Column** | `create_column` | Add a column to a board. | |
| **Create Group** | `create_group` | Create a new group (section) on a board. | |
| **Delete Column** | `delete_column` | Permanently delete a column from a board. | |
| **Delete Group** | `delete_group` | Delete a group from a board. | |
| **Duplicate Group** | `duplicate_group` | Duplicate a group and all its items. | |
| **List Groups** | `list_groups` | List all groups on a board. | |
| **Rename Column** | `rename_column` | Rename a column on a board. | |
| **Update Group** | `update_group` | Rename or recolor a group. | |
### Items
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------- | ------- |
| **Archive Item** | `archive_item` | Archive an item. | |
| **Clear Item Updates** | `clear_item_updates` | Clear all updates/comments from an item. | |
| **Create Item** | `create_item` | Create an item on a board. | |
| **Create Subitem** | `create_subitem` | Create a subitem under a parent item. | |
| **Delete Item** | `delete_item` | Permanently delete an item. | |
| **Duplicate Item** | `duplicate_item` | Duplicate an existing item. | |
| **Get Items By ID** | `get_items` | Fetch specific items by ID with their column values. | |
| **Get Subitems** | `get_subitems` | Get all subitems of a parent item. | |
| **List Items** | `list_items` | List items on a board (cursor-paginated, with column values). | |
| **Move Item To Board** | `move_item_to_board` | Move an item to another board and group. | |
| **Move Item To Group** | `move_item_to_group` | Move an item to a different group within the same board. | |
| **Query Items By Column Value** | `query_items_by_column` | Search/filter items on a board by a column value. | |
| **Update Item Column Value** | `change_column_value` | Change one column's value on an item (typed JSON value). | |
| **Update Multiple Column Values** | `change_multiple_column_values` | Change several columns at once via a JSON map. | |
| **Update Simple Column Value** | `change_simple_column_value` | Change a column using a plain string value (simple types). | |
### Tags
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | -------------------------------------------- | ------- |
| **Create or Get Tag** | `create_or_get_tag` | Create or get an existing account-level tag. | |
| **Get Tags** | `get_tags` | Get account-level tags. | |
### Teams
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------- | ------- |
| **Add Users To Team** | `add_users_to_team` | Add users to a team. | |
| **Create Team** | `create_team` | Create a new team in the account. | |
| **Delete Team** | `delete_team` | Delete a team from the account. | |
| **Get Teams** | `get_teams` | List teams in the account. | |
| **Remove Users From Team** | `remove_users_from_team` | Remove users from a team. | |
### Updates
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | --------------------------------------- | ------- |
| **Unlike Update** | `unlike_update` | Remove a like from an update (comment). | |
### Updates & notifications
| Operation | ID | Description | Trigger |
| --------------------------- | --------------------- | -------------------------------------- | ------- |
| **Create Notification** | `create_notification` | Send an in-app notification to a user. | |
| **Create Update (Comment)** | `create_update` | Post an update/comment on an item. | |
| **Delete Update** | `delete_update` | Delete an update/comment. | |
| **Edit Update** | `edit_update` | Edit an existing update/comment. | |
| **Get Item Updates** | `get_updates` | Get updates/comments on an item. | |
| **Like Update** | `like_update` | Like an update/comment. | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------------ | ------- |
| **Create Webhook** | `create_webhook` | Register a webhook on a board for an event type. | |
| **Delete Webhook** | `delete_webhook` | Remove a webhook by ID. | |
| **List Webhooks** | `list_webhooks` | List all webhooks registered on a board. | |
### Workspaces
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------------------------------------------------------- | ------- |
| **Create Workspace** | `create_workspace` | Create a new monday.com workspace. | |
| **Delete Workspace** | `delete_workspace` | Permanently delete a monday.com workspace. | |
| **Update Workspace** | `update_workspace` | Update a monday.com workspace's name, kind, or description. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ---------------------------------------------------------------------------- | ------- |
| **On Board Event** | `on_board_event` | Fire the workflow when a board event occurs (new item, column change, etc.). | Yes |
# MongoDB
Source: https://docs.noclick.com/integrations/mongodb
Connect MongoDB to your workflows: 38 operations across 7 categories.
The MongoDB node adds MongoDB operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the MongoDB node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect MongoDB under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Go to MongoDB Atlas → Database → Connect → Drivers, copy the connection string, and replace \ with your database user password. For self-hosted MongoDB use mongodb://user:pass\@host:27017/.
[Get your credentials here](https://cloud.mongodb.com/).
## Operations
### Aggregation
| Operation | ID | Description |
| ------------- | ----------- | ----------- |
| **Aggregate** | `aggregate` | |
### Atlas search
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ----------- |
| **Atlas Facet Search** | `atlas_facet_search` | |
| **Atlas Text Search** | `atlas_text_search` | |
| **Create Atlas Search Index** | `create_atlas_search_index` | |
### Atlas vector search
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ----------- |
| **Create Vector Search Index** | `create_vector_search_index` | |
| **Delete Search Index** | `delete_search_index` | |
| **List Search Indexes** | `list_search_indexes` | |
| **Update Search Index** | `update_search_index` | |
| **Upload & Index Document** | `upload_and_index` | |
| **Vector Search** | `vector_search` | |
### Collections
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Create Collection** | `create_collection` | |
| **Drop Collection** | `drop_collection` | |
| **List Collections** | `list_collections` | |
| **Rename Collection** | `rename_collection` | |
### Database
| Operation | ID | Description |
| ------------------ | ---------------- | ----------- |
| **Drop Database** | `drop_database` | |
| **List Databases** | `list_databases` | |
| **Run Command** | `command` | |
### Documents
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ----------- |
| **Bulk Write** | `bulk_write` | |
| **Count Documents** | `count_documents` | |
| **Delete Many Documents** | `delete_many` | |
| **Delete One Document** | `delete_one` | |
| **Distinct Values** | `distinct` | |
| **Estimated Document Count** | `estimated_document_count` | |
| **Find Documents** | `find` | |
| **Find One and Delete** | `find_one_and_delete` | |
| **Find One and Replace** | `find_one_and_replace` | |
| **Find One and Update** | `find_one_and_update` | |
| **Find One Document** | `find_one` | |
| **Insert Many Documents** | `insert_many` | |
| **Insert One Document** | `insert_one` | |
| **Replace One Document** | `replace_one` | |
| **Update Many Documents** | `update_many` | |
| **Update One Document** | `update_one` | |
### Indexes
| Operation | ID | Description |
| --------------------------- | ---------------- | ----------- |
| **Create Index** | `create_index` | |
| **Create Multiple Indexes** | `create_indexes` | |
| **Drop All Indexes** | `drop_indexes` | |
| **Drop Index** | `drop_index` | |
| **List Indexes** | `list_indexes` | |
# Notion
Source: https://docs.noclick.com/integrations/notion
Connect Notion to your workflows: 32 operations across 9 categories.
The Notion node adds Notion operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Notion also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Notion.
You can wire the Notion node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Notion under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Notion account when prompted; no keys to copy.
### Integration token
Enter the values manually when creating the credential.
[Get your credentials here](https://www.notion.so/my-integrations).
## Operations
### Block
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | -------------------------------------------- | ------- |
| **Append Children to Block** | `append_children_to_block` | Append new children blocks to a parent block | |
| **Delete Notion Block** | `delete_notion_block` | Delete (archive) a block | |
| **Fetch Block Children** | `fetch_block_children` | Retrieve a block's children | |
| **Fetch Notion Block** | `fetch_notion_block` | Retrieve a block | |
| **Update Block Content** | `update_block_content` | Update a block's content | |
### Comment
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------------------------- | ------- |
| **Create Page Comment** | `create_page_comment` | Create a comment on a page or in an existing discussion thread | |
| **Delete Page Comment** | `delete_page_comment` | Delete a comment | |
| **Fetch Page Comment** | `fetch_page_comment` | Retrieve a comment by its ID | |
| **List Block Comments** | `list_block_comments` | List comments on a block or page | |
| **Update Page Comment** | `update_page_comment` | Update a comment's rich text content | |
### Database
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------------------------------------------------- | ------- |
| **Create Page Database** | `create_page_database` | Create a new database as a child of a page | |
| **Fetch Database Metadata** | `fetch_database_metadata` | Retrieve a database's metadata and schema | |
| **Query Notion Database** | `query_notion_database` | Query a database to retrieve pages | |
| **Update Database Metadata** | `update_database_metadata` | Update a database's title, description, or properties | |
### File
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | --------------------------------------------- | ------- |
| **Create File Upload** | `create_file_upload` | Initiate a file upload and get an upload URL | |
| **Get Async Task Status** | `get_async_task_status` | Get the status of an asynchronous Notion task | |
### Page
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------------------------- | ------- |
| **Create Notion Page** | `create_notion_page` | Create a new page in a database or as a child of another page | |
| **Fetch Page Properties** | `fetch_page_properties` | Retrieve a page's properties | |
| **Fetch Page Property** | `fetch_page_property` | Retrieve a single property value from a page | |
| **Update Page Properties** | `update_page_properties` | Update a page's properties, icon, or cover | |
### User
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------------- | ------- |
| **Fetch Bot Integration User** | `fetch_bot_integration_user` | Retrieve the bot user for the current integration | |
| **Fetch Workspace User** | `fetch_workspace_user` | Retrieve a user by ID | |
| **List Workspace Users** | `list_workspace_users` | List all users in the workspace | |
### View
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------------- | ------- |
| **Fetch Database View** | `fetch_database_view` | Retrieve a specific database view | |
| **List Database Views** | `list_database_views` | List all views for a database | |
| **Update Database View** | `update_database_view` | Update a database view's name or layout | |
### Workspace
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------------------------------- | ------- |
| **Search Pages and Databases** | `search_pages_and_databases` | Search pages and databases by title | |
### Other
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------------------------------- | ------- |
| **On Comment Created** | `on_comment_created` | Trigger: fires when new comments appear on a specific block or page. | Yes |
| **On Database Created** | `on_database_created` | Trigger: fires when new databases are created in the workspace. | Yes |
| **On Database Item** | `on_database_item` | Trigger: polls a Notion database and fires for new or updated items. | Yes |
| **On Page Created** | `on_page_created` | Trigger: fires when new pages are created in the workspace. | Yes |
| **On Page Updated** | `on_page_updated` | Trigger: fires when existing pages are updated. | Yes |
# OneDrive
Source: https://docs.noclick.com/integrations/onedrive
Connect OneDrive to your workflows: 37 operations across 4 categories.
The OneDrive node adds OneDrive operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the OneDrive node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect OneDrive under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your OneDrive account when prompted; no keys to copy.
Connect your Microsoft account to access OneDrive files. Uses Microsoft Graph API with OAuth 2.0.
[Get your credentials here](https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade).
NoClick requests the following permissions:
* `https://graph.microsoft.com/Files.ReadWrite.All`
* `https://graph.microsoft.com/User.Read`
## Operations
### Drive
| Operation | ID | Description |
| ----------------------- | --------------------- | --------------------------------------- |
| **Get Drive Info** | `get_drive_info` | Get drive information and quota |
| **List Recent Items** | `list_recent_items` | List recently accessed items |
| **List Shared Items** | `list_shared_items` | List items shared with the user |
| **Search Drive Items** | `search_drive_items` | Search for items in OneDrive |
| **Track Drive Changes** | `track_drive_changes` | Track changes in OneDrive (delta query) |
### File
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | -------------------------------------------- |
| **Create Large File Upload Session** | `create_large_file_upload_session` | Create upload session for large files (>4MB) |
| **Create Sharing Link** | `create_sharing_link` | Create a sharing link for an item |
| **Get File Version** | `get_file_version` | Get a specific version of a file |
| **List File Versions** | `list_file_versions` | List all versions of a file |
| **List Item Thumbnails** | `list_item_thumbnails` | Get thumbnail images for a file |
| **Restore File Version** | `restore_file_version` | Restore a file to a previous version |
| **Send Sharing Invitation** | `send_sharing_invitation` | Send a sharing invitation |
| **Upload File** | `upload_file` | Upload a file (for files up to 4MB) |
### Folder
| Operation | ID | Description |
| ------------------------ | ---------------------- | ------------------------------------------------ |
| **Create Folder** | `create_folder` | Create a new folder |
| **Get Special Folder** | `get_special_folder` | Access special folders (Documents, Photos, etc.) |
| **List Folder Contents** | `list_folder_contents` | List contents of a folder |
### Item
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | ------------------------------------------------ |
| **Check in File** | `check_in_file` | Check in a file (unlock and save) |
| **Check Out File** | `check_out_file` | Check out a file (lock for editing) |
| **Copy Item** | `copy_item` | Copy a file or folder |
| **Delete Item** | `delete_item` | Delete a file or folder (moves to recycle bin) |
| **Delete Item Permission** | `delete_item_permission` | Remove a permission |
| **Discard File Checkout** | `discard_file_checkout` | Discard checkout (unlock without saving) |
| **Download Item** | `download_item` | Download file content |
| **Follow Item** | `follow_item` | Follow an item for updates |
| **Get Item Analytics** | `get_item_analytics` | Get analytics for a file |
| **Get Item Download Stream** | `get_item_download_stream` | Get download stream URL for a file |
| **Get Item Metadata** | `get_item_metadata` | Get metadata for a file or folder |
| **Get Item Preview Url** | `get_item_preview_url` | Get a preview URL for a file |
| **Get Item Thumbnail** | `get_item_thumbnail` | Get a specific thumbnail size |
| **Grant Item Permission** | `grant_item_permission` | Grant permission to a user or group |
| **List Item Permissions** | `list_item_permissions` | List permissions for an item |
| **Move Item** | `move_item` | Move a file or folder |
| **Permanently Delete Item** | `permanently_delete_item` | Permanently delete an item (cannot be recovered) |
| **Restore Item from Recycle Bin** | `restore_item_from_recycle_bin` | Restore a deleted item from recycle bin |
| **Unfollow Item** | `unfollow_item` | Unfollow an item |
| **Update Item Metadata** | `update_item_metadata` | Update file or folder metadata |
| **Update Item Permission** | `update_item_permission` | Update an existing permission |
# OneLake
Source: https://docs.noclick.com/integrations/onelake
Connect OneLake to your workflows: 34 operations across 6 categories.
The OneLake node adds OneLake operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
OneLake also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in OneLake.
You can wire the OneLake node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect OneLake under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your OneLake account when prompted; no keys to copy.
Connect your Microsoft account with access to a Fabric workspace. OneLake uses Microsoft Entra ID (Azure AD) OAuth 2.0; no API key is available.
[Get your credentials here](https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade).
NoClick requests the following permissions:
* `https://storage.azure.com/user_impersonation`
* `https://api.fabric.microsoft.com/OneLake.ReadWrite.All`
* `offline_access`
## Operations
### Data access
| Operation | ID | Description | Trigger |
| ---------------------------------- | ----------------------------------- | --------------------------------------------------------------------------------------- | ------- |
| **Create/Update Data Access Role** | `create_or_update_data_access_role` | Create or update a single OneLake data access role (the only API to set OneLake perms). | |
| **Delete Data Access Role** | `delete_data_access_role` | Delete a OneLake data access role. | |
| **Get Data Access Role** | `get_data_access_role` | Get a single OneLake data access role's rules and members. | |
| **List Data Access Roles** | `list_data_access_roles` | List OneLake data access (RBAC) roles for an item, the only API to read them. | |
### Filesystem
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | --------------------------------------------------------------------------- | ------- |
| **Append to File** | `append_file` | Upload bytes into a created file at a given offset. | |
| **Check Access** | `check_access` | Check whether the caller has r/w/x access to a path (no data read). | |
| **Create Directory** | `create_directory` | Create a folder inside a managed item (e.g. a lakehouse Files folder). | |
| **Create File** | `create_file` | Create a new (empty) file resource to append to. | |
| **Delete Path** | `delete_path` | Delete a user-created file or folder. | |
| **Flush File** | `flush_file` | Commit appended bytes, finalizing the upload. | |
| **Get Access Control** | `get_access_control` | Read the Fabric permissions mapped to a POSIX x-ms-acl for a path. | |
| **Get Properties** | `get_properties` | Return metadata (size, ETag, last-modified) for a file or directory. | |
| **Lease Path** | `lease_path` | Acquire, renew, change, release, or break a lease on a file (concurrency). | |
| **List Blobs** | `list_blobs` | List blobs under a workspace container via the Blob endpoint (flat/prefix). | |
| **List Paths** | `list_paths` | List files and folders under a workspace or item path (DFS filesystem). | |
| **Read File** | `read_file` | Download file content. | |
| **Rename / Move Path** | `rename_path` | Move or rename a user-created file or folder within allowed paths. | |
| **Set Properties** | `set_properties` | Update user-defined x-ms-properties metadata on a path. | |
### Settings
| Operation | ID | Description | Trigger |
| ------------------------ | -------------- | ---------------------------------------------------- | ------- |
| **Get OneLake Settings** | `get_settings` | Read workspace-level OneLake settings (Fabric Core). | |
### Shortcuts
| Operation | ID | Description | Trigger |
| --------------------------- | ----------------------- | ----------------------------------------------------------------------- | ------- |
| **Create Shortcut** | `create_shortcut` | Create a shortcut to OneLake, ADLS Gen2, S3, GCS, Blob, Dataverse, etc. | |
| **Create Shortcuts (Bulk)** | `create_shortcuts_bulk` | Create many shortcuts in one call (Fabric Core bulk shortcut API). | |
| **Delete Shortcut** | `delete_shortcut` | Delete a shortcut (does not delete the target data). | |
| **Get Shortcut** | `get_shortcut` | Retrieve a single shortcut definition. | |
| **List Shortcuts** | `list_shortcuts` | List all shortcuts in an item. | |
| **Reset Shortcut Cache** | `reset_shortcut_cache` | Clear cached files for shortcuts in the workspace. | |
### Tables
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------------------------------------------------------- | ------- |
| **Get Delta Table** | `get_delta_table` | Get Delta table metadata details (Unity Catalog API). | |
| **Get Iceberg Config** | `get_iceberg_config` | Get the Iceberg REST Catalog config for an item (returns the prefix). | |
| **Get Iceberg Namespace** | `get_iceberg_namespace` | Load metadata (location, properties) for an Iceberg namespace. | |
| **Get Iceberg Table** | `get_iceberg_table` | Load Iceberg table metadata. | |
| **List Delta Schemas** | `list_delta_schemas` | List schemas via the Unity Catalog-compatible Delta API. | |
| **List Delta Tables** | `list_delta_tables` | List Delta tables in a schema (Unity Catalog API). | |
| **List Iceberg Namespaces** | `list_iceberg_namespaces` | List schemas (namespaces) in an item via the Iceberg REST Catalog. | |
| **List Iceberg Tables** | `list_iceberg_tables` | List tables within a schema via the Iceberg REST Catalog. | |
### Other
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ---------------------------------------------------- | ------- |
| **On New File** | `on_new_file` | Trigger when a new file appears under a OneLake path | Yes |
# Outlook
Source: https://docs.noclick.com/integrations/outlook
Connect Outlook to your workflows: 97 operations across 11 categories.
The Outlook node adds Outlook operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Outlook also includes 8 trigger operations (marked in the tables below) that can start a workflow when something happens in Outlook.
You can wire the Outlook node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Outlook under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Outlook account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://graph.microsoft.com/Mail.Send`
* `https://graph.microsoft.com/Mail.Read`
* `https://graph.microsoft.com/Mail.ReadWrite`
* `https://graph.microsoft.com/MailboxSettings.ReadWrite`
* `https://graph.microsoft.com/Calendars.Read`
* `https://graph.microsoft.com/Calendars.ReadWrite`
* `https://graph.microsoft.com/Calendars.ReadWrite.Shared`
* `https://graph.microsoft.com/Contacts.Read`
* `https://graph.microsoft.com/Contacts.ReadWrite`
* `https://graph.microsoft.com/User.Read`
* `offline_access`
## Operations
### Calendar
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ----------- | ------- |
| **Add Event Attachment** | `add_event_attachment` | | |
| **Allowed Calendar Sharing Roles** | `allowed_calendar_sharing_roles` | | |
| **Create Calendar** | `create_calendar` | | |
| **Create Calendar Group** | `create_calendar_group` | | |
| **Create Calendar In Group** | `create_calendar_in_group` | | |
| **Create Calendar Permission** | `create_calendar_permission` | | |
| **Delete Calendar** | `delete_calendar` | | |
| **Delete Calendar Group** | `delete_calendar_group` | | |
| **Delete Calendar Permission** | `delete_calendar_permission` | | |
| **Delete Event Attachment** | `delete_event_attachment` | | |
| **Forward Calendar Event** | `forward_calendar_event` | | |
| **Get Calendar** | `get_calendar` | | |
| **Get Calendar Group** | `get_calendar_group` | | |
| **Get Calendar Permission** | `get_calendar_permission` | | |
| **Get Calendar View** | `get_calendar_view` | | |
| **Get Calendar View Delta** | `get_calendar_view_delta` | | |
| **Get Event Attachment** | `get_event_attachment` | | |
| **List Calendar Groups** | `list_calendar_groups` | | |
| **List Calendar Permissions** | `list_calendar_permissions` | | |
| **List Calendars** | `list_calendars` | | |
| **List Calendars In Group** | `list_calendars_in_group` | | |
| **List Event Attachments** | `list_event_attachments` | | |
| **Reminder View** | `reminder_view` | | |
| **Update Calendar** | `update_calendar` | | |
| **Update Calendar Group** | `update_calendar_group` | | |
| **Update Calendar Permission** | `update_calendar_permission` | | |
### Calendar event
| Operation | ID | Description | Trigger |
| ------------------------------------------------ | ---------------------------------------------- | ----------- | ------- |
| **Accept Calendar Event Invitation** | `accept_calendar_event_invitation` | | |
| **Cancel Calendar Event** | `cancel_calendar_event` | | |
| **Create Calendar Event** | `create_calendar_event` | | |
| **Decline Calendar Event Invitation** | `decline_calendar_event_invitation` | | |
| **Delete Calendar Event** | `delete_calendar_event` | | |
| **Dismiss Event Reminder** | `dismiss_event_reminder` | | |
| **Find Available Meeting Times** | `find_available_meeting_times` | | |
| **Get Calendar Event** | `get_calendar_event` | | |
| **Get Free Busy Schedule** | `get_free_busy_schedule` | | |
| **List Calendar Events** | `list_calendar_events` | | |
| **List Recurring Event Instances** | `list_recurring_event_instances` | | |
| **Snooze Event Reminder** | `snooze_event_reminder` | | |
| **Tentatively Accept Calendar Event Invitation** | `tentatively_accept_calendar_event_invitation` | | |
| **Update Calendar Event** | `update_calendar_event` | | |
### Contact
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Create Contact Person** | `create_contact_person` | | |
| **Delete Contact Person** | `delete_contact_person` | | |
| **Get Contact Person** | `get_contact_person` | | |
| **List Contacts** | `list_contacts` | | |
| **Update Contact Person** | `update_contact_person` | | |
### Contact folder
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Create Contact Folder** | `create_contact_folder` | | |
| **Delete Contact Folder** | `delete_contact_folder` | | |
| **Get Contact Folder** | `get_contact_folder` | | |
| **List Contact Folders** | `list_contact_folders` | | |
| **Update Contact Folder** | `update_contact_folder` | | |
### Email message
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ----------------------------------- | ------- |
| **Add Attachment to Message** | `add_attachment_to_message` | | |
| **Copy Message to Folder** | `copy_message_to_folder` | | |
| **Create Email Draft** | `create_email_draft` | Create an email draft | |
| **Create Forward Draft** | `create_forward_draft` | | |
| **Create Reply All Draft** | `create_reply_all_draft` | | |
| **Create Reply Draft** | `create_reply_draft` | | |
| **Delete Attachment from Message** | `delete_attachment_from_message` | | |
| **Delete Email Message** | `delete_email_message` | Delete an email | |
| **Forward Email Message** | `forward_email_message` | Forward an email | |
| **Get Email Attachments** | `get_email_attachments` | Get attachments from an email | |
| **Get Email Message** | `get_email_message` | Get a specific email by ID | |
| **Get Email Mime Content** | `get_email_mime_content` | | |
| **Mark Email As Read Unread** | `mark_email_as_read_unread` | Mark an email as read or unread | |
| **Move Email to Folder** | `move_email_to_folder` | Move an email to a different folder | |
| **Read Inbox Emails** | `read_inbox_emails` | Read emails from inbox | |
| **Reply to Email Message** | `reply_to_email_message` | Reply to an email | |
| **Send Email Draft** | `send_email_draft` | | |
| **Send Email Message** | `send_email_message` | Send an email | |
| **Send Mime Message** | `send_mime_message` | | |
| **Update Email Message Properties** | `update_email_message_properties` | | |
### Inbox rule
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Create Inbox Rule** | `create_inbox_rule` | | |
| **Delete Inbox Rule** | `delete_inbox_rule` | | |
| **Get Inbox Rule** | `get_inbox_rule` | | |
| **List Inbox Rules** | `list_inbox_rules` | | |
| **Update Inbox Rule** | `update_inbox_rule` | | |
### Mail folder
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------ | ------- |
| **Copy Mail Folder** | `copy_mail_folder` | | |
| **Create Mail Folder** | `create_mail_folder` | Create a new mail folder | |
| **Delete Mail Folder** | `delete_mail_folder` | | |
| **List Mail Folders** | `list_mail_folders` | List all mail folders | |
| **Move Mail Folder** | `move_mail_folder` | | |
| **Update Mail Folder** | `update_mail_folder` | | |
### Mailbox
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------------- | ------- |
| **Get Mailbox Settings** | `get_mailbox_settings` | Get mailbox settings (auto-reply, timezone, etc.) | |
| **Update Auto Reply Settings** | `update_auto_reply_settings` | Update auto-reply (out of office) settings | |
### Message category
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Create Message Category** | `create_message_category` | | |
| **Delete Message Category** | `delete_message_category` | | |
| **Get Message Category** | `get_message_category` | | |
| **List Message Categories** | `list_message_categories` | | |
| **Update Message Category** | `update_message_category` | | |
### Room
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------- | ------- |
| **Get Available Room Lists** | `get_available_room_lists` | | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------------------- | --------------------------- | ------------------------------------------------------------------------------ | ------- |
| **On Calendar Event Change (Any)** | `on_calendar_event_change` | Fire on any calendar event change (created / updated / deleted). | Yes |
| **On Calendar Event Created** | `on_calendar_event_created` | Fire when a calendar event is created. | Yes |
| **On Calendar Event Deleted** | `on_calendar_event_deleted` | Fire when a calendar event is deleted. | Yes |
| **On Calendar Event Updated** | `on_calendar_event_updated` | Fire when a calendar event is updated. | Yes |
| **On Email Change (Any)** | `on_email_change` | Fire on any email change in the watched folder (received / updated / deleted). | Yes |
| **On Email Deleted** | `on_email_deleted` | Fire when an email is deleted or moved to Deleted Items. | Yes |
| **On Email Received** | `on_email_received` | Fire when a new email arrives in the watched folder. | Yes |
| **On Email Updated** | `on_email_updated` | Fire when an email is updated (read/unread, flag, category, etc.). | Yes |
# Integrations
Source: https://docs.noclick.com/integrations/overview
Browse the 134 services NoClick connects to and the operations each one supports.
NoClick connects to the tools you already use. Each integration is a workflow node with ready-made operations: configure them on the canvas, let the AI builder wire them up, or hand them to an [AI agent as tools](/agents/tools).
Each page below covers how to connect the service and lists every operation it supports.
60 operations24 operations82 operations48 operations122 operations, 1 trigger266 operations, 6 triggers66 operations, 6 triggers51 operations, 5 triggers74 operations50 operations, 14 triggers132 operations29 operations, 1 trigger15 operations, 1 trigger28 operations, 1 trigger40 operations, 8 triggers45 operations36 operations41 operations, 1 trigger160 operations, 1 trigger591 operations, 23 triggers46 operations, 1 trigger391 operations, 5 triggers53 operations, 1 trigger19 operations, 1 trigger145 operations, 8 triggers42 operations31 operations31 operations25 operations, 1 trigger43 operations16 operations, 1 trigger96 operations, 1 trigger62 operations, 11 triggers13 operations, 1 trigger14 operations, 1 trigger21 operations, 5 triggers37 operations, 1 trigger53 operations, 5 triggers56 operations, 1 trigger65 operations, 1 trigger255 operations, 49 triggers83 operations, 2 triggers29 operations, 1 trigger647 operations, 74 triggers5 operations3 operations12 operations, 5 triggers39 operations, 1 trigger26 operations18 operations, 5 triggers89 operations, 1 trigger11 operations6 operations45 operations, 5 triggers37 operations, 1 trigger7 operations, 1 trigger33 operations19 operations, 1 trigger15 operations11 operations86 operations, 1 trigger7 operations12 operations13 operations, 1 trigger12 operations29 operations, 1 trigger88 operations, 2 triggers5 operations236 operations, 7 triggers39 operations, 2 triggers35 operations, 1 trigger53 operations, 4 triggers197 operations, 4 triggers107 operations, 33 triggers208 operations, 1 trigger59 operations, 9 triggers10 operations46 operations, 1 trigger384 operations37 operations, 9 triggers157 operations, 8 triggers40 operations, 3 triggers10 operations37 operations68 operations, 1 trigger38 operations32 operations, 5 triggers37 operations34 operations, 1 trigger97 operations, 8 triggers248 operations, 1 trigger31 operations, 1 trigger15 operations63 operations, 1 trigger22 operations318 operations, 31 triggers40 operations102 operations, 15 triggers18 operations156 operations, 119 triggers85 operations237 operations, 2 triggers18 operations, 1 trigger5 operations, 1 trigger47 operations161 operations, 17 triggers101 operations1 operation64 operations, 2 triggers102 operations, 7 triggers40 operations, 1 trigger213 operations, 6 triggers376 operations, 1 trigger491 operations, 56 triggers1 operation34 operations349 operations, 20 triggers49 operations, 1 trigger29 operations, 5 triggers8 operations42 operations, 2 triggers35 operations, 1 trigger45 operations, 1 trigger11 operations14 operations14 operations95 operations, 14 triggers38 operations, 2 triggers22 operations38 operations123 operations80 operations326 operations, 21 triggers1224 operations, 96 triggers
# PagerDuty
Source: https://docs.noclick.com/integrations/pagerduty
Connect PagerDuty to your workflows: 248 operations across 33 categories.
The PagerDuty node adds PagerDuty operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
PagerDuty also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in PagerDuty.
You can wire the PagerDuty node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect PagerDuty under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your PagerDuty account when prompted; no keys to copy.
[Get your credentials here](https://developer.pagerduty.com/docs/register-an-app).
NoClick requests the following permissions:
* `abilities.read`
* `addons.read`
* `addons.write`
* `analytics.read`
* `analytics.write`
* `audit_records.read`
* `change_events.read`
* `custom_fields.read`
* `custom_fields.write`
* `escalation_policies.read`
* `escalation_policies.write`
* `event_orchestrations.read`
* `event_orchestrations.write`
* `event_rules.read`
* `event_rules.write`
* `extension_schemas.read`
* `extensions.read`
* `extensions.write`
* `incident_workflows.read`
* `incident_workflows.write`
* `incident_workflows:instances.write`
* `incidents.read`
* `incidents.write`
* `licenses.read`
* `oncalls.read`
* `priorities.read`
* `schedules.read`
* `schedules.write`
* `services.read`
* `services.write`
* `status_dashboards.read`
* `status_pages.read`
* `status_pages.write`
* `subscribers.read`
* `subscribers.write`
* `tags.read`
* `tags.write`
* `teams.read`
* `teams.write`
* `templates.read`
* `templates.write`
* `users.read`
* `users.write`
* `users:contact_methods.read`
* `users:contact_methods.write`
* `vendors.read`
* `webhook_subscriptions.read`
* `webhook_subscriptions.write`
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://support.pagerduty.com/docs/api-access-keys).
## Operations
### Add-ons
| Operation | ID | Description | Trigger |
| ----------------- | -------------- | ------------------------------------------------------------------- | ------- |
| **Create Add-on** | `create_addon` | Install an add-on that embeds a URL in the PagerDuty UI. | |
| **Delete Add-on** | `delete_addon` | Delete an installed add-on. | |
| **Get Add-on** | `get_addon` | Retrieve a single add-on by ID. | |
| **List Add-ons** | `list_addons` | List installed add-ons, optionally filtered by type. | |
| **Update Add-on** | `update_addon` | Update an installed add-on (full replacement, all fields required). | |
### Analytics
| Operation | ID | Description | Trigger |
| --------------------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------- | ------- |
| **Aggregated Incident Metrics** | `analytics_incident_metrics` | Aggregated incident metrics (MTTA, MTTR, counts) across the account for a time range. | |
| **Get Raw Incident** | `get_raw_incident` | Get the raw analytics record for a single incident by ID. | |
| **Incident Metrics by Service/Team/EP** | `analytics_incident_metrics_by_dimension` | Incident metrics broken down by service, team, or escalation policy. | |
| **Raw Incident Responses** | `get_raw_incident_responses` | List the responder-response analytics records for a single incident. | |
| **Raw Incidents** | `analytics_raw_incidents` | List raw per-incident analytics records for a time range. | |
| **Responder Metrics** | `analytics_responder_metrics` | Aggregated responder metrics, overall or grouped by team. | |
### Audit
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ---------------------------------------------------- | ------- |
| **List Audit Records** | `list_audit_records` | List account audit trail records (cursor-paginated). | |
### Automation actions
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------------------------------------------------------------------- | ------- |
| **Create Automation Action** | `create_automation_action` | Create an automation action (requires the From Email credential field). | |
| **Delete Automation Action** | `delete_automation_action` | Delete an automation action (requires the From Email credential field). | |
| **Get Automation Action** | `get_automation_action` | Retrieve a single automation action by ID. | |
| **Get Invocation** | `get_invocation` | Retrieve a single automation action invocation by ID. | |
| **Invoke Automation Action** | `invoke_automation_action` | Invoke an automation action, optionally against an incident (requires the From Email credential field). | |
| **List Automation Actions** | `list_automation_actions` | List automation actions, optionally filtered by name. | |
| **List Invocations** | `list_invocations` | List automation action invocations, optionally filtered by action. | |
| **Update Automation Action** | `update_automation_action` | Update an existing automation action (requires the From Email credential field). | |
### Automation runners
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | --------------------------------------------------------------------------------------- | ------- |
| **Create Runner** | `create_runner` | Create an automation action runner (requires the From Email credential field). | |
| **Delete Runner** | `delete_runner` | Delete an automation action runner (requires the From Email credential field). | |
| **Get Runner** | `get_runner` | Retrieve a single automation action runner by ID. | |
| **List Runners** | `list_runners` | List automation action runners. | |
| **Update Runner** | `update_runner` | Update an existing automation action runner (requires the From Email credential field). | |
### Business services
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | -------------------------------------------------------------------------------------------------------------- | ------- |
| **Add Business Service Subscribers** | `create_business_service_subscribers` | Subscribe users or teams to a business service's status updates. | |
| **Create Business Service** | `create_business_service` | Create a business service. | |
| **Delete Business Service** | `delete_business_service` | Delete a business service. | |
| **Delete Priority Thresholds** | `delete_priority_thresholds` | Delete (reset) the account's business-service priority thresholds. | |
| **Get Business Service** | `get_business_service` | Get a business service by ID. | |
| **Get Priority Thresholds** | `get_priority_thresholds` | Get the account's business-service priority thresholds. | |
| **List Business Service Impactors** | `list_business_service_impactors` | List the technical services currently impacting business services. | |
| **List Business Service Impacts** | `list_business_service_impacts` | List the current impacts on business services (which are affected by active incidents). | |
| **List Business Service Subscribers** | `list_business_service_subscribers` | List the subscribers of a business service. | |
| **List Business Services** | `list_business_services` | List business services on the account. | |
| **Remove Business Service Subscribers** | `remove_business_service_subscribers` | Unsubscribe users or teams from a business service. | |
| **Set Priority Threshold** | `set_priority_threshold` | Set the account's business-service priority threshold (the priority at which an incident counts as impacting). | |
| **Update Business Service** | `update_business_service` | Update an existing business service. | |
### Change events
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------------------------------------------------ | ------- |
| **List Change Events** | `list_change_events` | List change events across the account. | |
| **List Service Change Events** | `list_service_change_events` | List change events for a specific service. | |
| **Send Change Event** | `send_change_event` | Send a change event via the Events API v2 change endpoint (deploys, config changes). | |
### Custom fields
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------------------------------------------------------- | ------- |
| **Create Custom Field** | `create_custom_field` | Create an incident custom field definition. | |
| **Create Field Option** | `create_field_option` | Add a fixed value option to a custom field. | |
| **Delete Custom Field** | `delete_custom_field` | Delete an incident custom field. | |
| **Delete Field Option** | `delete_field_option` | Delete a custom field option. | |
| **Get Custom Field** | `get_custom_field` | Retrieve a single incident custom field by ID. | |
| **Get Field Option** | `get_field_option` | Retrieve a single custom field option by ID. | |
| **List Custom Fields** | `list_custom_fields` | List incident custom field definitions on the account. | |
| **List Field Options** | `list_field_options` | List the fixed value options for a custom field. | |
| **Update Custom Field** | `update_custom_field` | Update an incident custom field (name, data\_type and field\_type are immutable). | |
| **Update Field Option** | `update_field_option` | Update the value of a custom field option. | |
### Escalation policies
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | --------------------------------------------------------------------- | ------- |
| **Create Escalation Policy** | `create_escalation_policy` | Create an escalation policy with a single escalation rule. | |
| **Delete Escalation Policy** | `delete_escalation_policy` | Delete an escalation policy. | |
| **Get Escalation Policy** | `get_escalation_policy` | Retrieve a single escalation policy by ID. | |
| **List Escalation Policies** | `list_escalation_policies` | List escalation policies. | |
| **Update Escalation Policy** | `update_escalation_policy` | Update an escalation policy's name, description, or escalation rules. | |
### Event orchestrations
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | --------------------------------------------------------------------------- | ------- |
| **Create Event Orchestration** | `create_event_orchestration` | Create a new Event Orchestration. | |
| **Create Orchestration Integration** | `create_orchestration_integration` | Create a new integration (event routing key) on an Event Orchestration. | |
| **Delete Event Orchestration** | `delete_event_orchestration` | Delete an Event Orchestration by ID. | |
| **Delete Orchestration Integration** | `delete_orchestration_integration` | Delete an integration from an Event Orchestration. | |
| **Get Event Orchestration** | `get_event_orchestration` | Retrieve a single Event Orchestration by ID. | |
| **Get Orchestration Global** | `get_orchestration_global` | Get the Global orchestration rules of an Event Orchestration. | |
| **Get Orchestration Integration** | `get_orchestration_integration` | Retrieve a single integration of an Event Orchestration. | |
| **Get Orchestration Router** | `get_orchestration_router` | Get the Router (the top-level routing rules) of an Event Orchestration. | |
| **Get Service Orchestration** | `get_service_orchestration` | Get the Service Orchestration rules for a service. | |
| **Get Service Orchestration Active** | `get_service_orchestration_active` | Get whether Service Orchestration is active (routing events) for a service. | |
| **List Event Orchestrations** | `list_event_orchestrations` | List all Event Orchestrations on the account. | |
| **List Orchestration Integrations** | `list_orchestration_integrations` | List the integrations (event routing keys) of an Event Orchestration. | |
| **Set Service Orchestration Active** | `set_service_orchestration_active` | Enable or disable Service Orchestration routing for a service. | |
| **Update Event Orchestration** | `update_event_orchestration` | Update an existing Event Orchestration's name or description. | |
| **Update Orchestration Global** | `update_orchestration_global` | Replace the Global orchestration rules of an Event Orchestration. | |
| **Update Orchestration Integration** | `update_orchestration_integration` | Update the label of an Event Orchestration integration. | |
| **Update Orchestration Router** | `update_orchestration_router` | Replace the Router rules of an Event Orchestration. | |
| **Update Service Orchestration** | `update_service_orchestration` | Replace the Service Orchestration rules for a service. | |
### Event rulesets (Legacy)
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------------------------- | ------- |
| **Create Ruleset** | `create_ruleset` | Create a new legacy Event Ruleset. | |
| **Create Ruleset Rule** | `create_ruleset_rule` | Create an event rule on a legacy Ruleset. | |
| **Delete Ruleset** | `delete_ruleset` | Delete a legacy Event Ruleset by ID. | |
| **Delete Ruleset Rule** | `delete_ruleset_rule` | Delete an event rule from a legacy Ruleset. | |
| **Get Ruleset** | `get_ruleset` | Retrieve a single legacy Event Ruleset by ID. | |
| **Get Ruleset Rule** | `get_ruleset_rule` | Retrieve a single event rule from a legacy Ruleset. | |
| **List Ruleset Rules** | `list_ruleset_rules` | List the event rules of a legacy Ruleset. | |
| **List Rulesets** | `list_rulesets` | List legacy Event Rulesets on the account. | |
| **Update Ruleset** | `update_ruleset` | Update a legacy Event Ruleset's name. | |
| **Update Ruleset Rule** | `update_ruleset_rule` | Update an event rule on a legacy Ruleset. | |
### Events API
| Operation | ID | Description | Trigger |
| -------------------- | ------------ | ---------------------------------------------------------------------------- | ------- |
| **Send Alert Event** | `send_event` | Send an alert event via the Events API v2 (trigger / acknowledge / resolve). | |
### Extensions
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------------------------------------- | ------- |
| **Create Extension** | `create_extension` | Create an extension attaching an outbound integration (schema) to one or more services. | |
| **Delete Extension** | `delete_extension` | Delete an extension. | |
| **Enable Extension** | `enable_extension` | Enable a temporarily disabled extension. | |
| **Get Extension** | `get_extension` | Retrieve a single extension by ID. | |
| **Get Extension Schema** | `get_extension_schema` | Retrieve a single extension schema by ID. | |
| **List Extension Schemas** | `list_extension_schemas` | List available extension schemas (outbound integration vendors). | |
| **List Extensions** | `list_extensions` | List extensions (outbound integrations attached to services). | |
| **Update Extension** | `update_extension` | Update an extension's name, endpoint URL, schema, or attached services. | |
### Incident details
| Operation | ID | Description | Trigger |
| --------------------------------------- | --------------------------------- | -------------------------------------------------------------------------- | ------- |
| **Add Responders** | `add_responders` | Request additional responders on an incident. | |
| **Add Status Update Subscribers** | `add_status_update_subscribers` | Subscribe users or teams to an incident's status updates. | |
| **Create Note** | `create_note` | Add a note to an incident. | |
| **Create Status Update** | `create_status_update` | Post a status update to an incident. | |
| **Get Alert** | `get_alert` | Retrieve a single alert on an incident by its ID. | |
| **Get Incident Custom Field Values** | `get_incident_custom_fields` | Get the custom field values set on an incident. | |
| **Get Log Entry** | `get_log_entry` | Retrieve a single log entry by its ID. | |
| **Get Outlier Incident** | `get_outlier_incident` | Get outlier information for an incident relative to its service's history. | |
| **Get Past Incidents** | `get_past_incidents` | List past incidents similar to this one. | |
| **Get Related Incidents** | `get_related_incidents` | List incidents related to this one. | |
| **List Alerts** | `list_alerts` | List the alerts associated with an incident. | |
| **List Log Entries** | `list_log_entries` | List the timeline log entries for an incident. | |
| **List Log Entries (Account)** | `list_global_log_entries` | List log entries across the whole account (all incidents). | |
| **List Notes** | `list_notes` | List the notes attached to an incident. | |
| **List Related Change Events** | `list_related_change_events` | List change events related to an incident. | |
| **List Status Update Subscribers** | `list_status_update_subscribers` | List the users and teams subscribed to an incident's status updates. | |
| **Manage Alerts (Bulk)** | `manage_alerts` | Bulk resolve or reassociate multiple alerts on an incident. | |
| **Remove Status Update Subscriber** | `remove_status_update_subscriber` | Unsubscribe users or teams from an incident's status updates. | |
| **Update Alert** | `update_alert` | Resolve an alert or reassociate it to a different incident. | |
| **Update Incident Custom Field Values** | `update_incident_custom_fields` | Set custom field values on an incident. | |
### Incident workflows
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ---------------------------------------------------------------------------------------------- | ------- |
| **Create Incident Workflow** | `create_incident_workflow` | Create an incident workflow (requires the From Email credential field). | |
| **Delete Incident Workflow** | `delete_incident_workflow` | Delete an incident workflow (requires the From Email credential field). | |
| **Get Incident Workflow** | `get_incident_workflow` | Retrieve a single incident workflow by ID. | |
| **List Incident Workflows** | `list_incident_workflows` | List incident workflows, optionally filtered by name. | |
| **Start Incident Workflow** | `start_incident_workflow` | Start an incident workflow instance on an incident (requires the From Email credential field). | |
| **Update Incident Workflow** | `update_incident_workflow` | Update an existing incident workflow (requires the From Email credential field). | |
### Incidents
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------ | ------------------------------------------------------------------------------------- | ------- |
| **Create Incident** | `create_incident` | Create a new incident on a service (requires the From Email credential field). | |
| **Get Incident** | `get_incident` | Retrieve a single incident by its ID. | |
| **List Incidents** | `list_incidents` | List incidents, optionally filtered by status, service, team, urgency, or date range. | |
| **Manage Incidents (Bulk)** | `manage_incidents` | Bulk-update the status of multiple incidents at once. | |
| **Merge Incidents** | `merge_incidents` | Merge other incidents into a target incident. | |
| **Snooze Incident** | `snooze_incident` | Snooze an incident for a number of seconds. | |
| **Update Incident** | `update_incident` | Update a single incident (acknowledge, resolve, reassign, set priority, etc.). | |
### Maintenance windows
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------------------------------------------------- | ------- |
| **Create Maintenance Window** | `create_maintenance_window` | Schedule a maintenance window for one or more services. | |
| **Delete Maintenance Window** | `delete_maintenance_window` | Delete (cancel) a maintenance window. | |
| **Get Maintenance Window** | `get_maintenance_window` | Retrieve a single maintenance window by ID. | |
| **List Maintenance Windows** | `list_maintenance_windows` | List maintenance windows. | |
| **Update Maintenance Window** | `update_maintenance_window` | Update a maintenance window's time range, affected services, or description. | |
### Reference
| Operation | ID | Description | Trigger |
| ---------------------------------- | ------------------------------- | ---------------------------------------------------------------------------------------- | ------- |
| **List Abilities** | `list_abilities` | List the abilities (feature entitlements) the account has. | |
| **List License Allocations** | `list_license_allocations` | List how licenses are allocated across users. | |
| **List Licenses** | `list_licenses` | List the licenses available on the account. | |
| **List Notifications** | `list_notifications` | List notifications sent during a required time range. | |
| **List Priorities** | `list_priorities` | List incident priorities defined on the account. | |
| **Paused Incident Report: Alerts** | `paused_incident_report_alerts` | Report the alerts that were paused (auto-pause / intelligent alert grouping) in a range. | |
| **Paused Incident Report: Counts** | `paused_incident_report_counts` | Report aggregate counts of paused alerts in a range. | |
| **Test Ability** | `test_ability` | Test whether the account has a specific ability (returns success if enabled). | |
### Response plays
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------------------------------------------------------------------------------- | ------- |
| **Create Response Play** | `create_response_play` | Create a response play (requires the From Email credential field). | |
| **Delete Response Play** | `delete_response_play` | Delete a response play (requires the From Email credential field). | |
| **Get Response Play** | `get_response_play` | Retrieve a single response play by ID. | |
| **List Response Plays** | `list_response_plays` | List response plays, optionally filtered by name. | |
| **Run Response Play** | `run_response_play` | Run a response play against an incident (requires the From Email credential field). | |
| **Update Response Play** | `update_response_play` | Update an existing response play (requires the From Email credential field). | |
### Schedules & On-Call
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------------------------------- | ------- |
| **Create Override** | `create_override` | Create an on-call override for a user over a time range. | |
| **Create Schedule** | `create_schedule` | Create an on-call schedule from a full schedule definition (JSON). | |
| **Delete Override** | `delete_override` | Remove an override from a schedule. | |
| **Delete Schedule** | `delete_schedule` | Delete an on-call schedule. | |
| **Get Schedule** | `get_schedule` | Retrieve a single schedule, optionally within a time range. | |
| **List On-Calls** | `list_oncalls` | List who is on-call, filterable by user, schedule, or escalation policy. | |
| **List Overrides** | `list_overrides` | List overrides on a schedule within a time range. | |
| **List Schedules** | `list_schedules` | List on-call schedules. | |
| **List Users On Schedule** | `list_users_on_schedule` | List the users on-call in a schedule over a time range. | |
| **Preview Schedule** | `preview_schedule` | Preview the rendered on-call entries for a schedule definition without saving it. | |
| **Update Schedule** | `update_schedule` | Replace an existing schedule with a full schedule definition (JSON). | |
### Service dependencies
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | --------------------------------------------------------------------------------- | ------- |
| **Associate Service Dependencies** | `associate_service_dependencies` | Associate one or more service dependency relationships (dependent -> supporting). | |
| **Disassociate Service Dependencies** | `disassociate_service_dependencies` | Remove one or more service dependency relationships. | |
| **Get Business Service Dependencies** | `get_business_service_dependencies` | List the dependencies of a business service. | |
| **Get Technical Service Dependencies** | `get_technical_service_dependencies` | List the dependencies of a technical service. | |
### Service event rules
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | --------------------------------------------- | ------- |
| **Create Service Event Rule** | `create_service_event_rule` | Create an event rule on a service. | |
| **Delete Service Event Rule** | `delete_service_event_rule` | Delete an event rule from a service. | |
| **Get Service Event Rule** | `get_service_event_rule` | Retrieve a single event rule from a service. | |
| **List Service Event Rules** | `list_service_event_rules` | List the event rules configured on a service. | |
| **Update Service Event Rule** | `update_service_event_rule` | Update an existing event rule on a service. | |
### Service integrations
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------------------------------------------------- | ------- |
| **Create Service Integration** | `create_service_integration` | Add an integration (e.g. Events API v2) to a service. | |
| **Get Service Integration** | `get_service_integration` | Retrieve a single integration on a service. | |
| **Update Service Integration** | `update_service_integration` | Update an existing integration on a service. | |
### Services
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ------------------------------------------ | ------- |
| **Create Service** | `create_service` | Create a new technical service. | |
| **Delete Service** | `delete_service` | Delete a service and all its integrations. | |
| **Get Service** | `get_service` | Retrieve a single service by ID. | |
| **List Services** | `list_services` | List technical services. | |
| **Update Service** | `update_service` | Update an existing service. | |
### Status dashboards
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | ---------------------------------------------------- | ------- |
| **Get Status Dashboard** | `get_status_dashboard` | Get a status dashboard by ID. | |
| **Get Status Dashboard by Slug** | `get_status_dashboard_by_slug` | Get a status dashboard by its URL slug. | |
| **Get Status Dashboard Service Impacts** | `get_status_dashboard_service_impacts` | Get the service impacts shown on a status dashboard. | |
| **List Status Dashboards** | `list_status_dashboards` | List status dashboards. | |
### Status pages
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ----------------------------------------------------------------------------------------- | ------- |
| **Create Status Page Post** | `create_status_page_post` | Create a post (incident or maintenance) on a status page. | |
| **Create Status Page Post Update** | `create_status_page_post_update` | Add an update to a status page post. | |
| **Create Status Page Subscription** | `create_status_page_subscription` | Create a subscription to a status page (or one of its services/posts). | |
| **Delete Status Page Post** | `delete_status_page_post` | Delete a status page post. | |
| **Delete Status Page Post Update** | `delete_status_page_post_update` | Delete a status page post update. | |
| **Delete Status Page Subscription** | `delete_status_page_subscription` | Delete a status page subscription. | |
| **Get Status Page Post** | `get_status_page_post` | Get a single status page post. | |
| **Get Status Page Post Update** | `get_status_page_post_update` | Get a single status page post update. | |
| **Get Status Page Subscription** | `get_status_page_subscription` | Get a single status page subscription. | |
| **List Status Page Post Updates** | `list_status_page_post_updates` | List the updates on a status page post. | |
| **List Status Page Posts** | `list_status_page_posts` | List the posts on a status page. | |
| **List Status Page Subscriptions** | `list_status_page_subscriptions` | List the subscriptions on a status page. | |
| **List Status Pages** | `list_status_pages` | List status pages. | |
| **Update Status Page Post** | `update_status_page_post` | Update a status page post. PagerDuty requires the full post representation on update. | |
| **Update Status Page Post Update** | `update_status_page_post_update` | Update a status page post update. PagerDuty requires the full post-update representation. | |
### Tags
| Operation | ID | Description | Trigger |
| ------------------------ | --------------------- | ------------------------------------------------------------- | ------- |
| **Assign / Remove Tags** | `change_tags` | Add and/or remove tags on a user, team, or escalation policy. | |
| **Create Tag** | `create_tag` | Create a tag with a label. | |
| **Delete Tag** | `delete_tag` | Delete a tag. | |
| **Get Tag** | `get_tag` | Retrieve a single tag by ID. | |
| **Get Tags for Entity** | `get_tags_for_entity` | Get the tags assigned to a user, team, or escalation policy. | |
| **List Tags** | `list_tags` | List tags, optionally filtered by a name query. | |
### Templates
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------------------------- | ------- |
| **Create Template** | `create_template` | Create a status-update template. | |
| **Delete Template** | `delete_template` | Delete a template. | |
| **Get Template** | `get_template` | Retrieve a single template by ID. | |
| **List Templates** | `list_templates` | List status-update templates, optionally filtered by type. | |
| **Render Template** | `render_template` | Render a status-update template against an incident. | |
| **Update Template** | `update_template` | Update an existing template. | |
### Users & teams
| Operation | ID | Description | Trigger |
| ------------------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------- | ------- |
| **Add Team Member** | `add_team_member` | Add a user to a team with a role (requires the From Email credential field). | |
| **Associate Escalation Policy** | `associate_team_escalation_policy` | Associate an escalation policy with a team (requires the From Email credential field). | |
| **Create Contact Method** | `create_contact_method` | Add a contact method to a user (requires the From Email credential field). | |
| **Create Notification Rule** | `create_notification_rule` | Add a notification rule to a user (requires the From Email credential field). | |
| **Create Team** | `create_team` | Create a new team (requires the From Email credential field). | |
| **Create User** | `create_user` | Create a new user (requires the From Email credential field). | |
| **Delete Contact Method** | `delete_contact_method` | Delete a user's contact method (requires the From Email credential field). | |
| **Delete Notification Rule** | `delete_notification_rule` | Delete a user's notification rule (requires the From Email credential field). | |
| **Delete Team** | `delete_team` | Delete a team (requires the From Email credential field). | |
| **Delete User** | `delete_user` | Delete a user from the account (requires the From Email credential field). | |
| **Get Contact Method** | `get_contact_method` | Retrieve a single contact method of a user. | |
| **Get Current User** | `get_current_user` | Retrieve the user associated with the API token. | |
| **Get Notification Rule** | `get_notification_rule` | Retrieve a single notification rule of a user. | |
| **Get Team** | `get_team` | Retrieve a single team by ID. | |
| **Get User** | `get_user` | Retrieve a single user by ID. | |
| **List Contact Methods** | `list_contact_methods` | List a user's contact methods (email, phone, SMS, push). | |
| **List Notification Rules** | `list_notification_rules` | List a user's notification rules. | |
| **List Team Members** | `list_team_members` | List the members of a team along with their roles. | |
| **List Teams** | `list_teams` | List teams in the account. | |
| **List Users** | `list_users` | List users in the account. | |
| **Remove Escalation Policy** | `remove_team_escalation_policy` | Remove an escalation policy's association with a team (requires the From Email credential field). | |
| **Remove Team Member** | `remove_team_member` | Remove a user from a team (requires the From Email credential field). | |
| **Update Contact Method** | `update_contact_method` | Update a user's contact method (requires the From Email credential field). | |
| **Update Notification Rule** | `update_notification_rule` | Update a user's notification rule (requires the From Email credential field). | |
| **Update Team** | `update_team` | Update an existing team (requires the From Email credential field). | |
| **Update User** | `update_user` | Update an existing user's profile (requires the From Email credential field). | |
### Vendors
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | -------------------------------------------- | ------- |
| **Get Vendor** | `get_vendor` | Retrieve a single vendor by ID. | |
| **List Vendors** | `list_vendors` | List integration vendors known to PagerDuty. | |
### Webhooks
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------------------------------ | ------- |
| **Create Webhook Subscription** | `create_webhook_subscription` | Register a V3 webhook subscription to deliver events to a URL. | |
| **Delete Webhook Subscription** | `delete_webhook_subscription` | Delete a V3 webhook subscription. | |
| **Disable Webhook Subscription** | `disable_webhook_subscription` | Disable (deactivate) a V3 webhook subscription. | |
| **Enable Webhook Subscription** | `enable_webhook_subscription` | Enable (activate) a V3 webhook subscription. | |
| **Get Webhook Subscription** | `get_webhook_subscription` | Retrieve a single V3 webhook subscription by ID. | |
| **List Webhook Subscriptions** | `list_webhook_subscriptions` | List configured V3 webhook subscriptions. | |
| **Ping Webhook Subscription** | `ping_webhook_subscription` | Send a test (ping) event to a V3 webhook subscription's delivery URL. | |
| **Update Webhook Subscription** | `update_webhook_subscription` | Update a V3 webhook subscription's delivery URL, events, or description. | |
### Workflow triggers
| Operation | ID | Description | Trigger |
| ------------------------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------ | ------- |
| **Associate Trigger With Service** | `associate_trigger_service` | Associate a workflow trigger with a service (requires the From Email credential field). | |
| **Create Workflow Trigger** | `create_incident_workflow_trigger` | Create an incident workflow trigger (requires the From Email credential field). | |
| **Delete Workflow Trigger** | `delete_incident_workflow_trigger` | Delete an incident workflow trigger (requires the From Email credential field). | |
| **Disassociate Trigger From Service** | `disassociate_trigger_service` | Disassociate a workflow trigger from a service (requires the From Email credential field). | |
| **Get Workflow Trigger** | `get_incident_workflow_trigger` | Retrieve a single incident workflow trigger by ID. | |
| **List Workflow Triggers** | `list_incident_workflow_triggers` | List incident workflow triggers, optionally filtered by workflow name. | |
| **Update Workflow Trigger** | `update_incident_workflow_trigger` | Update an existing incident workflow trigger (requires the From Email credential field). | |
### Other
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------------------------------------------- | ------- |
| **On Incident Event** | `on_incident_event` | Fire the workflow when an incident event is delivered (triggered, acknowledged, resolved...). | Yes |
# Google PageSpeed
Source: https://docs.noclick.com/integrations/pagespeed
Connect Google PageSpeed to your workflows: 15 operations across 4 categories.
The Google PageSpeed node adds Google PageSpeed operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Google PageSpeed node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Google PageSpeed under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://console.cloud.google.com/apis/credentials).
## Operations
### Analysis
| Operation | ID | Description |
| ----------------------- | ------------------ | --------------------------------------------------------------------- |
| **Analyze (Desktop)** | `analyze_desktop` | Run the analysis using the desktop profile. |
| **Analyze (Mobile)** | `analyze_mobile` | Run the analysis using the mobile crawler/emulation profile. |
| **Localized Report** | `localized_report` | Run with a specific result locale for localized audit text. |
| **Run Analysis (Full)** | `run_analysis` | Run a full Lighthouse + CrUX analysis and return the complete report. |
### Field data
| Operation | ID | Description |
| -------------------------- | ------------------------ | ------------------------------------------------------------------------- |
| **Core Web Vitals (URL)** | `core_web_vitals` | Extract real-user Core Web Vitals (CrUX field data) for the specific URL. |
| **Origin Core Web Vitals** | `origin_core_web_vitals` | Extract aggregated CrUX field data for the entire origin (whole site). |
### Lab data
| Operation | ID | Description |
| --------------------- | ------------------- | --------------------------------------------------------------------------- |
| **Get Audit Details** | `get_audit` | Extract a single named Lighthouse audit (score + details). |
| **Get Opportunities** | `get_opportunities` | Extract performance opportunity audits with estimated ms/byte savings. |
| **Get Screenshot** | `get_screenshot` | Extract the final rendered screenshot (base64 data URI) of the page. |
| **Lab Metrics** | `lab_metrics` | Extract lab metrics (FCP, LCP, Speed Index, TBT, CLS, TTI) from Lighthouse. |
### Scores
| Operation | ID | Description |
| ------------------------ | ---------------------- | ------------------------------------------------------------------------- |
| **Accessibility Score** | `accessibility_score` | Run with the ACCESSIBILITY category and extract the score + audits. |
| **All Category Scores** | `all_categories` | Run all four Lighthouse categories in one call and extract every score. |
| **Best Practices Score** | `best_practices_score` | Run with the BEST\_PRACTICES category and extract the score + audits. |
| **Performance Score** | `performance_score` | Run with the PERFORMANCE category and extract the 0-100 Lighthouse score. |
| **SEO Score** | `seo_score` | Run with the SEO category and extract the SEO score + failing audits. |
# Parallel
Source: https://docs.noclick.com/integrations/parallel
Connect Parallel to your workflows: 31 operations across 7 categories.
The Parallel node adds Parallel operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Parallel also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Parallel.
You can wire the Parallel node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Parallel under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://platform.parallel.ai).
### OAuth
Sign in with your Parallel account when prompted; no keys to copy.
[Get your credentials here](https://platform.parallel.ai).
NoClick requests the following permissions:
* `key:read`
## Operations
### Chat
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------------------------- | ------- |
| **Chat Completions** | `chat_completions` | OpenAI-compatible chat completion backed by Parallel web research (Beta). | |
### FindAll
| Operation | ID | Description | Trigger |
| -------------------------- | --------------------- | ------------------------------------------------------------------------------------------------- | ------- |
| **Add FindAll Enrichment** | `enrich_findall` | Add column enrichments to a FindAll run's discovered entities. | |
| **Cancel FindAll Run** | `cancel_findall` | Cancel an in-progress FindAll run. | |
| **Create FindAll Run** | `create_findall_run` | Discover verified entities matching plain-language criteria. | |
| **Extend FindAll Run** | `extend_findall` | Find more entities beyond the original match limit. | |
| **Fast Entity Search** | `entity_search` | Synchronous real-time people / company lookup. | |
| **Generate FindAll Spec** | `create_findall_spec` | Transform a natural-language objective into a structured FindAll spec (suggested starting point). | |
| **Get FindAll Run Result** | `get_findall_result` | Get discovered entities / candidates for a FindAll run. | |
| **Get FindAll Run Status** | `get_findall_run` | Poll a FindAll run's status. | |
### Monitors
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------------------------------- | ------- |
| **Cancel Monitor** | `cancel_monitor` | Stop / cancel a monitor. | |
| **Create Monitor** | `create_monitor` | Set up continuous web tracking. | |
| **Get Monitor** | `get_monitor` | Retrieve a single monitor. | |
| **List Monitor Events** | `list_monitor_events` | List detected change events for a monitor. | |
| **List Monitors** | `list_monitors` | List monitors (cursor pagination). | |
| **Simulate Monitor Event** | `simulate_monitor_event` | Simulate a monitor event to test webhook delivery without waiting for a real run. | |
| **Trigger Monitor Run** | `trigger_monitor` | Manually trigger a monitor check now. | |
| **Update Monitor** | `update_monitor` | Update a monitor's config. | |
### Search
| Operation | ID | Description | Trigger |
| ------------------------ | --------- | ------------------------------------------------------------------ | ------- |
| **Extract Page Content** | `extract` | Extract clean markdown excerpts from a list of URLs. | |
| **Search the Web** | `search` | Run a one-shot web search returning ranked URLs with LLM excerpts. | |
### Task groups
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------- | --------------------------------------------------------------------- | ------- |
| **Add Runs to Task Group** | `add_runs_to_group` | Add one or more task runs to an existing group. | |
| **Create Task Group** | `create_task_group` | Create a batch group to run many task runs together. | |
| **Fetch Task Group Runs** | `get_group_runs` | List runs in a task group. | |
| **Get Task Group** | `get_task_group` | Retrieve a task group's status and aggregate progress. | |
| **Get Task Group Run** | `get_task_group_run` | Retrieve a single run within a task group. | |
| **Stream Task Group Events** | `get_group_events` | Stream real-time events for a task group while runs are active (SSE). | |
### Tasks
| Operation | ID | Description | Trigger |
| -------------------------- | --------------------- | ---------------------------------------------------------------------------------------- | ------- |
| **Create Task Run** | `create_task_run` | Start a deep-research / enrichment task run. | |
| **Get Task Run** | `get_task_run` | Retrieve a task run object and its status. | |
| **Get Task Run Input** | `get_task_run_input` | Retrieve the original input submitted for a task run. | |
| **Get Task Run Result** | `get_task_run_result` | Retrieve a completed task run result (blocks until the run finishes or timeout expires). | |
| **Stream Task Run Events** | `get_task_run_events` | Stream real-time progress events for an individual task run via SSE. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------------- | ----------------- | ------------------------------------------------------- | ------- |
| **Receive Webhook Events** | `receive_webhook` | Receive Task / Monitor completion events from Parallel. | Yes |
# Perplexity
Source: https://docs.noclick.com/integrations/perplexity
Connect Perplexity to your workflows: 15 operations across 7 categories.
The Perplexity node adds Perplexity operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Perplexity node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Perplexity under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://console.perplexity.ai).
## Operations
### Agent
| Operation | ID | Description |
| ------------------------- | ---------------- | ------------------------------------------------------------------ |
| **Create Agent Response** | `agent_response` | Run a frontier model with Perplexity web-search tools and filters. |
### Analytics
| Operation | ID | Description |
| ---------------------------- | ----------------- | -------------------------------------- |
| **Computer Usage Analytics** | `usage_analytics` | Retrieve account usage/analytics data. |
### Auth tokens
| Operation | ID | Description |
| ----------------------- | --------------------- | ------------------------------------------------------------ |
| **Generate Auth Token** | `generate_auth_token` | Programmatically create a new API key/token for the account. |
| **Revoke Auth Token** | `revoke_auth_token` | Revoke an existing API key/token (rotation). |
### Chat
| Operation | ID | Description |
| --------------------------------- | ------------------------- | -------------------------------------------------------------------------- |
| **Academic Search (Chat)** | `academic_search` | Chat completion grounded in scholarly sources (search\_mode: academic). |
| **Create Async Chat Completion** | `create_async_completion` | Submit a long-running (e.g. deep-research) completion as a background job. |
| **Create Chat Completion** | `chat_completion` | Generate a search-grounded model answer for a chat conversation. |
| **Get Async Chat Completion** | `get_async_completion` | Poll the status and retrieve a specific async completion job. |
| **List Async Chat Completions** | `list_async_completions` | List all async chat-completion jobs for the account. |
| **SEC Filings Search (Chat)** | `sec_search` | Chat completion grounded in SEC filings (search\_mode: sec). |
| **Structured JSON Output (Chat)** | `structured_output` | Chat completion with a JSON schema response\_format for validated output. |
### Embeddings
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ------------------------------------------------------------------- |
| **Create Contextualized Embeddings** | `create_contextualized_embeddings` | Generate context-aware embeddings (document + surrounding context). |
| **Create Embeddings** | `create_embeddings` | Generate vector embeddings for text. |
### Models
| Operation | ID | Description |
| --------------- | ------------- | ----------------------------------------- |
| **List Models** | `list_models` | List the models available to the account. |
### Search
| Operation | ID | Description |
| ------------------ | -------- | --------------------------------------------------------- |
| **Search the Web** | `search` | Get raw, ranked web search results (title, URL, snippet). |
# PhantomBuster
Source: https://docs.noclick.com/integrations/phantombuster
Connect PhantomBuster to your workflows: 63 operations across 11 categories.
The PhantomBuster node adds PhantomBuster operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
PhantomBuster also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in PhantomBuster.
You can wire the PhantomBuster node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect PhantomBuster under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://phantombuster.com/settings).
## Operations
### Account
| Operation | ID | Description | Trigger |
| ------------------ | ------------- | --------------------------------------------------------------- | ------- |
| **Get Account** | `get_user` | Fetch the current account info, plan/quota, and running agents. | |
| **Update Account** | `update_user` | Update the current user's profile fields. | |
### Agents
| Operation | ID | Description | Trigger |
| ------------------------- | --------------------- | ------------------------------------------------------------------- | ------- |
| **Delete Agent** | `delete_agent` | Permanently remove an agent. | |
| **Get Agent** | `get_agent` | Fetch a single agent's details and configuration. | |
| **Get Agent Output** | `get_agent_output` | Fetch the incremental console output of an agent's most-recent run. | |
| **Launch Agent** | `launch_agent` | Start an agent run; returns a container ID. | |
| **Launch Agent (Queued)** | `launch_agent_soon` | Queue the agent to launch as soon as a slot is free. | |
| **Launch Agent (Sync)** | `launch_agent_sync` | Launch and block until completion, returning the result inline. | |
| **List Agents** | `list_agents` | List every agent (Phantom) in the workspace. | |
| **List Deleted Agents** | `list_deleted_agents` | List soft-deleted agents in the workspace. | |
| **Save Agent** | `save_agent` | Create or update an agent's configuration/arguments. | |
| **Stop Agent** | `stop_agent` | Abort a running agent / its container. | |
| **Unschedule All Agents** | `unschedule_all` | Remove all schedules from the org's agents. | |
### AI & utilities
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | --------------------------------------------------------- | ------- |
| **AI Advice** | `ai_advice` | Get AI advice (PhantomBuster-hosted AI). | |
| **AI Completion** | `ai_completion` | Generate an AI text completion (PhantomBuster-hosted AI). | |
| **AI Task** | `ai_task` | Run an AI task (PhantomBuster-hosted AI). | |
| **IP Geolocation** | `ip_location` | Resolve geographic location from an IP address. | |
| **SERP Search** | `serp_search` | Run a SERP (search-engine results) scrape via BrightData. | |
| **Solve hCaptcha** | `solve_hcaptcha` | Submit an hCaptcha challenge for solving. | |
| **Solve reCAPTCHA** | `solve_recaptcha` | Submit a reCAPTCHA challenge for solving. | |
### Branches
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ---------------------------------------- | ------- |
| **Create Branch** | `create_branch` | Create a script branch. | |
| **Delete Branch** | `delete_branch` | Delete a script branch. | |
| **Diff Branch** | `diff_branch` | Diff a branch against production. | |
| **List Branches** | `list_branches` | List script branches. | |
| **Release Branch** | `release_branch` | Release (deploy) a branch to production. | |
### Containers
| Operation | ID | Description | Trigger |
| ------------------------ | ----------------------------- | ------------------------------------------------------------------- | ------- |
| **Attach To Container** | `attach_container` | Attach to a running container and return its live output stream. | |
| **Get Container** | `get_container` | Fetch a single container's status/metadata for one run. | |
| **Get Container Output** | `get_container_output` | Retrieve console output / progress / result-object URL for a run. | |
| **Get Container Result** | `get_container_result_object` | Retrieve the structured result object (the scraped data) for a run. | |
| **List Containers** | `list_containers` | List execution containers (run history) for an agent. | |
### Identities
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------------------------------ | ------- |
| **Generate Identity Token** | `generate_identity_token` | Generate a token + magic link for the user to connect an identity. | |
| **Save Identity** | `save_identity` | Save an identity (session cookies for logged-in scraping). | |
| **Save Identity Event** | `save_identity_event` | Record an identity event. | |
| **Save Identity With Token** | `save_identity_with_token` | Save an identity using a connection token. | |
| **Search Identities** | `search_identities` | Search stored identities. | |
### Org storage
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ---------------------------------------------------------------- | ------- |
| **Delete Lead List** | `delete_lead_list` | Delete a lead list. | |
| **Delete Leads** | `delete_leads` | Delete multiple leads by identifier. | |
| **Get Lead List** | `get_lead_list` | Fetch a single lead list by id. | |
| **Get Leads By List** | `get_leads_by_list` | Fetch the leads contained in a lead list. | |
| **List Lead Lists** | `list_lead_lists` | List all saved lead lists in the workspace. | |
| **Save Lead List** | `save_lead_list` | Create or update a lead list. | |
| **Save Leads** | `save_leads` | Store / upsert lead records into workspace storage. | |
| **Save Many Leads** | `save_many_leads` | Upsert multiple leads (1-20) into workspace storage in one call. | |
### Organization
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | -------------------------------------------------------------- | ------- |
| **Export Agent Usage** | `export_agent_usage` | Export per-agent usage as a report. | |
| **Export Container Usage** | `export_container_usage` | Export per-container usage as a report. | |
| **Get CRM Access** | `get_crm_access` | Fetch the org's CRM integration access. | |
| **Get CRM Resources** | `get_crm_resources` | Fetch the org's CRM resources. | |
| **Get Org Resources** | `get_org_resources` | Fetch resource/quota allocation for the org. | |
| **Get Organization** | `get_org` | Fetch organization/workspace details. | |
| **List Agent Groups** | `list_agent_groups` | List the org's agent groups (folders). | |
| **List Running Containers** | `list_running_containers` | List all currently-running containers across the organization. | |
| **Save Agent Groups** | `save_agent_groups` | Create/update the org's agent groups. | |
| **Save CRM Contact** | `save_crm_contact` | Upsert a CRM contact. | |
### Scripts
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------------- | ------- |
| **Delete Script** | `delete_script` | Remove a script. | |
| **Get Script** | `get_script` | Fetch metadata for a single script. | |
| **Get Script Code** | `get_script_code` | Retrieve the raw code of a script. | |
| **List Scripts** | `list_scripts` | List all scripts (Phantom definitions) in the workspace. | |
| **Save Script** | `save_script` | Create or update a script's code/metadata. | |
| **Set Script Access List** | `set_script_access_list` | Set a script's access list. | |
| **Set Script Visibility** | `set_script_visibility` | Set a script's visibility. | |
### Strategic
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------ | ------- |
| **List Buyer Personas** | `list_buyer_personas` | List buyer personas. | |
| **List ICPs** | `list_icps` | List Ideal Customer Profiles (ICPs). | |
### Other
| Operation | ID | Description | Trigger |
| ----------------------- | ----------------- | ---------------------------------------------------------------- | ------- |
| **On Phantom Finished** | `receive_webhook` | Receive per-Phantom completion notifications from PhantomBuster. | Yes |
# Pinecone
Source: https://docs.noclick.com/integrations/pinecone
Connect Pinecone to your workflows: 22 operations across 6 categories.
The Pinecone node adds Pinecone operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Pinecone node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Pinecone under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://app.pinecone.io/organizations/-/keys).
## Operations
### Bulk import
| Operation | ID | Description |
| ------------------- | ----------------- | -------------------------------------------------------------------------- |
| **Cancel Import** | `cancel_import` | Cancel a pending or in-progress bulk import operation. |
| **Describe Import** | `describe_import` | Get the status and details of a specific bulk import operation. |
| **List Imports** | `list_imports` | List all bulk import operations for an index. |
| **Start Import** | `start_import` | Start an async bulk import of Parquet vectors from S3, GCS, or Azure Blob. |
### Documents
| Operation | ID | Description |
| --------------------------- | ------------------ | --------------------------------------------------------------------------------- |
| **Upload & Index Document** | `upload_and_index` | Upload a document file, chunk + embed it with text-embedding-3-small, and upsert. |
### Index
| Operation | ID | Description |
| ------------------- | ----------------- | --------------------------------------------------------------------------- |
| **Configure Index** | `configure_index` | Change deletion protection or pod replica/type on an existing index. |
| **Create Index** | `create_index` | Create a new serverless index. |
| **Delete Index** | `delete_index` | Delete an index and all its vectors permanently. |
| **Describe Index** | `describe_index` | Get full details for a single index: status, host, metric, dimension, spec. |
| **List Indexes** | `list_indexes` | List all indexes in the project. |
### Inference
| Operation | ID | Description |
| ----------------------- | --------------------- | --------------------------------------------------------------------------- |
| **Generate Embeddings** | `generate_embeddings` | Generate dense embeddings using Pinecone's hosted models. |
| **Rerank Documents** | `rerank` | Rerank a set of documents against a query using Pinecone's reranking model. |
### Integrated inference
| Operation | ID | Description |
| -------------------------------- | ------------------------ | ---------------------------------------------------------------------------------------- |
| **Create Index for Model** | `create_index_for_model` | Create a text-native index that embeds content server-side (no dimension needed). |
| **Search Records (Text-Native)** | `search_records` | Search a text-native index with a text query (server-side embedding + optional rerank). |
| **Upsert Records (Text-Native)** | `upsert_records` | Upsert text records into a text-native index (server-side embedding, no vectors needed). |
### Vectors
| Operation | ID | Description |
| ------------------------ | ---------------------- | --------------------------------------------------------------------- |
| **Delete Vectors** | `delete` | Delete vectors by ID, by metadata filter, or clear a namespace. |
| **Describe Index Stats** | `describe_index_stats` | Get per-namespace vector counts, total dimension, and index fullness. |
| **Fetch Vectors** | `fetch` | Fetch vectors by their IDs. |
| **List Vectors** | `list_vectors` | List vector IDs in a namespace by prefix (serverless indexes only). |
| **Query / Search** | `query` | Find the most similar vectors to a query vector (similarity search). |
| **Update Vector** | `update_vector` | Partially update values or metadata on a single existing vector. |
| **Upsert Vectors** | `upsert` | Insert or overwrite vectors in an index. |
# Pipedrive
Source: https://docs.noclick.com/integrations/pipedrive
Connect Pipedrive to your workflows: 318 operations across 21 categories.
The Pipedrive node adds Pipedrive operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Pipedrive also includes 31 trigger operations (marked in the tables below) that can start a workflow when something happens in Pipedrive.
You can wire the Pipedrive node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Pipedrive under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Find your API token under Settings -> Personal preferences -> API, and your company domain in your Pipedrive URL (the subdomain before .pipedrive.com).
[Get your credentials here](https://app.pipedrive.com/settings/api).
## Operations
### Activities
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Add Activity Type** | `add_activity_type` | | |
| **Create Activity** | `create_activity` | | |
| **Delete Activity** | `delete_activity` | | |
| **Delete Activity Type** | `delete_activity_type` | | |
| **Get Activity** | `get_activity` | | |
| **Get Activity Fields** | `get_activity_fields` | | |
| **List Activities** | `list_activities` | | |
| **List Activity Types** | `list_activity_types` | | |
| **Update Activity** | `update_activity` | | |
| **Update Activity Type** | `update_activity_type` | | |
### Call logs
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------------ | ----------- | ------- |
| **Add Call Log** | `add_call_log` | | |
| **Attach Call Log Recording** | `add_call_log_recording` | | |
| **Delete Call Log** | `delete_call_log` | | |
| **Get Call Log** | `get_call_log` | | |
| **List Call Logs** | `list_call_logs` | | |
### Deals
| Operation | ID | Description | Trigger |
| --------------------------------------------- | ---------------------------------- | ----------- | ------- |
| **Add a Deal Field (v1)** | `add_deal_field` | | |
| **Add a Deal Field (v2)** | `add_deal_field_v2` | | |
| **Add a Discount to a Deal** | `add_deal_discount` | | |
| **Add a Follower to a Deal** | `add_deal_follower` | | |
| **Add a Follower to a Deal (v1)** | `add_deal_follower_v1` | | |
| **Add a Participant to a Deal** | `add_deal_participant` | | |
| **Add a Product to a Deal** | `add_deal_product` | | |
| **Add an Installment to a Deal** | `add_deal_installment` | | |
| **Add Multiple Products to a Deal (Bulk)** | `add_deal_products_bulk` | | |
| **Add Options to a Deal Field (v2)** | `add_deal_field_options_v2` | | |
| **Convert Deal to Lead** | `convert_deal_to_lead` | | |
| **Create Deal** | `create_deal` | | |
| **Delete a Deal Field (v1)** | `delete_deal_field` | | |
| **Delete a Deal Field (v2)** | `delete_deal_field_v2` | | |
| **Delete a Discount From a Deal** | `delete_deal_discount` | | |
| **Delete a Follower From a Deal** | `delete_deal_follower` | | |
| **Delete a Follower From a Deal (v1)** | `delete_deal_follower_v1` | | |
| **Delete a Participant From a Deal** | `delete_deal_participant` | | |
| **Delete a Product Attached to a Deal** | `delete_deal_product` | | |
| **Delete an Installment From a Deal** | `delete_deal_installment` | | |
| **Delete Deal** | `delete_deal` | | |
| **Delete Many Products From a Deal** | `delete_many_deal_products` | | |
| **Delete Multiple Deal Fields in Bulk (v1)** | `delete_deal_fields` | | |
| **Delete Options From a Deal Field (v2)** | `delete_deal_field_options_v2` | | |
| **Duplicate Deal** | `duplicate_deal` | | |
| **Get All Deal Fields (v1)** | `get_deal_fields` | | |
| **Get All Deal Fields (v2)** | `get_deal_fields_v2` | | |
| **Get Archived Deals Summary** | `get_archived_deals_summary` | | |
| **Get Archived Deals Timeline** | `get_archived_deals_timeline` | | |
| **Get Deal** | `get_deal` | | |
| **Get Deal Changelog** | `get_deal_changelog` | | |
| **Get Deal Conversion Status** | `get_deal_conversion_status` | | |
| **Get Deal Flow (Updates)** | `get_deal_flow` | | |
| **Get Deals Summary** | `get_deals_summary` | | |
| **Get Deals Timeline** | `get_deals_timeline` | | |
| **Get One Deal Field (v1)** | `get_deal_field` | | |
| **Get One Deal Field (v2)** | `get_deal_field_v2` | | |
| **List Archived Deals** | `list_archived_deals` | | |
| **List Deal Followers** | `list_deal_followers` | | |
| **List Deal Followers (v1)** | `list_deal_followers_v1` | | |
| **List Deal Followers Changelog** | `list_deal_followers_changelog` | | |
| **List Deal Participants** | `list_deal_participants` | | |
| **List Deal Participants Changelog** | `list_deal_participants_changelog` | | |
| **List Deals** | `list_deals` | | |
| **List Discounts Added to a Deal** | `list_deal_discounts` | | |
| **List Files Attached to a Deal** | `list_deal_files` | | |
| **List Installments Across Deals** | `list_deals_installments` | | |
| **List Mail Messages Associated With a Deal** | `list_deal_mail_messages` | | |
| **List Products Across Deals** | `get_deals_products_across` | | |
| **List Products Attached to a Deal** | `list_deal_products` | | |
| **List Users Permitted to Access a Deal** | `list_deal_permitted_users` | | |
| **Merge Two Deals** | `merge_deals` | | |
| **Search Deals** | `search_deals` | | |
| **Update a Deal Field (v1)** | `update_deal_field` | | |
| **Update a Deal Field (v2)** | `update_deal_field_v2` | | |
| **Update a Discount on a Deal** | `update_deal_discount` | | |
| **Update an Installment on a Deal** | `update_deal_installment` | | |
| **Update Deal** | `update_deal` | | |
| **Update Options of a Deal Field (v2)** | `update_deal_field_options_v2` | | |
| **Update Product Attached to a Deal** | `update_deal_product` | | |
### Files
| Operation | ID | Description | Trigger |
| ----------------------------------------- | ------------------ | ----------- | ------- |
| **Create a Remote File and Link to Item** | `add_file_remote` | | |
| **Delete a File** | `delete_file` | | |
| **Download One File** | `download_file` | | |
| **Get All Files** | `list_files` | | |
| **Get One File** | `get_file` | | |
| **Link a Remote File to an Item** | `link_file_remote` | | |
| **Update File Details** | `update_file` | | |
### Filters
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------- | ----------- | ------- |
| **Add a New Filter** | `add_filter` | | |
| **Delete a Filter** | `delete_filter` | | |
| **Delete Multiple Filters in Bulk** | `delete_filters_bulk` | | |
| **Get All Filter Helpers** | `get_filter_helpers` | | |
| **Get All Filters** | `list_filters` | | |
| **Get One Filter** | `get_filter` | | |
| **Update Filter** | `update_filter` | | |
### Goals
| Operation | ID | Description | Trigger |
| ------------------------ | ------------------ | ----------- | ------- |
| **Add a Goal** | `add_goal` | | |
| **Delete Existing Goal** | `delete_goal` | | |
| **Find Goals** | `find_goals` | | |
| **Get Result of a Goal** | `get_goal_results` | | |
| **Update Existing Goal** | `update_goal` | | |
### Leads
| Operation | ID | Description | Trigger |
| ----------------------------- | -------------------------- | ----------- | ------- |
| **Add Lead Label** | `add_lead_label` | | |
| **Create Lead** | `create_lead` | | |
| **Delete Lead** | `delete_lead` | | |
| **Delete Lead Label** | `delete_lead_label` | | |
| **Get Lead** | `get_lead` | | |
| **List Lead Labels** | `list_lead_labels` | | |
| **List Lead Permitted Users** | `get_lead_permitted_users` | | |
| **List Lead Sources** | `list_lead_sources` | | |
| **List Leads** | `list_leads` | | |
| **Search Leads** | `search_leads` | | |
| **Update Lead** | `update_lead` | | |
| **Update Lead Label** | `update_lead_label` | | |
### Mail
| Operation | ID | Description | Trigger |
| ---------------------------------------- | --------------------------- | ----------- | ------- |
| **Delete a Mail Thread** | `delete_mail_thread` | | |
| **Get All Mail Messages of Mail Thread** | `list_mail_thread_messages` | | |
| **Get Mail Threads** | `list_mail_threads` | | |
| **Get One Mail Message** | `get_mail_message` | | |
| **Get One Mail Thread** | `get_mail_thread` | | |
| **Update Mail Thread Details** | `update_mail_thread` | | |
### Notes
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Add Note Comment** | `add_note_comment` | | |
| **Create Note** | `create_note` | | |
| **Delete Note** | `delete_note` | | |
| **Delete Note Comment** | `delete_note_comment` | | |
| **Get Note** | `get_note` | | |
| **Get Note Comment** | `get_note_comment` | | |
| **Get Note Fields** | `get_note_fields` | | |
| **List Note Comments** | `list_note_comments` | | |
| **List Notes** | `list_notes` | | |
| **Update Note** | `update_note` | | |
| **Update Note Comment** | `update_note_comment` | | |
### Organizations
| Operation | ID | Description | Trigger |
| --------------------------------------------- | --------------------------------------- | ----------- | ------- |
| **Add a Follower to an Organization** | `add_organization_follower` | | |
| **Add Organization Field** | `create_organization_field` | | |
| **Create Organization** | `create_organization` | | |
| **Create Organization Relationship** | `create_organization_relationship` | | |
| **Delete a Follower from an Organization** | `delete_organization_follower` | | |
| **Delete Multiple Organization Fields** | `delete_organization_fields_bulk` | | |
| **Delete Multiple Organizations** | `delete_organizations_bulk` | | |
| **Delete Organization** | `delete_organization` | | |
| **Delete Organization Field** | `delete_organization_field` | | |
| **Delete Organization Relationship** | `delete_organization_relationship` | | |
| **Get One Organization Field** | `get_organization_field` | | |
| **Get One Organization Relationship** | `get_organization_relationship` | | |
| **Get Organization** | `get_organization` | | |
| **List Activities of an Organization** | `list_organization_activities` | | |
| **List Deals of an Organization** | `list_organization_deals` | | |
| **List Files Attached to an Organization** | `list_organization_files` | | |
| **List Followers of an Organization** | `list_organization_followers` | | |
| **List Mail Messages of an Organization** | `list_organization_mail_messages` | | |
| **List Organization Field Value Changelog** | `list_organization_changelog` | | |
| **List Organization Fields** | `list_organization_fields` | | |
| **List Organization Followers Changelog** | `list_organization_followers_changelog` | | |
| **List Organization Relationships** | `list_organization_relationships` | | |
| **List Organizations** | `list_organizations` | | |
| **List Permitted Users of an Organization** | `list_organization_permitted_users` | | |
| **List Persons of an Organization** | `list_organization_persons` | | |
| **List Updates About an Organization (Flow)** | `list_organization_updates` | | |
| **Merge Organization** | `merge_organization` | | |
| **Search Organizations** | `search_organizations` | | |
| **Update Organization** | `update_organization` | | |
| **Update Organization Field** | `update_organization_field` | | |
| **Update Organization Relationship** | `update_organization_relationship` | | |
### Persons
| Operation | ID | Description | Trigger |
| -------------------------------------- | --------------------------------- | ----------- | ------- |
| **Add a Follower to a Person** | `add_person_follower` | | |
| **Add Person Field** | `create_person_field` | | |
| **Create Person** | `create_person` | | |
| **Delete a Follower from a Person** | `delete_person_follower` | | |
| **Delete Multiple Person Fields** | `delete_person_fields_bulk` | | |
| **Delete Multiple Persons** | `delete_persons_bulk` | | |
| **Delete Person** | `delete_person` | | |
| **Delete Person Field** | `delete_person_field` | | |
| **Delete Person Picture** | `delete_person_picture` | | |
| **Get One Person Field** | `get_person_field` | | |
| **Get Person** | `get_person` | | |
| **Get Person Picture** | `get_person_picture` | | |
| **List Activities of a Person** | `list_person_activities` | | |
| **List Deals of a Person** | `list_person_deals` | | |
| **List Files Attached to a Person** | `list_person_files` | | |
| **List Followers of a Person** | `list_person_followers` | | |
| **List Mail Messages of a Person** | `list_person_mail_messages` | | |
| **List Permitted Users of a Person** | `list_person_permitted_users` | | |
| **List Person Field Value Changelog** | `list_person_changelog` | | |
| **List Person Fields** | `list_person_fields` | | |
| **List Person Followers Changelog** | `list_person_followers_changelog` | | |
| **List Persons** | `list_persons` | | |
| **List Products of a Person** | `list_person_products` | | |
| **List Updates About a Person (Flow)** | `list_person_updates` | | |
| **Merge Person** | `merge_person` | | |
| **Search Persons** | `search_persons` | | |
| **Update Person** | `update_person` | | |
| **Update Person Field** | `update_person_field` | | |
### Pipelines
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ----------- | ------- |
| **Create Pipeline** | `create_pipeline` | | |
| **Delete Pipeline** | `delete_pipeline` | | |
| **Get Deals in a Pipeline** | `get_pipeline_deals` | | |
| **Get Pipeline** | `get_pipeline` | | |
| **Get Pipeline Conversion Statistics** | `get_pipeline_conversion_statistics` | | |
| **Get Pipeline Movement Statistics** | `get_pipeline_movement_statistics` | | |
| **List Pipelines** | `list_pipelines` | | |
| **Update Pipeline** | `update_pipeline` | | |
### Products
| Operation | ID | Description | Trigger |
| ----------------------------------------- | --------------------------------- | ----------- | ------- |
| **Add Product Field Options** | `add_product_field_options` | | |
| **Add Product Follower** | `add_product_follower` | | |
| **Create Product** | `create_product` | | |
| **Create Product Field** | `create_product_field` | | |
| **Create Product Variation** | `create_product_variation` | | |
| **Delete Multiple Product Fields (Bulk)** | `delete_product_fields` | | |
| **Delete Product** | `delete_product` | | |
| **Delete Product Field** | `delete_product_field` | | |
| **Delete Product Field Options** | `delete_product_field_options` | | |
| **Delete Product Follower** | `delete_product_follower` | | |
| **Delete Product Image** | `delete_product_image` | | |
| **Delete Product Variation** | `delete_product_variation` | | |
| **Duplicate Product** | `duplicate_product` | | |
| **Get Deals Where a Product Is Attached** | `get_product_deals` | | |
| **Get Product** | `get_product` | | |
| **Get Product Field** | `get_product_field` | | |
| **List Permitted Users** | `get_product_permitted_users` | | |
| **List Product Fields** | `list_product_fields` | | |
| **List Product Files** | `get_product_files` | | |
| **List Product Followers** | `list_product_followers` | | |
| **List Product Followers Changelog** | `get_product_followers_changelog` | | |
| **List Product Images** | `list_product_images` | | |
| **List Product Variations** | `list_product_variations` | | |
| **List Products** | `list_products` | | |
| **Search Products** | `search_products` | | |
| **Update Product** | `update_product` | | |
| **Update Product Field** | `update_product_field` | | |
| **Update Product Field Options** | `update_product_field_options` | | |
| **Update Product Variation** | `update_product_variation` | | |
### Projects
| Operation | ID | Description | Trigger |
| ------------------------------------ | ------------------------------ | ----------- | ------- |
| **Add Project** | `add_project` | | |
| **Archive Project** | `archive_project` | | |
| **Delete Project** | `delete_project` | | |
| **Get Project** | `get_project` | | |
| **Get Project Activities** | `get_project_activities` | | |
| **Get Project Board** | `get_project_board` | | |
| **Get Project Groups** | `get_project_groups` | | |
| **Get Project Phase** | `get_project_phase` | | |
| **Get Project Plan** | `get_project_plan` | | |
| **Get Project Template** | `get_project_template` | | |
| **List Project Templates** | `list_project_templates` | | |
| **List Projects** | `list_projects` | | |
| **Update Plan Activity Phase/Group** | `update_project_plan_activity` | | |
| **Update Plan Task Phase/Group** | `update_project_plan_task` | | |
| **Update Project** | `update_project` | | |
### Roles
| Operation | ID | Description | Trigger |
| ----------------------------------------- | --------------------------------- | ----------- | ------- |
| **Add a Role** | `create_role` | | |
| **Add a Team** | `create_legacy_team` | | |
| **Add or Update Role Setting** | `add_role_setting` | | |
| **Add Role Assignment** | `add_role_assignment` | | |
| **Add Users to a Team** | `add_legacy_team_users` | | |
| **Delete a Role** | `delete_role` | | |
| **Delete a Role Assignment** | `delete_role_assignment` | | |
| **Delete Users from a Team** | `delete_legacy_team_users` | | |
| **Get a Single Team** | `get_legacy_team` | | |
| **Get All Permission Sets** | `list_permission_sets` | | |
| **Get All Roles** | `list_roles` | | |
| **Get All Teams** | `list_legacy_teams` | | |
| **Get All Teams of a User** | `list_user_legacy_teams` | | |
| **Get All Users in a Team** | `list_legacy_team_users` | | |
| **Get One Permission Set** | `get_permission_set` | | |
| **Get One Role** | `get_role` | | |
| **List Permission Set Assignments** | `list_permission_set_assignments` | | |
| **List Pipeline Visibility for a Role** | `list_role_pipelines` | | |
| **List Role Assignments** | `list_role_assignments` | | |
| **List Role Settings** | `get_role_settings` | | |
| **Update a Team** | `update_legacy_team` | | |
| **Update Pipeline Visibility for a Role** | `update_role_pipelines` | | |
| **Update Role Details** | `update_role` | | |
### Search
| Operation | ID | Description | Trigger |
| --------------------------------------------------- | ---------------------- | ----------- | ------- |
| **Get All Supported Currencies** | `list_currencies` | | |
| **Get Recents** | `list_recents` | | |
| **Perform a Search from Multiple Item Types** | `item_search` | | |
| **Perform a Search Using a Specific Field's Value** | `item_search_by_field` | | |
### Stages
| Operation | ID | Description | Trigger |
| ------------------------ | ----------------- | ----------- | ------- |
| **Create Stage** | `create_stage` | | |
| **Delete Stage** | `delete_stage` | | |
| **Get Deals in a Stage** | `get_stage_deals` | | |
| **Get Stage** | `get_stage` | | |
| **List Stages** | `list_stages` | | |
| **Update Stage** | `update_stage` | | |
### Tasks
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ----------- | ------- |
| **Add Task** | `add_task` | | |
| **Delete Task** | `delete_task` | | |
| **Get Task** | `get_task` | | |
| **List Tasks** | `list_tasks` | | |
| **Update Task** | `update_task` | | |
### Users
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------- | ----------- | ------- |
| **Add a User** | `create_user` | | |
| **Find Users by Name** | `find_users` | | |
| **Get All Users** | `list_users` | | |
| **Get Current User Data** | `get_current_user` | | |
| **Get One User** | `get_user` | | |
| **List Settings of Authorized User** | `get_user_settings` | | |
| **List User Connections** | `list_user_connections` | | |
| **List User Followers** | `list_user_followers` | | |
| **List User Permissions** | `list_user_permissions` | | |
| **List User Role Assignments** | `list_user_role_assignments` | | |
| **List User Role Settings** | `list_user_role_settings` | | |
| **Update User Details** | `update_user` | | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Create Webhook** | `create_webhook` | | |
| **Delete Webhook** | `delete_webhook` | | |
| **List Webhooks** | `list_webhooks` | | |
### Other
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **On Activity Changed** | `on_activity_changed` | | Yes |
| **On Activity Created** | `on_activity_created` | | Yes |
| **On Activity Deleted** | `on_activity_deleted` | | Yes |
| **On Any Pipedrive Event** | `on_pipedrive_any_event` | | Yes |
| **On Deal Changed** | `on_deal_changed` | | Yes |
| **On Deal Created** | `on_deal_created` | | Yes |
| **On Deal Deleted** | `on_deal_deleted` | | Yes |
| **On Lead Changed** | `on_lead_changed` | | Yes |
| **On Lead Created** | `on_lead_created` | | Yes |
| **On Lead Deleted** | `on_lead_deleted` | | Yes |
| **On Note Changed** | `on_note_changed` | | Yes |
| **On Note Created** | `on_note_created` | | Yes |
| **On Note Deleted** | `on_note_deleted` | | Yes |
| **On Organization Changed** | `on_organization_changed` | | Yes |
| **On Organization Created** | `on_organization_created` | | Yes |
| **On Organization Deleted** | `on_organization_deleted` | | Yes |
| **On Person Changed** | `on_person_changed` | | Yes |
| **On Person Created** | `on_person_created` | | Yes |
| **On Person Deleted** | `on_person_deleted` | | Yes |
| **On Pipeline Changed** | `on_pipeline_changed` | | Yes |
| **On Pipeline Created** | `on_pipeline_created` | | Yes |
| **On Pipeline Deleted** | `on_pipeline_deleted` | | Yes |
| **On Product Changed** | `on_product_changed` | | Yes |
| **On Product Created** | `on_product_created` | | Yes |
| **On Product Deleted** | `on_product_deleted` | | Yes |
| **On Stage Changed** | `on_stage_changed` | | Yes |
| **On Stage Created** | `on_stage_created` | | Yes |
| **On Stage Deleted** | `on_stage_deleted` | | Yes |
| **On User Changed** | `on_user_changed` | | Yes |
| **On User Created** | `on_user_created` | | Yes |
| **On User Deleted** | `on_user_deleted` | | Yes |
# PostgreSQL
Source: https://docs.noclick.com/integrations/postgres
Connect PostgreSQL to your workflows: 40 operations across 12 categories.
The PostgreSQL node adds PostgreSQL operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the PostgreSQL node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect PostgreSQL under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Postgres connection string
Enter the values manually when creating the credential.
### Postgres credentials
Enter the values manually when creating the credential.
## Operations
### Database
| Operation | ID | Description |
| ------------------ | ---------------- | ------------------------------------------- |
| **List Databases** | `list_databases` | List all databases in the PostgreSQL server |
### Extension
| Operation | ID | Description |
| --------------------- | ------------------- | ----------------------------- |
| **Install Extension** | `install_extension` | Create/install an extension |
| **List Extensions** | `list_extensions` | List all installed extensions |
### Function
| Operation | ID | Description |
| -------------------------- | ------------------------ | ------------------------------ |
| **Call Database Function** | `call_database_function` | Call a PostgreSQL function |
| **List Schema Functions** | `list_schema_functions` | List all functions in a schema |
### Index
| Operation | ID | Description |
| ----------------------- | --------------------- | ---------------------------- |
| **Create Index** | `create_index` | Create an index on a table |
| **Drop Index** | `drop_index` | Drop an index |
| **List Schema Indexes** | `list_schema_indexes` | List all indexes in a schema |
### Query
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ------------------------------------------------------------------- |
| **Copy Data from Table** | `copy_data_from_table` | Bulk export data from a table using COPY |
| **Copy Data to Table** | `copy_data_to_table` | Bulk import data to a table using COPY |
| **Execute Batch Statements** | `execute_batch_statements` | Execute a statement with multiple parameter sets (batch operations) |
| **Execute Sql Statement** | `execute_sql_statement` | Execute an INSERT, UPDATE, DELETE, or other non-SELECT statement |
| **Explain Query Plan** | `explain_query_plan` | Explain a query's execution plan |
| **Run Query with Cursor** | `run_query_with_cursor` | Execute query with cursor for large result sets |
| **Run Select Query** | `run_select_query` | Execute a SELECT query and return results as JSON |
### Role
| Operation | ID | Description |
| ----------------------- | --------------------- | ----------------------- |
| **List Database Roles** | `list_database_roles` | List all database roles |
| **List Database Users** | `list_database_users` | List all database users |
### Schema
| Operation | ID | Description |
| ----------------- | --------------- | -------------------------------- |
| **Create Schema** | `create_schema` | Create a new schema |
| **Drop Schema** | `drop_schema` | Drop a schema |
| **List Schemas** | `list_schemas` | List all schemas in the database |
### Sequence
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ----------------------------------------------- |
| **Get Sequence Current Value** | `get_sequence_current_value` | Get the current value from a sequence (currval) |
| **Get Sequence Next Value** | `get_sequence_next_value` | Get the next value from a sequence (nextval) |
| **List Schema Sequences** | `list_schema_sequences` | List all sequences in a schema |
| **Set Sequence Value** | `set_sequence_value` | Set the current value of a sequence (setval) |
### Table
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ------------------------------------------------------------------------ |
| **Analyze Table Statistics** | `analyze_table_statistics` | Analyze a table to update statistics |
| **Create Table** | `create_table` | Create a new table |
| **Drop Table** | `drop_table` | Drop a table |
| **Get Table Info** | `get_table_info` | Get detailed information about a table including constraints and indexes |
| **List Schema Tables** | `list_schema_tables` | List all tables in a schema |
| **List Table Columns** | `list_table_columns` | Get column metadata for a table |
| **List Table Constraints** | `list_table_constraints` | List all constraints for a table |
| **Truncate Table** | `truncate_table` | Truncate a table (remove all rows) |
| **Vacuum Table** | `vacuum_table` | Vacuum a table to reclaim storage and update statistics |
### Transaction
| Operation | ID | Description |
| ------------------------ | ---------------------- | -------------------------------- |
| **Begin Transaction** | `begin_transaction` | Begin a new transaction |
| **Commit Transaction** | `commit_transaction` | Commit the current transaction |
| **Rollback Transaction** | `rollback_transaction` | Rollback the current transaction |
### Trigger
| Operation | ID | Description |
| ------------------------ | ---------------------- | ----------------------------- |
| **List Schema Triggers** | `list_schema_triggers` | List all triggers in a schema |
### View
| Operation | ID | Description |
| --------------------- | ------------------- | -------------------------- |
| **Create View** | `create_view` | Create a view |
| **Drop View** | `drop_view` | Drop a view |
| **List Schema Views** | `list_schema_views` | List all views in a schema |
# PostHog
Source: https://docs.noclick.com/integrations/posthog
Connect PostHog to your workflows: 102 operations across 22 categories.
The PostHog node adds PostHog operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
PostHog also includes 15 trigger operations (marked in the tables below) that can start a workflow when something happens in PostHog.
You can wire the PostHog node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect PostHog under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Personal API key
Enter the values manually when creating the credential.
[Get your credentials here](https://app.posthog.com/settings/user-api-keys).
### Project API key
Enter the values manually when creating the credential.
[Get your credentials here](https://app.posthog.com/settings/project).
### OAuth
Sign in with your PostHog account when prompted; no keys to copy.
[Get your credentials here](https://posthog.com/docs/api/oauth).
NoClick requests the following permissions:
* `openid`
* `email`
* `project:read`
* `organization:read`
* `user:read`
* `insight:read`
* `insight:write`
* `dashboard:read`
* `dashboard:write`
* `feature_flag:read`
* `feature_flag:write`
* `experiment:read`
* `experiment:write`
* `query:read`
* `person:read`
* `person:write`
* `cohort:read`
* `cohort:write`
* `annotation:read`
* `annotation:write`
* `survey:read`
* `survey:write`
* `action:read`
* `action:write`
* `session_recording:read`
* `session_recording:write`
* `group:read`
* `organization_member:read`
* `organization_member:write`
* `event_definition:read`
* `property_definition:read`
* `hog_function:read`
* `hog_function:write`
* `notebook:read`
* `notebook:write`
* `early_access_feature:read`
* `early_access_feature:write`
* `batch_export:read`
* `activity_log:read`
## Operations
### Actions
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------- | ------- |
| **Create Action** | `create_action` | | |
| **Get Action** | `get_action` | | |
| **List Actions** | `list_actions` | | |
### Advanced
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------------------------- | ------- |
| **Custom Request** | `raw_request` | Call any authenticated PostHog REST endpoint (covers the huge long tail). | |
| **List Activity Log** | `list_activity_log` | | |
### Annotations
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Create Annotation** | `create_annotation` | | |
| **Delete Annotation** | `delete_annotation` | | |
| **List Annotations** | `list_annotations` | | |
| **Update Annotation** | `update_annotation` | | |
### Batch exports
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------- | ------- |
| **Get Batch Export** | `get_batch_export` | | |
| **List Batch Exports** | `list_batch_exports` | | |
### Cohorts
| Operation | ID | Description | Trigger |
| -------------------------------- | ----------------------- | ----------- | ------- |
| **Add Persons to Static Cohort** | `add_persons_to_cohort` | | |
| **Create Cohort** | `create_cohort` | | |
| **Delete Cohort** | `delete_cohort` | | |
| **Get Cohort** | `get_cohort` | | |
| **List Cohort Persons** | `list_cohort_persons` | | |
| **List Cohorts** | `list_cohorts` | | |
| **Update Cohort** | `update_cohort` | | |
### Dashboards
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Create Dashboard** | `create_dashboard` | | |
| **Delete Dashboard** | `delete_dashboard` | | |
| **Get Dashboard** | `get_dashboard` | | |
| **List Dashboards** | `list_dashboards` | | |
| **Update Dashboard** | `update_dashboard` | | |
### Definitions
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **List Event Definitions** | `list_event_definitions` | | |
| **List Property Definitions** | `list_property_definitions` | | |
### Destinations
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------- | ------- |
| **Create Destination** | `create_destination` | | |
| **Delete Destination** | `delete_destination` | | |
| **Enable/Disable Destination** | `set_destination_enabled` | | |
| **Get Destination** | `get_destination` | | |
| **Get Destination Logs** | `get_destination_logs` | | |
| **Get Destination Metrics** | `get_destination_metrics` | | |
| **List Destination Templates** | `list_destination_templates` | | |
| **List Destinations** | `list_destinations` | | |
| **Update Destination** | `update_destination` | | |
### Early access
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Create Early Access Feature** | `create_early_access_feature` | | |
| **List Early Access Features** | `list_early_access_features` | | |
### Events
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ------------------- | ------- |
| **List Events** | `list_events` | List recent events. | |
### Experiments
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Create Experiment** | `create_experiment` | | |
| **Experiment Action** | `experiment_action` | | |
| **Get Experiment** | `get_experiment` | | |
| **List Experiments** | `list_experiments` | | |
| **Update Experiment** | `update_experiment` | | |
### Feature flags
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------- | ----------- | ------- |
| **Create Feature Flag** | `create_feature_flag` | | |
| **Delete Feature Flag** | `delete_feature_flag` | | |
| **Get Feature Flag** | `get_feature_flag` | | |
| **Get Local Evaluation Payload** | `feature_flag_local_evaluation` | | |
| **List Feature Flags** | `list_feature_flags` | | |
| **List My Feature Flags** | `list_my_feature_flags` | | |
| **Update Feature Flag** | `update_feature_flag` | | |
### Groups
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Find Group** | `find_group` | | |
| **List Group Types** | `list_group_types` | | |
| **List Groups** | `list_groups` | | |
### Ingestion
| Operation | ID | Description | Trigger |
| -------------------------- | ---------------- | -------------------------------------------------------- | ------- |
| **Batch Capture** | `batch_capture` | Capture a batch of events. | |
| **Capture Event** | `capture_event` | Capture a single event. | |
| **Evaluate Feature Flags** | `evaluate_flags` | Evaluate feature flags for a person. | |
| **Group Identify** | `group_identify` | Set properties on a group (\$groupidentify). | |
| **Identify Person** | `identify` | Identify a person and set their properties (\$identify). | |
### Insights
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Create Insight** | `create_insight` | | |
| **Delete Insight** | `delete_insight` | | |
| **Get Insight** | `get_insight` | | |
| **List Insights** | `list_insights` | | |
| **Update Insight** | `update_insight` | | |
### Notebooks
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **Create Notebook** | `create_notebook` | | |
| **Get Notebook** | `get_notebook` | | |
| **List Notebooks** | `list_notebooks` | | |
### Organization
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Invite Org Member** | `create_org_invite` | | |
| **List Org Invites** | `list_org_invites` | | |
| **List Org Members** | `list_org_members` | | |
| **List Projects** | `list_projects` | | |
| **List Roles** | `list_roles` | | |
### Persons
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Bulk Delete Persons** | `bulk_delete_persons` | | |
| **Delete Person** | `delete_person` | | |
| **Get Person** | `get_person` | | |
| **List Persons** | `list_persons` | | |
| **Split Person** | `split_person` | | |
| **Update Person** | `update_person` | | |
### Query
| Operation | ID | Description | Trigger |
| --------------------- | ----------- | -------------------------------------------------------------------------------- | ------- |
| **Run Query (HogQL)** | `run_query` | Run a HogQL / structured query via the Query API (the universal read primitive). | |
### Session replay
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------- | ------- |
| **Delete Session Recording** | `delete_session_recording` | | |
| **Get Session Recording** | `get_session_recording` | | |
| **List Session Recordings** | `list_session_recordings` | | |
### Surveys
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **Create Survey** | `create_survey` | | |
| **Get Survey** | `get_survey` | | |
| **Get Survey Responses** | `get_survey_responses` | | |
| **Get Survey Stats** | `get_survey_stats` | | |
| **List Surveys** | `list_surveys` | | |
| **Survey Action** | `survey_action` | | |
| **Update Survey** | `update_survey` | | |
### Triggers
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------------------------------------------------------------- | ------- |
| **On Autocapture** | `on_autocapture` | Fires on any autocaptured interaction (\$autocapture). | Yes |
| **On Custom Event** | `on_custom_event` | Fires on a custom event you name (or every event with '\*'). | Yes |
| **On Exception** | `on_exception` | Fires when an exception/error is captured (\$exception). | Yes |
| **On Feature Flag Called** | `on_feature_flag_called` | Fires when a feature flag is evaluated (\$feature\_flag\_called). | Yes |
| **On Group Identify** | `on_group_identify` | Fires when a group is identified (\$groupidentify). | Yes |
| **On Identify** | `on_identify` | Fires when a person is identified (\$identify). | Yes |
| **On Page Leave** | `on_pageleave` | Fires when a user leaves a page (\$pageleave). | Yes |
| **On Pageview** | `on_pageview` | Fires on every pageview (\$pageview). | Yes |
| **On Rageclick** | `on_rageclick` | Fires when PostHog detects a rageclick (\$rageclick). | Yes |
| **On Screen View (Mobile)** | `on_screen` | Fires on a mobile screen view (\$screen). | Yes |
| **On Set Person Properties** | `on_set_person_properties` | Fires when person properties are set (\$set). | Yes |
| **On Survey Dismissed** | `on_survey_dismissed` | Fires when a survey is dismissed (survey dismissed). | Yes |
| **On Survey Response** | `on_survey_sent` | Fires when a survey response is submitted (survey sent). | Yes |
| **On Survey Shown** | `on_survey_shown` | Fires when a survey is shown to a user (survey shown). | Yes |
| **On Web Vitals** | `on_web_vitals` | Fires on a web-vitals measurement (\$web\_vitals). | Yes |
# Qdrant
Source: https://docs.noclick.com/integrations/qdrant
Connect Qdrant to your workflows: 18 operations across 4 categories.
The Qdrant node adds Qdrant operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Qdrant node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Qdrant under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://cloud.qdrant.io/).
## Operations
### Collection
| Operation | ID | Description |
| ----------------------- | ------------------- | -------------------------------------------------------------- |
| **Create Collection** | `create_collection` | Create a new collection. |
| **Delete Collection** | `delete_collection` | Delete a collection and all its points permanently. |
| **Get Collection Info** | `get_collection` | Get detailed info and stats for a single collection. |
| **List Collections** | `list_collections` | List all collections. |
| **Update Collection** | `update_collection` | Update collection parameters (optimizers, HNSW, quantization). |
### Index
| Operation | ID | Description |
| ------------------------ | ---------------------- | ----------------------------------------------------------- |
| **Create Payload Index** | `create_payload_index` | Create a payload field index to speed up filtered searches. |
| **Delete Payload Index** | `delete_payload_index` | Delete a payload field index. |
### Payload
| Operation | ID | Description |
| ----------------------- | ---------------- | --------------------------------------------------------------- |
| **Clear Payload** | `clear_payload` | Remove all payload from points selected by IDs or filter. |
| **Delete Payload Keys** | `delete_payload` | Delete specific payload keys from points. |
| **Set Payload** | `set_payload` | Set (merge) payload fields on points selected by IDs or filter. |
### Points
| Operation | ID | Description |
| --------------------------- | ------------------ | ------------------------------------------------------------------------------------------- |
| **Count Points** | `count` | Count points in a collection, with optional filter. |
| **Delete Points** | `delete` | Delete points by ID or by filter. |
| **Query / Search** | `query` | Find the most similar points to a query vector (similarity search). |
| **Recommend Points** | `recommend` | Find points similar to positive examples and dissimilar from negative examples. |
| **Retrieve Points** | `retrieve` | Retrieve points by their IDs. |
| **Scroll Points** | `scroll` | Scroll through all points in a collection with optional filter and cursor-based pagination. |
| **Upload & Index Document** | `upload_and_index` | Upload a document file, chunk + embed it, and upsert the points. |
| **Upsert Points** | `upsert` | Insert or overwrite points in a collection. |
# QuickBooks
Source: https://docs.noclick.com/integrations/quickbooks
Connect QuickBooks to your workflows: 156 operations across 43 categories.
The QuickBooks node adds QuickBooks operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
QuickBooks also includes 119 trigger operations (marked in the tables below) that can start a workflow when something happens in QuickBooks.
You can wire the QuickBooks node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect QuickBooks under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your QuickBooks account when prompted; no keys to copy.
[Get your credentials here](https://developer.intuit.com).
NoClick requests the following permissions:
* `com.intuit.quickbooks.accounting`
* `openid`
* `profile`
* `email`
## Operations
### Account
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------- | ----------- | ------- |
| **On Account Created** | `on_account_create` | | Yes |
| **On Account Deleted** | `on_account_delete` | | Yes |
| **On Account Merged** | `on_account_merge` | | Yes |
| **On Account Updated** | `on_account_update` | | Yes |
### Advanced
| Operation | ID | Description | Trigger |
| ---------------------------------- | ---------------------------------------- | ------------------------------------------------------ | ------- |
| **Batch Operations** | `batch` | Bundle up to 30 operations into one request. | |
| **Custom Accounting REST Request** | `execute_custom_accounting_rest_request` | Execute any QuickBooks Online Accounting REST request. | |
### Bill
| Operation | ID | Description | Trigger |
| ------------------- | ---------------- | ----------- | ------- |
| **On Bill Created** | `on_bill_create` | | Yes |
| **On Bill Deleted** | `on_bill_delete` | | Yes |
| **On Bill Updated** | `on_bill_update` | | Yes |
| **On Bill Voided** | `on_bill_void` | | Yes |
### Bill payment
| Operation | ID | Description | Trigger |
| --------------------------- | ----------------------- | ----------- | ------- |
| **On Bill Payment Created** | `on_billpayment_create` | | Yes |
| **On Bill Payment Deleted** | `on_billpayment_delete` | | Yes |
| **On Bill Payment Updated** | `on_billpayment_update` | | Yes |
| **On Bill Payment Voided** | `on_billpayment_void` | | Yes |
### Bills
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ----------------------------------------------- | ------- |
| **Create Bill** | `create_bill` | Create an accounts-payable bill. | |
| **Delete Bill** | `delete_bill` | Delete a bill (requires Id + SyncToken). | |
| **Read Bill** | `read_bill` | Fetch a single bill by Id. | |
| **Update Bill** | `update_bill` | Sparse-update a bill (requires Id + SyncToken). | |
### Budget
| Operation | ID | Description | Trigger |
| --------------------- | ------------------ | ----------- | ------- |
| **On Budget Created** | `on_budget_create` | | Yes |
| **On Budget Deleted** | `on_budget_delete` | | Yes |
| **On Budget Updated** | `on_budget_update` | | Yes |
### Class
| Operation | ID | Description | Trigger |
| -------------------- | ----------------- | ----------- | ------- |
| **On Class Created** | `on_class_create` | | Yes |
| **On Class Deleted** | `on_class_delete` | | Yes |
| **On Class Merged** | `on_class_merge` | | Yes |
| **On Class Updated** | `on_class_update` | | Yes |
### Company
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------- | ------- |
| **Get Company Info** | `get_company_info` | Read the connected company's profile. | |
### Credit memo
| Operation | ID | Description | Trigger |
| -------------------------- | ---------------------- | ----------- | ------- |
| **On Credit Memo Created** | `on_creditmemo_create` | | Yes |
| **On Credit Memo Deleted** | `on_creditmemo_delete` | | Yes |
| **On Credit Memo Updated** | `on_creditmemo_update` | | Yes |
| **On Credit Memo Voided** | `on_creditmemo_void` | | Yes |
### Currency
| Operation | ID | Description | Trigger |
| ----------------------- | -------------------- | ----------- | ------- |
| **On Currency Created** | `on_currency_create` | | Yes |
| **On Currency Deleted** | `on_currency_delete` | | Yes |
| **On Currency Updated** | `on_currency_update` | | Yes |
### Customer
| Operation | ID | Description | Trigger |
| ----------------------- | -------------------- | ----------- | ------- |
| **On Customer Created** | `on_customer_create` | | Yes |
| **On Customer Deleted** | `on_customer_delete` | | Yes |
| **On Customer Merged** | `on_customer_merge` | | Yes |
| **On Customer Updated** | `on_customer_update` | | Yes |
### Customers
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | --------------------------------------------------- | ------- |
| **Create Customer** | `create_customer` | Create a customer/contact record. | |
| **Read Customer** | `read_customer` | Fetch a single customer by Id. | |
| **Update Customer** | `update_customer` | Sparse-update a customer (requires Id + SyncToken). | |
### Department
| Operation | ID | Description | Trigger |
| ------------------------- | ---------------------- | ----------- | ------- |
| **On Department Created** | `on_department_create` | | Yes |
| **On Department Deleted** | `on_department_delete` | | Yes |
| **On Department Merged** | `on_department_merge` | | Yes |
| **On Department Updated** | `on_department_update` | | Yes |
### Deposit
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------- | ----------- | ------- |
| **On Deposit Created** | `on_deposit_create` | | Yes |
| **On Deposit Deleted** | `on_deposit_delete` | | Yes |
| **On Deposit Updated** | `on_deposit_update` | | Yes |
| **On Deposit Voided** | `on_deposit_void` | | Yes |
### Employee
| Operation | ID | Description | Trigger |
| ----------------------- | -------------------- | ----------- | ------- |
| **On Employee Created** | `on_employee_create` | | Yes |
| **On Employee Deleted** | `on_employee_delete` | | Yes |
| **On Employee Merged** | `on_employee_merge` | | Yes |
| **On Employee Updated** | `on_employee_update` | | Yes |
### Estimate
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **On Estimate Created** | `on_estimate_create` | | Yes |
| **On Estimate Deleted** | `on_estimate_delete` | | Yes |
| **On Estimate Emailed** | `on_estimate_emailed` | | Yes |
| **On Estimate Updated** | `on_estimate_update` | | Yes |
| **On Estimate Voided** | `on_estimate_void` | | Yes |
### Expenses
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ------------------------------------------------ | ------- |
| **Create Journal Entry** | `create_journal_entry` | Post a manual double-entry journal entry. | |
| **Create Purchase** | `create_purchase` | Record an expense / cash / credit-card purchase. | |
| **Create Purchase Order** | `create_purchase_order` | Create a purchase order to a vendor. | |
### Invoice
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------- | ------- |
| **On Invoice Created** | `on_invoice_create` | | Yes |
| **On Invoice Deleted** | `on_invoice_delete` | | Yes |
| **On Invoice Emailed** | `on_invoice_emailed` | | Yes |
| **On Invoice Updated** | `on_invoice_update` | | Yes |
| **On Invoice Voided** | `on_invoice_void` | | Yes |
### Invoices
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------------ | ------- |
| **Create Invoice** | `create_invoice` | Create a sales invoice. | |
| **Delete Invoice** | `delete_invoice` | Delete an invoice (requires Id + SyncToken). | |
| **Get Invoice PDF** | `get_invoice_pdf` | Download an invoice as a PDF. | |
| **Read Invoice** | `read_invoice` | Fetch a single invoice by Id. | |
| **Send Invoice** | `send_invoice` | Email an invoice PDF to the customer. | |
| **Update Invoice** | `update_invoice` | Sparse-update an existing invoice (requires Id + SyncToken). | |
### Item
| Operation | ID | Description | Trigger |
| ------------------- | ---------------- | ----------- | ------- |
| **On Item Created** | `on_item_create` | | Yes |
| **On Item Deleted** | `on_item_delete` | | Yes |
| **On Item Merged** | `on_item_merge` | | Yes |
| **On Item Updated** | `on_item_update` | | Yes |
### Journal code
| Operation | ID | Description | Trigger |
| --------------------------- | ----------------------- | ----------- | ------- |
| **On Journal Code Created** | `on_journalcode_create` | | Yes |
| **On Journal Code Deleted** | `on_journalcode_delete` | | Yes |
| **On Journal Code Updated** | `on_journalcode_update` | | Yes |
### Journal entry
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------ | ----------- | ------- |
| **On Journal Entry Created** | `on_journalentry_create` | | Yes |
| **On Journal Entry Deleted** | `on_journalentry_delete` | | Yes |
| **On Journal Entry Updated** | `on_journalentry_update` | | Yes |
| **On Journal Entry Voided** | `on_journalentry_void` | | Yes |
### Lists
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | --------------------------------------------------------- | ------- |
| **Create Account** | `create_account` | Create a chart-of-accounts entry. | |
| **Create Item** | `create_item` | Create a product/service item. | |
| **Read Account** | `read_account` | Fetch a single ledger account by Id. | |
| **Read Item** | `read_item` | Fetch a single item by Id. | |
| **Update Account** | `update_account` | Sparse-update a ledger account (requires Id + SyncToken). | |
| **Update Item** | `update_item` | Sparse-update an item (requires Id + SyncToken). | |
### Payment
| Operation | ID | Description | Trigger |
| ---------------------- | ------------------- | ----------- | ------- |
| **On Payment Created** | `on_payment_create` | | Yes |
| **On Payment Deleted** | `on_payment_delete` | | Yes |
| **On Payment Updated** | `on_payment_update` | | Yes |
| **On Payment Voided** | `on_payment_void` | | Yes |
### Payment method
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------------- | ----------- | ------- |
| **On Payment Method Created** | `on_paymentmethod_create` | | Yes |
| **On Payment Method Deleted** | `on_paymentmethod_delete` | | Yes |
| **On Payment Method Merged** | `on_paymentmethod_merge` | | Yes |
| **On Payment Method Updated** | `on_paymentmethod_update` | | Yes |
### Payments
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------------------------- | ------- |
| **Create Bill Payment** | `create_bill_payment` | Record a payment made to a vendor against bills. | |
| **Create Payment** | `create_payment` | Record a customer payment and link it to invoices. | |
| **Read Payment** | `read_payment` | Fetch a single received payment by Id. | |
| **Update Payment** | `update_payment` | Sparse-update a received payment (requires Id + SyncToken). | |
### Payroll employee
| Operation | ID | Description | Trigger |
| ------------------------------- | --------------------------- | ----------- | ------- |
| **On Payroll Employee Created** | `on_payrollemployee_create` | | Yes |
| **On Payroll Employee Deleted** | `on_payrollemployee_delete` | | Yes |
| **On Payroll Employee Updated** | `on_payrollemployee_update` | | Yes |
### Payslips
| Operation | ID | Description | Trigger |
| ----------------------- | -------------------- | ----------- | ------- |
| **On Payslips Created** | `on_payslips_create` | | Yes |
| **On Payslips Deleted** | `on_payslips_delete` | | Yes |
| **On Payslips Updated** | `on_payslips_update` | | Yes |
### Preferences
| Operation | ID | Description | Trigger |
| -------------------------- | ----------------------- | ----------- | ------- |
| **On Preferences Created** | `on_preferences_create` | | Yes |
| **On Preferences Deleted** | `on_preferences_delete` | | Yes |
| **On Preferences Updated** | `on_preferences_update` | | Yes |
### Purchase
| Operation | ID | Description | Trigger |
| ----------------------- | -------------------- | ----------- | ------- |
| **On Purchase Created** | `on_purchase_create` | | Yes |
| **On Purchase Deleted** | `on_purchase_delete` | | Yes |
| **On Purchase Updated** | `on_purchase_update` | | Yes |
| **On Purchase Voided** | `on_purchase_void` | | Yes |
### Purchase order
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------------- | ----------- | ------- |
| **On Purchase Order Created** | `on_purchaseorder_create` | | Yes |
| **On Purchase Order Deleted** | `on_purchaseorder_delete` | | Yes |
| **On Purchase Order Updated** | `on_purchaseorder_update` | | Yes |
| **On Purchase Order Voided** | `on_purchaseorder_void` | | Yes |
### Query
| Operation | ID | Description | Trigger |
| ------------- | ----------- | ----------------------------------------------------------------------- | ------- |
| **Run Query** | `run_query` | Run a SQL-like query against any entity (the primary list/search path). | |
### Refund receipt
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------------- | ----------- | ------- |
| **On Refund Receipt Created** | `on_refundreceipt_create` | | Yes |
| **On Refund Receipt Deleted** | `on_refundreceipt_delete` | | Yes |
| **On Refund Receipt Updated** | `on_refundreceipt_update` | | Yes |
| **On Refund Receipt Voided** | `on_refundreceipt_void` | | Yes |
### Reports
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ----------------------- | ------- |
| **Get Report** | `get_report` | Run a financial report. | |
### Sales
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------------ | ------- |
| **Create Credit Memo** | `create_credit_memo` | Create a customer credit memo. | |
| **Create Estimate** | `create_estimate` | Create a quote/estimate. | |
| **Create Sales Receipt** | `create_sales_receipt` | Record a paid-at-time-of-sale transaction. | |
### Sales receipt
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------ | ----------- | ------- |
| **On Sales Receipt Created** | `on_salesreceipt_create` | | Yes |
| **On Sales Receipt Deleted** | `on_salesreceipt_delete` | | Yes |
| **On Sales Receipt Updated** | `on_salesreceipt_update` | | Yes |
| **On Sales Receipt Voided** | `on_salesreceipt_void` | | Yes |
### Tax agency
| Operation | ID | Description | Trigger |
| ------------------------- | --------------------- | ----------- | ------- |
| **On Tax Agency Created** | `on_taxagency_create` | | Yes |
| **On Tax Agency Deleted** | `on_taxagency_delete` | | Yes |
| **On Tax Agency Merged** | `on_taxagency_merge` | | Yes |
| **On Tax Agency Updated** | `on_taxagency_update` | | Yes |
### Term
| Operation | ID | Description | Trigger |
| ------------------- | ---------------- | ----------- | ------- |
| **On Term Created** | `on_term_create` | | Yes |
| **On Term Deleted** | `on_term_delete` | | Yes |
| **On Term Merged** | `on_term_merge` | | Yes |
| **On Term Updated** | `on_term_update` | | Yes |
### Time activity
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------ | ----------- | ------- |
| **On Time Activity Created** | `on_timeactivity_create` | | Yes |
| **On Time Activity Deleted** | `on_timeactivity_delete` | | Yes |
| **On Time Activity Updated** | `on_timeactivity_update` | | Yes |
### Transfer
| Operation | ID | Description | Trigger |
| ----------------------- | -------------------- | ----------- | ------- |
| **On Transfer Created** | `on_transfer_create` | | Yes |
| **On Transfer Deleted** | `on_transfer_delete` | | Yes |
| **On Transfer Updated** | `on_transfer_update` | | Yes |
| **On Transfer Voided** | `on_transfer_void` | | Yes |
### Vendor
| Operation | ID | Description | Trigger |
| --------------------- | ------------------ | ----------- | ------- |
| **On Vendor Created** | `on_vendor_create` | | Yes |
| **On Vendor Deleted** | `on_vendor_delete` | | Yes |
| **On Vendor Merged** | `on_vendor_merge` | | Yes |
| **On Vendor Updated** | `on_vendor_update` | | Yes |
### Vendor credit
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------ | ----------- | ------- |
| **On Vendor Credit Created** | `on_vendorcredit_create` | | Yes |
| **On Vendor Credit Deleted** | `on_vendorcredit_delete` | | Yes |
| **On Vendor Credit Updated** | `on_vendorcredit_update` | | Yes |
| **On Vendor Credit Voided** | `on_vendorcredit_void` | | Yes |
### Vendors
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------------------------------------- | ------- |
| **Create Vendor** | `create_vendor` | Create a vendor/supplier record. | |
| **Read Vendor** | `read_vendor` | Fetch a single vendor by Id. | |
| **Update Vendor** | `update_vendor` | Sparse-update a vendor (requires Id + SyncToken). | |
# Reddit
Source: https://docs.noclick.com/integrations/reddit
Connect Reddit to your workflows: 85 operations across 8 categories.
The Reddit node adds Reddit operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Reddit node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
**Get Subreddit Posts** reads public posts without a connected Reddit account. On NoClick it runs on NoClick's scraping infrastructure and uses credits. On a self-hosted instance, set `DECODO_AUTH_TOKEN` in the instance settings. Every other operation needs your own Reddit connection.
## Public subreddit posts
**Get Subreddit Posts** returns each post's full text and HTML, permalink, creation and edit times, score, total comment count, flair, media links, and the community's URL, description, and member count. **Sort By** takes the default feed, hot, new, top, rising, or controversial; **Time Period** appears on top and controversial. **Limit** sets how many posts to fetch, 25 by default and 100 at most.
Set **Fetch Comments** to **Yes** to include a sample of comments and their nested replies. **Comments per Post** sets the sample size, from 1 to 100 with a default of 10, counting replies. `num_comments` is the total Reddit reports for the post, while `comment_count` counts the comments actually returned, and `comments_are_sampled` marks the difference. `reply_count` is null where Reddit does not report a total, and deleted or hidden comments may be missing.
Image and link-only posts can have an empty body. `related_posts` is always null, because this reader does not return Reddit's recommendations. A read that fails or comes back incomplete fails the step instead of returning an empty success. Fetching comments adds time and usage.
## Credentials
Connect Reddit under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
## Operations
### Live thread
| Operation | ID | Description |
| --------------------------- | ------------------------- | ------------------------------- |
| **Close Live Thread** | `close_live_thread` | Close a live thread |
| **Create Live Thread** | `create_live_thread` | Create a new live thread |
| **Get Live Thread** | `get_live_thread` | Get live thread information |
| **Get Live Thread Updates** | `get_live_thread_updates` | Get updates from a live thread |
| **Post Live Thread Update** | `post_live_thread_update` | Post an update to a live thread |
### Message
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ------------------------------------------- |
| **Delete Message** | `delete_message` | Delete a message |
| **Get Inbox Messages** | `get_inbox_messages` | Get the authenticated user's inbox messages |
| **Mark All Messages As Read** | `mark_all_messages_as_read` | Mark all messages as read |
| **Mark Messages As Read** | `mark_messages_as_read` | Mark messages as read |
| **Mark Messages As Unread** | `mark_messages_as_unread` | Mark a message as unread |
| **Reply to Message** | `reply_to_message` | Reply to a message |
| **Send Private Message** | `send_private_message` | Send a private message to a user |
### Misc
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ----------------------------------------------- |
| **Get Info by Fullname Batch** | `get_info_by_fullname_batch` | Get info about things by fullname (batch query) |
| **Search Reddit** | `search_reddit` | Search Reddit |
### Multireddit
| Operation | ID | Description |
| ------------------------- | ----------------------- | ----------------------------------------- |
| **Create Multireddit** | `create_multireddit` | Create a new multireddit |
| **Delete Multireddit** | `delete_multireddit` | Delete a multireddit |
| **Get Multireddit** | `get_multireddit` | Get a specific multireddit |
| **Get Multireddit Posts** | `get_multireddit_posts` | Get posts from a multireddit |
| **Get My Multireddits** | `get_my_multireddits` | Get the authenticated user's multireddits |
| **Update Multireddit** | `update_multireddit` | Update a multireddit |
### Post
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | ---------------------------------------------------------------- |
| **Approve Post or Comment** | `approve_post_or_comment` | Approve a post or comment (moderator only) |
| **Crosspost to Subreddit** | `crosspost_to_subreddit` | Crosspost a post to another subreddit |
| **Delete Post or Comment** | `delete_post_or_comment` | Delete a post or comment |
| **Distinguish Post or Comment** | `distinguish_post_or_comment` | Distinguish a post or comment as moderator |
| **Edit Post or Comment** | `edit_post_or_comment` | Edit a post or comment |
| **Get Best Posts** | `get_best_posts` | Get best posts (personalized front page) |
| **Get Duplicate Posts** | `get_duplicate_posts` | Get duplicate posts (crossposts and reposts) |
| **Get Gilded Content** | `get_gilded_content` | Get gilded (awarded) content |
| **Get Post** | `get_post` | Get a specific post by ID |
| **Get Post Comments** | `get_post_comments` | Get comments on a post |
| **Get Random Submission** | `get_random_submission` | Get a random submission from a subreddit |
| **Give Award to Post or Comment** | `give_award_to_post_or_comment` | Give an award to a post or comment |
| **Hide Post from Feed** | `hide_post_from_feed` | Hide a post from your feed |
| **Ignore Reports on Content** | `ignore_reports_on_content` | Ignore or unignore reports on a post or comment (moderator only) |
| **Load More Comments** | `load_more_comments` | Load more comments from a 'more' object |
| **Lock Post or Comment** | `lock_post_or_comment` | Lock a post or comment (moderator only) |
| **Mark Post As Nsfw** | `mark_post_as_nsfw` | Mark or unmark a post as NSFW |
| **Mark Post As Spoiler** | `mark_post_as_spoiler` | Mark or unmark a post as spoiler |
| **Remove Post or Comment** | `remove_post_or_comment` | Remove a post or comment (moderator only) |
| **Report Post or Comment** | `report_post_or_comment` | Report a post or comment |
| **Save Post or Comment** | `save_post_or_comment` | Save or unsave a post or comment |
| **Set Post Contest Mode** | `set_post_contest_mode` | Set or unset contest mode on a post (moderator only) |
| **Set Post Link Flair** | `set_post_link_flair` | Set flair on a post |
| **Set Post Suggested Sort** | `set_post_suggested_sort` | Set suggested sort for a post (moderator only) |
| **Sticky or Unsticky Post** | `sticky_or_unsticky_post` | Sticky or unsticky a post in a subreddit (moderator only) |
| **Submit Comment** | `submit_comment` | Submit a comment on a post or reply to a comment |
| **Submit Link Post** | `submit_link_post` | Submit a link post to a subreddit |
| **Submit Text Post** | `submit_text_post` | Submit a text post to a subreddit |
| **Toggle Post Inbox Replies** | `toggle_post_inbox_replies` | Enable or disable inbox replies for a post or comment |
| **Vote on Post or Comment** | `vote_on_post_or_comment` | Vote on a post or comment |
### Subreddit
| Operation | ID | Description |
| ------------------------------------- | ----------------------------------- | ------------------------------------------------------------------- |
| **Add Subreddit to Multireddit** | `add_subreddit_to_multireddit` | Add a subreddit to a multireddit |
| **Get Default Subreddits** | `get_default_subreddits` | Get default subreddits |
| **Get My Subscribed Subreddits** | `get_my_subscribed_subreddits` | Get the authenticated user's subscribed subreddits |
| **Get New Subreddits** | `get_new_subreddits` | Get new subreddits |
| **Get Popular Subreddits** | `get_popular_subreddits` | Get popular subreddits |
| **Get Random Subreddit** | `get_random_subreddit` | Get a random subreddit |
| **Get Subreddit Comments** | `get_subreddit_comments` | Get recent comments from a subreddit |
| **Get Subreddit Info** | `get_subreddit_info` | Get information about a subreddit |
| **Get Subreddit Link Flair Options** | `get_subreddit_link_flair_options` | Get available link flair options for a subreddit |
| **Get Subreddit Moderators** | `get_subreddit_moderators` | Get moderators of a subreddit |
| **Get Subreddit Posts** | `get_subreddit_posts` | Fetch public posts from a subreddit feed without Reddit credentials |
| **Get Subreddit Rules** | `get_subreddit_rules` | Get rules for a subreddit |
| **Get Subreddit Traffic Stats** | `get_subreddit_traffic_stats` | Get subreddit traffic statistics (moderator only) |
| **Remove Subreddit from Multireddit** | `remove_subreddit_from_multireddit` | Remove a subreddit from a multireddit |
| **Search Subreddits** | `search_subreddits` | Search for subreddits by name |
| **Subscribe to Subreddit** | `subscribe_to_subreddit` | Subscribe or unsubscribe from a subreddit |
### User
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | -------------------------------------------- |
| **Block User** | `block_user` | Block a user |
| **Check Username Availability** | `check_username_availability` | Check if a username is available |
| **Get Authenticated User Info** | `get_authenticated_user_info` | Get information about the authenticated user |
| **Get Authenticated User Preferences** | `get_authenticated_user_preferences` | Get the authenticated user's preferences |
| **Get Blocked Users** | `get_blocked_users` | Get the authenticated user's blocked users |
| **Get Friends List** | `get_friends_list` | Get the authenticated user's friends list |
| **Get Karma Breakdown** | `get_karma_breakdown` | Get karma breakdown by subreddit |
| **Get User Comments** | `get_user_comments` | Get comments by a specific user |
| **Get User Flair Options** | `get_user_flair_options` | Get user flair options for a subreddit |
| **Get User Info** | `get_user_info` | Get information about a specific user |
| **Get User Posts** | `get_user_posts` | Get posts by a specific user |
| **Get User Saved Posts and Comments** | `get_user_saved_posts_and_comments` | Get a user's saved posts and comments |
| **Get User Trophies** | `get_user_trophies` | Get a user's trophies/awards |
| **Report User** | `report_user` | Report a user |
| **Set User Flair in Subreddit** | `set_user_flair_in_subreddit` | Set user flair in a subreddit |
| **Unblock User** | `unblock_user` | Unblock a user |
### Wiki
| Operation | ID | Description |
| --------------------------- | ------------------------- | ---------------------------------- |
| **Get Wiki Page** | `get_wiki_page` | Get a specific wiki page |
| **Get Wiki Page Revisions** | `get_wiki_page_revisions` | Get wiki page revision history |
| **List Wiki Pages** | `list_wiki_pages` | List all wiki pages in a subreddit |
# Redis
Source: https://docs.noclick.com/integrations/redis
Connect Redis to your workflows: 237 operations across 18 categories.
The Redis node adds Redis operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Redis also includes 2 trigger operations (marked in the tables below) that can start a workflow when something happens in Redis.
You can wire the Redis node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Redis under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Standard
Enter the values manually when creating the credential.
[Get your credentials here](https://console.upstash.com/).
### Read only
Enter the values manually when creating the credential.
[Get your credentials here](https://console.upstash.com/).
### ACL
Enter the values manually when creating the credential.
[Get your credentials here](https://console.upstash.com/).
## Operations
### Bit
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ----------------------------- | ------- |
| **Count Set Bits** | `count_set_bits` | Bitcount operation | |
| **Find First Bit Position** | `find_first_bit_position` | Bitpos operation | |
| **Perform Bitfield Operation** | `perform_bitfield_operation` | Bitfield operation | |
| **Perform Bitfield Operation Readonly** | `perform_bitfield_operation_readonly` | Read-only bitfield operations | |
| **Perform Bitwise Operation** | `perform_bitwise_operation` | Bitop operation | |
### Connection
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | -------------------------------- | ------- |
| **Authenticate to Server** | `authenticate_to_server` | Authenticate to the server | |
| **Close Connection** | `close_connection` | Close the connection | |
| **Echo Message** | `echo_message` | Echo the given string | |
| **Get Client Connection Id** | `get_client_connection_id` | Get client connection ID | |
| **Get Client Connection Info** | `get_client_connection_info` | Get client connection info | |
| **Get Client Connection Name** | `get_client_connection_name` | Get the connection name | |
| **Handshake with Server** | `handshake_with_server` | Handshake with server | |
| **List All Client Connections** | `list_all_client_connections` | List all client connections | |
| **Ping Server** | `ping_server` | Ping the server | |
| **Reset Connection State** | `reset_connection_state` | Reset the connection state | |
| **Select Database** | `select_database` | Select the database | |
| **Set Client Connection Attributes** | `set_client_connection_attributes` | Set client connection attributes | |
| **Set Client Connection Name** | `set_client_connection_name` | Set the connection name | |
### Function
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | --------------------------------- | ------- |
| **Call Readonly Redis Function** | `call_readonly_redis_function` | Call read-only Redis function | |
| **Call Redis Function** | `call_redis_function` | Call Redis function | |
| **Delete All Function Libraries** | `delete_all_function_libraries` | Delete all function libraries | |
| **Delete Function Library** | `delete_function_library` | Delete Redis function library | |
| **Get Function Execution Stats** | `get_function_execution_stats` | Get function execution statistics | |
| **List Function Libraries** | `list_function_libraries` | List all function libraries | |
| **Load Function Library** | `load_function_library` | Load Redis function library | |
### Geospatial
| Operation | ID | Description | Trigger |
| ----------------------------------------------- | --------------------------------------------- | ---------------------------------------------- | ------- |
| **Add Geospatial Members** | `add_geospatial_members` | Geoadd operation | |
| **Find Members in Radius** | `find_members_in_radius` | Georadius operation | |
| **Find Members in Radius from Member** | `find_members_in_radius_from_member` | Georadiusbymember operation | |
| **Find Members in Radius from Member Readonly** | `find_members_in_radius_from_member_readonly` | Read-only query radius with center member | |
| **Find Members in Radius Readonly** | `find_members_in_radius_readonly` | Read-only query radius with center coordinates | |
| **Get Distance Between Geospatial Members** | `get_distance_between_geospatial_members` | Geodist operation | |
| **Get Geohash for Members** | `get_geohash_for_members` | Geohash operation | |
| **Get Position of Members** | `get_position_of_members` | Geopos operation | |
| **Search and Store Geospatial Members** | `search_and_store_geospatial_members` | Geosearchstore operation | |
| **Search Geospatial Members** | `search_geospatial_members` | Geosearch operation | |
### Hash
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | -------------------------------------- | ------- |
| **Check If Hash Field Exists** | `check_if_hash_field_exists` | Check if a hash field exists | |
| **Delete Hash Fields** | `delete_hash_fields` | Delete one or more hash fields | |
| **Get All Hash Field Names** | `get_all_hash_field_names` | Get all field names in a hash | |
| **Get All Hash Fields and Values** | `get_all_hash_fields_and_values` | Get all fields and values in a hash | |
| **Get All Hash Values** | `get_all_hash_values` | Get all values in a hash | |
| **Get and Delete Hash Field** | `get_and_delete_hash_field` | Get hash field value and delete it | |
| **Get Hash Field Count** | `get_hash_field_count` | Get the number of fields in a hash | |
| **Get Hash Field Value** | `get_hash_field_value` | Get the value of a hash field | |
| **Get Hash Field Value Length** | `get_hash_field_value_length` | Hstrlen operation | |
| **Get Hash Field with Expiration** | `get_hash_field_with_expiration` | Get hash field with expiration | |
| **Get Multiple Hash Field Values** | `get_multiple_hash_field_values` | Get the values of multiple hash fields | |
| **Get Random Hash Field** | `get_random_hash_field` | Hrandfield operation | |
| **Increment Hash Field by Amount** | `increment_hash_field_by_amount` | Hincrby operation | |
| **Increment Hash Field by Float** | `increment_hash_field_by_float` | Hincrbyfloat operation | |
| **Scan Hash Fields Iteratively** | `scan_hash_fields_iteratively` | Hscan operation | |
| **Set Hash Field If Not Exists** | `set_hash_field_if_not_exists` | Hsetnx operation | |
| **Set Hash Field Value** | `set_hash_field_value` | Set the value of a hash field | |
| **Set Hash Field with Expiration** | `set_hash_field_with_expiration` | Set hash field with expiration | |
| **Set Multiple Hash Fields** | `set_multiple_hash_fields` | Set multiple hash fields | |
### HyperLogLog
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ----------------- | ------- |
| **Add to Hyperloglog** | `add_to_hyperloglog` | Pfadd operation | |
| **Count Hyperloglog Cardinality** | `count_hyperloglog_cardinality` | Pfcount operation | |
| **Merge Hyperloglog Sets** | `merge_hyperloglog_sets` | Pfmerge operation | |
### JSON
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------- | ------- |
| **Append to Json Array** | `append_to_json_array` | Append values to JSON array | |
| **Append to Json String** | `append_to_json_string` | Append string to JSON string value | |
| **Clear Json Container** | `clear_json_container` | Clear container values (arrays/objects) | |
| **Delete Json Value** | `delete_json_value` | Delete JSON value at path | |
| **Find Index in Json Array** | `find_index_in_json_array` | Find index of value in JSON array | |
| **Get Json Array Length** | `get_json_array_length` | Get length of JSON array | |
| **Get Json from Multiple Keys** | `get_json_from_multiple_keys` | Get JSON values from multiple keys | |
| **Get Json in Resp Format** | `get_json_in_resp_format` | Return JSON value in RESP form | |
| **Get Json Object Key Count** | `get_json_object_key_count` | Get number of keys in JSON object | |
| **Get Json Object Keys** | `get_json_object_keys` | Get keys of JSON object | |
| **Get Json String Length** | `get_json_string_length` | Get length of JSON string | |
| **Get Json Value** | `get_json_value` | Get JSON value from path | |
| **Get Json Value Type** | `get_json_value_type` | Get type of JSON value | |
| **Increment Json Number** | `increment_json_number` | Increment JSON number by value | |
| **Insert Into Json Array** | `insert_into_json_array` | Insert values into JSON array at index | |
| **Merge Json Values** | `merge_json_values` | Merge JSON values | |
| **Multiply Json Number** | `multiply_json_number` | Multiply JSON number by value | |
| **Pop from Json Array** | `pop_from_json_array` | Remove and return element from JSON array | |
| **Set Json in Multiple Keys** | `set_json_in_multiple_keys` | Set JSON values in multiple keys atomically | |
| **Set Json Value** | `set_json_value` | Set JSON value at path | |
| **Toggle Json Boolean** | `toggle_json_boolean` | Toggle JSON boolean value | |
| **Trim Json Array** | `trim_json_array` | Trim JSON array to specified range | |
### Key
| Operation | ID | Description | Trigger |
| ----------------------------------------------------- | --------------------------------------------------- | ------------------------------------------------------ | ------- |
| **Append Value to Key** | `append_value_to_key` | Append a value to a key | |
| **Check If Keys Exist** | `check_if_keys_exist` | Check if one or more keys exist | |
| **Copy Key** | `copy_key` | Copy operation | |
| **Decrement Key by Amount** | `decrement_key_by_amount` | Decrby operation | |
| **Decrement Key by One** | `decrement_key_by_one` | Decrement the integer value of a key by 1 | |
| **Delete All Keys All Databases** | `delete_all_keys_all_databases` | Remove all keys from all databases | |
| **Delete All Keys Current Database** | `delete_all_keys_current_database` | Remove all keys from current database | |
| **Delete Keys** | `delete_keys` | Delete one or more keys | |
| **Dump Serialized Key** | `dump_serialized_key` | Dump operation | |
| **Find Keys Matching Pattern** | `find_keys_matching_pattern` | Find all keys matching a pattern | |
| **Get and Delete Key** | `get_and_delete_key` | Getdel operation | |
| **Get and Set Key Value** | `get_and_set_key_value` | Getset operation | |
| **Get Database Key Count** | `get_database_key_count` | Get the number of keys in database | |
| **Get Key Expiration Unix Timestamp** | `get_key_expiration_unix_timestamp` | Expiretime operation | |
| **Get Key Expiration Unix Timestamp Milliseconds** | `get_key_expiration_unix_timestamp_milliseconds` | Pexpiretime operation | |
| **Get Key Time to Live** | `get_key_time_to_live` | Get the time to live for a key | |
| **Get Key Time to Live Milliseconds** | `get_key_time_to_live_milliseconds` | Pttl operation | |
| **Get Key Value** | `get_key_value` | Get the value of a key | |
| **Get Key Value Type** | `get_key_value_type` | Get the type of a key | |
| **Get Multiple Key Values** | `get_multiple_key_values` | Get the values of multiple keys | |
| **Get Random Key** | `get_random_key` | Randomkey operation | |
| **Get with Expiration Options** | `get_with_expiration_options` | Getex operation | |
| **Increment Key by Amount** | `increment_key_by_amount` | Increment the integer value of a key by a given amount | |
| **Increment Key by Float** | `increment_key_by_float` | Incrbyfloat operation | |
| **Increment Key by One** | `increment_key_by_one` | Increment the integer value of a key by 1 | |
| **Rename Key** | `rename_key` | Rename a key | |
| **Rename Key If New Not Exists** | `rename_key_if_new_not_exists` | Renamenx operation | |
| **Restore Serialized Key** | `restore_serialized_key` | Restore operation | |
| **Scan Keys Iteratively** | `scan_keys_iteratively` | Scan operation | |
| **Set Key Expiration at Unix Timestamp** | `set_key_expiration_at_unix_timestamp` | Expireat operation | |
| **Set Key Expiration at Unix Timestamp Milliseconds** | `set_key_expiration_at_unix_timestamp_milliseconds` | Pexpireat operation | |
| **Set Key Expiration Milliseconds** | `set_key_expiration_milliseconds` | Pexpire operation | |
| **Set Key Expiration Seconds** | `set_key_expiration_seconds` | Set a timeout on a key | |
| **Set Key If Not Exists** | `set_key_if_not_exists` | Setnx operation | |
| **Set Key Value** | `set_key_value` | Set the value of a key | |
| **Set Key Value with Expiration Milliseconds** | `set_key_value_with_expiration_milliseconds` | Psetex operation | |
| **Set Key Value with Expiration Seconds** | `set_key_value_with_expiration_seconds` | Setex operation | |
| **Set Multiple Key Value Pairs** | `set_multiple_key_value_pairs` | Set multiple key-value pairs | |
| **Set Multiple Pairs If Not Exist** | `set_multiple_pairs_if_not_exist` | Msetnx operation | |
| **Touch Keys to Update Access Time** | `touch_keys_to_update_access_time` | Touch operation | |
| **Unlink Keys Async** | `unlink_keys_async` | Unlink operation | |
### List
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ----------------------------------------------------- | ------- |
| **Find Element Position in List** | `find_element_position_in_list` | Lpos operation | |
| **Get List Element by Index** | `get_list_element_by_index` | Get an element from a list by index | |
| **Get List Length** | `get_list_length` | Get the length of a list | |
| **Get List Range** | `get_list_range` | Get a range of elements from a list | |
| **Insert Into List** | `insert_into_list` | Linsert operation | |
| **Move Element Between Lists** | `move_element_between_lists` | Lmove operation | |
| **Pop and Push Across Lists** | `pop_and_push_across_lists` | Rpoplpush operation | |
| **Pop and Push Across Lists Blocking** | `pop_and_push_across_lists_blocking` | Pop from source, push to dest, block if empty | |
| **Pop and Push Between Lists Blocking** | `pop_and_push_between_lists_blocking` | Pop element from source, push to dest, block if empty | |
| **Pop First Element** | `pop_first_element` | Remove and return the first element of a list | |
| **Pop First Element Blocking** | `pop_first_element_blocking` | Remove and get the first element, block if empty | |
| **Pop from Multiple Lists** | `pop_from_multiple_lists` | Pop elements from multiple lists | |
| **Pop from Multiple Lists Blocking** | `pop_from_multiple_lists_blocking` | Pop elements from lists, block if empty | |
| **Pop Last Element** | `pop_last_element` | Remove and return the last element of a list | |
| **Pop Last Element Blocking** | `pop_last_element_blocking` | Remove and get the last element, block if empty | |
| **Push to List Beginning** | `push_to_list_beginning` | Push values to the beginning of a list | |
| **Push to List Beginning If Exists** | `push_to_list_beginning_if_exists` | Lpushx operation | |
| **Push to List End** | `push_to_list_end` | Push values to the end of a list | |
| **Push to List End If Exists** | `push_to_list_end_if_exists` | Rpushx operation | |
| **Remove Elements from List** | `remove_elements_from_list` | Lrem operation | |
| **Set List Element by Index** | `set_list_element_by_index` | Set an element in a list by index | |
| **Trim List to Range** | `trim_list_to_range` | Ltrim operation | |
### PubSub
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | --------------------------------- | ------- |
| **Get Pubsub System State** | `get_pubsub_system_state` | Get pub/sub system state | |
| **Publish Message to Channel** | `publish_message_to_channel` | Post a message to a channel | |
| **Unsubscribe from Channel Patterns** | `unsubscribe_from_channel_patterns` | Unsubscribe from channel patterns | |
| **Unsubscribe from Channels** | `unsubscribe_from_channels` | Unsubscribe from channels | |
### Script
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ------------------------------------ | ------- |
| **Check If Scripts Exist** | `check_if_scripts_exist` | Check if scripts exist | |
| **Execute Lua Script** | `execute_lua_script` | Execute Lua script | |
| **Execute Lua Script by Sha** | `execute_lua_script_by_sha` | Execute Lua script by SHA1 digest | |
| **Execute Readonly Lua Script** | `execute_readonly_lua_script` | Execute read-only Lua script | |
| **Execute Readonly Lua Script by Sha** | `execute_readonly_lua_script_by_sha` | Execute read-only Lua script by SHA1 | |
| **Load Script Into Cache** | `load_script_into_cache` | Load script into cache | |
| **Remove All Cached Scripts** | `remove_all_cached_scripts` | Remove all scripts from script cache | |
### Server
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | --------------------------------------------- | ------- |
| **Execute Commands in Pipeline** | `execute_commands_in_pipeline` | Execute multiple commands in a single request | |
| **Get Server Time** | `get_server_time` | Get server time | |
| **Listen for Server Requests** | `listen_for_server_requests` | Listen for all requests received by server | |
| **Sort List Set or Sorted Set** | `sort_list_set_or_sorted_set` | Sort operation | |
### Set
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | -------------------------------------------- | ------- |
| **Add Members to Set** | `add_members_to_set` | Add members to a set | |
| **Check If Member in Set** | `check_if_member_in_set` | Check if a value is a member of a set | |
| **Check Multiple Members in Set** | `check_multiple_members_in_set` | Smismember operation | |
| **Get All Set Members** | `get_all_set_members` | Get all members of a set | |
| **Get Random Set Members** | `get_random_set_members` | Srandmember operation | |
| **Get Set Difference** | `get_set_difference` | Return the difference of multiple sets | |
| **Get Set Intersection** | `get_set_intersection` | Return the intersection of multiple sets | |
| **Get Set Intersection Cardinality** | `get_set_intersection_cardinality` | Get cardinality of intersection between sets | |
| **Get Set Member Count** | `get_set_member_count` | Get the number of members in a set | |
| **Get Set Union** | `get_set_union` | Return the union of multiple sets | |
| **Move Member Between Sets** | `move_member_between_sets` | Smove operation | |
| **Pop Random Members from Set** | `pop_random_members_from_set` | Spop operation | |
| **Remove Members from Set** | `remove_members_from_set` | Remove members from a set | |
| **Scan Set Members Iteratively** | `scan_set_members_iteratively` | Incrementally iterate set members | |
| **Store Set Difference** | `store_set_difference` | Sdiffstore operation | |
| **Store Set Intersection** | `store_set_intersection` | Sinterstore operation | |
| **Store Set Union** | `store_set_union` | Sunionstore operation | |
### Sorted set
| Operation | ID | Description | Trigger |
| ------------------------------------------------- | ----------------------------------------------- | ------------------------------------------------------- | ------- |
| **Add Members to Sorted Set** | `add_members_to_sorted_set` | Add members to a sorted set with scores | |
| **Count Sorted Set Members in Lexical Range** | `count_sorted_set_members_in_lexical_range` | Zlexcount operation | |
| **Count Sorted Set Members in Score Range** | `count_sorted_set_members_in_score_range` | Zcount operation | |
| **Get Multiple Sorted Set Member Scores** | `get_multiple_sorted_set_member_scores` | Zmscore operation | |
| **Get Random Sorted Set Members** | `get_random_sorted_set_members` | Zrandmember operation | |
| **Get Sorted Set Difference** | `get_sorted_set_difference` | Get difference between sorted sets | |
| **Get Sorted Set Intersection** | `get_sorted_set_intersection` | Get intersection of sorted sets | |
| **Get Sorted Set Intersection Cardinality** | `get_sorted_set_intersection_cardinality` | Get cardinality of sorted set intersection | |
| **Get Sorted Set Member Count** | `get_sorted_set_member_count` | Get the number of members in a sorted set | |
| **Get Sorted Set Member Range** | `get_sorted_set_member_range` | Get a range of members from a sorted set | |
| **Get Sorted Set Member Range Reverse** | `get_sorted_set_member_range_reverse` | Zrevrange operation | |
| **Get Sorted Set Member Rank** | `get_sorted_set_member_rank` | Get the rank of a member in a sorted set | |
| **Get Sorted Set Member Rank Reverse** | `get_sorted_set_member_rank_reverse` | Zrevrank operation | |
| **Get Sorted Set Member Score** | `get_sorted_set_member_score` | Get the score of a member in a sorted set | |
| **Get Sorted Set Range by Lexical Order** | `get_sorted_set_range_by_lexical_order` | Zrangebylex operation | |
| **Get Sorted Set Range by Lexical Order Reverse** | `get_sorted_set_range_by_lexical_order_reverse` | Zrevrangebylex operation | |
| **Get Sorted Set Range by Score** | `get_sorted_set_range_by_score` | Zrangebyscore operation | |
| **Get Sorted Set Range by Score Reverse** | `get_sorted_set_range_by_score_reverse` | Zrevrangebyscore operation | |
| **Get Sorted Set Union** | `get_sorted_set_union` | Get union of sorted sets | |
| **Increment Sorted Set Member Score** | `increment_sorted_set_member_score` | Zincrby operation | |
| **Pop from Sorted Sets** | `pop_from_sorted_sets` | Pop elements from sorted sets | |
| **Pop from Sorted Sets Blocking** | `pop_from_sorted_sets_blocking` | Pop elements from sorted sets, block if empty | |
| **Pop Highest Score Member** | `pop_highest_score_member` | Zpopmax operation | |
| **Pop Highest Score Member Blocking** | `pop_highest_score_member_blocking` | Remove and return highest scored member, block if empty | |
| **Pop Lowest Score Member** | `pop_lowest_score_member` | Zpopmin operation | |
| **Pop Lowest Score Member Blocking** | `pop_lowest_score_member_blocking` | Remove and return lowest scored member, block if empty | |
| **Remove Members from Sorted Set** | `remove_members_from_sorted_set` | Remove members from a sorted set | |
| **Remove Sorted Set Members by Lexical Range** | `remove_sorted_set_members_by_lexical_range` | Zremrangebylex operation | |
| **Remove Sorted Set Members by Rank Range** | `remove_sorted_set_members_by_rank_range` | Zremrangebyrank operation | |
| **Remove Sorted Set Members by Score Range** | `remove_sorted_set_members_by_score_range` | Zremrangebyscore operation | |
| **Scan Sorted Set Members Iteratively** | `scan_sorted_set_members_iteratively` | Zscan operation | |
| **Store Sorted Set Difference** | `store_sorted_set_difference` | Store difference of sorted sets | |
| **Store Sorted Set Intersection** | `store_sorted_set_intersection` | Store intersection of sorted sets | |
| **Store Sorted Set Range** | `store_sorted_set_range` | Store range from sorted set | |
| **Store Sorted Set Union** | `store_sorted_set_union` | Store union of sorted sets | |
### Stream
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | -------------------------------------------- | ------- |
| **Acknowledge Stream Messages** | `acknowledge_stream_messages` | Acknowledge stream messages | |
| **Append to Stream** | `append_to_stream` | Append a new entry to a stream | |
| **Auto Claim Pending Stream Messages** | `auto_claim_pending_stream_messages` | Automatically claim pending messages | |
| **Claim Pending Stream Messages** | `claim_pending_stream_messages` | Claim pending messages from another consumer | |
| **Create Stream Consumer Group** | `create_stream_consumer_group` | Create a consumer group | |
| **Delete Stream Entries** | `delete_stream_entries` | Remove entries from a stream | |
| **Destroy Stream Consumer Group** | `destroy_stream_consumer_group` | Destroy a consumer group | |
| **Get Pending Stream Messages** | `get_pending_stream_messages` | Get information about pending messages | |
| **Get Stream Entry Count** | `get_stream_entry_count` | Get the number of entries in a stream | |
| **Get Stream Entry Range** | `get_stream_entry_range` | Return a range of entries from a stream | |
| **Get Stream Entry Range Reverse** | `get_stream_entry_range_reverse` | Return a range of entries in reverse order | |
| **Get Stream Information** | `get_stream_information` | Get information about a stream | |
| **Read from Consumer Group** | `read_from_consumer_group` | Read data from stream consumer group | |
| **Read from Streams** | `read_from_streams` | Read data from one or more streams | |
| **Set Consumer Group Last Delivered Id** | `set_consumer_group_last_delivered_id` | Set the consumer group last delivered ID | |
| **Trim Stream to Length** | `trim_stream_to_length` | Trim stream to a given length | |
### String
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------- | ------- |
| **Get Bit at Offset** | `get_bit_at_offset` | Getbit operation | |
| **Get String Value Length** | `get_string_value_length` | Get the length of the value stored at a key | |
| **Get Substring by Range** | `get_substring_by_range` | Getrange operation | |
| **Set Bit at Offset** | `set_bit_at_offset` | Setbit operation | |
| **Set String Range at Offset** | `set_string_range_at_offset` | Setrange operation | |
### Transaction
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------- | ------- |
| **Discard Transaction Commands** | `discard_transaction_commands` | Discard all commands in transaction | |
| **Execute Transaction** | `execute_transaction` | Execute all commands in transaction | |
| **Start Transaction** | `start_transaction` | Mark the start of a transaction block | |
| **Stop Watching Keys** | `stop_watching_keys` | Unwatch all keys | |
| **Watch Keys for Transaction** | `watch_keys_for_transaction` | Watch keys for conditional execution | |
### Other
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | --------------------------------------- | ------- |
| **Subscribe to Channel Patterns** | `subscribe_to_channel_patterns` | Subscribe to channels matching patterns | Yes |
| **Subscribe to Channels** | `subscribe_to_channels` | Subscribe to channels | Yes |
# Reducto
Source: https://docs.noclick.com/integrations/reducto
Connect Reducto to your workflows: 18 operations across 11 categories.
The Reducto node adds Reducto operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Reducto also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Reducto.
You can wire the Reducto node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Reducto under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://studio.reducto.ai).
## Operations
### Account
| Operation | ID | Description | Trigger |
| ------------------- | ------------- | ---------------------------------------------- | ------- |
| **Get API Version** | `get_version` | Return the running Reducto API version string. | |
### Classify
| Operation | ID | Description | Trigger |
| --------------------- | ---------- | -------------------------------------------------------------------------- | ------- |
| **Classify Document** | `classify` | Categorize a document into one of a provided set of document types/labels. | |
### Documents
| Operation | ID | Description | Trigger |
| ------------------- | -------- | ------------------------------------------------------------------------------------------ | ------- |
| **Upload Document** | `upload` | Upload a file by URL to Reducto storage; returns a reducto:// id reusable as document URL. | |
### Edit
| Operation | ID | Description | Trigger |
| ------------------------- | ------------ | ------------------------------------------------------------------------------------------ | ------- |
| **Edit Document** | `edit` | Programmatically modify a PDF/DOCX - fill forms, write field values, redact (synchronous). | |
| **Edit Document (Async)** | `edit_async` | Asynchronous document editing / form write-back; returns a job\_id. | |
### Extract
| Operation | ID | Description | Trigger |
| -------------------------- | --------------- | ---------------------------------------------------------------------------------- | ------- |
| **Extract Fields** | `extract` | Pull specific structured fields from a document using a JSON schema (synchronous). | |
| **Extract Fields (Async)** | `extract_async` | Asynchronous schema-based field extraction; returns a job\_id. | |
### Jobs
| Operation | ID | Description | Trigger |
| -------------- | ------------ | ------------------------------------------------------------- | ------- |
| **Cancel Job** | `cancel_job` | Cancel a running or queued async job. | |
| **Get Job** | `get_job` | Retrieve status and results of an async job. | |
| **List Jobs** | `list_jobs` | List async jobs for the account with cursor-based pagination. | |
### Parse
| Operation | ID | Description | Trigger |
| -------------------------- | ------------- | ---------------------------------------------------------------------------- | ------- |
| **Parse Document** | `parse` | Convert a document into layout-aware structured JSON/markdown (synchronous). | |
| **Parse Document (Async)** | `parse_async` | Enqueue a parse job and return a job\_id immediately (asynchronous). | |
### Pipeline
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------- | ----------------------------------------------------------------------------------------- | ------- |
| **Run Pipeline** | `pipeline` | Run a composed multi-step pipeline (split -> parse -> extract) in one call (synchronous). | |
| **Run Pipeline (Async)** | `pipeline_async` | Asynchronous pipeline execution; returns a job\_id. | |
### Split
| Operation | ID | Description | Trigger |
| -------------------------- | ------------- | ----------------------------------------------------------------- | ------- |
| **Split Document** | `split` | Divide a multi-document file into labeled sections (synchronous). | |
| **Split Document (Async)** | `split_async` | Asynchronous document splitting; returns a job\_id. | |
### Webhooks
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------------------- | ------- |
| **Configure Webhook** | `configure_webhook` | Get the Svix portal URL where webhook delivery endpoints are managed. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | --------------------------------------------------------------------- | ------- |
| **On Job Completed** | `on_job_completed` | Fire the workflow when an async job completes (Svix-signed delivery). | Yes |
# Resend
Source: https://docs.noclick.com/integrations/resend
Connect Resend to your workflows: 5 operations across 2 categories.
The Resend node adds Resend operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Resend also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Resend.
You can wire the Resend node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Resend under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://resend.com/api-keys).
## Operations
### Email
| Operation | ID | Description | Trigger |
| -------------------- | -------------- | ------------------------------------------------ | ------- |
| **Cancel Email** | `cancel_email` | Cancel a scheduled email before it is sent. | |
| **Get Email** | `get_email` | Retrieve the status and details of a sent email. | |
| **Reschedule Email** | `update_email` | Reschedule a previously scheduled email. | |
| **Send Email** | `send_email` | Send a transactional email through Resend. | |
### Other
| Operation | ID | Description | Trigger |
| -------------------------- | ----------------- | ---------------------------------------------------------------------------- | ------- |
| **Receive Webhook Events** | `receive_webhook` | Receive webhook events from Resend (delivered, bounced, opened, complained). | Yes |
# RSS
Source: https://docs.noclick.com/integrations/rss
Connect RSS to your workflows: 47 operations across 12 categories.
The RSS node adds RSS operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the RSS node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect RSS under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Direct
Enter the values manually when creating the credential.
### Miniflux
Enter the values manually when creating the credential.
### Feedly
Enter the values manually when creating the credential.
### FreshRSS
Enter the values manually when creating the credential.
### App
Enter the values manually when creating the credential.
## Operations
### Feedly article
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ----------------------------- |
| **Add Tags to Feedly Article** | `add_tags_to_feedly_article` | Add tags to an article. |
| **Get Feedly Article** | `get_feedly_article` | Get a specific article by ID. |
| **Search Feedly Articles** | `search_feedly_articles` | Search articles in Feedly. |
### Feedly feed and subscription
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | ---------------------------------- |
| **Get Feedly Stream Articles** | `get_feedly_stream_articles` | Get articles from a Feedly stream. |
| **Get Feedly Subscriptions** | `get_feedly_subscriptions` | Get all feed subscriptions. |
| **Mark Feedly Articles Read** | `mark_feedly_articles_read` | Mark articles as read. |
| **Search Feedly Feeds** | `search_feedly_feeds` | Search for feeds by query. |
| **Subscribe to Feedly Feed** | `subscribe_to_feedly_feed` | Subscribe to a feed. |
| **Unsubscribe from Feedly Feed** | `unsubscribe_from_feedly_feed` | Unsubscribe from a feed. |
### Feedly user
| Operation | ID | Description |
| --------------------------- | ------------------------- | ----------------------------- |
| **Get Feedly User Profile** | `get_feedly_user_profile` | Get user profile information. |
| **Get Feedly User Tags** | `get_feedly_user_tags` | Get all user tags. |
### FreshRSS article
| Operation | ID | Description |
| -------------------------------- | ------------------------------ | --------------------------- |
| **Get Freshrss Stream Articles** | `get_freshrss_stream_articles` | Get articles from a stream. |
| **Get Freshrss Unread Counts** | `get_freshrss_unread_counts` | Get unread article counts. |
| **Mark Freshrss Articles Read** | `mark_freshrss_articles_read` | Mark articles as read. |
### FreshRSS subscription
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | --------------------------- |
| **Get Freshrss Subscriptions** | `get_freshrss_subscriptions` | Get all feed subscriptions. |
| **Subscribe to Freshrss Feed** | `subscribe_to_freshrss_feed` | Subscribe to a feed. |
| **Unsubscribe from Freshrss Feed** | `unsubscribe_from_freshrss_feed` | Unsubscribe from a feed. |
### FreshRSS tag
| Operation | ID | Description |
| --------------------- | ------------------- | -------------------- |
| **Get Freshrss Tags** | `get_freshrss_tags` | Get all tags/labels. |
### Generic feed
| Operation | ID | Description |
| ----------------------- | --------------------- | ------------------------------------- |
| **Parse Rss Atom Feed** | `parse_rss_atom_feed` | Parse an RSS or Atom feed from a URL. |
### Miniflux account
| Operation | ID | Description |
| ------------------------------------------- | ----------------------------------------- | -------------------------------------------- |
| **Create Miniflux Api Key** | `create_miniflux_api_key` | Create a new API key. |
| **Export Miniflux Subscriptions As Opml** | `export_miniflux_subscriptions_as_opml` | Export all subscriptions as OPML. |
| **Get Miniflux Current User** | `get_miniflux_current_user` | Get current user information. |
| **Import Miniflux Subscriptions from Opml** | `import_miniflux_subscriptions_from_opml` | Import subscriptions from OPML file content. |
| **Refresh All Miniflux Feeds** | `refresh_all_miniflux_feeds` | Refresh all feeds to fetch new entries. |
### Miniflux category
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ---------------------- |
| **Create Miniflux Category** | `create_miniflux_category` | Create a new category. |
| **Delete Miniflux Category** | `delete_miniflux_category` | Delete a category. |
| **Get Miniflux Categories** | `get_miniflux_categories` | Get all categories. |
| **Update Miniflux Category** | `update_miniflux_category` | Update a category. |
### Miniflux entry
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | ------------------------------------------- |
| **Get Miniflux Entries** | `get_miniflux_entries` | Get entries with filtering options. |
| **Get Miniflux Entry** | `get_miniflux_entry` | Get a specific entry by ID. |
| **Mark All Miniflux Entries Read** | `mark_all_miniflux_entries_read` | Mark all entries as read. |
| **Mark Miniflux Entries Read** | `mark_miniflux_entries_read` | Mark specific entries as read. |
| **Toggle Miniflux Entry Bookmark** | `toggle_miniflux_entry_bookmark` | Toggle bookmark/starred status of an entry. |
### Miniflux feed
| Operation | ID | Description |
| ------------------------------------- | ----------------------------------- | --------------------------------------------- |
| **Create Miniflux Feed Subscription** | `create_miniflux_feed_subscription` | Create a new feed subscription in Miniflux. |
| **Delete Miniflux Feed Subscription** | `delete_miniflux_feed_subscription` | Delete a feed subscription. |
| **Discover Rss Feeds from Website** | `discover_rss_feeds_from_website` | Discover RSS feeds from a website URL. |
| **Get Miniflux Feed** | `get_miniflux_feed` | Get a specific feed by ID. |
| **Get Miniflux Feed Entries** | `get_miniflux_feed_entries` | Get entries from a specific feed. |
| **Get Miniflux Feeds** | `get_miniflux_feeds` | Get all feeds from Miniflux. |
| **Refresh Miniflux Feed** | `refresh_miniflux_feed` | Refresh a specific feed to fetch new entries. |
| **Update Miniflux Feed Settings** | `update_miniflux_feed_settings` | Update feed settings. |
### RSSApp feed
| Operation | ID | Description |
| ------------------------- | ----------------------- | --------------------------------- |
| **Create Rssapp Feed** | `create_rssapp_feed` | Create a new RSS feed from a URL. |
| **Delete Rssapp Feed** | `delete_rssapp_feed` | Delete a feed. |
| **Get Rssapp Feed** | `get_rssapp_feed` | Get a specific feed by ID. |
| **Get Rssapp Feed Items** | `get_rssapp_feed_items` | Get items from a feed. |
| **List Rssapp Feeds** | `list_rssapp_feeds` | List all feeds. |
| **Update Rssapp Feed** | `update_rssapp_feed` | Update a feed. |
# Salesforce
Source: https://docs.noclick.com/integrations/salesforce
Connect Salesforce to your workflows: 161 operations across 25 categories.
The Salesforce node adds Salesforce operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Salesforce also includes 17 trigger operations (marked in the tables below) that can start a workflow when something happens in Salesforce.
You can wire the Salesforce node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Salesforce under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Salesforce account when prompted; no keys to copy.
NoClick requests the following permissions:
* `api`
* `refresh_token`
* `full`
## Operations
### Approval
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | -------------------------------------------- | ------- |
| **Approve or Reject Approval Request** | `approve_or_reject_approval_request` | Approve or reject a pending approval request | |
| **Get Approval History** | `get_approval_history` | Get Approval History | |
| **Get Pending Approval Items** | `get_pending_approval_items` | Get Pending Approval Items | |
| **List Approval Processes** | `list_approval_processes` | List all approval processes in the org | |
| **Recall Approval Request** | `recall_approval_request` | Recall Approval Request | |
| **Submit Record for Approval** | `submit_record_for_approval` | Submit a record for approval | |
### Bulk job
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ---------------------------------------------------------- | ------- |
| **Abort Bulk Data Job** | `abort_bulk_data_job` | Abort a bulk job | |
| **Close Bulk Data Job** | `close_bulk_data_job` | Close a bulk job to start processing | |
| **Create Bulk Data Job** | `create_bulk_data_job` | Create a bulk ingest job for large data operations | |
| **Create Bulk Query Job** | `create_bulk_query_job` | Create Bulk Query Job | |
| **Delete Bulk Data Job** | `delete_bulk_data_job` | Delete Bulk Data Job | |
| **Get Bulk Job Failed Results** | `get_bulk_job_failed_results` | Get Bulk Job Failed Results | |
| **Get Bulk Job Results** | `get_bulk_job_results` | Get results (successful or failed records) from a bulk job | |
| **Get Bulk Job Status** | `get_bulk_job_status` | Get the status of a bulk job | |
| **Get Bulk Job Unprocessed Results** | `get_bulk_job_unprocessed_results` | Get Bulk Job Unprocessed Results | |
| **Get Bulk Query Job Results** | `get_bulk_query_job_results` | Get Bulk Query Job Results | |
| **List Bulk Data Jobs** | `list_bulk_data_jobs` | List bulk jobs | |
| **Upload Csv to Bulk Job** | `upload_csv_to_bulk_job` | Upload CSV data to a bulk job | |
### Chatter
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------ | ------- |
| **Create Chatter Comment** | `create_chatter_comment` | Create Chatter Comment | |
| **Delete Chatter Comment** | `delete_chatter_comment` | Delete Chatter Comment | |
| **Delete Chatter Feed Item** | `delete_chatter_feed_item` | Delete Chatter Feed Item | |
| **Get Chatter Comments** | `get_chatter_comments` | Get Chatter Comments | |
| **Get Chatter Direct Messages** | `get_chatter_direct_messages` | Get Chatter Direct Messages | |
| **Get Chatter Feed Item** | `get_chatter_feed_item` | Get Chatter Feed Item | |
| **Get Chatter Feed Items** | `get_chatter_feed_items` | Get Chatter feed items | |
| **Get Chatter Group Members** | `get_chatter_group_members` | Get Chatter Group Members | |
| **Get Chatter News Feed** | `get_chatter_news_feed` | Get Chatter News Feed | |
| **Get Chatter User Profile** | `get_chatter_user_profile` | Get Chatter User Profile | |
| **Get Record Chatter Feed** | `get_record_chatter_feed` | Get Record Chatter Feed | |
| **Like Chatter Feed Item** | `like_chatter_feed_item` | Like Chatter Feed Item | |
| **List Chatter Groups** | `list_chatter_groups` | List Chatter Groups | |
| **Post Message to Chatter Feed** | `post_message_to_chatter_feed` | Post a message to Chatter feed | |
| **Post to Chatter Group** | `post_to_chatter_group` | Post to Chatter Group | |
| **Search Chatter** | `search_chatter` | Search Chatter | |
| **Send Chatter Direct Message** | `send_chatter_direct_message` | Send Chatter Direct Message | |
### Composite request
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | --------------------------------------------------- | ------- |
| **Bulk Retrieve Records** | `bulk_retrieve_records` | Bulk Retrieve Records | |
| **Composite Update Multiple** | `composite_update_multiple` | Composite Update Multiple | |
| **Execute Composite Api Request** | `execute_composite_api_request` | Execute multiple REST API requests in a single call | |
| **Execute Composite Batch** | `execute_composite_batch` | Execute Composite Batch | |
### CRM actions
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ----------------------------- | ------- |
| **Add Campaign Member** | `add_campaign_member` | Add Campaign Member | |
| **Add Case Comment** | `add_case_comment` | Add Case Comment | |
| **Add Contact to Opportunity** | `add_contact_to_opportunity` | Add Contact to Opportunity | |
| **Add Opportunity Line Item** | `add_opportunity_line_item` | Add Opportunity Line Item | |
| **Assign Permission Set to User** | `assign_permission_set_to_user` | Assign Permission Set to User | |
| **Convert Lead** | `convert_lead` | Convert Lead | |
| **Create Campaign** | `create_campaign` | Create Campaign | |
| **Create Event** | `create_event` | Create Event | |
| **Create Note** | `create_note` | Create Note | |
| **Create Task** | `create_task` | Create Task | |
| **Merge Records** | `merge_records` | Merge Records | |
| **Reset User Password** | `reset_user_password` | Reset User Password | |
| **Update Campaign Member Status** | `update_campaign_member_status` | Update Campaign Member Status | |
| **Update Event** | `update_event` | Update Event | |
| **Update Task** | `update_task` | Update Task | |
### Dashboard
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------- | ------- |
| **Get Dashboard Component Data** | `get_dashboard_component_data` | Get Dashboard Component Data | |
| **Get Dashboard Data** | `get_dashboard_data` | Get dashboard data and metadata | |
| **List Available Dashboards** | `list_available_dashboards` | List available dashboards | |
| **Refresh Dashboard Data** | `refresh_dashboard_data` | Refresh a dashboard to get latest data | |
### Developer tools
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ---------------------- | ------- |
| **Create Trace Flag** | `create_trace_flag` | Create Trace Flag | |
| **Execute Anonymous Apex** | `execute_anonymous_apex` | Execute Anonymous Apex | |
| **Get Apex Code Coverage** | `get_apex_code_coverage` | Get Apex Code Coverage | |
| **Get Apex Test Results** | `get_apex_test_results` | Get Apex Test Results | |
| **Get Debug Log Body** | `get_debug_log_body` | Get Debug Log Body | |
| **Query Debug Logs** | `query_debug_logs` | Query Debug Logs | |
| **Run Apex Tests** | `run_apex_tests` | Run Apex Tests | |
| **Tooling SOQL Query** | `tooling_soql_query` | Tooling SOQL Query | |
### Email
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------------------- | ------- |
| **List Email Templates** | `list_email_templates` | List Email Templates | |
| **Send Email via Template** | `send_email_via_template` | Send Email via Template | |
| **Send Mass Email** | `send_mass_email` | Send Mass Email | |
| **Send Single Email** | `send_single_email` | Send Single Email | |
### External object
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ----------------------------- | ------- |
| **Create External Object Record** | `create_external_object_record` | Create External Object Record | |
| **List External Data Sources** | `list_external_data_sources` | List External Data Sources | |
| **Query External Object** | `query_external_object` | Query External Object | |
### File
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------------------------------------------------- | ------- |
| **Create Record Attachment** | `create_record_attachment` | Create an attachment on a record | |
| **Get Blob Field Content** | `get_blob_field_content` | Get blob (binary) data for a record field like Attachment body or Document body | |
| **Upload File As Content Version** | `upload_file_as_content_version` | Upload a file as ContentVersion (Files) | |
### Files
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ---------------------------- | ------- |
| **Create Content Document Link** | `create_content_document_link` | Create Content Document Link | |
| **Delete Content Document** | `delete_content_document` | Delete Content Document | |
| **Download Content Version** | `download_content_version` | Download Content Version | |
| **Get Content Document** | `get_content_document` | Get Content Document | |
| **List Content Versions** | `list_content_versions` | List Content Versions | |
| **List Files Linked to Record** | `list_files_linked_to_record` | List Files Linked to Record | |
### Flow
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | -------------------------- | ------- |
| **Execute Flow** | `execute_flow` | Execute Flow | |
| **Invoke Email Alert Action** | `invoke_email_alert_action` | Invoke Email Alert Action | |
| **Invoke Field Update Action** | `invoke_field_update_action` | Invoke Field Update Action | |
| **List Flows** | `list_flows` | List Flows | |
### Invocable action
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------ | ------- |
| **Execute Invocable Action** | `execute_invocable_action` | Execute an invocable action | |
| **Get Invocable Action Details** | `get_invocable_action_details` | Get details of a specific invocable action | |
| **List Invocable Actions** | `list_invocable_actions` | List available standard invocable actions | |
### Knowledge
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------- | ------- |
| **Attach Article to Case** | `attach_article_to_case` | Attach Article to Case | |
| **Create Knowledge Article** | `create_knowledge_article` | Create Knowledge Article | |
| **List Knowledge Articles** | `list_knowledge_articles` | List Knowledge Articles | |
| **Publish Knowledge Article** | `publish_knowledge_article` | Publish Knowledge Article | |
### Layout
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | --------------------------------- | ------- |
| **Get Sobject Compact Layouts** | `get_sobject_compact_layouts` | Get compact layouts for an object | |
| **Get Sobject Page Layouts** | `get_sobject_page_layouts` | Get page layouts for an object | |
### List view
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ----------------------------------- | ------- |
| **Execute List View Query** | `execute_list_view_query` | Execute a list view and get results | |
| **Get List View Details** | `get_list_view_details` | Get details of a specific list view | |
| **Get List View Results with Columns** | `get_list_view_results_with_columns` | Get List View Results with Columns | |
| **List Object List Views** | `list_object_list_views` | Get list views for an object | |
### Org
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ---------------------------------------------------- | ------- |
| **Get Available Api Versions** | `get_available_api_versions` | Get available Salesforce API versions | |
| **Get Current User Info** | `get_current_user_info` | Get information about the current authenticated user | |
| **Get Org Api Limits** | `get_org_api_limits` | Get org API usage limits | |
| **Get Org Global Metadata** | `get_org_global_metadata` | Get global metadata about the org | |
| **Get Org Info** | `get_org_info` | Get Org Info | |
| **Get Org Storage Usage** | `get_org_storage_usage` | Get Org Storage Usage | |
| **Get Recently Viewed Records** | `get_recently_viewed_records` | Get recently viewed records | |
| **Get Record Count** | `get_record_count` | Get Record Count | |
### Platform event
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ---------------------------- | ------- |
| **List Platform Event Channels** | `list_platform_event_channels` | List Platform Event Channels | |
| **Publish Platform Event** | `publish_platform_event` | Publish Platform Event | |
### Query
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | ----------------------------------------------------------- | ------- |
| **Execute Soql Query** | `execute_soql_query` | Execute a SOQL query to retrieve records | |
| **Execute Soql Query Including Deleted** | `execute_soql_query_including_deleted` | Execute a SOQL query including deleted and archived records | |
| **Explain Query Plan** | `explain_query_plan` | Explain Query Plan | |
| **Get Query Result Next Batch** | `get_query_result_next_batch` | Get the next batch of query results using a query locator | |
### Quick action
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------------- | ------- |
| **Execute Quick Action** | `execute_quick_action` | Execute a quick action | |
| **List Global Quick Actions** | `list_global_quick_actions` | List available global quick actions | |
| **List Object Quick Actions** | `list_object_quick_actions` | List quick actions for a specific object | |
### Record
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------------------------------------------------------------- | ------- |
| **Create Multiple Records** | `create_multiple_records` | Create multiple records in a single request (up to 200) | |
| **Create Nested Record Tree** | `create_nested_record_tree` | Create a tree of nested, parent-child records in a single request | |
| **Create Single Record** | `create_single_record` | Create a new record | |
| **Delete Multiple Records** | `delete_multiple_records` | Delete multiple records in a single request (up to 200) | |
| **Delete Single Record** | `delete_single_record` | Delete a record | |
| **Execute Sosl Search** | `execute_sosl_search` | Execute a SOSL search across multiple objects | |
| **Get Deleted Records in Range** | `get_deleted_records_in_range` | Get records deleted within a time range | |
| **Get Search Suggestions** | `get_search_suggestions` | Get Search Suggestions | |
| **Get Single Record** | `get_single_record` | Get a single record by ID | |
| **Get Sobject Metadata** | `get_sobject_metadata` | Get detailed metadata for a specific sObject including all fields | |
| **Get Updated Records in Range** | `get_updated_records_in_range` | Get records updated within a time range | |
| **List Available Sobjects** | `list_available_sobjects` | List all available sObjects in the org | |
| **Parameterized Search** | `parameterized_search` | Parameterized Search | |
| **Update Multiple Records** | `update_multiple_records` | Update multiple records in a single request (up to 200) | |
| **Update Single Record** | `update_single_record` | Update an existing record | |
| **Upsert Record by External Id** | `upsert_record_by_external_id` | Create or update a record using an external ID field | |
### Report
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | -------------------------------- | ------- |
| **Execute Report and Get Results** | `execute_report_and_get_results` | Execute a report and get results | |
| **Get Async Report Result** | `get_async_report_result` | Get Async Report Result | |
| **Get Report Metadata** | `get_report_metadata` | Get metadata for a report | |
| **List Available Reports** | `list_available_reports` | List available reports | |
| **List Report Folders** | `list_report_folders` | List Report Folders | |
| **Run Report Async** | `run_report_async` | Run Report Async | |
### Tab
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------- | ------- |
| **Get User Available Tabs** | `get_user_available_tabs` | Get available tabs for the user | |
### User admin
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------- | ------- |
| **Get User** | `get_user` | Get User | |
| **List Profiles** | `list_profiles` | List Profiles | |
| **List Roles** | `list_roles` | List Roles | |
| **List Users** | `list_users` | List Users | |
| **Update User** | `update_user` | Update User | |
### Other
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ----------------------------- | ------- |
| **On Approval Decision** | `on_approval_decision` | On Approval Decision | Yes |
| **On Chatter Mention** | `on_chatter_mention` | On Chatter Mention | Yes |
| **On New Account** | `on_new_account` | On New Account | Yes |
| **On New Approval Request** | `on_new_approval_request` | On New Approval Request | Yes |
| **On New Case** | `on_new_case` | On New Case | Yes |
| **On New Chatter Post on Record** | `on_new_chatter_post_on_record` | On New Chatter Post on Record | Yes |
| **On New Contact** | `on_new_contact` | On New Contact | Yes |
| **On New File Upload** | `on_new_file_upload` | On New File Upload | Yes |
| **On New Lead** | `on_new_lead` | On New Lead | Yes |
| **On New Opportunity** | `on_new_opportunity` | On New Opportunity | Yes |
| **On New Task** | `on_new_task` | On New Task | Yes |
| **On New User** | `on_new_user` | On New User | Yes |
| **On Opportunity Stage Change** | `on_opportunity_stage_change` | On Opportunity Stage Change | Yes |
| **On Report Threshold Crossed** | `on_report_threshold_crossed` | On Report Threshold Crossed | Yes |
| **On Updated Case** | `on_updated_case` | On Updated Case | Yes |
| **On Updated Lead** | `on_updated_lead` | On Updated Lead | Yes |
| **On Updated Opportunity** | `on_updated_opportunity` | On Updated Opportunity | Yes |
# Semrush
Source: https://docs.noclick.com/integrations/semrush
Connect Semrush to your workflows: 101 operations across 13 categories.
The Semrush node adds Semrush operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Semrush node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Semrush under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://www.semrush.com/kb/92-api-key).
## Operations
### Audience
| Operation | ID | Description |
| ----------------------------- | --------------------------- | ------------------------------------------------ |
| **Get Audience Demographics** | `get_audience_demographics` | Get audience demographics and interests (API v3) |
### Backlink
| Operation | ID | Description |
| ------------------------------------- | ----------------------------------- | ------------------------------------------------ |
| **Compare Backlink Profiles Batch** | `compare_backlink_profiles_batch` | Batch compare backlink profiles (API v3) |
| **Compare Backlinks Between Domains** | `compare_backlinks_between_domains` | Compare backlinks between domains (API v3) |
| **Get Authority Score Distribution** | `get_authority_score_distribution` | Get authority score distribution (API v3) |
| **Get Backlink Anchor Distribution** | `get_backlink_anchor_distribution` | Get anchor text distribution (API v3) |
| **Get Backlink Competitors** | `get_backlink_competitors` | Get backlink competitors (API v3) |
| **Get Backlinks by Country** | `get_backlinks_by_country` | Get backlinks by country (API v3) |
| **Get Backlinks by Tld** | `get_backlinks_by_tld` | Get backlinks by TLD distribution (API v3) |
| **Get Backlinks Historical Data** | `get_backlinks_historical_data` | Get backlinks historical data (API v3) |
| **Get Backlinks List** | `get_backlinks_list` | Get backlinks list for a domain (API v3) |
| **Get Backlinks Overview** | `get_backlinks_overview` | Get backlinks overview for a domain (API v3) |
| **Get Pages with Backlinks** | `get_pages_with_backlinks` | Get indexed pages with backlinks (API v3) |
| **Get Referring Domain Categories** | `get_referring_domain_categories` | Get referring domain categories profile (API v3) |
| **Get Referring Domains** | `get_referring_domains` | Get referring domains (API v3) |
| **Get Referring Ip Addresses** | `get_referring_ip_addresses` | Get referring IPs (API v3) |
| **Get Target Domain Categories** | `get_target_domain_categories` | Get target domain categories (API v3) |
### Conversion
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | -------------------------------------- |
| **Get Purchase Conversion Rates** | `get_purchase_conversion_rates` | Get purchase conversion rates (API v3) |
### Domain
| Operation | ID | Description |
| ------------------------------------------ | ---------------------------------------- | -------------------------------------------------------- |
| **Compare Domains Batch** | `compare_domains_batch` | Compare multiple domains (API v3) |
| **Get Domain Organic Competitors** | `get_domain_organic_competitors` | Get organic search competitors for a domain (API v3) |
| **Get Domain Organic Keywords** | `get_domain_organic_keywords` | Get organic keywords for a domain (API v3) |
| **Get Domain Overview All Databases** | `get_domain_overview_all_databases` | Get domain overview across all databases (API v3) |
| **Get Domain Overview Single Database** | `get_domain_overview_single_database` | Get domain overview for one database (API v3) |
| **Get Domain Paid Competitors** | `get_domain_paid_competitors` | Get paid search competitors for a domain (API v3) |
| **Get Domain Paid Keywords** | `get_domain_paid_keywords` | Get paid search keywords for a domain (API v3) |
| **Get Domain Paid Keywords Historical** | `get_domain_paid_keywords_historical` | Get historical paid keywords for a domain (API v3) |
| **Get Domain Product Listing Competitors** | `get_domain_product_listing_competitors` | Get product listing ad competitors for a domain (API v3) |
| **Get Domain Product Listing Keywords** | `get_domain_product_listing_keywords` | Get product listing ad keywords for a domain (API v3) |
| **Get Domain Rank History** | `get_domain_rank_history` | Get domain rank history (API v3) |
| **Get Domain Subdomains Organic Ranking** | `get_domain_subdomains_organic_ranking` | Get subdomains ranking in organic search (API v3) |
| **Get Domain Top Organic Pages** | `get_domain_top_organic_pages` | Get top organic pages for a domain (API v3) |
| **Get Domain Unique Ad Copies** | `get_domain_unique_ad_copies` | Get unique ad copies for a domain (API v3) |
| **Get Domain Unique Product Listing Ads** | `get_domain_unique_product_listing_ads` | Get unique product listing ads for a domain (API v3) |
### Industry
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ----------------------------------------- |
| **Get Domains by Industry Category** | `get_domains_by_industry_category` | Get domains by industry category (API v3) |
### Keyword
| Operation | ID | Description |
| ---------------------------------------- | -------------------------------------- | -------------------------------------------------- |
| **Get Batch Keyword Overview** | `get_batch_keyword_overview` | Get batch keyword overview (API v3) |
| **Get Broad Match Keywords** | `get_broad_match_keywords` | Get broad match keywords (API v3) |
| **Get Keyword Ads Historical Data** | `get_keyword_ads_historical_data` | Get keyword ads history (API v3) |
| **Get Keyword Difficulty** | `get_keyword_difficulty` | Get keyword difficulty (API v3) |
| **Get Keyword Organic Search Results** | `get_keyword_organic_search_results` | Get organic search results for a keyword (API v3) |
| **Get Keyword Overview All Databases** | `get_keyword_overview_all_databases` | Get keyword overview across all databases (API v3) |
| **Get Keyword Overview Single Database** | `get_keyword_overview_single_database` | Get keyword overview for one database (API v3) |
| **Get Keyword Paid Search Results** | `get_keyword_paid_search_results` | Get paid search results for a keyword (API v3) |
| **Get Question Keywords** | `get_question_keywords` | Get question keywords (API v3) |
| **Get Related Keywords** | `get_related_keywords` | Get related keywords (API v3) |
### Position tracking
| Operation | ID | Description |
| --------------------------------------------- | ------------------------------------------- | ------------------------------------------------- |
| **Add Competitors to Tracking Campaign** | `add_competitors_to_tracking_campaign` | Add competitors to campaign (API v3) |
| **Add Keywords to Tracking Campaign** | `add_keywords_to_tracking_campaign` | Add keywords to campaign (API v3) |
| **Add Tags to Tracked Keywords** | `add_tags_to_tracked_keywords` | Add tags to keywords (API v3) |
| **Create Position Tracking Campaign** | `create_position_tracking_campaign` | Create position tracking campaign (API v3) |
| **Disable Campaign Email Notifications** | `disable_campaign_email_notifications` | Disable email notifications for campaign (API v3) |
| **Enable Campaign Email Notifications** | `enable_campaign_email_notifications` | Enable email notifications for campaign (API v3) |
| **Get Organic Keyword Positions** | `get_organic_keyword_positions` | Get organic keyword positions (API v3) |
| **Get Organic Tracking Overview** | `get_organic_tracking_overview` | Get organic overview report (API v3) |
| **Get Paid Search Keyword Positions** | `get_paid_search_keyword_positions` | Get paid search keyword positions (API v3) |
| **Get Paid Search Tracking Overview** | `get_paid_search_tracking_overview` | Get paid search overview report (API v3) |
| **Get Tracking Campaign Harvest Dates** | `get_tracking_campaign_harvest_dates` | Get campaign harvest dates (API v3) |
| **List Position Tracking Campaigns** | `list_position_tracking_campaigns` | List all position tracking campaigns (API v3) |
| **Remove Competitors from Tracking Campaign** | `remove_competitors_from_tracking_campaign` | Remove competitors from campaign (API v3) |
| **Remove Keywords from Tracking Campaign** | `remove_keywords_from_tracking_campaign` | Remove keywords from campaign (API v3) |
| **Remove Tags from Tracked Keywords** | `remove_tags_from_tracked_keywords` | Remove tags from keywords (API v3) |
| **Search Tracking Locations** | `search_tracking_locations` | Search for tracking locations (API v3) |
### Rank report
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | -------------------------------------- |
| **Get Semrush Rank Report** | `get_semrush_rank_report` | Get Semrush Rank report (API v3) |
| **Get Winners and Losers Report** | `get_winners_and_losers_report` | Get winners and losers report (API v3) |
### Site audit
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | --------------------------------------------------------- |
| **Enable Site Audit for Project** | `enable_site_audit_for_project` | Enable Site Audit for a project (API v3) |
| **Get Audit Snapshot Details** | `get_audit_snapshot_details` | Get detailed snapshot overview (API v3) |
| **Get Audited Page Details** | `get_audited_page_details` | Get page details and issues (API v3) |
| **Get Issue Type Explanation** | `get_issue_type_explanation` | Get explanation of an issue type (API v3) |
| **Get Pages Affected by Issue** | `get_pages_affected_by_issue` | Get pages affected by a specific issue (API v3) |
| **Get Site Audit Campaign Info** | `get_site_audit_campaign_info` | Get campaign info (latest audit results summary) (API v3) |
| **Get Site Audit History** | `get_site_audit_history` | Get audit history across snapshots (API v3) |
| **Launch Site Audit** | `launch_site_audit` | Launch a new site audit (API v3) |
| **List Audit Snapshots** | `list_audit_snapshots` | Get list of audit snapshots (API v3) |
| **Search Audit Page by Url** | `search_audit_page_by_url` | Search for a page by URL (API v3) |
| **Update Site Audit Campaign** | `update_site_audit_campaign` | Edit Site Audit campaign settings (API v3) |
### Subdomain
| Operation | ID | Description |
| ------------------------------------------ | ---------------------------------------- | ---------------------------------------------------- |
| **Get Subdomain Organic Keywords** | `get_subdomain_organic_keywords` | Get subdomain organic keywords (API v3) |
| **Get Subdomain Overview All Databases** | `get_subdomain_overview_all_databases` | Get subdomain overview across all databases (API v3) |
| **Get Subdomain Overview Single Database** | `get_subdomain_overview_single_database` | Get subdomain overview for one database (API v3) |
| **Get Subdomain Paid Keywords** | `get_subdomain_paid_keywords` | Get subdomain paid keywords (API v3) |
| **Get Subdomain Rank History** | `get_subdomain_rank_history` | Get subdomain rank history (API v3) |
| **Get Subdomain Top Organic Pages** | `get_subdomain_top_organic_pages` | Get subdomain organic pages (API v3) |
| **Get Subdomain Traffic** | `get_subdomain_traffic` | Get traffic to subdomains (API v3) |
| **Get Subdomain Unique Ad Copies** | `get_subdomain_unique_ad_copies` | Get subdomain ad copies (API v3) |
### Subfolder
| Operation | ID | Description |
| ------------------------------------------ | ---------------------------------------- | ---------------------------------------------------- |
| **Get Subfolder Organic Keywords** | `get_subfolder_organic_keywords` | Get subfolder organic keywords (API v3) |
| **Get Subfolder Overview All Databases** | `get_subfolder_overview_all_databases` | Get subfolder overview across all databases (API v3) |
| **Get Subfolder Overview Single Database** | `get_subfolder_overview_single_database` | Get subfolder overview for one database (API v3) |
| **Get Subfolder Paid Keywords** | `get_subfolder_paid_keywords` | Get subfolder paid keywords (API v3) |
| **Get Subfolder Rank History** | `get_subfolder_rank_history` | Get subfolder rank history (API v3) |
| **Get Subfolder Top Organic Pages** | `get_subfolder_top_organic_pages` | Get subfolder organic pages (API v3) |
| **Get Subfolder Traffic** | `get_subfolder_traffic` | Get traffic to subfolders (API v3) |
| **Get Subfolder Unique Ad Copies** | `get_subfolder_unique_ad_copies` | Get subfolder ad copies (API v3) |
### Traffic
| Operation | ID | Description |
| --------------------------------------- | ------------------------------------- | ------------------------------------------------------- |
| **Get Daily Traffic Breakdown** | `get_daily_traffic_breakdown` | Get daily traffic breakdown (API v3) |
| **Get Geographic Traffic Distribution** | `get_geographic_traffic_distribution` | Get geographic traffic distribution (API v3) |
| **Get Top Pages by Traffic** | `get_top_pages_by_traffic` | Get top pages by traffic (API v3) |
| **Get Traffic Destinations** | `get_traffic_destinations` | Get traffic destinations (where users go next) (API v3) |
| **Get Traffic Rank for Domains** | `get_traffic_rank_for_domains` | Get traffic rank for domains (API v3) |
| **Get Traffic Sources Breakdown** | `get_traffic_sources_breakdown` | Get traffic sources breakdown (API v3) |
| **Get Traffic Summary for Domains** | `get_traffic_summary_for_domains` | Get traffic summary for domains (API v3) |
| **Get Weekly Traffic Breakdown** | `get_weekly_traffic_breakdown` | Get weekly traffic breakdown (API v3) |
### URL
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ---------------------------------------------- |
| **Get Url Organic Keywords** | `get_url_organic_keywords` | Get URL organic keywords (API v3) |
| **Get Url Overview All Databases** | `get_url_overview_all_databases` | Get URL overview across all databases (API v3) |
| **Get Url Overview Single Database** | `get_url_overview_single_database` | Get URL overview for one database (API v3) |
| **Get Url Paid Keywords** | `get_url_paid_keywords` | Get URL paid keywords (API v3) |
| **Get Url Rank History** | `get_url_rank_history` | Get URL rank history (API v3) |
# Send Email
Source: https://docs.noclick.com/integrations/send-email
Connect Send Email to your workflows: 1 operation.
The Send Email node adds a single operation to your workflows. Add it on the canvas or ask the AI builder for it by name, then fill in its fields.
You can wire the Send Email node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
The Send Email node works without credentials. Add it to a workflow and it is ready to run.
## Operations
Send Email performs a single operation, **Email Myself** (`send`). Send an email to YOUR OWN account email address. The recipient is always the account email of the user running the workflow, no other recipients can be specified.
# Sentry
Source: https://docs.noclick.com/integrations/sentry
Connect Sentry to your workflows: 64 operations across 14 categories.
The Sentry node adds Sentry operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Sentry also includes 2 trigger operations (marked in the tables below) that can start a workflow when something happens in Sentry.
You can wire the Sentry node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Sentry under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Auth token
Enter the values manually when creating the credential.
[Get your credentials here](https://sentry.io/settings/auth-tokens/).
### OAuth
Sign in with your Sentry account when prompted; no keys to copy.
[Get your credentials here](https://docs.sentry.io/api/auth/).
NoClick requests the following permissions:
* `org:read`
* `org:write`
* `project:read`
* `project:write`
* `project:admin`
* `project:releases`
* `team:read`
* `team:write`
* `team:admin`
* `member:read`
* `member:write`
* `event:read`
* `event:write`
* `event:admin`
## Operations
### Advanced
| Operation | ID | Description | Trigger |
| ------------------ | ------------- | ----------- | ------- |
| **Custom Request** | `raw_request` | | |
### Alerts
| Operation | ID | Description | Trigger |
| ---------------------------- | --------------------- | ----------- | ------- |
| **Create Issue Alert Rule** | `create_issue_alert` | | |
| **Create Metric Alert Rule** | `create_metric_alert` | | |
| **Delete Issue Alert Rule** | `delete_issue_alert` | | |
| **Delete Metric Alert Rule** | `delete_metric_alert` | | |
| **Get Issue Alert Rule** | `get_issue_alert` | | |
| **Get Metric Alert Rule** | `get_metric_alert` | | |
| **List Issue Alert Rules** | `list_issue_alerts` | | |
| **List Metric Alert Rules** | `list_metric_alerts` | | |
| **Update Issue Alert Rule** | `update_issue_alert` | | |
| **Update Metric Alert Rule** | `update_metric_alert` | | |
### Crons
| Operation | ID | Description | Trigger |
| -------------------------- | ---------------- | ----------- | ------- |
| **Create Monitor** | `create_monitor` | | |
| **Delete Monitor** | `delete_monitor` | | |
| **Get Monitor** | `get_monitor` | | |
| **List Monitor Check-ins** | `list_checkins` | | |
| **List Monitors** | `list_monitors` | | |
| **Update Monitor** | `update_monitor` | | |
### Dashboards
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Create Dashboard** | `create_dashboard` | | |
| **Delete Dashboard** | `delete_dashboard` | | |
| **Get Dashboard** | `get_dashboard` | | |
| **List Dashboards** | `list_dashboards` | | |
### Discover
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------- | ----------- | ------- |
| **Events Time Series (Stats)** | `events_stats` | | |
| **Query Events (Discover)** | `query_discover` | | |
| **Release Health (Sessions)** | `list_sessions` | | |
### Events
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Get Event** | `get_event` | | |
| **List Project Events** | `list_project_events` | | |
### Issues
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Delete Issue** | `delete_issue` | | |
| **Get Issue** | `get_issue` | | |
| **Get Latest Event** | `get_latest_event` | | |
| **List Issue Events** | `list_issue_events` | | |
| **List Issues** | `list_issues` | | |
| **Update Issue** | `update_issue` | | |
### Members
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------- | ------- |
| **Get Member** | `get_member` | | |
| **Invite Member** | `invite_member` | | |
| **List Members** | `list_members` | | |
| **Remove Member** | `remove_member` | | |
| **Update Member** | `update_member` | | |
### Organizations
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------- | ------- |
| **Get Organization** | `get_organization` | | |
| **List Organizations** | `list_organizations` | | |
### Projects
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------- | ----------- | ------- |
| **Create Project** | `create_project` | | |
| **Delete Project** | `delete_project` | | |
| **Get Project** | `get_project` | | |
| **List Client Keys (DSNs)** | `list_project_keys` | | |
| **List Projects** | `list_projects` | | |
| **Update Project** | `update_project` | | |
### Releases
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Create Deploy** | `create_deploy` | | |
| **Create Release** | `create_release` | | |
| **Delete Release** | `delete_release` | | |
| **Get Release** | `get_release` | | |
| **List Deploys** | `list_deploys` | | |
| **List Releases** | `list_releases` | | |
| **Update Release** | `update_release` | | |
### Service hooks
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Delete Service Hook** | `delete_service_hook` | | |
| **Get Service Hook** | `get_service_hook` | | |
| **List Service Hooks** | `list_service_hooks` | | |
### Teams
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ----------- | ------- |
| **Add Project to Team** | `add_project_to_team` | | |
| **Create Team** | `create_team` | | |
| **Delete Team** | `delete_team` | | |
| **Get Team** | `get_team` | | |
| **List Team Projects** | `list_team_projects` | | |
| **List Teams** | `list_teams` | | |
| **Remove Project from Team** | `remove_project_from_team` | | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------ | ---------- | --------------------------------------------------------------------------- | ------- |
| **On Alert** | `on_alert` | Fires when a project alert rule triggers (service-hook event.alert). | Yes |
| **On Error Event** | `on_error` | Fires on every new error event in the project (service-hook event.created). | Yes |
# Shopify
Source: https://docs.noclick.com/integrations/shopify
Connect Shopify to your workflows: 102 operations across 13 categories.
The Shopify node adds Shopify operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Shopify also includes 7 trigger operations (marked in the tables below) that can start a workflow when something happens in Shopify.
You can wire the Shopify node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
The **Store name** field on the OAuth connection takes your storefront's own domain, such as `your-shop.com`, or the admin address you copied from your browser, as well as the `my-store` handle itself. NoClick reads the store handle behind a domain you enter. If it cannot find one, the error names where the handle appears in your Shopify admin URL.
The **Access token** method is for custom apps created in a store admin before January 2026. Shopify no longer issues permanent Admin API tokens to new apps, so connect a new store with OAuth, optionally using [your own Shopify app](/credentials/custom-oauth).
## Which operations your connection can run
Shopify requires apps published on its App Store to use the GraphQL Admin API, so a store connected with **OAuth** through NoClick's own app runs the GraphQL operations and the 7 triggers:
* The **Blog** operations.
* The **GraphQL** operations, **Execute Custom Graphql Query** and **Execute Custom Graphql Mutation**, which reach the rest of the Admin API within the permissions you approved.
* The prebuilt GraphQL operations in the other categories, named **... with Graphql**, covering products, orders, customers, inventory, collections, fulfillment orders, and the shop itself.
* All 7 triggers.
If you select any other operation on such a connection, it stops before calling Shopify and asks you to choose a GraphQL operation or connect your own app.
The rest of the operations listed below run on a store connected with an **Access token**, or with OAuth through [your own Shopify app](/credentials/custom-oauth), where the permissions come from your app rather than from NoClick's.
## Installing from Shopify
You can also start from Shopify instead of from the node. When you install NoClick on a store from the Shopify App Store, Shopify asks you to approve the store permissions, then you sign in to your NoClick account. The store is saved as a Shopify credential named after the shop, and you pick it under **Credentials** on any Shopify node the same way you would a connection you made yourself. Installing on the same store again updates that credential instead of adding a second one.
Opening NoClick from that store's admin afterwards shows a NoClick page inside Shopify. It names the store, shows the connection as **Connected** and **Ready for workflows**, and has an **Open NoClick workspace** button for building and running the workflows themselves.
Accounts that install NoClick this way stay on the Free plan. See [Plans](/billing/plans).
An OAuth connection uses a short-lived access token that NoClick refreshes for you. If Shopify refuses a refresh, the operation fails and asks you to reconnect the store. See [Credential problems](/troubleshooting/credentials) for how to reconnect.
## Credentials
Connect Shopify under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Shopify account when prompted; no keys to copy.
NoClick requests the following permissions:
* `read_products`
* `write_products`
* `read_orders`
* `write_orders`
* `read_customers`
* `write_customers`
* `read_inventory`
* `write_inventory`
* `read_fulfillments`
* `write_fulfillments`
* `read_shipping`
* `write_shipping`
* `read_locations`
* `read_merchant_managed_fulfillment_orders`
* `write_merchant_managed_fulfillment_orders`
* `read_assigned_fulfillment_orders`
* `write_assigned_fulfillment_orders`
* `read_third_party_fulfillment_orders`
* `write_third_party_fulfillment_orders`
* `read_content`
* `write_content`
### Access token
Enter the values manually when creating the credential.
Get your credentials at `https://admin.shopify.com/store/{your-store}/settings/apps/development`.
## Operations
### Blog
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------- | ------- |
| **Create Blog Article** | `create_blog_article` | Create a blog article | |
| **Delete Blog Article** | `delete_blog_article` | Delete a blog article | |
| **Get Blog Article by Id** | `get_blog_article_by_id` | Get a single blog article | |
| **List Blog Articles** | `list_blog_articles` | List articles in a blog | |
| **List Blogs** | `list_blogs` | List the store's blogs | |
| **Update Blog Article** | `update_blog_article` | Update a blog article | |
### Collection
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------- | ------- |
| **Create Collection** | `create_collection` | Create a new collection | |
| **Delete Collection** | `delete_collection` | Delete a collection | |
| **Get Collection by Id** | `get_collection_by_id` | Get a single collection | |
| **List Collections** | `list_collections` | List collections (custom collections) | |
| **Query Collections with Graphql** | `query_collections_with_graphql` | Query collections using GraphQL | |
| **Update Collection** | `update_collection` | Update a collection | |
### Customer
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------------------------------------------------------- | ------- |
| **Count Customers** | `count_customers` | Get the count of customers | |
| **Create Customer** | `create_customer` | Create a new customer | |
| **Create Customer Address** | `create_customer_address` | Create a new address for a customer | |
| **Create Customer with Graphql** | `create_customer_with_graphql` | Create a customer using GraphQL | |
| **Delete Customer** | `delete_customer` | Delete a customer | |
| **Delete Customer Address** | `delete_customer_address` | Delete a customer address | |
| **Get Customer Address by Id** | `get_customer_address_by_id` | Get a single customer address by ID | |
| **Get Customer by Id** | `get_customer_by_id` | Get a single customer by ID | |
| **List Customer Addresses** | `list_customer_addresses` | List all addresses for a customer | |
| **List Customers** | `list_customers` | List customers from the store with pagination and filtering | |
| **Query Customers with Graphql** | `query_customers_with_graphql` | Query customers using GraphQL | |
| **Search Customers** | `search_customers` | Search for customers | |
| **Set Default Customer Address** | `set_default_customer_address` | Set a customer address as the default | |
| **Update Customer** | `update_customer` | Update an existing customer | |
| **Update Customer Address** | `update_customer_address` | Update an existing customer address | |
### Fulfillment
| Operation | ID | Description | Trigger |
| ----------------------------------------- | --------------------------------------- | -------------------------------------- | ------- |
| **Cancel Order Fulfillment** | `cancel_order_fulfillment` | Cancel a fulfillment | |
| **Complete Order Fulfillment** | `complete_order_fulfillment` | Mark a fulfillment as complete | |
| **Create Order Fulfillment** | `create_order_fulfillment` | Create a fulfillment for an order | |
| **Get Order Fulfillment** | `get_order_fulfillment` | Get a single fulfillment | |
| **List Order Fulfillments** | `list_order_fulfillments` | List fulfillments for an order | |
| **Query Fulfillment Orders with Graphql** | `query_fulfillment_orders_with_graphql` | Query fulfillment orders using GraphQL | |
| **Update Order Fulfillment** | `update_order_fulfillment` | Update a fulfillment | |
### GraphQL
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | -------------------------------------------------------------- | ------- |
| **Execute Custom Graphql Mutation** | `execute_custom_graphql_mutation` | Execute a custom GraphQL mutation (provides 100% API coverage) | |
| **Execute Custom Graphql Query** | `execute_custom_graphql_query` | Execute a custom GraphQL query (provides 100% API coverage) | |
### Inventory
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | --------------------------------------------------------- | ------- |
| **Adjust Inventory Level at Location** | `adjust_inventory_level_at_location` | Adjust the inventory level of an item at a location | |
| **Connect Inventory Item to Location** | `connect_inventory_item_to_location` | Connect an inventory item to a location | |
| **Delete Inventory Level** | `delete_inventory_level` | Delete an inventory level (disconnect item from location) | |
| **List Inventory Levels** | `list_inventory_levels` | List inventory levels for items or locations | |
| **Query Inventory with Graphql** | `query_inventory_with_graphql` | Query inventory levels using GraphQL | |
| **Set Inventory Level at Location** | `set_inventory_level_at_location` | Set the inventory level of an item at a location | |
### Location
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | --------------------- | ------- |
| **Get Location by Id** | `get_location_by_id` | Get a single location | |
| **List All Locations** | `list_all_locations` | List all locations | |
### Metafield
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------ | ------- |
| **Create Metafield** | `create_metafield` | Create a metafield | |
| **Delete Metafield** | `delete_metafield` | Delete a metafield | |
| **Get Metafield by Id** | `get_metafield_by_id` | Get a single metafield | |
| **List Metafields** | `list_metafields` | List metafields for a resource | |
| **Update Metafield** | `update_metafield` | Update a metafield | |
### Order
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | -------------------------------------------------------- | ------- |
| **Calculate Order Refund** | `calculate_order_refund` | Calculate refund transactions for an order | |
| **Cancel Order** | `cancel_order` | Cancel an order | |
| **Close Order** | `close_order` | Close an order | |
| **Count Order Transactions** | `count_order_transactions` | Get the count of transactions for an order | |
| **Count Orders** | `count_orders` | Get the count of orders | |
| **Create Order** | `create_order` | Create a new order | |
| **Create Order Refund** | `create_order_refund` | Create a refund for an order | |
| **Create Order Transaction** | `create_order_transaction` | Create a transaction for an order | |
| **Delete Order** | `delete_order` | Delete an order | |
| **Get Customer Orders** | `get_customer_orders` | Get orders for a specific customer | |
| **Get Order by Id** | `get_order_by_id` | Get a single order by ID | |
| **Get Order Refund by Id** | `get_order_refund_by_id` | Get a single refund by ID | |
| **Get Order Transaction by Id** | `get_order_transaction_by_id` | Get a single transaction by ID | |
| **List Order Refunds** | `list_order_refunds` | List all refunds for an order | |
| **List Order Transactions** | `list_order_transactions` | List all transactions for an order | |
| **List Orders** | `list_orders` | List orders from the store with pagination and filtering | |
| **Query Orders with Graphql** | `query_orders_with_graphql` | Query orders using GraphQL | |
| **Reopen Closed Order** | `reopen_closed_order` | Reopen a closed order | |
| **Update Order** | `update_order` | Update an existing order | |
### Product
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ---------------------------------------------------------- | ------- |
| **Add Product to Collection** | `add_product_to_collection` | Add a product to a collection | |
| **Count Product Variants** | `count_product_variants` | Get the count of variants for a product | |
| **Count Products** | `count_products` | Get the count of products | |
| **Create Product** | `create_product` | Create a new product | |
| **Create Product Image** | `create_product_image` | Create a new product image | |
| **Create Product Variant** | `create_product_variant` | Create a new product variant | |
| **Create Product with Graphql** | `create_product_with_graphql` | Create a product using GraphQL | |
| **Delete Product** | `delete_product` | Delete a product | |
| **Delete Product Image** | `delete_product_image` | Delete a product image | |
| **Delete Product Variant** | `delete_product_variant` | Delete a product variant | |
| **Get Product by Id** | `get_product_by_id` | Get a single product by ID | |
| **Get Product Image by Id** | `get_product_image_by_id` | Get a single product image by ID | |
| **Get Product Variant by Id** | `get_product_variant_by_id` | Get a single product variant by ID | |
| **List Product Images** | `list_product_images` | List all images for a product | |
| **List Product Variants** | `list_product_variants` | List all variants for a product | |
| **List Products** | `list_products` | List products from the store with pagination and filtering | |
| **Query Products with Graphql** | `query_products_with_graphql` | Query products using GraphQL (more powerful than REST) | |
| **Update Product** | `update_product` | Update an existing product | |
| **Update Product Variant** | `update_product_variant` | Update an existing product variant | |
| **Update Product with Graphql** | `update_product_with_graphql` | Update a product using GraphQL | |
### Shop
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------- | ------- |
| **Get Shop Information** | `get_shop_information` | Get shop information | |
| **Get Shop with Graphql** | `get_shop_with_graphql` | Get shop information using GraphQL | |
### Webhook
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | -------------------- | ------- |
| **Create Webhook** | `create_webhook` | Create a webhook | |
| **Delete Webhook** | `delete_webhook` | Delete a webhook | |
| **Get Webhook by Id** | `get_webhook_by_id` | Get a single webhook | |
| **List Webhooks** | `list_webhooks` | List webhooks | |
| **Update Webhook** | `update_webhook` | Update a webhook | |
### Other
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------------------------- | ------- |
| **On Customer Created** | `on_customer_created` | Trigger: fires when a new customer is created in the store. | Yes |
| **On Order Cancelled** | `on_order_cancelled` | Trigger: fires when an order is cancelled. | Yes |
| **On Order Created** | `on_order_created` | Trigger: fires when a new order is created in the store. | Yes |
| **On Order Fulfilled** | `on_order_fulfilled` | Trigger: fires when an order is fulfilled. | Yes |
| **On Order Paid** | `on_order_paid` | Trigger: fires when an order is paid. | Yes |
| **On Product Created** | `on_product_created` | Trigger: fires when a new product is created in the store. | Yes |
| **On Product Updated** | `on_product_updated` | Trigger: fires when a product is updated. | Yes |
# Sigma Computing
Source: https://docs.noclick.com/integrations/sigma
Connect Sigma Computing to your workflows: 40 operations across 7 categories.
The Sigma Computing node adds Sigma Computing operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Sigma Computing also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Sigma Computing.
You can wire the Sigma Computing node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Sigma Computing under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://help.sigmacomputing.com/reference/get-started-sigma-api).
## Operations
### Catalog
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------------------------------- | ------- |
| **Get Data Model Spec** | `get_data_model_spec` | Get the as-code representation of a data model. | |
| **List Account Types** | `list_account_types` | List available account types (license/permission tiers). | |
| **List API Credentials** | `list_api_credentials` | List the org's API credentials (non-sensitive metadata). | |
| **List Data Models** | `list_data_models` | List data models. | |
| **List Files** | `list_files` | List folders/documents in the file tree. | |
### Connections
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------- | ------- |
| **Create Connection** | `create_connection` | Create a connection to a cloud data warehouse. | |
| **Delete Connection** | `delete_connection` | Delete a connection. | |
| **Get Connection** | `get_connection` | Get details of a single connection. | |
| **List Connections** | `list_connections` | List data-warehouse connections. | |
| **Sync Connection** | `sync_connection` | Sync a connection (refresh its schema in Sigma). | |
| **Test Connection** | `test_connection` | Test read/write access of an existing connection. | |
### Members
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ------------------------------------------------ | ------- |
| **Create Member** | `create_member` | Invite/provision a new member. | |
| **Delete Member** | `delete_member` | Deactivate/delete a member. | |
| **Get Member** | `get_member` | Get a single member's profile. | |
| **List Members** | `list_members` | List organization members/users. | |
| **Update Member** | `update_member` | Update a member's account type, name, or status. | |
### Teams
| Operation | ID | Description | Trigger |
| --------------------------- | -------------------- | ------------------------------------ | ------- |
| **Add Members to Team** | `add_team_members` | Add one or more members to a team. | |
| **Create Team** | `create_team` | Create a team. | |
| **Delete Team** | `delete_team` | Delete a team. | |
| **Get Team** | `get_team` | Get details of a single team. | |
| **List Team Members** | `list_team_members` | List members of a team. | |
| **List Teams** | `list_teams` | List teams in the organization. | |
| **Remove Member from Team** | `remove_team_member` | Remove a member from a team. | |
| **Update Team** | `update_team` | Update a team's name or description. | |
### Triggers
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------------- | ------- |
| **On Export Completed** | `on_export_completed` | Trigger when a workbook export/materialization finishes | Yes |
### Workbooks
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------------------------------------------- | ------- |
| **Create Workbook** | `create_workbook` | Create a new workbook. | |
| **Delete Workbook** | `delete_workbook` | Delete a workbook. | |
| **Download Export** | `download_export` | Download the file produced by an export once ready. | |
| **Export Workbook** | `export_workbook` | Trigger an async export of a workbook (returns a queryId). | |
| **Get Workbook** | `get_workbook` | Get metadata for a single workbook. | |
| **Get Workbook Sources** | `get_workbook_sources` | List the data sources a workbook depends on. | |
| **List Workbooks** | `list_workbooks` | List workbooks the credential can access. | |
| **Materialize Workbook** | `materialize_workbook` | Trigger a materialization job for a workbook element. | |
| **Update Workbook** | `update_workbook` | Update a workbook's metadata. | |
### Workspaces
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------- | ------- |
| **Add Workspace Grant** | `add_workspace_grant` | Grant a user or team access to a workspace. | |
| **Create Workspace** | `create_workspace` | Create a workspace. | |
| **Delete Workspace** | `delete_workspace` | Permanently delete a workspace. | |
| **Get Workspace** | `get_workspace` | Get a single workspace. | |
| **List Workspaces** | `list_workspaces` | List workspaces. | |
| **Update Workspace** | `update_workspace` | Rename a workspace. | |
# Slack
Source: https://docs.noclick.com/integrations/slack
Connect Slack to your workflows: 213 operations across 26 categories.
The Slack node adds Slack operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Slack also includes 6 trigger operations (marked in the tables below) that can start a workflow when something happens in Slack.
You can wire the Slack node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
Slack sends channel events only to apps that are members of the channel, so **On Channel Message**, **On App Mention**, **On Reaction Added**, **On Member Joined Channel**, and **On File Shared** hear nothing from a channel NoClick was never invited to, even once the trigger is registered.
The trigger's **Status** field says when that is the case. On a public channel it offers a **Join #channel** button that puts the app in the channel and re-checks; a private channel needs a person to invite the app, so the status names the `/invite` command to run in Slack instead. Leaving **Channel** empty listens across every channel the app is in, which still needs the app to be in at least one. **On Channel Created** is workspace-wide and needs no membership.
A Slack message that starts a run is shown as a Slack message in the run results, with the channel, the author, and the text written the way Slack shows it. See [App events](/triggers/app-events) and [Running and testing](/editor/running-and-testing).
## Credentials
Connect Slack under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Slack account when prompted; no keys to copy.
NoClick requests the following permissions:
* `app_mentions:read`
* `bookmarks:read`
* `bookmarks:write`
* `canvases:write`
* `channels:history`
* `channels:join`
* `channels:manage`
* `channels:read`
* `chat:write`
* `conversations.connect:write`
* `dnd:read`
* `emoji:read`
* `files:read`
* `files:write`
* `groups:history`
* `groups:read`
* `groups:write`
* `im:history`
* `im:read`
* `im:write`
* `links:write`
* `mpim:history`
* `mpim:read`
* `mpim:write`
* `pins:read`
* `pins:write`
* `reactions:read`
* `reactions:write`
* `remote_files:read`
* `remote_files:share`
* `remote_files:write`
* `team:read`
* `usergroups:read`
* `usergroups:write`
* `users:read`
* `users:read.email`
### Bot token
Enter the values manually when creating the credential.
[Get your credentials here](https://api.slack.com/apps).
## Operations
### Analytics
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------------------- | ------- |
| **Get Analytics File for Date** | `get_analytics_file_for_date` | Get analytics data for a given date (admin.analytics.getFile) | |
### App
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | -------------------------------------------------------- | ------- |
| **Approve App for Installation** | `approve_app_for_installation` | Approve an app for installation (admin.apps.approve) | |
| **Cancel App Request** | `cancel_app_request` | Cancel an app request (admin.apps.requests.cancel) | |
| **Clear App Resolution** | `clear_app_resolution` | Clear app resolution (admin.apps.clearResolution) | |
| **List App Activity Logs** | `list_app_activity_logs` | Get logs for app activities (admin.apps.activities.list) | |
| **List App Requests** | `list_app_requests` | List app requests (admin.apps.requests.list) | |
| **List Approved Apps** | `list_approved_apps` | List approved apps (admin.apps.approved.list) | |
| **List Restricted Apps** | `list_restricted_apps` | List restricted apps (admin.apps.restricted.list) | |
| **Lookup App Configuration** | `lookup_app_configuration` | Look up app config (admin.apps.config.lookup) | |
| **Restrict App** | `restrict_app` | Restrict an app (admin.apps.restrict) | |
| **Set App Configuration** | `set_app_configuration` | Set app config (admin.apps.config.set) | |
| **Uninstall App** | `uninstall_app` | Uninstall an app (admin.apps.uninstall) | |
| **Uninstall App from Workspace** | `uninstall_app_from_workspace` | Uninstall an app from a workspace (apps.uninstall) | |
### Audit
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | ------------------------------------------------------------------------- | ------- |
| **Get Allowed Audit Anomaly Item** | `get_allowed_audit_anomaly_item` | Get allowed audit anomaly item (admin.audit.anomaly.allow\.getItem) | |
| **Update Allowed Audit Anomaly Item** | `update_allowed_audit_anomaly_item` | Update allowed audit anomaly item (admin.audit.anomaly.allow\.updateItem) | |
### Auth policy
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ------------------------------------------------------------------- | ------- |
| **Assign Entities to Auth Policy** | `assign_entities_to_auth_policy` | Assign entities to auth policy (admin.auth.policy.assignEntities) | |
| **Get Entities for Auth Policy** | `get_entities_for_auth_policy` | Get entities for auth policy (admin.auth.policy.getEntities) | |
| **Remove Entities from Auth Policy** | `remove_entities_from_auth_policy` | Remove entities from auth policy (admin.auth.policy.removeEntities) | |
### Authentication
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------------------ | ------- |
| **Revoke Oauth Token** | `revoke_oauth_token` | Revoke an OAuth token (auth.revoke) | |
| **Test Api Connection** | `test_api_connection` | Test the API connection (api.test) | |
| **Test Authentication** | `test_authentication` | Test authentication and get info about the token | |
### Barrier
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------------------------------------------------- | ------- |
| **Create Information Barrier** | `create_information_barrier` | Create an information barrier (admin.barriers.create) | |
| **Delete Information Barrier** | `delete_information_barrier` | Delete an information barrier (admin.barriers.delete) | |
| **List Information Barriers** | `list_information_barriers` | List information barriers (admin.barriers.list) | |
| **Update Information Barrier** | `update_information_barrier` | Update an information barrier (admin.barriers.update) | |
### Bot
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------- | ------- |
| **Get Bot Information** | `get_bot_information` | Get information about a bot | |
### Channel
| Operation | ID | Description | Trigger |
| ------------------------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------------- | ------- |
| **Add Bookmark to Channel** | `add_bookmark_to_channel` | Add a bookmark to a channel | |
| **Add Idp Group to Channel** | `add_idp_group_to_channel` | Add IDP group to channel (admin.conversations.restrictAccess.addGroup) | |
| **Archive Channel** | `archive_channel` | Archive a channel | |
| **Archive Conversation As Admin** | `archive_conversation_as_admin` | Archive a conversation (admin.conversations.archive) | |
| **Bulk Archive Conversations** | `bulk_archive_conversations` | Bulk archive conversations (admin.conversations.bulkArchive) | |
| **Bulk Delete Conversations** | `bulk_delete_conversations` | Bulk delete conversations (admin.conversations.bulkDelete) | |
| **Bulk Move Conversations to Team** | `bulk_move_conversations_to_team` | Bulk move conversations to a team (admin.conversations.bulkMove) | |
| **Close Direct Message** | `close_direct_message` | Close a direct message or multi-person DM | |
| **Convert Channel to Private** | `convert_channel_to_private` | Convert public channel to private (admin.conversations.convertToPrivate) | |
| **Convert Channel to Public** | `convert_channel_to_public` | Convert private channel to public (admin.conversations.convertToPublic) | |
| **Create Admin Conversation** | `create_admin_conversation` | Create a conversation (admin.conversations.create) | |
| **Create Canvas in Channel** | `create_canvas_in_channel` | Create a canvas in a channel (conversations.canvases.create) | |
| **Create Channel** | `create_channel` | Create a new channel | |
| **Delete Conversation** | `delete_conversation` | Delete a conversation (admin.conversations.delete) | |
| **Disconnect Shared Channel** | `disconnect_shared_channel` | Disconnect a shared channel (admin.conversations.disconnectShared) | |
| **Edit Channel Bookmark** | `edit_channel_bookmark` | Edit an existing bookmark | |
| **Get Channel Information** | `get_channel_information` | Get information about a channel | |
| **Get Channel Messages** | `get_channel_messages` | Get messages from a channel | |
| **Get Channel Retention Settings** | `get_channel_retention_settings` | Get custom retention settings (admin.conversations.getCustomRetention) | |
| **Get Conversation Preferences** | `get_conversation_preferences` | Get conversation preferences (admin.conversations.getConversationPrefs) | |
| **Invite Users to Channel** | `invite_users_to_channel` | Invite users to a channel | |
| **Invite Users to Conversation As Admin** | `invite_users_to_conversation_as_admin` | Invite users to a conversation (admin.conversations.invite) | |
| **Join Public Channel** | `join_public_channel` | Join a public channel | |
| **Leave Channel** | `leave_channel` | Leave a channel | |
| **List Channel Bookmarks** | `list_channel_bookmarks` | List bookmarks in a channel | |
| **List Channel Members** | `list_channel_members` | Get members of a channel | |
| **List Channels in Workspace** | `list_channels_in_workspace` | List channels in the workspace | |
| **List Idp Groups for Channel** | `list_idp_groups_for_channel` | List IDP groups for channel (admin.conversations.restrictAccess.listGroups) | |
| **List Teams for Conversation** | `list_teams_for_conversation` | Get teams for a conversation (admin.conversations.getTeams) | |
| **Lookup Conversations** | `lookup_conversations` | Look up conversations (admin.conversations.lookup) | |
| **Mark Channel As Read** | `mark_channel_as_read` | Mark a channel as read | |
| **Open Direct Message** | `open_direct_message` | Open or resume a direct message or multi-person DM | |
| **Remove Channel Bookmark** | `remove_channel_bookmark` | Remove a bookmark from a channel | |
| **Remove Channel Retention Settings** | `remove_channel_retention_settings` | Remove custom retention settings (admin.conversations.removeCustomRetention) | |
| **Remove Idp Group from Channel** | `remove_idp_group_from_channel` | Remove IDP group from channel (admin.conversations.restrictAccess.removeGroup) | |
| **Remove User from Channel** | `remove_user_from_channel` | Remove a user from a channel | |
| **Rename Channel** | `rename_channel` | Rename a channel | |
| **Rename Conversation As Admin** | `rename_conversation_as_admin` | Rename a conversation (admin.conversations.rename) | |
| **Search Conversations** | `search_conversations` | Search for conversations (admin.conversations.search) | |
| **Set Channel External Invite Permissions** | `set_channel_external_invite_permissions` | Set external invite permissions for a channel (conversations.externalInvitePermissions.set) | |
| **Set Channel Purpose** | `set_channel_purpose` | Set the purpose of a channel | |
| **Set Channel Retention Settings** | `set_channel_retention_settings` | Set custom retention settings (admin.conversations.setCustomRetention) | |
| **Set Channel Topic** | `set_channel_topic` | Set the topic of a channel | |
| **Set Conversation Preferences** | `set_conversation_preferences` | Set conversation preferences (admin.conversations.setConversationPrefs) | |
| **Set Teams for Conversation** | `set_teams_for_conversation` | Set teams for a conversation (admin.conversations.setTeams) | |
| **Unarchive Channel** | `unarchive_channel` | Unarchive a channel | |
| **Unarchive Conversation As Admin** | `unarchive_conversation_as_admin` | Unarchive a conversation (admin.conversations.unarchive) | |
### Do not disturb
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | --------------------------------------------- | ------- |
| **End Do Not Disturb** | `end_do_not_disturb` | End the current user's Do Not Disturb session | |
| **End Snooze Mode** | `end_snooze_mode` | End the current user's snooze mode | |
| **Get Do Not Disturb Status** | `get_do_not_disturb_status` | Get Do Not Disturb status for a user | |
| **Get Team Do Not Disturb Status** | `get_team_do_not_disturb_status` | Get Do Not Disturb status for users on a team | |
| **Set Do Not Disturb Snooze** | `set_do_not_disturb_snooze` | Turn on Do Not Disturb for the current user | |
### EKM
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------------- | ------- |
| **List Ekm Original Channel Info** | `list_ekm_original_channel_info` | List original connected channel info for EKM (admin.conversations.ekm.listOriginalConnectedChannelInfo) | |
### Emoji
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ---------------------------------------- | ------- |
| **Add Custom Emoji** | `add_custom_emoji` | Add custom emoji (admin.emoji.add) | |
| **Add Emoji Alias** | `add_emoji_alias` | Add emoji alias (admin.emoji.addAlias) | |
| **List Custom Emoji** | `list_custom_emoji` | List custom emoji (admin.emoji.list) | |
| **List Custom Emoji in Workspace** | `list_custom_emoji_in_workspace` | List custom emoji in the workspace | |
| **Remove Custom Emoji** | `remove_custom_emoji` | Remove custom emoji (admin.emoji.remove) | |
| **Rename Custom Emoji** | `rename_custom_emoji` | Rename custom emoji (admin.emoji.rename) | |
### File
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------------------------- | ------- |
| **Add Remote File to Workspace** | `add_remote_file_to_workspace` | Add a remote file (files.remote.add) | |
| **Complete External File Upload** | `complete_external_file_upload` | Complete a file upload after uploading to external URL (files.completeUploadExternal) | |
| **Create File Public Url** | `create_file_public_url` | Create a public URL for a file (files.sharedPublicURL) | |
| **Delete File** | `delete_file` | Delete a file | |
| **Get External File Upload Url** | `get_external_file_upload_url` | Get URL for uploading a file externally (files.getUploadURLExternal) | |
| **Get File Information** | `get_file_information` | Get information about a file | |
| **Get Remote File Information** | `get_remote_file_information` | Get information about a remote file (files.remote.info) | |
| **List Remote Files** | `list_remote_files` | List remote files (files.remote.list) | |
| **List Workspace Files** | `list_workspace_files` | List files in the workspace | |
| **Remove Remote File** | `remove_remote_file` | Remove a remote file (files.remote.remove) | |
| **Revoke File Public Url** | `revoke_file_public_url` | Revoke public URL for a file (files.revokePublicURL) | |
| **Share Remote File to Channel** | `share_remote_file_to_channel` | Share a remote file to a channel (files.remote.share) | |
| **Update Remote File** | `update_remote_file` | Update a remote file (files.remote.update) | |
| **Upload File to Slack** | `upload_file_to_slack` | Upload a file to Slack | |
### Function
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------------------------------------------------------------- | ------- |
| **List Functions** | `list_functions` | List functions (admin.functions.list) | |
| **Lookup Function Permissions** | `lookup_function_permissions` | Look up function permissions (admin.functions.permissions.lookup) | |
| **Set Function Permissions** | `set_function_permissions` | Set function permissions (admin.functions.permissions.set) | |
### Invite request
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------ | ------- |
| **Approve Invite Request** | `approve_invite_request` | Approve invite request (admin.inviteRequests.approve) | |
| **Deny Invite Request** | `deny_invite_request` | Deny invite request (admin.inviteRequests.deny) | |
| **List Approved Invite Requests** | `list_approved_invite_requests` | List approved invite requests (admin.inviteRequests.approved.list) | |
| **List Denied Invite Requests** | `list_denied_invite_requests` | List denied invite requests (admin.inviteRequests.denied.list) | |
| **List Invite Requests** | `list_invite_requests` | List invite requests (admin.inviteRequests.list) | |
### Message
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | -------------------------------------------------------- | ------- |
| **Add Emoji Reaction to Message** | `add_emoji_reaction_to_message` | Add an emoji reaction to a message | |
| **Delete File Comment** | `delete_file_comment` | Delete a file comment (files.comments.delete) | |
| **Delete Message** | `delete_message` | Delete a message | |
| **Delete Scheduled Message** | `delete_scheduled_message` | Delete a scheduled message (chat.deleteScheduledMessage) | |
| **Get Message Permalink** | `get_message_permalink` | Get a permalink URL for a message | |
| **Get Message Reactions** | `get_message_reactions` | Get reactions on a message | |
| **Get Thread Replies** | `get_thread_replies` | Get thread replies | |
| **List Pinned Items in Channel** | `list_pinned_items_in_channel` | List pinned items in a channel | |
| **List Reactions for Item** | `list_reactions_for_item` | List reactions for an item (reactions.list) | |
| **List Scheduled Messages** | `list_scheduled_messages` | List scheduled messages (chat.scheduledMessages.list) | |
| **Pin Message to Channel** | `pin_message_to_channel` | Pin a message to a channel | |
| **Provide Custom Unfurl Behavior** | `provide_custom_unfurl_behavior` | Provide custom unfurl behavior for URLs (chat.unfurl) | |
| **Remove Emoji Reaction from Message** | `remove_emoji_reaction_from_message` | Remove an emoji reaction from a message | |
| **Schedule Message for Later** | `schedule_message_for_later` | Schedule a message for later | |
| **Send Ephemeral Message** | `send_ephemeral_message` | Send an ephemeral message (only visible to one user) | |
| **Send Me Message** | `send_me_message` | Share a /me message into a channel (chat.meMessage) | |
| **Send Message to Channel** | `send_message_to_channel` | Post a message to a channel | |
| **Unpin Message from Channel** | `unpin_message_from_channel` | Unpin a message from a channel | |
| **Update Existing Message** | `update_existing_message` | Update an existing message | |
### Reaction
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------------------------- | ------- |
| **List User Starred Items** | `list_user_starred_items` | List starred items for the current user | |
| **Star Message or File** | `star_message_or_file` | Star a message, file, or channel | |
| **Unstar Item** | `unstar_item` | Remove a star from an item | |
### Reminder
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | --------------------------------------- | ------- |
| **Create Reminder** | `create_reminder` | Create a reminder | |
| **Delete Reminder** | `delete_reminder` | Delete a reminder | |
| **Get Reminder Information** | `get_reminder_information` | Get information about a reminder | |
| **List User Reminders** | `list_user_reminders` | List all reminders for the current user | |
| **Mark Reminder Complete** | `mark_reminder_complete` | Mark a reminder as complete | |
### Role
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------- | ------- |
| **Add Role Assignments** | `add_role_assignments` | Add role assignments (admin.roles.addAssignments) | |
| **List Role Assignments** | `list_role_assignments` | List role assignments (admin.roles.listAssignments) | |
| **Remove Role Assignments** | `remove_role_assignments` | Remove role assignments (admin.roles.removeAssignments) | |
### Search
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------ | ------- |
| **Search Messages and Files** | `search_messages_and_files` | Search for messages and files (search.all) | |
| **Search Workspace Files** | `search_workspace_files` | Search for files in the workspace (search.files) | |
| **Search Workspace Messages** | `search_workspace_messages` | Search for messages in the workspace | |
### Session
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ---------------------------------------------------------- | ------- |
| **Bulk Reset User Sessions** | `bulk_reset_user_sessions` | Bulk reset user sessions (admin.users.session.resetBulk) | |
| **Clear User Session Settings** | `clear_user_session_settings` | Clear session settings (admin.users.session.clearSettings) | |
| **Get User Session Settings** | `get_user_session_settings` | Get session settings (admin.users.session.getSettings) | |
| **Invalidate User Session** | `invalidate_user_session` | Invalidate user session (admin.users.session.invalidate) | |
| **List User Sessions** | `list_user_sessions` | List user sessions (admin.users.session.list) | |
| **Reset User Session** | `reset_user_session` | Reset user session (admin.users.session.reset) | |
| **Set User Session Settings** | `set_user_session_settings` | Set session settings (admin.users.session.setSettings) | |
### Slack connect
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Accept Shared Channel Invite** | `accept_shared_channel_invite` | Accept a shared channel invite (conversations.acceptSharedInvite) | |
| **Approve Slack Connect Channel Invite** | `approve_slack_connect_channel_invite` | Approve an invitation to a Slack Connect channel (conversations.approveSharedInvite) | |
| **Approve Slack Connect Invite Request** | `approve_slack_connect_invite_request` | Approve a Slack Connect invite request (conversations.requestSharedInvite.approve) | |
| **Decline Shared Channel Invite** | `decline_shared_channel_invite` | Decline a shared channel invite (conversations.declineSharedInvite) | |
| **Deny Slack Connect Invite Request** | `deny_slack_connect_invite_request` | Deny a Slack Connect invite request (conversations.requestSharedInvite.deny) | |
| **Invite User to Slack Connect Channel** | `invite_user_to_slack_connect_channel` | Invite a user to a Slack Connect channel (conversations.inviteShared) | |
| **List Slack Connect Invite Requests** | `list_slack_connect_invite_requests` | List Slack Connect invite requests (conversations.requestSharedInvite.list) | |
| **List Slack Connect Invites** | `list_slack_connect_invites` | List Slack Connect invites (conversations.listConnectInvites) | |
### Team
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ----------------------------------------------------------------------- | ------- |
| **Create Team** | `create_team` | Create a team (admin.teams.create) | |
| **Get Team Billable Information** | `get_team_billable_information` | Get billable info for team members (team.billableInfo) | |
| **Get Team Settings** | `get_team_settings` | Get team settings info (admin.teams.settings.info) | |
| **Get Workspace Access Logs** | `get_workspace_access_logs` | Get access logs for the workspace (team.accessLogs) | |
| **Get Workspace Information** | `get_workspace_information` | Get information about the workspace | |
| **Get Workspace Integration Logs** | `get_workspace_integration_logs` | Get integration logs for the workspace (team.integrationLogs) | |
| **List Team Admins** | `list_team_admins` | List team admins (admin.teams.admins.list) | |
| **List Team Owners** | `list_team_owners` | List team owners (admin.teams.owners.list) | |
| **List Teams** | `list_teams` | List teams (admin.teams.list) | |
| **Set Default Channels for Team** | `set_default_channels_for_team` | Set default channels for team (admin.teams.settings.setDefaultChannels) | |
| **Set Team Description** | `set_team_description` | Set team description (admin.teams.settings.setDescription) | |
| **Set Team Discoverability** | `set_team_discoverability` | Set team discoverability (admin.teams.settings.setDiscoverability) | |
| **Set Team Icon** | `set_team_icon` | Set team icon (admin.teams.settings.setIcon) | |
| **Set Team Name** | `set_team_name` | Set team name (admin.teams.settings.setName) | |
### User
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------- | ------- |
| **Assign User to Team** | `assign_user_to_team` | Assign a user to a team (admin.users.assign) | |
| **Delete User Profile Photo** | `delete_user_profile_photo` | Delete the user's profile photo (users.deletePhoto) | |
| **Export Unsupported Version Users** | `export_unsupported_version_users` | Export unsupported version users (admin.users.unsupportedVersions.export) | |
| **Find User by Email** | `find_user_by_email` | Find a user by their email address | |
| **Get User Expiration** | `get_user_expiration` | Get expiration for a user (admin.users.getExpiration) | |
| **Get User Information** | `get_user_information` | Get information about a user | |
| **Get User Presence Status** | `get_user_presence_status` | Get a user's presence status | |
| **Get User Profile Information** | `get_user_profile_information` | Get a user's profile information (users.profile.get) | |
| **Invite User to Team** | `invite_user_to_team` | Invite a user to a team (admin.users.invite) | |
| **List User Accessible Conversations** | `list_user_accessible_conversations` | List conversations the calling user may access | |
| **List Users in Team** | `list_users_in_team` | List users in a team (admin.users.list) | |
| **List Workspace Users** | `list_workspace_users` | List all users in the workspace | |
| **Remove User from Team** | `remove_user_from_team` | Remove a user from a team (admin.users.remove) | |
| **Set User As Active** | `set_user_as_active` | Mark user as active (users.setActive) - Deprecated but still functional | |
| **Set User As Admin** | `set_user_as_admin` | Set a user as admin (admin.users.setAdmin) | |
| **Set User As Owner** | `set_user_as_owner` | Set a user as owner (admin.users.setOwner) | |
| **Set User As Regular** | `set_user_as_regular` | Set a user as regular (admin.users.setRegular) | |
| **Set User Expiration** | `set_user_expiration` | Set expiration for a user (admin.users.setExpiration) | |
| **Set User Presence Status** | `set_user_presence_status` | Set user presence (users.setPresence) | |
| **Set User Profile Fields** | `set_user_profile_fields` | Set user profile fields (users.profile.set) | |
### User group
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ---------------------------------------------------------------- | ------- |
| **Add Channels to Usergroup** | `add_channels_to_usergroup` | Add channels to usergroup (admin.usergroups.addChannels) | |
| **Add Teams to Usergroup** | `add_teams_to_usergroup` | Add teams to usergroup (admin.usergroups.addTeams) | |
| **Create User Group** | `create_user_group` | Create a new user group | |
| **Disable User Group** | `disable_user_group` | Disable an existing user group | |
| **Enable User Group** | `enable_user_group` | Enable a disabled user group | |
| **List Channels in Usergroup** | `list_channels_in_usergroup` | List channels in usergroup (admin.usergroups.listChannels) | |
| **List Usergroup Members** | `list_usergroup_members` | List users in a user group | |
| **List Workspace User Groups** | `list_workspace_user_groups` | List user groups in the workspace | |
| **Remove Channels from Usergroup** | `remove_channels_from_usergroup` | Remove channels from usergroup (admin.usergroups.removeChannels) | |
| **Update User Group** | `update_user_group` | Update an existing user group | |
| **Update Usergroup Member List** | `update_usergroup_member_list` | Update the list of users in a user group | |
### Workflow
| Operation | ID | Description | Trigger |
| -------------------------------------------- | ------------------------------------------ | --------------------------------------------------------------------------------------------- | ------- |
| **Add Workflow Collaborators** | `add_workflow_collaborators` | Add workflow collaborators (admin.workflows.collaborators.add) | |
| **Lookup Workflow Permissions** | `lookup_workflow_permissions` | Look up workflow permissions (admin.workflows.permissions.lookup) | |
| **Lookup Workflow Trigger Type Permissions** | `lookup_workflow_trigger_type_permissions` | Look up workflow trigger type permissions (admin.workflows.triggers.types.permissions.lookup) | |
| **Remove Workflow Collaborators** | `remove_workflow_collaborators` | Remove workflow collaborators (admin.workflows.collaborators.remove) | |
| **Search Workflows** | `search_workflows` | Search workflows (admin.workflows.search) | |
| **Set Workflow Trigger Type Permissions** | `set_workflow_trigger_type_permissions` | Set workflow trigger type permissions (admin.workflows.triggers.types.permissions.set) | |
| **Unpublish Workflow** | `unpublish_workflow` | Unpublish a workflow (admin.workflows.unpublish) | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------------------------------- | ------- |
| **On App Mention** | `on_app_mention` | Trigger: fires when the bot is @-mentioned. | Yes |
| **On Channel Created** | `on_channel_created` | Trigger: fires when a new channel is created in the workspace. | Yes |
| **On Channel Message** | `on_channel_message` | Trigger: fires when a message is posted in a channel the bot is in. | Yes |
| **On File Shared** | `on_file_shared` | Trigger: fires when a file is shared in a channel the bot is in. | Yes |
| **On Member Joined Channel** | `on_member_joined_channel` | Trigger: fires when a member joins a channel. | Yes |
| **On Reaction Added** | `on_reaction_added` | Trigger: fires when an emoji reaction is added to a message. | Yes |
# Snowflake
Source: https://docs.noclick.com/integrations/snowflake
Connect Snowflake to your workflows: 376 operations across 42 categories.
The Snowflake node adds Snowflake operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Snowflake also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Snowflake.
You can wire the Snowflake node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Snowflake under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://docs.snowflake.com/en/user-guide/programmatic-access-tokens).
## Operations
### Account
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ---------------------------------------------------------------- | ------- |
| **Create Account** | `create_account` | Create an account in the organization. | |
| **Delete Account** | `delete_account` | Delete an account. | |
| **List Accounts** | `list_accounts` | List the accessible accounts in the organization. | |
| **Undrop Account** | `undrop_account` | Restore a dropped account that is still within its grace period. | |
### Alerts
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | -------------------------------------------------------------------- | ------- |
| **Clone Alert** | `clone_alert` | Clone an alert into a (possibly different) schema. | |
| **Create Alert** | `create_alert` | Create an alert in a schema. | |
| **Delete Alert** | `delete_alert` | Drop an alert. | |
| **Execute Alert** | `execute_alert` | Execute an alert immediately. | |
| **Fetch Alert** | `fetch_alert` | Fetch a single alert's definition. | |
| **Get Alert Tags** | `get_alert_tags` | Get the tag assignments for an alert (requires an active warehouse). | |
| **List Alerts** | `list_alerts` | List alerts in a schema. | |
| **Set Alert Tags** | `set_alert_tags` | Set a tag on an alert. | |
| **Unset Alert Tags** | `unset_alert_tags` | Unset a tag from an alert. | |
### API integrations
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | --------------------------------------------------------------------- | ------- |
| **Create API Integration** | `create_api_integration` | Create an API integration. | |
| **Create or Alter API Integration** | `create_or_alter_api_integration` | Create an API integration, or alter it to match if it already exists. | |
| **Delete API Integration** | `delete_api_integration` | Drop an API integration. | |
| **Fetch API Integration** | `fetch_api_integration` | Fetch a single API integration's definition. | |
| **Get Tags on API Integration** | `get_tags_api_integration` | Get the tag assignments for an API integration. | |
| **List API Integrations** | `list_api_integrations` | List API integrations in the account. | |
| **Set Tags on API Integration** | `set_tags_api_integration` | Set a tag on an API integration. | |
| **Unset Tags from API Integration** | `unset_tags_api_integration` | Unset a tag from an API integration. | |
### Artifact repositories
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ------------------------------------------------------------------------- | ------- |
| **Create Artifact Repository** | `create_artifact_repository` | Create an artifact repository in a schema. | |
| **Create or Alter Artifact Repository** | `create_or_alter_artifact_repository` | Create an artifact repository, or alter it to match if it already exists. | |
| **Delete Artifact Repository** | `delete_artifact_repository` | Drop an artifact repository. | |
| **Fetch Artifact Repository** | `fetch_artifact_repository` | Fetch a single artifact repository's definition. | |
| **List Artifact Repositories** | `list_artifact_repositories` | List artifact repositories in a schema. | |
| **Rename Artifact Repository** | `rename_artifact_repository` | Rename an artifact repository to a new identifier. | |
### Catalog integrations
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | --------------------------------------------------------------------------------- | ------- |
| **Create Catalog Integration** | `create_catalog_integration` | Create a catalog integration. | |
| **Delete Catalog Integration** | `delete_catalog_integration` | Drop a catalog integration. | |
| **Fetch Catalog Integration** | `fetch_catalog_integration` | Fetch a single catalog integration's definition. | |
| **Get Catalog Integration Tags** | `get_catalog_integration_tags` | Get the tag assignments for a catalog integration (requires an active warehouse). | |
| **List Catalog Integrations** | `list_catalog_integrations` | List catalog integrations in the account. | |
| **Set Catalog Integration Tags** | `set_catalog_integration_tags` | Set a tag on a catalog integration. | |
| **Unset Catalog Integration Tags** | `unset_catalog_integration_tags` | Unset a tag from a catalog integration. | |
### Compute pools
| Operation | ID | Description | Trigger |
| ---------------------------------- | ---------------------------------------------- | ----------------------------------------------------------------- | ------- |
| **Create Compute Pool** | `create_compute_pool` | Create a compute pool. | |
| **Create or Alter Compute Pool** | `create_or_alter_compute_pool` | Create a compute pool, or alter it to match if it already exists. | |
| **Delete Compute Pool** | `delete_compute_pool` | Drop a compute pool. | |
| **Fetch Compute Pool** | `fetch_compute_pool` | Fetch a single compute pool's definition. | |
| **Get Compute Pool Tags** | `get_tags_compute_pool` | Get the tag assignments for a compute pool. | |
| **List Compute Pools** | `list_compute_pools` | List compute pools under the account. | |
| **List Instance Families** | `list_compute_pool_instance_families` | List available compute pool instance families. | |
| **Resume Compute Pool** | `resume_compute_pool` | Resume a suspended compute pool. | |
| **Set Tags on Compute Pool** | `set_tags_compute_pool` | Set a tag on a compute pool. | |
| **Stop All Services** | `stop_all_services_in_compute_pool` | Stop all services on a compute pool. | |
| **Stop All Services (Deprecated)** | `stop_all_services_in_compute_pool_deprecated` | Stop all services on a compute pool (deprecated endpoint). | |
| **Suspend Compute Pool** | `suspend_compute_pool` | Suspend an active compute pool. | |
| **Unset Tags from Compute Pool** | `unset_tags_compute_pool` | Unset a tag from a compute pool. | |
### Database roles
| Operation | ID | Description | Trigger |
| ------------------------------- | --------------------------------------- | --------------------------------------------------------------------------- | ------- |
| **Clone Database Role** | `clone_database_role` | Clone a database role into a (possibly different) database. | |
| **Create Database Role** | `create_database_role` | Create a database role in a database. | |
| **Delete Database Role** | `delete_database_role` | Drop a database role. | |
| **Get Tags on Database Role** | `get_tags_database_role` | Get the tag assignments for a database role (requires an active warehouse). | |
| **Grant Future Privileges** | `grant_future_privileges_database_role` | Grant future privileges to a database role. | |
| **Grant Privileges** | `grant_privileges_database_role` | Grant privileges to a database role. | |
| **List Database Roles** | `list_database_roles` | List database roles in a database. | |
| **List Future Grants** | `list_future_grants_database_role` | List all future grants to a database role. | |
| **List Grants** | `list_grants_database_role` | List all grants to a database role. | |
| **Revoke Future Grants** | `revoke_future_grants_database_role` | Revoke future grants from a database role. | |
| **Revoke Grants** | `revoke_grants_database_role` | Revoke grants from a database role. | |
| **Set Tags on Database Role** | `set_tags_database_role` | Set a tag on a database role. | |
| **Unset Tags on Database Role** | `unset_tags_database_role` | Unset a tag from a database role. | |
### Databases
| Operation | ID | Description | Trigger |
| ------------------------------------------- | --------------------------------------- | ----------------------------------------------------- | ------- |
| **Clone Database** | `clone_database` | Clone an existing database. | |
| **Create Database** | `create_database` | Create a new database. | |
| **Create Database from Share** | `create_database_from_share` | Create a database from a share. | |
| **Create Database from Share (Deprecated)** | `create_database_from_share_deprecated` | Create a database from a share (deprecated endpoint). | |
| **Create or Alter Database** | `create_or_alter_database` | Create a new, or alter an existing, database. | |
| **Delete Database** | `delete_database` | Drop a named database. | |
| **Disable Database Failover** | `disable_database_failover` | Disable failover for a database. | |
| **Disable Database Replication** | `disable_database_replication` | Disable replication for a database. | |
| **Enable Database Failover** | `enable_database_failover` | Enable failover for a database. | |
| **Enable Database Replication** | `enable_database_replication` | Enable replication for a database. | |
| **Fetch Database** | `fetch_database` | Describe a single database. | |
| **Get Database Tags** | `get_tags` | Get the tag assignments for a database. | |
| **List Databases** | `list_databases` | List accessible databases. | |
| **Refresh Database Replication** | `refresh_database_replication` | Refresh a secondary database from its primary. | |
| **Set Database Tags** | `set_tags` | Set a tag on a database. | |
| **Set Primary Database (Failover)** | `primary_database_failover` | Promote a secondary database to primary. | |
| **Undrop Database** | `undrop_database` | Undrop a database. | |
| **Unset Database Tags** | `unset_tags` | Unset tags from a database. | |
### Dynamic tables
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | --------------------------------------------------------- | ------- |
| **Clone Dynamic Table** | `clone_dynamic_table` | Clone a dynamic table into a (possibly different) schema. | |
| **Create Dynamic Table** | `create_dynamic_table` | Create a dynamic table in a schema. | |
| **Delete Dynamic Table** | `delete_dynamic_table` | Drop a dynamic table. | |
| **Fetch Dynamic Table** | `fetch_dynamic_table` | Fetch a single dynamic table's definition. | |
| **Get Tags on Dynamic Table** | `get_tags_dynamic_table` | Get the tag assignments for a dynamic table. | |
| **List Dynamic Tables** | `list_dynamic_tables` | List dynamic tables under a database and schema. | |
| **Refresh Dynamic Table** | `refresh_dynamic_table` | Manually refresh a dynamic table. | |
| **Resume Dynamic Table** | `resume_dynamic_table` | Resume refreshes on a dynamic table. | |
| **Resume Recluster Dynamic Table** | `resume_recluster_dynamic_table` | Resume recluster of a dynamic table. | |
| **Set Tags on Dynamic Table** | `set_tags_dynamic_table` | Set a tag on a dynamic table. | |
| **Suspend Dynamic Table** | `suspend_dynamic_table` | Suspend refreshes on a dynamic table. | |
| **Suspend Recluster Dynamic Table** | `suspend_recluster_dynamic_table` | Suspend recluster of a dynamic table. | |
| **Swap With Dynamic Table** | `swap_with_dynamic_table` | Swap a dynamic table with another dynamic table. | |
| **Undrop Dynamic Table** | `undrop_dynamic_table` | Undrop a previously dropped dynamic table. | |
| **Unset Tags on Dynamic Table** | `unset_tags_dynamic_table` | Unset a tag from a dynamic table. | |
### Event tables
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------------------------------- | ------- |
| **Create Event Table** | `create_event_table` | Create an event table in a schema. | |
| **Delete Event Table** | `delete_event_table` | Drop an event table. | |
| **Fetch Event Table** | `fetch_event_table` | Fetch a single event table's definition. | |
| **Get Event Table Tags** | `get_tags_event_table` | Get the tag assignments for an event table (requires an active warehouse). | |
| **List Event Tables** | `list_event_tables` | List event tables in a schema. | |
| **Rename Event Table** | `rename_event_table` | Rename an event table to a new identifier. | |
| **Set Event Table Tags** | `set_tags_event_table` | Set a tag on an event table. | |
| **Unset Event Table Tags** | `unset_tags_event_table` | Unset a tag from an event table. | |
### External volumes
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------------------------- | ------- |
| **Create External Volume** | `create_external_volume` | Create an external volume. | |
| **Delete External Volume** | `delete_external_volume` | Drop an external volume. | |
| **Fetch External Volume** | `fetch_external_volume` | Fetch a single external volume's definition. | |
| **List External Volumes** | `list_external_volumes` | List external volumes in the account. | |
| **Undrop External Volume** | `undrop_external_volume` | Restore the most recently dropped external volume with a given name. | |
### Functions
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------------- | ------- |
| **Create Function** | `create_function` | Create a function in a schema. | |
| **Delete Function** | `delete_function` | Drop a function. | |
| **Execute Function** | `execute_function` | Execute a function. | |
| **Fetch Function** | `fetch_function` | Fetch a single function's definition. | |
| **Get Function Tags** | `get_function_tags` | Get the tag assignments for a function. | |
| **List Functions** | `list_functions` | List user functions in a schema. | |
| **Set Function Tags** | `set_function_tags` | Set tags on a function. | |
| **Unset Function Tags** | `unset_function_tags` | Unset tags from a function. | |
### Grants
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | -------------------------------------------------------------------------------------- | ------- |
| **Grant Group Privilege** | `grant_group_privilege` | Grant privilege(s) on all/future securables of a type in a scope to the named grantee. | |
| **Grant Privilege** | `grant_privilege` | Grant the specified privilege(s) on the named securable to the named grantee. | |
| **List Grants To** | `list_grants_to` | List the roles and privileges granted to the specified grantee. | |
| **Revoke Group Privilege** | `revoke_group_privilege` | Revoke a privilege on all/future securables in the given scope from the named grantee. | |
| **Revoke Group Privilege Grant Option** | `revoke_group_privilege_grant_option` | Revoke the grant option for a privilege on all/future securables in the given scope. | |
| **Revoke Privilege** | `revoke_privilege` | Revoke the specified privilege on the named securable from the named grantee. | |
| **Revoke Privilege Grant Option** | `revoke_privilege_grant_option` | Revoke the grant option for the specified privilege on the named securable. | |
### Iceberg tables
| Operation | ID | Description | Trigger |
| ------------------------------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------- | ------- |
| **Clone Iceberg Table** | `clone_snowflake_managed_iceberg_table` | Clone a Snowflake-managed iceberg table. | |
| **Convert to Managed Iceberg Table** | `convert_to_managed_iceberg_table` | Convert an unmanaged iceberg table to a Snowflake-managed one. | |
| **Create Iceberg Table** | `create_snowflake_managed_iceberg_table` | Create a Snowflake-managed iceberg table. | |
| **Create Iceberg Table as Select** | `create_snowflake_managed_iceberg_table_as_select` | Create a Snowflake-managed iceberg table from a SELECT query. | |
| **Create Iceberg Table from AWS Glue** | `create_unmanaged_iceberg_table_from_aws_glue_catalog` | Create an unmanaged iceberg table from an AWS Glue catalog. | |
| **Create Iceberg Table from Delta** | `create_unmanaged_iceberg_table_from_delta` | Create an unmanaged iceberg table from Delta files. | |
| **Create Iceberg Table from Iceberg Files** | `create_unmanaged_iceberg_table_from_iceberg_files` | Create an unmanaged iceberg table from Iceberg files. | |
| **Create Iceberg Table from Iceberg REST** | `create_unmanaged_iceberg_table_from_iceberg_rest` | Create an unmanaged iceberg table from an Iceberg REST catalog. | |
| **Create Iceberg Table Like** | `create_snowflake_managed_iceberg_table_like` | Create a new iceberg table with the same column definitions as an existing one. | |
| **Drop Iceberg Table** | `drop_iceberg_table` | Drop an iceberg table. | |
| **Fetch Iceberg Table** | `fetch_iceberg_table` | Describe a single iceberg table. | |
| **Get Iceberg Table Tags** | `get_tags_iceberg_table` | Get the tag assignments for an iceberg table. | |
| **List Iceberg Tables** | `list_iceberg_tables` | List iceberg tables in a schema. | |
| **Refresh Iceberg Table** | `refresh_iceberg_table` | Refresh metadata for an externally-cataloged iceberg table. | |
| **Resume Recluster Iceberg Table** | `resume_recluster_iceberg_table` | Resume reclustering of an iceberg table. | |
| **Set Iceberg Table Tags** | `set_tags_iceberg_table` | Set a tag on an iceberg table. | |
| **Suspend Recluster Iceberg Table** | `suspend_recluster_iceberg_table` | Suspend reclustering of an iceberg table. | |
| **Undrop Iceberg Table** | `undrop_iceberg_table` | Undrop a previously dropped iceberg table. | |
| **Unset Iceberg Table Tags** | `unset_tags_iceberg_table` | Unset a tag from an iceberg table. | |
### Image repositories
| Operation | ID | Description | Trigger |
| ------------------------------------ | ----------------------------- | ------------------------------------------------ | ------- |
| **Create Image Repository** | `create_image_repository` | Create an image repository in a schema. | |
| **Delete Image Repository** | `delete_image_repository` | Drop an image repository. | |
| **Fetch Image Repository** | `fetch_image_repository` | Fetch a single image repository's definition. | |
| **Get Tags on Image Repository** | `get_tags_image_repository` | Get the tag assignments for an image repository. | |
| **List Image Repositories** | `list_image_repositories` | List image repositories in a schema. | |
| **List Images in Repository** | `list_images_in_repository` | List the images stored in an image repository. | |
| **Set Tags on Image Repository** | `set_tags_image_repository` | Set a tag on an image repository. | |
| **Unset Tags from Image Repository** | `unset_tags_image_repository` | Unset a tag from an image repository. | |
### Managed accounts
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------------------- | ------- |
| **Create Managed Account** | `create_managed_account` | Create a managed account (reader account). | |
| **Delete Managed Account** | `delete_managed_account` | Delete a managed account, including all objects created in it. | |
| **List Managed Accounts** | `list_managed_accounts` | List the accessible managed accounts. | |
### Network policies
| Operation | ID | Description | Trigger |
| ---------------------------------- | --------------------------- | --------------------------------------------- | ------- |
| **Create Network Policy** | `create_network_policy` | Create a network policy. | |
| **Delete Network Policy** | `delete_network_policy` | Drop a network policy. | |
| **Fetch Network Policy** | `fetch_network_policy` | Fetch a single network policy's definition. | |
| **Get Tags on Network Policy** | `get_tags_network_policy` | Get the tag assignments for a network policy. | |
| **List Network Policies** | `list_network_policies` | List network policies in the account. | |
| **Set Tags on Network Policy** | `set_tags_network_policy` | Set a tag on a network policy. | |
| **Unset Tags from Network Policy** | `unset_tags_network_policy` | Unset a tag from a network policy. | |
### Network rules
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------------- | ------- |
| **Create Network Rule** | `create_network_rule` | Create a network rule in a schema. | |
| **Delete Network Rule** | `delete_network_rule` | Drop a network rule. | |
| **Fetch Network Rule** | `fetch_network_rule` | Fetch a single network rule's definition. | |
| **List Network Rules** | `list_network_rules` | List network rules in a schema. | |
### Notebooks
| Operation | ID | Description | Trigger |
| -------------------------------- | --------------------------- | ---------------------------------------------------------------------- | ------- |
| **Add Live Version to Notebook** | `add_live_version_notebook` | Add a LIVE version to a notebook. | |
| **Commit Notebook** | `commit_notebook` | Commit the LIVE version of a notebook to its Git repository. | |
| **Create Notebook** | `create_notebook` | Create a notebook in a schema. | |
| **Delete Notebook** | `delete_notebook` | Drop a notebook. | |
| **Execute Notebook** | `execute_notebook` | Execute a notebook. | |
| **Fetch Notebook** | `fetch_notebook` | Fetch a single notebook's definition. | |
| **Get Notebook Tags** | `get_notebook_tags` | Get the tag assignments for a notebook (requires an active warehouse). | |
| **List Notebooks** | `list_notebooks` | List notebooks in a schema. | |
| **Rename Notebook** | `rename_notebook` | Rename a notebook to a new identifier. | |
| **Set Notebook Tags** | `set_notebook_tags` | Set a tag on a notebook. | |
| **Unset Notebook Tags** | `unset_notebook_tags` | Unset a tag from a notebook. | |
### Notification integrations
| Operation | ID | Description | Trigger |
| -------------------------------------------- | ------------------------------------- | ------------------------------------------------------- | ------- |
| **Create Notification Integration** | `create_notification_integration` | Create a notification integration. | |
| **Delete Notification Integration** | `delete_notification_integration` | Drop a notification integration. | |
| **Fetch Notification Integration** | `fetch_notification_integration` | Fetch a single notification integration's definition. | |
| **Get Tags on Notification Integration** | `get_tags_notification_integration` | Get the tag assignments for a notification integration. | |
| **List Notification Integrations** | `list_notification_integrations` | List notification integrations in the account. | |
| **Set Tags on Notification Integration** | `set_tags_notification_integration` | Set a tag on a notification integration. | |
| **Unset Tags from Notification Integration** | `unset_tags_notification_integration` | Unset a tag from a notification integration. | |
### Password policies
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------- | ------- |
| **Create Password Policy** | `create_password_policy` | Create a password policy in a schema. | |
| **Delete Password Policy** | `delete_password_policy` | Drop a password policy. | |
| **Fetch Password Policy** | `fetch_password_policy` | Fetch a single password policy's definition. | |
| **Get Password Policy Tags** | `get_password_policy_tags` | Get the tag assignments for a password policy. | |
| **List Password Policies** | `list_password_policies` | List password policies in a schema. | |
| **Rename Password Policy** | `rename_password_policy` | Rename a password policy to a new identifier. | |
| **Set Password Policy Tags** | `set_password_policy_tags` | Set a tag on a password policy. | |
| **Unset Password Policy Tags** | `unset_password_policy_tags` | Unset a tag from a password policy. | |
### Pipes
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------------------ | ------- |
| **Create Pipe** | `create_pipe` | Create a pipe in a schema. | |
| **Delete Pipe** | `delete_pipe` | Drop a pipe. | |
| **Fetch Pipe** | `fetch_pipe` | Fetch a single pipe's definition. | |
| **Get Pipe Tags** | `get_tags_pipe` | Get the tag assignments for a pipe (requires an active warehouse). | |
| **List Pipes** | `list_pipes` | List pipes in a schema. | |
| **Refresh Pipe** | `refresh_pipe` | Refresh a pipe to load staged files into the ingest queue. | |
| **Set Pipe Tags** | `set_tags_pipe` | Set a tag on a pipe. | |
| **Unset Pipe Tags** | `unset_tags_pipe` | Unset a tag from a pipe. | |
### Procedures
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------------------------- | ------- |
| **Call Procedure** | `call_procedure` | Call a procedure with arguments. | |
| **Create Procedure** | `create_procedure` | Create a procedure in a schema. | |
| **Delete Procedure** | `delete_procedure` | Drop a procedure. | |
| **Fetch Procedure** | `fetch_procedure` | Fetch a single procedure's definition. | |
| **Get Procedure Tags** | `get_procedure_tags` | Get the tag assignments for a procedure. | |
| **List Procedures** | `list_procedures` | List procedures in a schema. | |
| **Set Procedure Tags** | `set_procedure_tags` | Set tags on a procedure. | |
| **Unset Procedure Tags** | `unset_procedure_tags` | Unset tags from a procedure. | |
### Roles
| Operation | ID | Description | Trigger |
| ----------------------------------- | ------------------------- | -------------------------------------------------------------------- | ------- |
| **Create Role** | `create_role` | Create a role. | |
| **Delete Role** | `delete_role` | Delete a role. | |
| **Get Tags On Role** | `get_tags_role` | Get the tag assignments for a role (requires an active warehouse). | |
| **Grant Future Privileges To Role** | `grant_future_privileges` | Grant future privileges to the role. | |
| **Grant Privileges To Role** | `grant_privileges` | Grant privileges to the role. | |
| **List Future Grants To Role** | `list_future_grants` | List all future grants to the role. | |
| **List Grants Of Role** | `list_grants_of` | List all grants of the role (users/roles it is granted to). | |
| **List Grants On Role** | `list_grants_on` | List all grants on the role (privileges held on the role securable). | |
| **List Grants To Role** | `list_grants` | List all grants (privileges/roles) granted to the role. | |
| **Revoke Future Grants From Role** | `revoke_future_grants` | Revoke future grants from the role. | |
| **Revoke Grants From Role** | `revoke_grants` | Revoke grants from the role. | |
| **Set Tags On Role** | `set_tags_role` | Set tags on a role. | |
| **Unset Tags From Role** | `unset_tags_role` | Unset tags from a role. | |
### Schemas
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------------------------- | ------- |
| **Clone Schema** | `clone_schema` | Clone an existing schema into a (possibly different) database. | |
| **Create or Alter Schema** | `create_or_alter_schema` | Create a new, or alter an existing, schema. | |
| **Create Schema** | `create_schema` | Create a schema in a database. | |
| **Delete Schema** | `delete_schema` | Drop a schema. | |
| **Fetch Schema** | `fetch_schema` | Fetch a single schema's definition. | |
| **Get Schema Tags** | `get_schema_tags` | Get the tag assignments for a schema. | |
| **Set Schema Tags** | `set_schema_tags` | Set a tag on a schema. | |
| **Undrop Schema** | `undrop_schema` | Restore a dropped schema. | |
| **Unset Schema Tags** | `unset_schema_tags` | Unset tags from a schema. | |
### Schemas & tables
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | --------------------------------------------- | ------- |
| **Fetch Table** | `fetch_table` | Describe a single table's metadata / columns. | |
| **List Schemas** | `list_schemas` | List schemas within a database. | |
| **List Tables** | `list_tables` | List tables in a schema. | |
### Secrets
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------------------------------- | ------- |
| **Create Secret** | `create_secret` | Create a secret in a schema. | |
| **Delete Secret** | `delete_secret` | Drop a secret. | |
| **Fetch Secret** | `fetch_secret` | Fetch a single secret's definition. | |
| **List Secrets** | `list_secrets` | List secrets in a schema. | |
### Sequences
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------------------- | ------- |
| **Clone Sequence** | `clone_sequence` | Clone a sequence into a (possibly different) schema. | |
| **Create Sequence** | `create_sequence` | Create a sequence in a schema. | |
| **Delete Sequence** | `delete_sequence` | Drop a sequence. | |
| **Fetch Sequence** | `fetch_sequence` | Fetch a single sequence's definition. | |
| **List Sequences** | `list_sequences` | List sequences in a schema. | |
| **Rename Sequence** | `rename_sequence` | Rename a sequence to a new identifier. | |
### Services
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ---------------------------------------------------------------------------- | ------- |
| **Create or Alter Service** | `create_or_alter_service` | Create a service, or alter it to match if it already exists. | |
| **Create Service** | `create_service` | Create a service in a schema. | |
| **Delete Service** | `delete_service` | Drop a service. | |
| **Execute Job Service** | `execute_job_service` | Create and execute a job service. | |
| **Fetch Service** | `fetch_service` | Fetch a single service's definition. | |
| **Fetch Service Logs** | `fetch_service_logs` | Fetch the logs for a service container instance. | |
| **Fetch Service Status** | `fetch_service_status` | Fetch the status for a service (deprecated, prefer List Service Containers). | |
| **List Service Containers** | `list_service_containers` | List all containers of a service. | |
| **List Service Instances** | `list_service_instances` | List all instances of a service. | |
| **List Service Role Grants Of** | `list_service_role_grants_of` | List all grants of a service role (who the role is granted to). | |
| **List Service Role Grants To** | `list_service_role_grants_to` | List all grants given to a service role (privileges the role holds). | |
| **List Service Roles** | `list_service_roles` | List all service roles of a service. | |
| **List Services** | `list_services` | List services in a schema. | |
| **Resume Service** | `resume_service` | Resume a suspended service. | |
| **Show Service Endpoints** | `show_service_endpoints` | List the endpoints exposed by a service. | |
| **Suspend Service** | `suspend_service` | Suspend a running service. | |
### SQL
| Operation | ID | Description | Trigger |
| ---------------------------------- | ------------------ | ---------------------------------------------------------------------- | ------- |
| **Cancel Statement** | `cancel_statement` | Abort an in-flight async statement. | |
| **Get Statement Status / Results** | `get_statement` | Check status / fetch result rows for a previously submitted statement. | |
| **Run SQL Statement** | `run_statement` | Execute a SQL statement (query / DML / DDL) via the SQL API. | |
### Stages
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------------------------------------------------------ | ------- |
| **Create Stage** | `create_stage` | Create a stage in a schema. | |
| **Delete Stage** | `delete_stage` | Drop a stage. | |
| **Fetch Stage** | `fetch_stage` | Fetch a single stage's definition. | |
| **Get Presigned URL** | `get_presigned_url` | Generate a presigned url (and optional encryption materials) for a stage file. | |
| **List Files** | `list_files` | List files in a stage (equivalent to LIST @stage). | |
| **List Stages** | `list_stages` | List named stages (for file / data loading). | |
### Streamlit apps
| Operation | ID | Description | Trigger |
| ----------------------------- | -------------------------------- | ------------------------------------------------------------------------- | ------- |
| **Abort Live Version** | `abort_streamlit` | Abort the live version of a Streamlit, discarding uncommitted changes. | |
| **Add Live Version** | `add_live_version_streamlit` | Add a live version to a Streamlit, making a version active for users. | |
| **Add Version From Git** | `add_version_from_git_streamlit` | Add a new version to a Streamlit using a Git tag or commit reference URI. | |
| **Add Version From Source** | `add_version_streamlit` | Add a new version to a Streamlit by copying files from a stage location. | |
| **Commit Live Version** | `commit_streamlit` | Commit the LIVE version of a Streamlit to its connected Git repository. | |
| **Create Streamlit** | `create_streamlit` | Create a Streamlit application, or replace an existing one. | |
| **Delete Streamlit** | `delete_streamlit` | Delete a Streamlit (restorable via undrop within the retention period). | |
| **Fetch Streamlit** | `fetch_streamlit` | Fetch a single Streamlit's details. | |
| **Get Tags on Streamlit** | `get_tags_streamlit` | Get the tag assignments for a Streamlit. | |
| **List Streamlits** | `list_streamlits` | List Streamlits in a schema. | |
| **Pull From Git** | `pull_streamlit` | Pull the latest changes from the Git repository for a Streamlit. | |
| **Push To Git** | `push_streamlit` | Push committed changes from a Streamlit back to its Git repository. | |
| **Rename Streamlit** | `rename_streamlit` | Rename a Streamlit, optionally into a different database or schema. | |
| **Set Tags on Streamlit** | `set_tags_streamlit` | Set a tag on a Streamlit. | |
| **Undrop Streamlit** | `undrop_streamlit` | Restore a previously deleted Streamlit within the retention period. | |
| **Unset Tags from Streamlit** | `unset_tags_streamlit` | Unset a tag from a Streamlit. | |
### Streams
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | -------------------------------------------------------------------- | ------- |
| **Clone Stream** | `clone_stream` | Clone a stream into a (possibly different) schema. | |
| **Create Stream** | `create_stream` | Create a stream on a table, external table, view, or stage. | |
| **Delete Stream** | `delete_stream` | Drop a stream. | |
| **Fetch Stream** | `fetch_stream` | Fetch a single stream's definition. | |
| **Get Stream Tags** | `get_tags_stream` | Get the tag assignments for a stream (requires an active warehouse). | |
| **List Streams** | `list_streams` | List streams in a schema. | |
| **Set Stream Tags** | `set_tags_stream` | Set a tag on a stream. | |
| **Unset Stream Tags** | `unset_tags_stream` | Unset a tag from a stream. | |
### Tables
| Operation | ID | Description | Trigger |
| -------------------------------------------- | ---------------------------------------- | ------------------------------------------------------------------------------- | ------- |
| **Clone Table** | `clone_table` | Clone a table into a (possibly different) schema. | |
| **Create or Alter Table** | `create_or_alter_table` | Create a table, or alter it to match if it already exists. | |
| **Create Table** | `create_table` | Create a table in a schema. | |
| **Create Table As Select** | `create_table_as_select` | Create a table from the result of a SELECT query. | |
| **Create Table As Select (Deprecated)** | `create_table_as_select_deprecated` | (Deprecated) Create a table from a SELECT query (name in the path). | |
| **Create Table Like** | `create_table_like` | Create a new empty table like an existing one. | |
| **Create Table Like (Deprecated)** | `create_table_like_deprecated` | (Deprecated) Create a new empty table like an existing one. | |
| **Create Table Using Template** | `create_table_using_template` | Create a table using templates in staged files (INFER\_SCHEMA). | |
| **Create Table Using Template (Deprecated)** | `create_table_using_template_deprecated` | (Deprecated) Create a table using templates in staged files (name in the path). | |
| **Delete Table** | `delete_table` | Drop a table. | |
| **Get Table Tags** | `get_table_tags` | Get the tag assignments for a table (requires an active warehouse). | |
| **Resume Recluster Table** | `resume_recluster_table` | Resume automatic reclustering for a table. | |
| **Resume Recluster Table (Deprecated)** | `resume_recluster_table_deprecated` | (Deprecated) Resume automatic reclustering for a table. | |
| **Set Table Tags** | `set_table_tags` | Set a tag on a table. | |
| **Suspend Recluster Table** | `suspend_recluster_table` | Suspend automatic reclustering for a table. | |
| **Suspend Recluster Table (Deprecated)** | `suspend_recluster_table_deprecated` | (Deprecated) Suspend automatic reclustering for a table. | |
| **Swap With Table** | `swap_with_table` | Swap a table's metadata and data with another table. | |
| **Swap With Table (Deprecated)** | `swap_with_table_deprecated` | (Deprecated) Swap a table with another table (fully-qualified target). | |
| **Undrop Table** | `undrop_table` | Undrop a previously dropped table. | |
| **Unset Table Tags** | `unset_table_tags` | Unset a tag from a table. | |
### Tags
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | -------------------------------------------------------- | ------- |
| **Create or Alter Tag** | `create_or_alter_tag` | Create a tag, or alter it to match if it already exists. | |
| **Create Tag** | `create_tag` | Create a tag in a schema. | |
| **Delete Tag** | `delete_tag` | Drop a tag. | |
| **Fetch Tag** | `fetch_tag` | Fetch a single tag's definition. | |
| **List Tags** | `list_tags` | List tags in a schema. | |
| **Rename Tag** | `rename_tag` | Rename a tag to a new identifier. | |
| **Undrop Tag** | `undrop_tag` | Restore the most recently dropped tag of this name. | |
### Tasks
| Operation | ID | Description | Trigger |
| ------------------------------------ | -------------------------------- | --------------------------------------------------------------------- | ------- |
| **Create or Alter Task** | `create_or_alter_task` | Create a task, or alter it to match if it already exists. | |
| **Create Task** | `create_task` | Create a scheduled SQL task. | |
| **Delete Task** | `delete_task` | Drop a task. | |
| **Execute Task** | `execute_task` | Trigger an immediate manual run of a task. | |
| **Fetch Task** | `fetch_task` | Fetch a single task's definition. | |
| **Fetch Task Dependents** | `fetch_task_dependents` | Fetch the dependent tasks of a task. | |
| **Get Complete Graphs** | `get_complete_graphs` | Get completed graph runs for the task. | |
| **Get Complete Graphs (Deprecated)** | `get_complete_graphs_deprecated` | Get completed graph runs for the task (deprecated path). | |
| **Get Current Graphs** | `get_current_graphs` | Get graph runs executing or scheduled for the task. | |
| **Get Current Graphs (Deprecated)** | `get_current_graphs_deprecated` | Get graph runs executing or scheduled for the task (deprecated path). | |
| **Get Task Tags** | `get_tags_task` | Get the tag assignments for a task. | |
| **List Task Run History** | `task_history` | List completed task graph runs (status / timing). | |
| **List Tasks** | `list_tasks` | List scheduled tasks in a schema. | |
| **Resume Task** | `resume_task` | Resume (un-suspend) a task. | |
| **Set Task Tags** | `set_tags_task` | Set a tag on an existing task. | |
| **Suspend Task** | `suspend_task` | Pause an active task. | |
| **Unset Task Tags** | `unset_tags_task` | Unset a tag from an existing task. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------------ | ------------------ | -------------------------------------------------------------------- | ------- |
| **On Scheduled Query Results** | `on_query_results` | Poll a user-supplied SQL query on a schedule and emit only NEW rows. | Yes |
### User-Defined functions
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------------- | ------------------------------------------- | ------- |
| **Create User-Defined Function** | `create_user_defined_function` | Create a user-defined function in a schema. | |
| **Delete User-Defined Function** | `delete_user_defined_function` | Drop a UDF. | |
| **Execute User-Defined Function** | `execute_user_defined_function` | Execute a UDF with the given arguments. | |
| **Fetch User-Defined Function** | `fetch_user_defined_function` | Fetch a single UDF's definition. | |
| **Get User-Defined Function Tags** | `get_user_defined_function_tags` | Get the tag assignments for a UDF. | |
| **List User-Defined Functions** | `list_user_defined_functions` | List user-defined functions in a schema. | |
| **Rename User-Defined Function** | `rename_user_defined_function` | Rename a UDF to a new identifier. | |
| **Set User-Defined Function Tags** | `set_user_defined_function_tags` | Set tags on a UDF. | |
| **Unset User-Defined Function Tags** | `unset_user_defined_function_tags` | Unset tags from a UDF. | |
### Users
| Operation | ID | Description | Trigger |
| --------------------------- | ---------------------- | -------------------------------------------------------------------------------------- | ------- |
| **Create or Alter User** | `create_or_alter_user` | Create a user, or alter it to match if it already exists (full property set required). | |
| **Fetch User** | `fetch_user` | Fetch information about a single user (DESCRIBE result). | |
| **Get Tags On User** | `get_tags_user` | Get the tag assignments for a user (requires an active warehouse). | |
| **Grant Role To User** | `grant_user` | Grant a role to the user. | |
| **List Grants To User** | `list_grants_user` | List all grants (roles) granted to the user. | |
| **Revoke Grants From User** | `revoke_grants_user` | Revoke grants (roles) from the user. | |
| **Set Tags On User** | `set_tags_user` | Set tags on a user. | |
| **Unset Tags From User** | `unset_tags_user` | Unset tags from a user. | |
### Users & roles
| Operation | ID | Description | Trigger |
| --------------- | ------------- | ----------------------------- | ------- |
| **Create User** | `create_user` | Create a new user account. | |
| **Delete User** | `delete_user` | Drop a named user. | |
| **List Roles** | `list_roles` | List account roles. | |
| **List Users** | `list_users` | List Snowflake account users. | |
### Views
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ------------------------------------------------------------------ | ------- |
| **Create View** | `create_view` | Create a view in a schema. | |
| **Delete View** | `delete_view` | Drop a view. | |
| **Fetch View** | `fetch_view` | Fetch a single view's definition. | |
| **Get View Tags** | `get_view_tags` | Get the tag assignments for a view (requires an active warehouse). | |
| **List Views** | `list_views` | List views in a schema. | |
| **Set View Tags** | `set_view_tags` | Set tags on a view. | |
| **Unset View Tags** | `unset_view_tags` | Unset tags from a view. | |
### Warehouses
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ------------------------------------------------------------------------------------------- | ------- |
| **Abort Warehouse Queries** | `abort_warehouse` | Abort all running / queued queries on a warehouse. | |
| **Create or Alter Warehouse** | `create_or_alter_warehouse` | Create a warehouse, or alter it to match if it already exists (full property set required). | |
| **Create Warehouse** | `create_warehouse` | Create (or replace) a compute warehouse. | |
| **Delete Warehouse** | `delete_warehouse` | Drop a warehouse. | |
| **Disable Warehouse** | `disable_warehouse` | Disable an adaptive warehouse. | |
| **Enable Warehouse** | `enable_warehouse` | Enable an adaptive warehouse. | |
| **Fetch Warehouse** | `fetch_warehouse` | Describe a single warehouse. | |
| **Get Warehouse Tags** | `get_warehouse_tags` | Get the tag assignments for a warehouse (requires an active warehouse). | |
| **List Warehouses** | `list_warehouses` | List available compute warehouses. | |
| **Rename Warehouse** | `rename_warehouse` | Rename a warehouse to a new identifier. | |
| **Resume Warehouse** | `resume_warehouse` | Resume a suspended warehouse. | |
| **Set Warehouse Tags** | `set_warehouse_tags` | Set a tag on a warehouse. | |
| **Suspend Warehouse** | `suspend_warehouse` | Suspend a warehouse to stop credit usage. | |
| **Unset Warehouse Tags** | `unset_warehouse_tags` | Unset a tag from a warehouse. | |
| **Use Warehouse** | `use_warehouse` | \[Deprecated] Set the active warehouse for the session. | |
# Stripe
Source: https://docs.noclick.com/integrations/stripe
Connect Stripe to your workflows: 491 operations across 46 categories.
The Stripe node adds Stripe operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Stripe also includes 56 trigger operations (marked in the tables below) that can start a workflow when something happens in Stripe.
You can wire the Stripe node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Stripe under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Stripe account when prompted; no keys to copy.
NoClick requests the following permissions:
* `read_write`
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://dashboard.stripe.com/apikeys).
## Operations
### Advanced
| Operation | ID | Description | Trigger |
| ---------------------- | ---------------- | ----------- | ------- |
| **Custom API Request** | `custom_request` | | |
### Apps
| Operation | ID | Description | Trigger |
| ----------------- | --------------- | ----------- | ------- |
| **Delete Secret** | `delete_secret` | | |
| **Find Secret** | `find_secret` | | |
| **List Secrets** | `list_secrets` | | |
| **Set Secret** | `set_secret` | | |
### Balance
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------- | ------- |
| **List Balance Transactions** | `list_balance_transactions` | | |
| **Retrieve Balance** | `retrieve_balance` | | |
| **Retrieve Balance Transaction** | `retrieve_balance_transaction` | | |
### Billing alerts
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------ | ----------- | ------- |
| **Activate Billing Alert** | `activate_alert` | | |
| **Archive Billing Alert** | `archive_alert` | | |
| **Create Billing Alert** | `create_alert` | | |
| **Deactivate Billing Alert** | `deactivate_alert` | | |
| **List Billing Alerts** | `list_alerts` | | |
| **Retrieve Billing Alert** | `retrieve_alert` | | |
### Billing credit
| Operation | ID | Description | Trigger |
| --------------------------------------- | ------------------------------------- | ----------- | ------- |
| **Create Credit Grant** | `create_credit_grant` | | |
| **Expire Credit Grant** | `expire_credit_grant` | | |
| **List Credit Balance Transactions** | `list_credit_balance_transactions` | | |
| **List Credit Grants** | `list_credit_grants` | | |
| **Retrieve Credit Balance Summary** | `retrieve_credit_balance_summary` | | |
| **Retrieve Credit Balance Transaction** | `retrieve_credit_balance_transaction` | | |
| **Retrieve Credit Grant** | `retrieve_credit_grant` | | |
| **Update Credit Grant** | `update_credit_grant` | | |
| **Void Credit Grant** | `void_credit_grant` | | |
### Billing meters
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ----------- | ------- |
| **Create Meter** | `create_meter` | | |
| **Create Meter Event** | `create_meter_event` | | |
| **Create Meter Event Adjustment** | `create_meter_event_adjustment` | | |
| **Deactivate Meter** | `deactivate_meter` | | |
| **List Meter Event Summaries** | `list_meter_event_summaries` | | |
| **List Meters** | `list_meters` | | |
| **Reactivate Meter** | `reactivate_meter` | | |
| **Retrieve Meter** | `retrieve_meter` | | |
| **Update Meter** | `update_meter` | | |
### Billing portal
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ----------- | ------- |
| **Create Billing Portal Session** | `create_billing_portal_session` | | |
| **Create Portal Configuration** | `create_portal_configuration` | | |
| **List Portal Configurations** | `list_portal_configurations` | | |
| **Retrieve Portal Configuration** | `retrieve_portal_configuration` | | |
| **Update Portal Configuration** | `update_portal_configuration` | | |
### Charges
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **Capture Charge** | `capture_charge` | | |
| **Create Charge** | `create_charge` | | |
| **List Charges** | `list_charges` | | |
| **Retrieve Charge** | `retrieve_charge` | | |
| **Search Charges** | `search_charges` | | |
| **Update Charge** | `update_charge` | | |
### Checkout
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Create Checkout Session** | `create_checkout_session` | | |
| **Expire Checkout Session** | `expire_checkout_session` | | |
| **List Checkout Line Items** | `list_checkout_line_items` | | |
| **List Checkout Sessions** | `list_checkout_sessions` | | |
| **Retrieve Checkout Session** | `retrieve_checkout_session` | | |
### Climate
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Cancel Climate Order** | `cancel_climate_order` | | |
| **Create Climate Order** | `create_climate_order` | | |
| **List Climate Orders** | `list_climate_orders` | | |
| **List Climate Products** | `list_climate_products` | | |
| **List Climate Suppliers** | `list_climate_suppliers` | | |
| **Retrieve Climate Order** | `retrieve_climate_order` | | |
| **Retrieve Climate Product** | `retrieve_climate_product` | | |
| **Retrieve Climate Supplier** | `retrieve_climate_supplier` | | |
| **Update Climate Order** | `update_climate_order` | | |
### Connect
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ----------- | ------- |
| **Cancel Payout** | `cancel_payout` | | |
| **Cancel Top-up** | `cancel_topup` | | |
| **Create Account** | `create_account` | | |
| **Create Account Link** | `create_account_link` | | |
| **Create Account Session** | `create_account_session` | | |
| **Create Application Fee Refund** | `create_application_fee_refund` | | |
| **Create External Account** | `create_external_account` | | |
| **Create Login Link** | `create_login_link` | | |
| **Create Payout** | `create_payout` | | |
| **Create Person** | `create_person` | | |
| **Create Top-up** | `create_topup` | | |
| **Create Transfer** | `create_transfer` | | |
| **Create Transfer Reversal** | `create_transfer_reversal` | | |
| **Delete Account** | `delete_account` | | |
| **Delete External Account** | `delete_external_account` | | |
| **Delete Person** | `delete_person` | | |
| **List Accounts** | `list_accounts` | | |
| **List Application Fee Refunds** | `list_application_fee_refunds` | | |
| **List Application Fees** | `list_application_fees` | | |
| **List Capabilities** | `list_capabilities` | | |
| **List Country Specs** | `list_country_specs` | | |
| **List External Accounts** | `list_external_accounts` | | |
| **List Payouts** | `list_payouts` | | |
| **List Persons** | `list_persons` | | |
| **List Top-ups** | `list_topups` | | |
| **List Transfer Reversals** | `list_transfer_reversals` | | |
| **List Transfers** | `list_transfers` | | |
| **Reject Account** | `reject_account` | | |
| **Retrieve Account** | `retrieve_account` | | |
| **Retrieve Application Fee** | `retrieve_application_fee` | | |
| **Retrieve Application Fee Refund** | `retrieve_application_fee_refund` | | |
| **Retrieve Capability** | `retrieve_capability` | | |
| **Retrieve Country Spec** | `retrieve_country_spec` | | |
| **Retrieve External Account** | `retrieve_external_account` | | |
| **Retrieve Payout** | `retrieve_payout` | | |
| **Retrieve Person** | `retrieve_person` | | |
| **Retrieve Top-up** | `retrieve_topup` | | |
| **Retrieve Transfer** | `retrieve_transfer` | | |
| **Retrieve Transfer Reversal** | `retrieve_transfer_reversal` | | |
| **Reverse Payout** | `reverse_payout` | | |
| **Update Account** | `update_account` | | |
| **Update Application Fee Refund** | `update_application_fee_refund` | | |
| **Update Capability** | `update_capability` | | |
| **Update External Account** | `update_external_account` | | |
| **Update Payout** | `update_payout` | | |
| **Update Person** | `update_person` | | |
| **Update Transfer** | `update_transfer` | | |
| **Update Transfer Reversal** | `update_transfer_reversal` | | |
### Coupons
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **Create Coupon** | `create_coupon` | | |
| **Delete Coupon** | `delete_coupon` | | |
| **List Coupons** | `list_coupons` | | |
| **Retrieve Coupon** | `retrieve_coupon` | | |
| **Update Coupon** | `update_coupon` | | |
### Credit notes
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Create Credit Note** | `create_credit_note` | | |
| **List Credit Note Lines** | `list_credit_note_lines` | | |
| **List Credit Notes** | `list_credit_notes` | | |
| **Preview Credit Note** | `preview_credit_note` | | |
| **Preview Credit Note Lines** | `preview_credit_note_lines` | | |
| **Retrieve Credit Note** | `retrieve_credit_note` | | |
| **Update Credit Note** | `update_credit_note` | | |
| **Void Credit Note** | `void_credit_note` | | |
### Customers
| Operation | ID | Description | Trigger |
| ----------------------------------------- | -------------------------------------------- | ----------- | ------- |
| **Create Customer** | `create_customer` | | |
| **Create Customer Balance Transaction** | `create_customer_balance_transaction` | | |
| **Create Customer Session** | `create_customer_session` | | |
| **Create Customer Tax ID** | `create_customer_tax_id` | | |
| **Delete Customer** | `delete_customer` | | |
| **Delete Customer Tax ID** | `delete_customer_tax_id` | | |
| **List Cash Balance Transactions** | `list_customer_cash_balance_transactions` | | |
| **List Customer Balance Transactions** | `list_customer_balance_transactions` | | |
| **List Customer Tax IDs** | `list_customer_tax_ids` | | |
| **List Customers** | `list_customers` | | |
| **Retrieve Cash Balance Transaction** | `retrieve_customer_cash_balance_transaction` | | |
| **Retrieve Customer** | `retrieve_customer` | | |
| **Retrieve Customer Balance Transaction** | `retrieve_customer_balance_transaction` | | |
| **Retrieve Customer Cash Balance** | `retrieve_customer_cash_balance` | | |
| **Retrieve Customer Tax ID** | `retrieve_customer_tax_id` | | |
| **Search Customers** | `search_customers` | | |
| **Update Customer** | `update_customer` | | |
| **Update Customer Balance Transaction** | `update_customer_balance_transaction` | | |
| **Update Customer Cash Balance** | `update_customer_cash_balance` | | |
### Disputes
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Close Dispute** | `close_dispute` | | |
| **List Disputes** | `list_disputes` | | |
| **Retrieve Dispute** | `retrieve_dispute` | | |
| **Update Dispute** | `update_dispute` | | |
### Entitlements
| Operation | ID | Description | Trigger |
| ------------------------------- | ------------------------------- | ----------- | ------- |
| **Create Feature** | `create_entitlements_feature` | | |
| **List Active Entitlements** | `list_active_entitlements` | | |
| **List Features** | `list_entitlements_features` | | |
| **Retrieve Active Entitlement** | `retrieve_active_entitlement` | | |
| **Retrieve Feature** | `retrieve_entitlements_feature` | | |
| **Update Feature** | `update_entitlements_feature` | | |
### Events
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **List Events** | `list_events` | | |
| **Retrieve Event** | `retrieve_event` | | |
### Files
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ----------- | ------- |
| **Create File Link** | `create_file_link` | | |
| **List File Links** | `list_file_links` | | |
| **List Files** | `list_files` | | |
| **Retrieve File** | `retrieve_file` | | |
| **Retrieve File Link** | `retrieve_file_link` | | |
| **Update File Link** | `update_file_link` | | |
### Financial connections
| Operation | ID | Description | Trigger |
| ---------------------------------------------- | -------------------------------------------- | ----------- | ------- |
| **Create Financial Connections Session** | `create_financial_connections_session` | | |
| **Disconnect Account** | `disconnect_financial_connections_account` | | |
| **List Account Owners** | `list_financial_connections_account_owners` | | |
| **List Financial Connections Accounts** | `list_financial_connections_accounts` | | |
| **List Financial Connections Transactions** | `list_financial_connections_transactions` | | |
| **Refresh Account** | `refresh_financial_connections_account` | | |
| **Retrieve Financial Connections Account** | `retrieve_financial_connections_account` | | |
| **Retrieve Financial Connections Session** | `retrieve_financial_connections_session` | | |
| **Retrieve Financial Connections Transaction** | `retrieve_financial_connections_transaction` | | |
| **Subscribe Account** | `subscribe_financial_connections_account` | | |
| **Unsubscribe Account** | `unsubscribe_financial_connections_account` | | |
### Forwarding
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Create Forwarding Request** | `create_forwarding_request` | | |
| **List Forwarding Requests** | `list_forwarding_requests` | | |
| **Retrieve Forwarding Request** | `retrieve_forwarding_request` | | |
### Identity
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ----------- | ------- |
| **Cancel Verification Session** | `cancel_verification_session` | | |
| **Create Verification Session** | `create_verification_session` | | |
| **List Verification Reports** | `list_verification_reports` | | |
| **List Verification Sessions** | `list_verification_sessions` | | |
| **Redact Verification Session** | `redact_verification_session` | | |
| **Retrieve Verification Report** | `retrieve_verification_report` | | |
| **Retrieve Verification Session** | `retrieve_verification_session` | | |
| **Update Verification Session** | `update_verification_session` | | |
### Invoice items
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Create Invoice Item** | `create_invoice_item` | | |
| **Delete Invoice Item** | `delete_invoice_item` | | |
| **List Invoice Items** | `list_invoice_items` | | |
| **Retrieve Invoice Item** | `retrieve_invoice_item` | | |
| **Update Invoice Item** | `update_invoice_item` | | |
### Invoices
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ----------- | ------- |
| **Add Invoice Lines** | `add_invoice_lines` | | |
| **Bulk Update Invoice Lines** | `update_invoice_lines` | | |
| **Create Invoice** | `create_invoice` | | |
| **Create Preview Invoice** | `create_preview_invoice` | | |
| **Delete Invoice** | `delete_invoice` | | |
| **Finalize Invoice** | `finalize_invoice` | | |
| **List Invoice Lines** | `list_invoice_lines` | | |
| **List Invoices** | `list_invoices` | | |
| **Mark Invoice Uncollectible** | `mark_uncollectible_invoice` | | |
| **Pay Invoice** | `pay_invoice` | | |
| **Remove Invoice Lines** | `remove_invoice_lines` | | |
| **Retrieve Invoice** | `retrieve_invoice` | | |
| **Search Invoices** | `search_invoices` | | |
| **Send Invoice** | `send_invoice` | | |
| **Update Invoice** | `update_invoice` | | |
| **Update Invoice Line** | `update_invoice_line` | | |
| **Void Invoice** | `void_invoice` | | |
### Issuing
| Operation | ID | Description | Trigger |
| --------------------------------------- | ----------------------------------------- | ----------- | ------- |
| **Approve Issuing Authorization** | `approve_issuing_authorization` | | |
| **Create Issuing Card** | `create_issuing_card` | | |
| **Create Issuing Cardholder** | `create_issuing_cardholder` | | |
| **Create Issuing Dispute** | `create_issuing_dispute` | | |
| **Create Issuing Funding Instructions** | `create_issuing_funding_instructions` | | |
| **Create Personalization Design** | `create_issuing_personalization_design` | | |
| **Decline Issuing Authorization** | `decline_issuing_authorization` | | |
| **List Issuing Authorizations** | `list_issuing_authorizations` | | |
| **List Issuing Cardholders** | `list_issuing_cardholders` | | |
| **List Issuing Cards** | `list_issuing_cards` | | |
| **List Issuing Disputes** | `list_issuing_disputes` | | |
| **List Issuing Funding Instructions** | `list_issuing_funding_instructions` | | |
| **List Issuing Tokens** | `list_issuing_tokens` | | |
| **List Issuing Transactions** | `list_issuing_transactions` | | |
| **List Personalization Designs** | `list_issuing_personalization_designs` | | |
| **List Physical Bundles** | `list_issuing_physical_bundles` | | |
| **Retrieve Issuing Authorization** | `retrieve_issuing_authorization` | | |
| **Retrieve Issuing Card** | `retrieve_issuing_card` | | |
| **Retrieve Issuing Cardholder** | `retrieve_issuing_cardholder` | | |
| **Retrieve Issuing Dispute** | `retrieve_issuing_dispute` | | |
| **Retrieve Issuing Token** | `retrieve_issuing_token` | | |
| **Retrieve Issuing Transaction** | `retrieve_issuing_transaction` | | |
| **Retrieve Personalization Design** | `retrieve_issuing_personalization_design` | | |
| **Retrieve Physical Bundle** | `retrieve_issuing_physical_bundle` | | |
| **Submit Issuing Dispute** | `submit_issuing_dispute` | | |
| **Update Issuing Authorization** | `update_issuing_authorization` | | |
| **Update Issuing Card** | `update_issuing_card` | | |
| **Update Issuing Cardholder** | `update_issuing_cardholder` | | |
| **Update Issuing Dispute** | `update_issuing_dispute` | | |
| **Update Issuing Token** | `update_issuing_token` | | |
| **Update Issuing Transaction** | `update_issuing_transaction` | | |
| **Update Personalization Design** | `update_issuing_personalization_design` | | |
### Payment links
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------- | ------- |
| **Create Payment Link** | `create_payment_link` | | |
| **List Payment Link Line Items** | `list_payment_link_line_items` | | |
| **List Payment Links** | `list_payment_links` | | |
| **Retrieve Payment Link** | `retrieve_payment_link` | | |
| **Update Payment Link** | `update_payment_link` | | |
### Payment methods
| Operation | ID | Description | Trigger |
| ----------------------------------------- | --------------------------------------- | ----------- | ------- |
| **Attach Payment Method** | `attach_payment_method` | | |
| **Create Payment Method** | `create_payment_method` | | |
| **Create Payment Method Configuration** | `create_payment_method_configuration` | | |
| **Create Payment Method Domain** | `create_payment_method_domain` | | |
| **Detach Payment Method** | `detach_payment_method` | | |
| **List Payment Method Configurations** | `list_payment_method_configurations` | | |
| **List Payment Method Domains** | `list_payment_method_domains` | | |
| **List Payment Methods** | `list_payment_methods` | | |
| **Retrieve Payment Method** | `retrieve_payment_method` | | |
| **Retrieve Payment Method Configuration** | `retrieve_payment_method_configuration` | | |
| **Retrieve Payment Method Domain** | `retrieve_payment_method_domain` | | |
| **Update Payment Method** | `update_payment_method` | | |
| **Update Payment Method Configuration** | `update_payment_method_configuration` | | |
| **Update Payment Method Domain** | `update_payment_method_domain` | | |
| **Validate Payment Method Domain** | `validate_payment_method_domain` | | |
### Payments
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Attach Source to Customer** | `attach_source` | | |
| **Cancel Payment Intent** | `cancel_payment_intent` | | |
| **Capture Payment Intent** | `capture_payment_intent` | | |
| **Confirm Payment Intent** | `confirm_payment_intent` | | |
| **Create Payment Intent** | `create_payment_intent` | | |
| **Create Source** | `create_source` | | |
| **Create Token** | `create_token` | | |
| **Detach Source from Customer** | `detach_source` | | |
| **List Payment Intents** | `list_payment_intents` | | |
| **List Setup Attempts** | `list_setup_attempts` | | |
| **Retrieve Confirmation Token** | `retrieve_confirmation_token` | | |
| **Retrieve Mandate** | `retrieve_mandate` | | |
| **Retrieve Payment Intent** | `retrieve_payment_intent` | | |
| **Retrieve Source** | `retrieve_source` | | |
| **Retrieve Token** | `retrieve_token` | | |
| **Search Payment Intents** | `search_payment_intents` | | |
| **Update Payment Intent** | `update_payment_intent` | | |
| **Update Source** | `update_source` | | |
### Prices
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------- | ------- |
| **Create Price** | `create_price` | | |
| **List Prices** | `list_prices` | | |
| **Retrieve Price** | `retrieve_price` | | |
| **Search Prices** | `search_prices` | | |
| **Update Price** | `update_price` | | |
### Products
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------- | ------- |
| **Create Product** | `create_product` | | |
| **Delete Product** | `delete_product` | | |
| **List Products** | `list_products` | | |
| **Retrieve Product** | `retrieve_product` | | |
| **Search Products** | `search_products` | | |
| **Update Product** | `update_product` | | |
### Promotion codes
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------- | ------- |
| **Create Promotion Code** | `create_promotion_code` | | |
| **List Promotion Codes** | `list_promotion_codes` | | |
| **Retrieve Promotion Code** | `retrieve_promotion_code` | | |
| **Update Promotion Code** | `update_promotion_code` | | |
### Quotes
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ---------------------------------------- | ----------- | ------- |
| **Accept Quote** | `accept_quote` | | |
| **Cancel Quote** | `cancel_quote` | | |
| **Create Quote** | `create_quote` | | |
| **Finalize Quote** | `finalize_quote` | | |
| **List Quote Computed Upfront Line Items** | `list_quote_computed_upfront_line_items` | | |
| **List Quote Line Items** | `list_quote_line_items` | | |
| **List Quotes** | `list_quotes` | | |
| **Retrieve Quote** | `retrieve_quote` | | |
| **Update Quote** | `update_quote` | | |
### Radar
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------- | ------- |
| **Approve Review** | `approve_review` | | |
| **Create Value List** | `create_value_list` | | |
| **Create Value List Item** | `create_value_list_item` | | |
| **Delete Value List** | `delete_value_list` | | |
| **Delete Value List Item** | `delete_value_list_item` | | |
| **List Early Fraud Warnings** | `list_early_fraud_warnings` | | |
| **List Reviews** | `list_reviews` | | |
| **List Value List Items** | `list_value_list_items` | | |
| **List Value Lists** | `list_value_lists` | | |
| **Retrieve Early Fraud Warning** | `retrieve_early_fraud_warning` | | |
| **Retrieve Review** | `retrieve_review` | | |
| **Retrieve Value List** | `retrieve_value_list` | | |
| **Retrieve Value List Item** | `retrieve_value_list_item` | | |
| **Update Value List** | `update_value_list` | | |
### Refunds
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ----------- | ------- |
| **Cancel Refund** | `cancel_refund` | | |
| **Create Refund** | `create_refund` | | |
| **List Refunds** | `list_refunds` | | |
| **Retrieve Refund** | `retrieve_refund` | | |
| **Update Refund** | `update_refund` | | |
### Reporting
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------- | ------- |
| **Create Report Run** | `create_report_run` | | |
| **List Report Runs** | `list_report_runs` | | |
| **List Report Types** | `list_report_types` | | |
| **List Scheduled Query Runs** | `list_scheduled_query_runs` | | |
| **Retrieve Report Run** | `retrieve_report_run` | | |
| **Retrieve Report Type** | `retrieve_report_type` | | |
| **Retrieve Scheduled Query Run** | `retrieve_scheduled_query_run` | | |
### Setup intents
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Cancel Setup Intent** | `cancel_setup_intent` | | |
| **Confirm Setup Intent** | `confirm_setup_intent` | | |
| **Create Setup Intent** | `create_setup_intent` | | |
| **List Setup Intents** | `list_setup_intents` | | |
| **Retrieve Setup Intent** | `retrieve_setup_intent` | | |
| **Update Setup Intent** | `update_setup_intent` | | |
### Shipping rates
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------- | ------- |
| **Create Shipping Rate** | `create_shipping_rate` | | |
| **List Shipping Rates** | `list_shipping_rates` | | |
| **Retrieve Shipping Rate** | `retrieve_shipping_rate` | | |
| **Update Shipping Rate** | `update_shipping_rate` | | |
### Subscription items
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------- | ------- |
| **Create Subscription Item** | `create_subscription_item` | | |
| **Create Usage Record** | `create_usage_record` | | |
| **Delete Subscription Item** | `delete_subscription_item` | | |
| **List Subscription Items** | `list_subscription_items` | | |
| **List Usage Record Summaries** | `list_usage_record_summaries` | | |
| **Retrieve Subscription Item** | `retrieve_subscription_item` | | |
| **Update Subscription Item** | `update_subscription_item` | | |
### Subscription schedules
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------------- | ----------- | ------- |
| **Cancel Subscription Schedule** | `cancel_subscription_schedule` | | |
| **Create Subscription Schedule** | `create_subscription_schedule` | | |
| **List Subscription Schedules** | `list_subscription_schedules` | | |
| **Release Subscription Schedule** | `release_subscription_schedule` | | |
| **Retrieve Subscription Schedule** | `retrieve_subscription_schedule` | | |
| **Update Subscription Schedule** | `update_subscription_schedule` | | |
### Subscriptions
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------- | ------- |
| **Cancel Subscription** | `cancel_subscription` | | |
| **Create Subscription** | `create_subscription` | | |
| **List Subscriptions** | `list_subscriptions` | | |
| **Resume Subscription** | `resume_subscription` | | |
| **Retrieve Subscription** | `retrieve_subscription` | | |
| **Search Subscriptions** | `search_subscriptions` | | |
| **Update Subscription** | `update_subscription` | | |
### Tax
| Operation | ID | Description | Trigger |
| ------------------------------------------- | ----------------------------------------- | ----------- | ------- |
| **Create Tax Calculation** | `create_tax_calculation` | | |
| **Create Tax ID** | `create_tax_id` | | |
| **Create Tax Registration** | `create_tax_registration` | | |
| **Create Tax Transaction from Calculation** | `create_tax_transaction_from_calculation` | | |
| **Create Tax Transaction Reversal** | `create_tax_transaction_reversal` | | |
| **Delete Tax ID** | `delete_tax_id` | | |
| **List Tax Calculation Line Items** | `list_tax_calculation_line_items` | | |
| **List Tax Codes** | `list_tax_codes` | | |
| **List Tax IDs** | `list_tax_ids` | | |
| **List Tax Registrations** | `list_tax_registrations` | | |
| **List Tax Transaction Line Items** | `list_tax_transaction_line_items` | | |
| **Retrieve Tax Calculation** | `retrieve_tax_calculation` | | |
| **Retrieve Tax Code** | `retrieve_tax_code` | | |
| **Retrieve Tax ID** | `retrieve_tax_id` | | |
| **Retrieve Tax Registration** | `retrieve_tax_registration` | | |
| **Retrieve Tax Settings** | `retrieve_tax_settings` | | |
| **Retrieve Tax Transaction** | `retrieve_tax_transaction` | | |
| **Update Tax Registration** | `update_tax_registration` | | |
| **Update Tax Settings** | `update_tax_settings` | | |
### Tax rates
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------- | ------- |
| **Create Tax Rate** | `create_tax_rate` | | |
| **List Tax Rates** | `list_tax_rates` | | |
| **Retrieve Tax Rate** | `retrieve_tax_rate` | | |
| **Update Tax Rate** | `update_tax_rate` | | |
### Terminal
| Operation | ID | Description | Trigger |
| ----------------------------------- | ---------------------------------------- | ----------- | ------- |
| **Create Connection Token** | `create_terminal_connection_token` | | |
| **Create Terminal Configuration** | `create_terminal_configuration` | | |
| **Create Terminal Location** | `create_terminal_location` | | |
| **Create Terminal Reader** | `create_terminal_reader` | | |
| **Delete Terminal Configuration** | `delete_terminal_configuration` | | |
| **Delete Terminal Location** | `delete_terminal_location` | | |
| **Delete Terminal Reader** | `delete_terminal_reader` | | |
| **List Terminal Configurations** | `list_terminal_configurations` | | |
| **List Terminal Locations** | `list_terminal_locations` | | |
| **List Terminal Readers** | `list_terminal_readers` | | |
| **Reader: Cancel Action** | `cancel_action_terminal_reader` | | |
| **Reader: Collect Inputs** | `collect_inputs_terminal_reader` | | |
| **Reader: Process Payment Intent** | `process_payment_intent_terminal_reader` | | |
| **Reader: Process Setup Intent** | `process_setup_intent_terminal_reader` | | |
| **Reader: Refund Payment** | `refund_payment_terminal_reader` | | |
| **Retrieve Terminal Configuration** | `retrieve_terminal_configuration` | | |
| **Retrieve Terminal Location** | `retrieve_terminal_location` | | |
| **Retrieve Terminal Reader** | `retrieve_terminal_reader` | | |
| **Update Terminal Configuration** | `update_terminal_configuration` | | |
| **Update Terminal Location** | `update_terminal_location` | | |
| **Update Terminal Reader** | `update_terminal_reader` | | |
### Test helpers
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------- | ------- |
| **Advance Test Clock** | `advance_test_clock` | | |
| **Create Test Clock** | `create_test_clock` | | |
| **Delete Test Clock** | `delete_test_clock` | | |
| **List Test Clocks** | `list_test_clocks` | | |
| **Retrieve Test Clock** | `retrieve_test_clock` | | |
### Treasury
| Operation | ID | Description | Trigger |
| --------------------------------------- | ---------------------------------------------- | ----------- | ------- |
| **Cancel Inbound Transfer** | `cancel_treasury_inbound_transfer` | | |
| **Cancel Outbound Payment** | `cancel_treasury_outbound_payment` | | |
| **Cancel Outbound Transfer** | `cancel_treasury_outbound_transfer` | | |
| **Create Credit Reversal** | `create_treasury_credit_reversal` | | |
| **Create Debit Reversal** | `create_treasury_debit_reversal` | | |
| **Create Financial Account** | `create_treasury_financial_account` | | |
| **Create Inbound Transfer** | `create_treasury_inbound_transfer` | | |
| **Create Outbound Payment** | `create_treasury_outbound_payment` | | |
| **Create Outbound Transfer** | `create_treasury_outbound_transfer` | | |
| **List Credit Reversals** | `list_treasury_credit_reversals` | | |
| **List Debit Reversals** | `list_treasury_debit_reversals` | | |
| **List Financial Accounts** | `list_treasury_financial_accounts` | | |
| **List Inbound Transfers** | `list_treasury_inbound_transfers` | | |
| **List Outbound Payments** | `list_treasury_outbound_payments` | | |
| **List Outbound Transfers** | `list_treasury_outbound_transfers` | | |
| **List Received Credits** | `list_treasury_received_credits` | | |
| **List Received Debits** | `list_treasury_received_debits` | | |
| **List Transaction Entries** | `list_treasury_transaction_entries` | | |
| **List Treasury Transactions** | `list_treasury_transactions` | | |
| **Retrieve Credit Reversal** | `retrieve_treasury_credit_reversal` | | |
| **Retrieve Debit Reversal** | `retrieve_treasury_debit_reversal` | | |
| **Retrieve Financial Account** | `retrieve_treasury_financial_account` | | |
| **Retrieve Financial Account Features** | `retrieve_treasury_financial_account_features` | | |
| **Retrieve Inbound Transfer** | `retrieve_treasury_inbound_transfer` | | |
| **Retrieve Outbound Payment** | `retrieve_treasury_outbound_payment` | | |
| **Retrieve Outbound Transfer** | `retrieve_treasury_outbound_transfer` | | |
| **Retrieve Received Credit** | `retrieve_treasury_received_credit` | | |
| **Retrieve Received Debit** | `retrieve_treasury_received_debit` | | |
| **Retrieve Transaction Entry** | `retrieve_treasury_transaction_entry` | | |
| **Retrieve Treasury Transaction** | `retrieve_treasury_transaction` | | |
| **Update Financial Account** | `update_treasury_financial_account` | | |
| **Update Financial Account Features** | `update_treasury_financial_account_features` | | |
### Webhooks
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ----------- | ------- |
| **Create Webhook Endpoint** | `create_webhook_endpoint` | | |
| **Delete Webhook Endpoint** | `delete_webhook_endpoint` | | |
| **List Webhook Endpoints** | `list_webhook_endpoints` | | |
| **Retrieve Webhook Endpoint** | `retrieve_webhook_endpoint` | | |
| **Update Webhook Endpoint** | `update_webhook_endpoint` | | |
### Other
| Operation | ID | Description | Trigger |
| --------------------------------------- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ------- |
| **On Account Deauthorized** | `on_account_application_deauthorized` | | Yes |
| **On Charge Captured** | `on_charge_captured` | | Yes |
| **On Charge Failed** | `on_charge_failed` | | Yes |
| **On Charge Refunded** | `on_charge_refunded` | | Yes |
| **On Charge Succeeded** | `on_charge_succeeded` | | Yes |
| **On Charge Updated** | `on_charge_updated` | | Yes |
| **On Checkout Async Payment Failed** | `on_checkout_session_async_payment_failed` | | Yes |
| **On Checkout Async Payment Succeeded** | `on_checkout_session_async_payment_succeeded` | | Yes |
| **On Checkout Completed** | `on_checkout_session_completed` | | Yes |
| **On Checkout Expired** | `on_checkout_session_expired` | | Yes |
| **On Connected Account Updated** | `on_account_updated` | | Yes |
| **On Custom Event** | `on_event` | Trigger: fires on any Stripe event matching a custom allowlist (escape hatch for the long tail of event types not in the decomposed list). | Yes |
| **On Customer Created** | `on_customer_created` | | Yes |
| **On Customer Deleted** | `on_customer_deleted` | | Yes |
| **On Customer Updated** | `on_customer_updated` | | Yes |
| **On Dispute Closed** | `on_charge_dispute_closed` | | Yes |
| **On Dispute Created** | `on_charge_dispute_created` | | Yes |
| **On Dispute Funds Withdrawn** | `on_charge_dispute_funds_withdrawn` | | Yes |
| **On Dispute Updated** | `on_charge_dispute_updated` | | Yes |
| **On Invoice Created** | `on_invoice_created` | | Yes |
| **On Invoice Finalized** | `on_invoice_finalized` | | Yes |
| **On Invoice Paid** | `on_invoice_paid` | | Yes |
| **On Invoice Payment Action Required** | `on_invoice_payment_action_required` | | Yes |
| **On Invoice Payment Failed** | `on_invoice_payment_failed` | | Yes |
| **On Invoice Payment Succeeded** | `on_invoice_payment_succeeded` | | Yes |
| **On Invoice Uncollectible** | `on_invoice_marked_uncollectible` | | Yes |
| **On Invoice Voided** | `on_invoice_voided` | | Yes |
| **On Payment Failed** | `on_payment_intent_payment_failed` | | Yes |
| **On Payment Intent Canceled** | `on_payment_intent_canceled` | | Yes |
| **On Payment Intent Created** | `on_payment_intent_created` | | Yes |
| **On Payment Method Attached** | `on_payment_method_attached` | | Yes |
| **On Payment Method Detached** | `on_payment_method_detached` | | Yes |
| **On Payment Processing** | `on_payment_intent_processing` | | Yes |
| **On Payment Requires Action** | `on_payment_intent_requires_action` | | Yes |
| **On Payment Succeeded** | `on_payment_intent_succeeded` | | Yes |
| **On Payout Created** | `on_payout_created` | | Yes |
| **On Payout Failed** | `on_payout_failed` | | Yes |
| **On Payout Paid** | `on_payout_paid` | | Yes |
| **On Price Created** | `on_price_created` | | Yes |
| **On Price Updated** | `on_price_updated` | | Yes |
| **On Product Created** | `on_product_created` | | Yes |
| **On Product Deleted** | `on_product_deleted` | | Yes |
| **On Product Updated** | `on_product_updated` | | Yes |
| **On Quote Accepted** | `on_quote_accepted` | | Yes |
| **On Radar Review Closed** | `on_review_closed` | | Yes |
| **On Radar Review Opened** | `on_review_opened` | | Yes |
| **On Refund Updated** | `on_charge_refund_updated` | | Yes |
| **On Setup Intent Failed** | `on_setup_intent_setup_failed` | | Yes |
| **On Setup Intent Succeeded** | `on_setup_intent_succeeded` | | Yes |
| **On Subscription Canceled** | `on_customer_subscription_deleted` | | Yes |
| **On Subscription Created** | `on_customer_subscription_created` | | Yes |
| **On Subscription Paused** | `on_customer_subscription_paused` | | Yes |
| **On Subscription Resumed** | `on_customer_subscription_resumed` | | Yes |
| **On Subscription Updated** | `on_customer_subscription_updated` | | Yes |
| **On Trial Will End** | `on_customer_subscription_trial_will_end` | | Yes |
| **On Upcoming Invoice** | `on_invoice_upcoming` | | Yes |
# Submit External Form
Source: https://docs.noclick.com/integrations/submit-external-form
Connect Submit External Form to your workflows: 1 operation.
The Submit External Form node adds a single operation to your workflows. Add it on the canvas or ask the AI builder for it by name, then fill in its fields.
## Credentials
The Submit External Form node works without credentials. Add it to a workflow and it is ready to run.
## Operations
Submit External Form performs a single operation. Trigger another flow via its form.
# Supabase
Source: https://docs.noclick.com/integrations/supabase
Connect Supabase to your workflows: 34 operations across 7 categories.
The Supabase node adds Supabase operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Supabase node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Supabase under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Supabase account when prompted; no keys to copy.
NoClick requests the following permissions:
* `database:read`
* `database:write`
* `auth:read`
* `auth:write`
* `storage:read`
* `storage:write`
* `edge_functions:read`
* `edge_functions:write`
* `secrets:read`
* `projects:read`
### API key
Enter the values manually when creating the credential.
[Get your credentials here](https://supabase.com/dashboard/project/_/settings/api).
## Operations
### Auth
| Operation | ID | Description |
| ----------------------------- | --------------------------- | --------------------------------------------------- |
| **Refresh Access Token** | `refresh_access_token` | Refresh an expired access token using refresh token |
| **Send Password Reset Email** | `send_password_reset_email` | Send password reset email to user |
| **Verify Otp Code** | `verify_otp_code` | Verify OTP code sent via email or SMS |
### Auth session
| Operation | ID | Description |
| -------------------------- | ------------------------ | --------------------------------------------------------- |
| **Send Magic Link Signin** | `send_magic_link_signin` | Send a magic link to user's email for passwordless signin |
| **Sign in with Password** | `sign_in_with_password` | Sign in with email and password |
| **Sign Out User** | `sign_out_user` | Sign out the current user (requires user's access token) |
### Auth user
| Operation | ID | Description |
| ----------------------- | --------------------- | --------------------------------------------------------------------- |
| **Admin Create User** | `admin_create_user` | Create a new user (admin operation, requires service\_role API key) |
| **Admin Delete User** | `admin_delete_user` | Delete a user by ID (admin operation, requires service\_role API key) |
| **Admin List Users** | `admin_list_users` | List all users (requires service\_role API key) |
| **Admin Update User** | `admin_update_user` | Update a user by ID (admin operation, requires service\_role API key) |
| **Get Current User** | `get_current_user` | Get current user details (requires user's access token) |
| **Sign Up User** | `sign_up_user` | Sign up a new user with email and password |
| **Update Current User** | `update_current_user` | Update current user's email, password, or metadata |
### Function
| Operation | ID | Description |
| -------------------------- | ------------------------ | ------------------------------- |
| **Call Database Function** | `call_database_function` | Call a database function (RPC) |
| **Invoke Edge Function** | `invoke_edge_function` | Invoke a Supabase Edge Function |
### Realtime
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | --------------------------------------------- |
| **Broadcast Realtime Message** | `broadcast_realtime_message` | Send broadcast messages to a Realtime channel |
### Storage
| Operation | ID | Description |
| -------------------------- | ------------------------ | --------------------------------------------- |
| **Copy Storage File** | `copy_storage_file` | Copy a file within or between buckets |
| **Create File Signed Url** | `create_file_signed_url` | Create a signed URL for temporary file access |
| **Create Storage Bucket** | `create_storage_bucket` | Create a new storage bucket |
| **Delete Storage Bucket** | `delete_storage_bucket` | Delete a storage bucket |
| **Delete Storage File** | `delete_storage_file` | Delete a file from storage |
| **Download Storage File** | `download_storage_file` | Download a file from storage |
| **Empty Storage Bucket** | `empty_storage_bucket` | Empty a storage bucket (delete all files) |
| **Get File Public Url** | `get_file_public_url` | Get public URL for a file in a public bucket |
| **Get Storage Bucket** | `get_storage_bucket` | Get bucket details |
| **List Bucket Files** | `list_bucket_files` | List files in a storage bucket folder |
| **List Storage Buckets** | `list_storage_buckets` | List all storage buckets |
| **Move Storage File** | `move_storage_file` | Move a file within or between buckets |
| **Upload Storage File** | `upload_storage_file` | Upload a file to storage |
### Table
| Operation | ID | Description |
| --------------------- | ------------------- | --------------------------------------------------------------------------------------- |
| **Delete Table Rows** | `delete_table_rows` | Delete rows matching filter conditions |
| **Insert Table Rows** | `insert_table_rows` | Insert one or more rows into a table |
| **Select Table Rows** | `select_table_rows` | Select/query rows from a table with filtering, ordering, and pagination |
| **Update Table Rows** | `update_table_rows` | Update rows matching filter conditions |
| **Upsert Table Rows** | `upsert_table_rows` | Insert rows or update if they already exist (based on primary key or unique constraint) |
# Tableau
Source: https://docs.noclick.com/integrations/tableau
Connect Tableau to your workflows: 349 operations across 27 categories.
The Tableau node adds Tableau operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Tableau also includes 20 trigger operations (marked in the tables below) that can start a workflow when something happens in Tableau.
You can wire the Tableau node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Tableau under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://help.tableau.com/current/pro/desktop/en-us/useracct.htm#create-and-revoke-personal-access-tokens).
## Operations
### Analytics extensions
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | ----------------------------------------------------------------------- | ------- |
| **Add Analytics Connection** | `add_analytics_connection` | Add an analytics extension connection to the site. | |
| **Delete Analytics Connection** | `delete_analytics_connection` | Delete an analytics extension connection from the site. | |
| **Delete Analytics Workbook Connection** | `delete_analytics_workbook_connection` | Remove the current analytics extension connection for a workbook. | |
| **Get Analytics Connection** | `get_analytics_connection` | Get analytics extension connection details. | |
| **Get Analytics Server Settings** | `get_analytics_server_settings` | Get enabled state of analytics extensions on the server. | |
| **Get Analytics Site Settings** | `get_analytics_site_settings` | Get enabled state of analytics extensions on the site. | |
| **Get Analytics Workbook Connection** | `get_analytics_workbook_connection` | Get the current analytics extension connection selected for a workbook. | |
| **List Analytics Connections** | `list_analytics_connections` | List analytics extension connections on the site. | |
| **List Analytics Workbook Connections** | `list_analytics_workbook_connections` | List analytics extension connections available to a workbook. | |
| **Update Analytics Connection** | `update_analytics_connection` | Update an analytics extension connection of the site. | |
| **Update Analytics Server Settings** | `update_analytics_server_settings` | Enable or disable analytics extensions on the server. | |
| **Update Analytics Site Settings** | `update_analytics_site_settings` | Update enabled state of analytics extensions on the site. | |
| **Update Analytics Workbook Connection** | `update_analytics_workbook_connection` | Set the analytics extension connection for a workbook. | |
### Authentication
| Operation | ID | Description | Trigger |
| -------------------------------- | --------------------- | ------------------------------------------------------------------------------------------ | ------- |
| **Get Current Server Session** | `get_current_session` | Get details of the current server session (user, site, and auth settings). | |
| **List Personal Access Tokens** | `list_pats` | List the personal access tokens (PATs) for a user (not available on Tableau Server). | |
| **Revoke Personal Access Token** | `revoke_pat` | Revoke a personal access token (PAT) by name for a user (not available on Tableau Server). | |
| **Switch Site** | `switch_site` | Switch the authenticated session to another site (not available on Tableau Cloud). | |
### Collections
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------- | ------- |
| **Add Collection Items** | `add_collection_items` | Add items to a collection. | |
| **Batch Update Collections** | `batch_update_collections` | Batch update collections. | |
| **Create Collection** | `create_collection` | Create a collection. | |
| **Delete Collection** | `delete_collection` | Delete a single collection by its LUID. | |
| **Delete Collections** | `delete_collections` | Delete multiple collections by their LUIDs. | |
| **Get Collection** | `get_collection` | Get details of a collection. | |
| **Query Collection Items** | `query_collection_items` | List items in a collection. | |
| **Query Collections** | `query_collections` | List collections on the site. | |
| **Remove Collection Items** | `remove_collection_items` | Remove items from a collection. | |
| **Reorder Collection Items** | `reorder_collection_items` | Reorder items in a collection. | |
### Connected app
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | --------------------------------------------------------------------- | ------- |
| **Create Connected App** | `create_connected_app` | Create a connected app (direct trust). | |
| **Create Connected App Secret** | `create_connected_app_secret` | Create a new secret for a connected app (direct trust). | |
| **Delete Connected App** | `delete_connected_app` | Delete a connected app (direct trust). | |
| **Delete Connected App Secret** | `delete_connected_app_secret` | Delete a connected app secret by id. | |
| **Delete EAS** | `delete_eas` | Delete a registered external authorization server (EAS). | |
| **Get Connected App** | `get_connected_app` | Get a connected app (direct trust) by client id. | |
| **Get Connected App Secret** | `get_connected_app_secret` | Get a connected app secret by id. | |
| **Get EAS** | `get_eas` | Get a registered external authorization server (EAS) by id. | |
| **List Connected Apps** | `list_connected_apps` | List all connected apps (direct trust) on the site. | |
| **List EAS** | `list_eas` | List all registered external authorization servers (EAS) on the site. | |
| **Register EAS** | `register_eas` | Register an external authorization server (EAS) for connected apps. | |
| **Update Connected App** | `update_connected_app` | Update a connected app (direct trust). | |
| **Update EAS** | `update_eas` | Update a registered external authorization server (EAS). | |
### Content exploration
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | -------------------------------------------------------------- | ------- |
| **Batch Get Content Usage** | `batch_get_content_usage` | Get batch content usage statistics for multiple content items. | |
| **Get Content Suggestions** | `get_content_suggestions` | Get content suggestions for a search term. | |
| **Get Content Usage** | `get_content_usage` | Get usage statistics for a single content item. | |
| **Search Content** | `search_content` | Get content search results across the site. | |
### Custom domain
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------- | ------- |
| **Create Custom Domain Settings** | `create_custom_domain_settings` | Create custom domain settings for the site. | |
| **Delete Custom Domain Settings** | `delete_custom_domain_settings` | Delete custom domain settings for the site. | |
| **Get Custom Domain Name** | `get_custom_domain` | Get the custom domain name for the site. | |
| **Get Custom Domain Settings** | `get_custom_domain_settings` | Get custom domain settings for the site. | |
| **Update Custom Domain Settings** | `update_custom_domain_settings` | Update custom domain settings for the site. | |
### Data sources
| Operation | ID | Description | Trigger |
| ------------------------------------ | ----------------------------------- | -------------------------------------------------------------------------------------- | ------- |
| **Add Data Source Permissions** | `add_datasource_permissions` | Add permissions (grantee capabilities) to a data source. | |
| **Add Tags to Data Source** | `add_datasource_tags` | Add one or more tags to a data source. | |
| **Delete Data Source** | `delete_datasource` | Delete a data source from the site. | |
| **Delete Data Source Permission** | `delete_datasource_permission` | Delete a single capability from a user or group on a data source. | |
| **Delete Tag from Data Source** | `delete_datasource_tag` | Delete a tag from a data source. | |
| **Download Data Source** | `download_datasource` | Download a data source (.tdsx/.tds) content. | |
| **Download Data Source Revision** | `download_datasource_revision` | Download the content of a specific data source revision. | |
| **Get Data Source** | `get_datasource` | Get details for a single data source. | |
| **Get Data Source Revisions** | `query_datasource_revisions` | List the revisions of a data source. | |
| **Query Data Source Connections** | `query_datasource_connections` | List the connections of a data source. | |
| **Query Data Source Permissions** | `query_datasource_permissions` | List the permissions on a data source. | |
| **Query Data Sources** | `query_datasources` | List published data sources on the site. | |
| **Refresh Data Source Now** | `refresh_datasource` | Trigger an immediate extract refresh for a data source (returns a job). | |
| **Remove Data Source Revision** | `remove_datasource_revision` | Remove a specific revision of a data source. | |
| **Retrieve Data Source Keychain** | `retrieve_datasource_keychain` | Retrieve the encrypted keychain of a data source (for migration to another site). | |
| **Update Data in Hyper Connection** | `update_datasource_connection_data` | Update data in a specific Hyper connection of a data source. | |
| **Update Data in Hyper Data Source** | `update_datasource_data` | Update data in a published Hyper data source via insert/update/delete/replace actions. | |
| **Update Data Source** | `update_datasource` | Update a data source's name, project, owner, or certification. | |
| **Update Data Source Connection** | `update_datasource_connection` | Update the server address, port, or credentials of a data source connection. | |
### Extract and encryption
| Operation | ID | Description | Trigger |
| ---------------------------------- | --------------------------- | --------------------------------------------------------------- | ------- |
| **Create Extract for Data Source** | `create_datasource_extract` | Create an extract for a published data source. | |
| **Create Extract for Workbook** | `create_workbook_extract` | Create extracts for the embedded data sources in a workbook. | |
| **Decrypt Extracts** | `decrypt_extracts` | Decrypt all extracts on the site. | |
| **Delete Extract for Data Source** | `delete_datasource_extract` | Delete the extract from a published data source. | |
| **Delete Extract for Workbook** | `delete_workbook_extract` | Delete the extracts of the embedded data sources in a workbook. | |
| **Encrypt Extracts** | `encrypt_extracts` | Encrypt all extracts on the site. | |
| **Reencrypt Extracts** | `reencrypt_extracts` | Reencrypt all extracts on the site with new encryption keys. | |
### Favorites
| Operation | ID | Description | Trigger |
| ------------------------------------- | ---------------------------- | ----------------------------------------------------------------------- | ------- |
| **Add Data Source to Favorites** | `add_datasource_favorite` | Add a data source to a user's favorites. | |
| **Add Flow to Favorites** | `add_flow_favorite` | Add a flow to a user's favorites. | |
| **Add Metric to Favorites** | `add_metric_favorite` | Add a metric to a user's favorites (retired in API 3.22). | |
| **Add Project to Favorites** | `add_project_favorite` | Add a project to a user's favorites. | |
| **Add View to Favorites** | `add_view_favorite` | Add a view to a user's favorites. | |
| **Add Workbook to Favorites** | `add_workbook_favorite` | Add a workbook to a user's favorites. | |
| **Delete Data Source from Favorites** | `delete_datasource_favorite` | Delete a data source from a user's favorites. | |
| **Delete Flow from Favorites** | `delete_flow_favorite` | Delete a flow from a user's favorites. | |
| **Delete Project from Favorites** | `delete_project_favorite` | Delete a project from a user's favorites. | |
| **Delete View from Favorites** | `delete_view_favorite` | Delete a view from a user's favorites. | |
| **Delete Workbook from Favorites** | `delete_workbook_favorite` | Delete a workbook from a user's favorites. | |
| **Get Favorites for User** | `get_user_favorites` | Get the favorites for a user. | |
| **Organize Favorites** | `organize_favorites` | Organize/reorder a user's favorites by moving a favorite after another. | |
### Flow
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ----------------------------------------------------------- | ------- |
| **Add Flow Permissions** | `add_flow_permissions` | Add permissions (capabilities) to a flow for users/groups. | |
| **Cancel Flow Run** | `cancel_flow_run` | Cancel an in-progress flow run. | |
| **Create Cloud Flow Task** | `create_flow_task` | Create a scheduled (Tableau Cloud) flow task. | |
| **Delete Flow** | `delete_flow` | Delete a flow. | |
| **Delete Flow Permission** | `delete_flow_permission` | Delete a single flow permission (capability) for a grantee. | |
| **Download Flow** | `download_flow` | Download a flow (.tfl / .tflx). | |
| **Get Flow** | `get_flow` | Get a single flow by LUID. | |
| **Get Flow Run** | `get_flow_run` | Get a single flow run by LUID. | |
| **Get Flow Run Task** | `get_flow_run_task` | Get a single scheduled flow-run task by LUID. | |
| **Get Flow Run Tasks** | `get_flow_run_tasks` | Get all scheduled flow-run tasks on the site. | |
| **Get Flow Runs** | `get_flow_runs` | Get all flow runs on the site. | |
| **Get Linked Task** | `get_linked_task` | Get a single linked task by LUID. | |
| **Get Linked Tasks** | `get_linked_tasks` | Get all linked tasks on the site. | |
| **List Flow Permissions** | `list_flow_permissions` | List a flow's permissions. | |
| **Query Flow Connections** | `query_flow_connections` | List a flow's connections. | |
| **Query Flows** | `query_flows` | Query all flows on the site. | |
| **Query Flows For User** | `query_flows_for_user` | Query flows owned by / available to a user. | |
| **Run Flow Now** | `run_flow_now` | Run a flow immediately. | |
| **Run Flow Task Now** | `run_flow_task` | Run a scheduled flow-run task immediately. | |
| **Run Linked Task Now** | `run_linked_task_now` | Run a linked task immediately. | |
| **Update Flow** | `update_flow` | Update a flow's name, description, or project. | |
| **Update Flow Connection** | `update_flow_connection` | Update a flow connection. | |
### Identity pools
| Operation | ID | Description | Trigger |
| --------------------------------------- | --------------------------- | -------------------------------------------------- | ------- |
| **Configure Identity Store** | `configure_identity_store` | Configure (register) an identity store. | |
| **Create Authentication Configuration** | `create_auth_configuration` | Create (register) an authentication configuration. | |
| **Create Identity Pool** | `create_identity_pool` | Create (register) an identity pool. | |
| **Delete Authentication Configuration** | `delete_auth_configuration` | Delete an authentication configuration. | |
| **Delete Identity Pool** | `delete_identity_pool` | Delete an identity pool by UUID. | |
| **Delete Identity Store** | `delete_identity_store` | Delete an identity store. | |
| **Get Identity Pool** | `get_identity_pool` | Get an identity pool by UUID. | |
| **List Authentication Configurations** | `list_auth_configuration` | List authentication configurations on the server. | |
| **List Identity Pools** | `list_identity_pool` | List identity pools on the server. | |
| **List Identity Stores** | `list_identity_store` | List identity stores on the server. | |
| **Update Authentication Configuration** | `update_auth_configuration` | Update an authentication configuration. | |
| **Update Identity Pool** | `update_identity_pool` | Update an identity pool by UUID. | |
### Jobs tasks schedules
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | --------------------------------------------------------------------- | ------- |
| **Add Data Source to Schedule** | `add_datasource_to_schedule` | Add a data source to a server extract refresh schedule. | |
| **Add Workbook to Schedule** | `add_workbook_to_schedule` | Add a workbook to a server extract refresh schedule. | |
| **Cancel Job** | `cancel_job` | Cancel a running or pending background job. | |
| **Create Schedule** | `create_schedule` | Create a server-level schedule. | |
| **Delete Data Acceleration Task** | `delete_data_acceleration_task` | Delete a data acceleration task. | |
| **Delete Schedule** | `delete_schedule` | Delete a server-level schedule. | |
| **Get Extract Refresh Task** | `get_extract_refresh_task` | Get information about a single extract refresh task. | |
| **Get Job** | `get_job` | Get the status of a background job. | |
| **Get Schedule** | `get_schedule` | Get details of a server-level schedule. | |
| **Get Schedule Extract Refresh Tasks** | `get_schedule_extract_refresh_tasks` | List the extract refresh tasks associated with a schedule. | |
| **List Data Acceleration Tasks** | `list_data_acceleration_tasks` | List data acceleration tasks on the site. | |
| **List Extract Refresh Tasks** | `list_extract_refresh_tasks` | List extract refresh tasks on the site. | |
| **Query Jobs** | `query_jobs` | List background jobs (extract refreshes, subscriptions, flows, etc.). | |
| **Query Schedules** | `query_schedules` | List server-level schedules. | |
| **Run Extract Refresh Task Now** | `run_extract_refresh_task` | Run an extract refresh task immediately (run now). | |
| **Update Schedule** | `update_schedule` | Update a server-level schedule. | |
### Metadata
| Operation | ID | Description | Trigger |
| ------------------------------------------ | ---------------------------------------- | -------------------------------------------------------------------- | ------- |
| **Add Column Tags** | `add_column_tags` | Add one or more tags to a column asset. | |
| **Add Data Quality Warning** | `add_data_quality_warning` | Add a data quality warning to a content asset. | |
| **Add Database Tags** | `add_database_tags` | Add one or more tags to a database asset. | |
| **Add Table Tags** | `add_table_tags` | Add one or more tags to a table asset. | |
| **Add Virtual Connection Tags** | `add_virtualconnection_tags` | Add one or more tags to a virtual connection asset. | |
| **Batch Add Tags** | `batch_add_tags` | Batch add tags to a list of content assets. | |
| **Batch Delete Data Quality Warnings** | `batch_delete_data_quality_warning` | Batch delete data quality warnings on a list of content. | |
| **Batch Delete Tags** | `batch_delete_tags` | Batch delete tags from a list of content assets. | |
| **Batch Update Data Quality Warnings** | `batch_update_data_quality_warning` | Batch add or update data quality warnings on a list of content. | |
| **Create Label Category** | `create_label_category` | Create a label category on the site. | |
| **Create Or Update Label Value** | `create_or_update_label_value` | Create or update a label value on the site. | |
| **Delete Column** | `delete_column` | Remove a column asset from the metadata store. | |
| **Delete Column Tag** | `delete_column_tag` | Delete a tag from a column asset. | |
| **Delete Data Quality Warning** | `delete_data_quality_warning` | Delete a data quality warning by its LUID. | |
| **Delete Data Quality Warning By Content** | `delete_data_quality_warning_by_content` | Delete the data quality warning(s) on a content asset. | |
| **Delete Database** | `delete_database` | Remove a database asset from the metadata store. | |
| **Delete Database Tag** | `delete_database_tag` | Delete a tag from a database asset. | |
| **Delete Label** | `delete_label` | Delete a label by its LUID. | |
| **Delete Labels** | `delete_labels` | Delete labels on a list of content. | |
| **Delete Table** | `delete_table` | Remove a table asset from the metadata store. | |
| **Delete Table Tag** | `delete_table_tag` | Delete a tag from a table asset. | |
| **Get Column** | `get_column` | Get information about a column in a table. | |
| **Get Data Quality Warning** | `get_data_quality_warning` | Get a data quality warning by its LUID. | |
| **Get Data Quality Warning By Content** | `get_data_quality_warning_by_content` | Get the data quality warning(s) on a content asset. | |
| **Get Database** | `get_database` | Get information about a database asset. | |
| **Get Label** | `get_label` | Get a label by its LUID. | |
| **Get Table** | `get_table` | Get information about a table asset. | |
| **Query Columns** | `query_columns` | Query columns in a table known to the metadata store. | |
| **Query Databases** | `query_databases` | Query databases known to the metadata store on the site. | |
| **Query Tables** | `query_tables` | Query tables known to the metadata store on the site. | |
| **Update Column** | `update_column` | Update the description of a column in a table. | |
| **Update Data Quality Warning** | `update_data_quality_warning` | Update a data quality warning by its LUID. | |
| **Update Database** | `update_database` | Update metadata (description, certification, contact) of a database. | |
| **Update Table** | `update_table` | Update metadata (description, certification, contact) of a table. | |
### Notifications
| Operation | ID | Description | Trigger |
| -------------------------------------- | --------------------------------- | ---------------------------------------------------- | ------- |
| **Add User to Data-Driven Alert** | `add_data_alert_user` | Add a user as a recipient of a data-driven alert. | |
| **Create Data-Driven Alert** | `create_data_alert` | Create a data-driven alert on a view/worksheet. | |
| **Delete Data-Driven Alert** | `delete_data_alert` | Delete a data-driven alert. | |
| **Delete User from Data-Driven Alert** | `delete_data_alert_user` | Remove a user as a recipient of a data-driven alert. | |
| **Get Data-Driven Alert** | `get_data_alert` | Get a single data-driven alert. | |
| **Get Notification Preferences** | `get_notification_preferences` | Get user notification preferences for the site. | |
| **Get Webhook** | `get_webhook` | Get information about a webhook. | |
| **Query Data-Driven Alerts** | `query_data_alerts` | List data-driven alerts on the site. | |
| **Update Data-Driven Alert** | `update_data_alert` | Update a data-driven alert. | |
| **Update Notification Preferences** | `update_notification_preferences` | Update user notification preferences for the site. | |
| **Update Webhook** | `update_webhook` | Update an existing webhook. | |
### Projects
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ----------------------------------------------------------------------- | ------- |
| **Create Project** | `create_project` | Create a new project on the site. | |
| **Create Project With Samples** | `create_project_with_samples` | Create a project and optionally publish Tableau sample content into it. | |
| **Delete Project** | `delete_project` | Delete a project and all of its contents. | |
| **Query Projects** | `query_projects` | List projects (folders) on the site. | |
| **Update Project** | `update_project` | Update a project's name, description, owner, or permissions. | |
### Publishing
| Operation | ID | Description | Trigger |
| ------------------------- | ---------------------- | ------------------------------------------------------------------- | ------- |
| **Append to File Upload** | `append_file_upload` | Append a chunk to an existing file upload session. | |
| **Initiate File Upload** | `initiate_file_upload` | Initiate a chunked file upload session; returns an uploadSessionId. | |
### Pulse
| Operation | ID | Description | Trigger |
| ----------------------------------------- | -------------------------------------- | ----------------------------------------------------------- | ------- |
| **Batch Create Pulse Subscriptions** | `batch_create_pulse_subscriptions` | Batch create Pulse subscriptions. | |
| **Batch Get Metric Definitions** | `batch_get_metric_definitions` | Batch get a small number of Pulse metric definitions (GET). | |
| **Batch Get Metric Definitions (POST)** | `batch_get_metric_definitions_by_post` | Batch get many Pulse metric definitions (POST). | |
| **Batch Get Metric Follower Counts** | `batch_get_metric_follower_counts` | Batch get Pulse metric follower (subscriber) counts. | |
| **Batch Get Pulse Metrics** | `batch_get_pulse_metrics` | Batch get a small number of Pulse metrics (GET). | |
| **Batch Get Pulse Metrics (POST)** | `batch_get_pulse_metrics_by_post` | Batch get many Pulse metrics (POST). | |
| **Batch Get Pulse Subscriptions** | `batch_get_pulse_subscriptions` | Batch get Pulse subscriptions. | |
| **Create Metric Definition** | `create_metric_definition` | Create a Pulse metric definition. | |
| **Create Metric Tag** | `create_metric_tag` | Create a Pulse metric tag for the current user. | |
| **Create Pulse Metric** | `create_pulse_metric` | Create a Pulse metric. | |
| **Create Pulse Subscription** | `create_pulse_subscription` | Create a Pulse subscription. | |
| **Delete Metric Definition** | `delete_metric_definition` | Delete a Pulse metric definition. | |
| **Delete Metric Tag** | `delete_metric_tag` | Delete a Pulse metric tag. | |
| **Delete Pulse Metric** | `delete_pulse_metric` | Delete a Pulse metric. | |
| **Delete Pulse Subscription** | `delete_pulse_subscription` | Delete a Pulse subscription. | |
| **Generate Insight Brief** | `generate_insight_brief` | Generate an insight brief. | |
| **Generate Insight Bundle (BAN)** | `generate_insight_ban` | Generate the current-metric-value (BAN) insight bundle. | |
| **Generate Insight Bundle (Basic)** | `generate_insight_basic` | Generate the basic insight bundle. | |
| **Generate Insight Bundle (Breakdown)** | `generate_insight_breakdown` | Generate the breakdown insight bundle. | |
| **Generate Insight Bundle (Detail)** | `generate_insight_detail` | Generate the detail insight bundle. | |
| **Generate Insight Bundle (Exploration)** | `generate_insight_exploration` | Generate the exploration insight bundle. | |
| **Generate Insight Bundle (Springboard)** | `generate_insight_springboard` | Generate the springboard insight bundle. | |
| **Generate Metric Card Image** | `generate_metric_card_image` | Generate a Pulse metric card image. | |
| **Get Measurement Periods** | `get_measurement_periods` | List a Pulse metric definition's measurement periods. | |
| **Get Metric Definition** | `get_metric_definition` | Get a Pulse metric definition. | |
| **Get or Create Pulse Metric** | `get_or_create_pulse_metric` | Get or create a Pulse metric. | |
| **Get Pulse Entitlements** | `get_pulse_entitlements` | Get Pulse site entitlements. | |
| **Get Pulse Metric** | `get_pulse_metric` | Get a Pulse metric. | |
| **Get Pulse Subscription** | `get_pulse_subscription` | Get a Pulse subscription. | |
| **Get Pulse User Preferences** | `get_pulse_user_preferences` | List Pulse user preferences for the current user. | |
| **Get Recommended Metrics** | `get_recommended_metrics` | Get recommended Pulse metrics. | |
| **List Definition Metrics** | `list_definition_metrics` | List the metrics belonging to a Pulse metric definition. | |
| **List Followed Metrics Groups** | `list_followed_metrics_groups` | List followed Pulse metrics groups for the current user. | |
| **List Metric Definitions** | `list_metric_definitions` | List Pulse metric definitions. | |
| **List Pulse Alerts** | `list_pulse_alerts` | List Pulse alerts on the site. | |
| **List Pulse Subscriptions** | `list_pulse_subscriptions` | List Pulse subscriptions. | |
| **Update Metric Definition** | `update_metric_definition` | Update a Pulse metric definition. | |
| **Update Pulse Metric** | `update_pulse_metric` | Update a Pulse metric. | |
| **Update Pulse User Preferences** | `update_pulse_user_preferences` | Update Pulse user preferences for the current user. | |
### Server
| Operation | ID | Description | Trigger |
| ---------------------------------- | ------------------ | --------------------------------------------------------------- | ------- |
| **Delete Session** | `delete_session` | Delete a server session by its ID. | |
| **Get Server Info** | `get_server_info` | Get server info + supported REST API version. | |
| **List Active Directory Domains** | `list_ad_domains` | List the Active Directory domains in use on the server. | |
| **Update Active Directory Domain** | `update_ad_domain` | Update the nickname (short name) of an Active Directory domain. | |
### Sites
| Operation | ID | Description | Trigger |
| ----------------------------------------------- | -------------------------------- | --------------------------------------------------------------------------- | ------- |
| **Create Site** | `create_site` | Create a new site (server admin only). | |
| **Delete Site** | `delete_site` | Delete the specified site (server admin only). | |
| **Get Data Acceleration Report for Site** | `get_data_acceleration_report` | Get the data acceleration report for the site. | |
| **Get Embedding Settings for Site** | `get_site_embedding_settings` | Get the embedding settings for the site. | |
| **Get Recently Viewed for Site** | `get_recently_viewed` | Get the content recently viewed by the signed-in user on the site. | |
| **Get User Personal Space** | `get_user_personal_space` | Get information about the personal space of the signed-in user on the site. | |
| **List Authentication Configurations for Site** | `list_site_auth_configurations` | List the authentication configurations for the site. | |
| **Query Site** | `query_site` | Query information about the specified site. | |
| **Query Sites** | `query_sites` | List all sites on the server (server admin only). | |
| **Query Views for Site** | `query_site_views` | List all views in the site, optionally with usage statistics. | |
| **Update Embedding Settings for Site** | `update_site_embedding_settings` | Update the embedding settings for the site. | |
| **Update Site** | `update_site` | Update settings for the specified site (server admin only). | |
### Subscriptions
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | --------------------------------------------------------------------- | ------- |
| **Create Subscription** | `create_subscription` | Create a subscription to a view or workbook for a user on a schedule. | |
| **Delete Subscription** | `delete_subscription` | Delete a subscription. | |
| **Get Subscription** | `get_subscription` | Get details of a single subscription. | |
| **Query Subscriptions** | `query_subscriptions` | List the subscriptions on the site. | |
| **Update Subscription** | `update_subscription` | Update a subscription's subject, schedule, or delivery options. | |
### Users & groups
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ---------------------------------------------- | ------- |
| **Add User to Group** | `add_user_to_group` | Add a user to a group. | |
| **Add User to Site** | `add_user` | Provision a user on the site with a site role. | |
| **Get Users on Site** | `get_users` | List users on the site. | |
| **Query Groups** | `query_groups` | List groups on the site. | |
### Users and groups
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------------------- | ------- |
| **Add Group to Group Set** | `add_group_to_group_set` | Add a group to a group set. | |
| **Create Group** | `create_group` | Create a local group (or import an Active Directory group). | |
| **Create Group Set** | `create_group_set` | Create a group set. | |
| **Delete Group** | `delete_group` | Delete a group from the site. | |
| **Delete Group Set** | `delete_group_set` | Delete a group set. | |
| **Delete Users from CSV** | `delete_users_csv` | Delete users from the site using a CSV payload. | |
| **Get Group Set** | `get_group_set` | Get a single group set by LUID. | |
| **Get Groups for a User** | `get_groups_for_user` | List the groups a user belongs to. | |
| **Get Groups in Group Set** | `get_groups_in_group_set` | List the groups that belong to a group set. | |
| **Get Users in Group** | `get_users_in_group` | List the users that belong to a group. | |
| **Import Users from CSV** | `import_users_csv` | Import users to the site from a CSV payload. | |
| **Query Group Sets** | `query_group_sets` | List group sets on the site. | |
| **Remove Group from Group Set** | `remove_group_from_group_set` | Remove a group from a group set. | |
| **Remove User from Group** | `remove_user_from_group` | Remove a user from a group. | |
| **Remove User from Site** | `remove_user` | Remove a user from the site. | |
| **Update Group** | `update_group` | Update a group's name or import settings. | |
| **Update Group Set** | `update_group_set` | Update a group set's properties. | |
| **Update User** | `update_user` | Update a user's full name, email, site role, or auth setting. | |
### Views
| Operation | ID | Description | Trigger |
| ---------------------------------- | -------------------------- | ----------------------------------------------------------------------- | ------- |
| **Add Tags to View** | `add_view_tags` | Add one or more tags to a view. | |
| **Delete Custom View** | `delete_custom_view` | Delete a custom view from the site. | |
| **Delete Tag from View** | `delete_view_tag` | Delete a tag from a view. | |
| **Delete View** | `delete_view` | Delete a view from the site. | |
| **Download View Crosstab (Excel)** | `download_view_crosstab` | Download a view's crosstab data as an Excel (.xlsx) file. | |
| **Get Custom View** | `get_custom_view` | Get details of a specific custom view. | |
| **Get Custom View Data (CSV)** | `get_custom_view_data` | Download the underlying data (CSV) of a custom view. | |
| **Get Custom View Image** | `get_custom_view_image` | Download an image (PNG) of a custom view. | |
| **Get Custom View PDF** | `get_custom_view_pdf` | Download a PDF of a custom view. | |
| **Get View** | `get_view` | Get details of a specific view. | |
| **Get View by Path** | `get_view_by_path` | Get a view by its URL name via a filter expression. | |
| **Get View Recommendations** | `get_view_recommendations` | Get view recommendations for the current user (deprecated in API 3.19). | |
| **List Custom Views** | `list_custom_views` | List custom views on the site. | |
| **Query View Data (CSV)** | `query_view_data` | Export the underlying view data as CSV. | |
| **Query View Image** | `query_view_image` | Render a view as a PNG image. | |
| **Query View PDF** | `query_view_pdf` | Render a view as a PDF document. | |
| **Query Views** | `query_views` | List all views on the site. | |
| **Update Custom View** | `update_custom_view` | Update a custom view's name or owner. | |
### Virtual connections
| Operation | ID | Description | Trigger |
| ------------------------------------------- | -------------------------------------- | ------------------------------------------------------ | ------- |
| **Add Virtual Connection Permissions** | `add_virtual_connection_permissions` | Add permissions to a virtual connection. | |
| **Add Virtual Connection Tags** | `add_virtual_connection_tags` | Add tags to a virtual connection. | |
| **Delete Virtual Connection** | `delete_virtual_connection` | Delete a virtual connection. | |
| **Delete Virtual Connection Permission** | `delete_virtual_connection_permission` | Delete a single permission from a virtual connection. | |
| **Delete Virtual Connection Tag** | `delete_virtual_connection_tag` | Delete a tag from a virtual connection. | |
| **Download Virtual Connection Revision** | `download_virtual_connection_revision` | Download a specific revision of a virtual connection. | |
| **Get Virtual Connection** | `get_virtual_connection` | Get (download) a virtual connection's definition. | |
| **List Virtual Connection DB Connections** | `list_virtual_connection_connections` | List the database connections of a virtual connection. | |
| **List Virtual Connection Permissions** | `list_virtual_connection_permissions` | List permissions on a virtual connection. | |
| **List Virtual Connection Revisions** | `list_virtual_connection_revisions` | List revisions of a virtual connection. | |
| **List Virtual Connections** | `list_virtual_connections` | List virtual connections on the site. | |
| **Publish Virtual Connection** | `publish_virtual_connection` | Publish a virtual connection. | |
| **Update Virtual Connection** | `update_virtual_connection` | Update a virtual connection's metadata. | |
| **Update Virtual Connection DB Connection** | `update_virtual_connection_connection` | Update a database connection of a virtual connection. | |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | --------------------------------------------------------- | ------- |
| **Create Webhook** | `create_webhook` | Subscribe an HTTPS URL to a single Tableau trigger event. | |
| **Delete Webhook** | `delete_webhook` | Remove a webhook subscription. | |
| **List Webhooks** | `list_webhooks` | List configured webhooks on the site. | |
| **Test Webhook** | `test_webhook` | Send a test POST to validate a webhook. | |
### Workbooks
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------------------------------------------------------------------------------- | ------- |
| **Add Tags to Workbook** | `add_workbook_tags` | Add one or more tags to a workbook. | |
| **Add Workbook Permissions** | `add_workbook_permissions` | Add permissions (grantee capabilities) to a workbook. | |
| **Delete Tag from Workbook** | `delete_workbook_tag` | Delete a tag from a workbook. | |
| **Delete Workbook** | `delete_workbook` | Delete a workbook from the site. | |
| **Delete Workbook Permission** | `delete_workbook_permission` | Delete a specific capability granted to a user or group on a workbook. | |
| **Download Workbook** | `download_workbook` | Download a workbook's content (.twb or .twbx). | |
| **Download Workbook PDF** | `download_workbook_pdf` | Download a PDF of all views in a workbook. | |
| **Download Workbook PowerPoint** | `download_workbook_powerpoint` | Download a PowerPoint (.pptx) of the views in a workbook. | |
| **Download Workbook Revision** | `download_workbook_revision` | Download a specific revision of a workbook's content. | |
| **Get Workbook** | `get_workbook` | Get details for a single workbook. | |
| **Get Workbook Downgrade Info** | `get_workbook_downgrade_info` | Get info on features that would be lost downgrading a workbook to an older version. | |
| **Get Workbook Revisions** | `get_workbook_revisions` | List the revision history for a workbook. | |
| **Query Views for Workbook** | `query_views_for_workbook` | List the views contained in a workbook. | |
| **Query Workbook Connections** | `query_workbook_connections` | List the data connections in a workbook. | |
| **Query Workbook Permissions** | `query_workbook_permissions` | List the permissions set on a workbook. | |
| **Query Workbooks** | `query_workbooks` | List workbooks on the site (supports filter / sort / paging). | |
| **Refresh Workbook Now** | `refresh_workbook` | Trigger an immediate extract refresh for a workbook (returns a job). | |
| **Remove Workbook Revision** | `remove_workbook_revision` | Remove a specific revision of a workbook. | |
| **Retrieve Workbook Keychain** | `retrieve_workbook_keychain` | Retrieve the encrypted keychain of a workbook (for cross-site/server copy). | |
| **Update Workbook** | `update_workbook` | Update a workbook's settings (name, description, project, owner, showTabs). | |
| **Update Workbook Connection** | `update_workbook_connection` | Update the server address, port, or credentials of a workbook connection. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------------------ | --------------------------------- | ----------- | ------- |
| **On Admin Demoted** | `on_admin_demoted` | | Yes |
| **On Admin Promoted** | `on_admin_promoted` | | Yes |
| **On Data Source Created** | `on_datasource_created` | | Yes |
| **On Data Source Deleted** | `on_datasource_deleted` | | Yes |
| **On Data Source Refresh Failed** | `on_datasource_refresh_failed` | | Yes |
| **On Data Source Refresh Started** | `on_datasource_refresh_started` | | Yes |
| **On Data Source Refresh Succeeded** | `on_datasource_refresh_succeeded` | | Yes |
| **On Data Source Updated** | `on_datasource_updated` | | Yes |
| **On Label Created** | `on_label_created` | | Yes |
| **On Label Deleted** | `on_label_deleted` | | Yes |
| **On Label Updated** | `on_label_updated` | | Yes |
| **On Site Deleted** | `on_site_deleted` | | Yes |
| **On User Deleted** | `on_user_deleted` | | Yes |
| **On View Deleted** | `on_view_deleted` | | Yes |
| **On Workbook Created** | `on_workbook_created` | | Yes |
| **On Workbook Deleted** | `on_workbook_deleted` | | Yes |
| **On Workbook Refresh Failed** | `on_workbook_refresh_failed` | | Yes |
| **On Workbook Refresh Started** | `on_workbook_refresh_started` | | Yes |
| **On Workbook Refresh Succeeded** | `on_workbook_refresh_succeeded` | | Yes |
| **On Workbook Updated** | `on_workbook_updated` | | Yes |
# Telegram
Source: https://docs.noclick.com/integrations/telegram
Connect Telegram to your workflows: 49 operations across 15 categories.
The Telegram node adds Telegram operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Telegram also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Telegram.
You can wire the Telegram node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Telegram under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
## Operations
### Bot
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ----------------------------------- | ------- |
| **Get Bot Information** | `get_bot_information` | Get basic information about the bot | |
### Callback and inline query
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------ | ------- |
| **Answer Inline Button Callback** | `answer_inline_button_callback` | Answer a callback query from an inline keyboard button | |
| **Answer Inline Search Results** | `answer_inline_search_results` | Answer an inline query with a list of results | |
| **Answer Payment Pre Checkout** | `answer_payment_pre_checkout` | Confirm or reject a payment pre-checkout query | |
### Channel
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------- | ------- |
| **Connect Telegram Channel** | `connect_telegram_channel` | Connect a Telegram channel by entering its @username or numeric ID. | |
| **Send Message to Channel** | `send_message_to_channel` | Send message to a public channel or group | |
| **Setup Telegram Channel Guided** | `setup_telegram_channel_guided` | Guided channel setup flow. | |
### Chat
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------- | ------- |
| **Get Chat Details** | `get_chat_details` | Get full information about a chat | |
| **Set Chat Description** | `set_chat_description` | Change the description of a chat | |
| **Set Chat Title** | `set_chat_title` | Change the title of a chat | |
### Chat action
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------------- | ------- |
| **Send Chat Typing Indicator** | `send_chat_typing_indicator` | Show a 'typing…' or 'uploading…' indicator in a chat | |
### Chat member
| Operation | ID | Description | Trigger |
| ----------------------------- | --------------------------- | ---------------------------------------------------- | ------- |
| **Ban User from Chat** | `ban_user_from_chat` | Ban a user from a chat | |
| **Get Chat Admin List** | `get_chat_admin_list` | Get a list of administrators in a chat | |
| **Get Chat Member Count** | `get_chat_member_count` | Get the number of members in a chat | |
| **Get Chat Member Info** | `get_chat_member_info` | Get information about a member of a chat | |
| **Promote User to Admin** | `promote_user_to_admin` | Promote a user to admin or update their admin rights | |
| **Restrict User Permissions** | `restrict_user_permissions` | Restrict a user's permissions in a chat | |
| **Unban User from Chat** | `unban_user_from_chat` | Unban a previously banned user | |
### Dice
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | --------------------------------------------------- | ------- |
| **Send Dice Emoji** | `send_dice_emoji` | Send an animated emoji that displays a random value | |
### Invite link
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------- | ------- |
| **Create Chat Invite Link** | `create_chat_invite_link` | Create an additional invite link for a chat | |
| **Revoke Chat Invite Link** | `revoke_chat_invite_link` | Revoke an invite link to a chat | |
### Invoice
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ---------------------- | ------- |
| **Send Payment Invoice** | `send_payment_invoice` | Send a payment invoice | |
### Location and contact
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ---------------------------------------------- | ------- |
| **Send Contact Information** | `send_contact_information` | Send a phone contact | |
| **Send Location Pin** | `send_location_pin` | Send a geographic location | |
| **Send Venue Location** | `send_venue_location` | Send a venue (location with title and address) | |
### Media
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | ------------------------------------------------------------- | ------- |
| **Get File Download Info** | `get_file_download_info` | Get info about a file by its file\_id (includes download URL) | |
| **Send Animated Video** | `send_animated_video` | Send a GIF or silent H.264/MPEG-4 AVC video | |
| **Send Audio File** | `send_audio_file` | Send an audio file to a chat | |
| **Send Circular Video** | `send_circular_video` | Send a circular video message | |
| **Send Document File** | `send_document_file` | Send a document/file to a chat ID | |
| **Send Photo Image** | `send_photo_image` | Send a photo to a chat | |
| **Send Photo Video Album** | `send_photo_video_album` | Send a group of photos, videos, or documents as an album | |
| **Send Sticker** | `send_sticker` | Send a sticker | |
| **Send Video File** | `send_video_file` | Send a video to a chat | |
| **Send Voice Note** | `send_voice_note` | Send a voice note (.ogg) to a chat | |
### Message
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------------- | ------- |
| **Copy Message to Chat** | `copy_message_to_chat` | Copy a message to another chat (without forward tag) | |
| **Delete Message** | `delete_message` | Delete a message | |
| **Delete Multiple Messages** | `delete_multiple_messages` | Delete multiple messages at once | |
| **Edit Message Caption** | `edit_message_caption` | Edit the caption of a media message | |
| **Edit Message Text** | `edit_message_text` | Edit the text of a sent message | |
| **Forward Message to Chat** | `forward_message_to_chat` | Forward a message to another chat | |
| **Pin Message in Chat** | `pin_message_in_chat` | Pin a message in a chat | |
| **Send Message to Chat** | `send_message_to_chat` | Send message directly to a chat ID | |
| **Set Message Emoji Reaction** | `set_message_emoji_reaction` | Set a reaction on a message | |
| **Stop Active Poll** | `stop_active_poll` | Stop a running poll | |
| **Unpin Chat Message** | `unpin_chat_message` | Unpin a message (or all messages) in a chat | |
### Poll
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ------------------------------ | ------- |
| **Send Poll or Quiz** | `send_poll_or_quiz` | Create and send a poll or quiz | |
### Webhook
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------------------------------------- | ------- |
| **Send Webhook Delivery** | `send_webhook_delivery` | Deliver via webhook (no message required) | |
### Other
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | -------------------------------------------- | ------- |
| **Receive Webhook Messages** | `receive_webhook_messages` | Receive messages via webhook (trigger mode). | Yes |
# Threads
Source: https://docs.noclick.com/integrations/threads
Connect Threads to your workflows: 29 operations across 8 categories.
The Threads node adds Threads operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Threads also includes 5 trigger operations (marked in the tables below) that can start a workflow when something happens in Threads.
You can wire the Threads node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Threads under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://developers.facebook.com/docs/threads/get-started).
## Operations
### Advanced
| Operation | ID | Description | Trigger |
| -------------------------- | ----------------- | ----------------------------------------------------------- | ------- |
| **Custom Threads Request** | `threads_request` | Make an arbitrary Threads Graph API request (escape hatch). | |
### Discovery
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | -------------------------------------------------------------- | ------- |
| **Get Location** | `get_location` | Get a Threads location object by ID. | |
| **Get Mentions** | `get_mentions` | List public Threads posts that mention the authenticated user. | |
| **Keyword Search** | `keyword_search` | Search public Threads posts by keyword or tag. | |
| **Location Search** | `location_search` | Search for a location to tag on a post. | |
### Insights
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------------------- | ------- |
| **Account Insights** | `account_insights` | Get account/user-level Threads insights. | |
| **Post Insights** | `post_insights` | Get insights for a single Threads post. | |
### Posts
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ------------------------------------------------------ | ------- |
| **Get Post** | `get_post` | Get a single Threads post (media object) by ID. | |
| **List Ghost Posts** | `list_ghost_posts` | List the authenticated user's ghost (ephemeral) posts. | |
| **List My Posts** | `list_posts` | List the authenticated user's Threads posts. | |
### Profile
| Operation | ID | Description | Trigger |
| ----------------------------- | ------------------- | -------------------------------------------------------------------- | ------- |
| **Get My Profile** | `get_me` | Get the authenticated Threads user's profile. | |
| **List Public Profile Posts** | `list_public_posts` | List a public Threads profile's posts by username (>=100 followers). | |
| **Look Up Public Profile** | `lookup_profile` | Look up a public Threads profile by username (>=100 followers). | |
### Publishing
| Operation | ID | Description | Trigger |
| ------------------------- | ---------------------- | --------------------------------------------------------------------- | ------- |
| **Create Post Container** | `create_post` | Create a Threads media container (step 1 of publishing). | |
| **Delete Post** | `delete_post` | Delete one of the authenticated user's own Threads posts. | |
| **Get Container Status** | `get_container_status` | Check the processing status of a media container before publishing. | |
| **Get Publishing Limit** | `get_publishing_limit` | Get the user's remaining publishing / reply / delete quota (per 24h). | |
| **Publish Post** | `publish_post` | Publish a previously-created Threads media container (step 2). | |
### Replies
| Operation | ID | Description | Trigger |
| ---------------------------------- | ---------------------- | ----------------------------------------------------------------- | ------- |
| **Approve / Ignore Pending Reply** | `manage_pending_reply` | Approve or ignore a pending reply. | |
| **Get Conversation** | `get_conversation` | Get the full (flattened, nested) conversation for a Threads post. | |
| **Get Pending Replies** | `get_pending_replies` | List pending (approval-gated) replies on the user's posts. | |
| **Get Replies** | `get_replies` | Get the top-level replies to a Threads post. | |
| **Hide / Unhide Reply** | `hide_reply` | Hide or unhide a reply on one of the user's posts. | |
| **List My Replies** | `list_my_replies` | List replies authored by the authenticated user. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------- | ------- |
| **On Any Threads Event** | `on_any_threads_event` | | Yes |
| **On Delete** | `on_delete` | | Yes |
| **On Mention** | `on_mentions` | | Yes |
| **On Publish** | `on_publish` | | Yes |
| **On Reply** | `on_replies` | | Yes |
# TikTok
Source: https://docs.noclick.com/integrations/tiktok
Connect TikTok to your workflows: 8 operations across 3 categories.
The TikTok node adds TikTok operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the TikTok node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect TikTok under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your TikTok account when prompted; no keys to copy.
Connect your TikTok account via OAuth. You need a TikTok developer app with TIKTOK\_CLIENT\_KEY and TIKTOK\_CLIENT\_SECRET configured.
[Get your credentials here](https://developers.tiktok.com/).
NoClick requests the following permissions:
* `user.info.basic`
* `user.info.profile`
* `user.info.stats`
* `video.list`
* `video.upload`
* `video.publish`
## Operations
### Photo
| Operation | ID | Description |
| --------------------- | ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| **Direct Post Photo** | `direct_post_photo` | Publish a photo carousel directly to the creator's TikTok profile. Photos are pulled by TikTok from public URLs. Requires video.publish scope. |
### User
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ---------------------------------------------------------- |
| **Get Authenticated User Info** | `get_authenticated_user_info` | Get the authenticated user's TikTok profile and statistics |
### Video
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Check Video Publish Status** | `check_video_publish_status` | Check the status of a pending or completed video publish operation |
| **Direct Post Video** | `direct_post_video` | Publish a video directly to the creator's TikTok profile via FILE\_UPLOAD (the bytes are uploaded straight to TikTok, no public URL needed). Requires the video.publish scope. |
| **List User Public Videos** | `list_user_public_videos` | List the authenticated user's recent public videos |
| **Query Creator Info** | `query_creator_info` | Query the creator's posting options before a direct post (privacy options, interaction toggles, max video duration). Requires video.publish scope. |
| **Query Video Metrics by Id** | `query_video_metrics_by_id` | Query specific videos by ID to retrieve their metrics and details |
| **Upload Video to Creator Inbox** | `upload_video_to_creator_inbox` | Upload a video to TikTok creator inbox as a draft via PULL\_FROM\_URL (requires video.upload scope). The creator receives an inbox notification and can review/edit before posting. To publish straight to the profile instead, use the Direct... |
# Trello
Source: https://docs.noclick.com/integrations/trello
Connect Trello to your workflows: 42 operations across 8 categories.
The Trello node adds Trello operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Trello also includes 2 trigger operations (marked in the tables below) that can start a workflow when something happens in Trello.
You can wire the Trello node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Trello under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://trello.com/power-ups/admin).
## Operations
### Boards
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | -------------------------------------------- | ------- |
| **Add Member to Board** | `add_member_to_board` | Add or update a member's role on a board. | |
| **Create Board** | `create_board` | Create a new board. | |
| **Delete Board** | `delete_board` | Permanently delete a board. | |
| **Get Board** | `get_board` | Retrieve a single board's details. | |
| **Get Board Actions** | `get_board_actions` | Get the activity feed (actions) for a board. | |
| **Get Board Labels** | `get_board_labels` | List labels available on a board. | |
| **Get Board Members** | `get_board_members` | List members of a board. | |
| **Get Cards on a Board** | `get_board_cards` | Get all cards on a board. | |
| **Get Lists on a Board** | `get_board_lists` | Get all lists (columns) on a board. | |
| **Remove Member from Board** | `remove_member_from_board` | Remove a member from a board. | |
| **Update Board** | `update_board` | Update an existing board. | |
### Cards
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------ | ---------------------------------------------------- | ------- |
| **Add Attachment to Card** | `add_attachment` | Attach a URL to a card. | |
| **Add Comment to Card** | `add_comment` | Post a comment on a card. | |
| **Add Label to Card** | `add_label` | Add an existing label to a card. | |
| **Add Member to Card** | `add_member` | Assign a member to a card. | |
| **Create Card** | `create_card` | Create a new card in a list. | |
| **Delete Card** | `delete_card` | Permanently delete a card. | |
| **Get Card** | `get_card` | Retrieve a single card. | |
| **Get Card Actions** | `get_card_actions` | Get the activity feed (actions) for a card. | |
| **Remove Label from Card** | `remove_label` | Remove a label from a card. | |
| **Remove Member from Card** | `remove_member` | Unassign a member from a card. | |
| **Update Card** | `update_card` | Update a card (rename, move, set due date, archive). | |
### Checklists
| Operation | ID | Description | Trigger |
| ---------------------------- | ----------------------- | ----------------------------------------------------- | ------- |
| **Add Checklist Item** | `add_checklist_item` | Add an item to a checklist. | |
| **Create Checklist on Card** | `create_checklist` | Add a checklist to a card. | |
| **Delete Checklist** | `delete_checklist` | Delete a checklist from a card. | |
| **Delete Checklist Item** | `delete_checklist_item` | Delete an item from a checklist. | |
| **Get Card Checklists** | `get_card_checklists` | Get all checklists on a card. | |
| **Update Checklist Item** | `update_checklist_item` | Check or uncheck a checklist item (check item state). | |
### Labels
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | -------------------------------- | ------- |
| **Create Label** | `create_label` | Create a new label on a board. | |
| **Delete Label** | `delete_label` | Delete a label from a board. | |
| **Update Label** | `update_label` | Rename or recolor a board label. | |
### Lists
| Operation | ID | Description | Trigger |
| ---------------------------- | ---------------- | ------------------------------------------ | ------- |
| **Archive List** | `archive_list` | Archive or unarchive a list. | |
| **Create List** | `create_list` | Create a new list (column) on a board. | |
| **Get Cards in a List** | `get_list_cards` | Get all cards within a list. | |
| **Move All Cards in a List** | `move_all_cards` | Move every card in a list to another list. | |
| **Update List** | `update_list` | Rename or modify a list. | |
### Members
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------- | --------------------------------------- | ------- |
| **Get Authenticated Member** | `get_me` | Get the authenticated member's profile. | |
| **Get Member's Boards** | `get_member_boards` | List boards belonging to a member. | |
| **Get Member's Cards** | `get_member_cards` | Get all cards assigned to a member. | |
### Search
| Operation | ID | Description | Trigger |
| ---------- | -------- | ----------------------------------------- | ------- |
| **Search** | `search` | Search across boards, cards, and members. | |
### Other
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------------------------- | ------- |
| **On Board Change** | `on_board_change` | Fire the workflow when anything changes on a Trello board. | Yes |
| **On Card Change** | `on_card_change` | Fire the workflow when a specific Trello card changes. | Yes |
# Twilio
Source: https://docs.noclick.com/integrations/twilio
Connect Twilio to your workflows: 35 operations across 10 categories.
The Twilio node adds Twilio operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Twilio also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Twilio.
You can wire the Twilio node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Twilio under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Account
Enter the values manually when creating the credential.
Navigate to Console Dashboard → Account Info section → Copy Account SID and Auth Token
[Get your credentials here](https://console.twilio.com/).
### API key
Enter the values manually when creating the credential.
Navigate to Console → API Keys & Tokens → Create API Key → Save the API Key SID and Secret (secret is shown only once)
[Get your credentials here](https://console.twilio.com/us1/account/keys-credentials/api-keys).
### SendGrid API key
Enter the values manually when creating the credential.
Navigate to Settings → API Keys → Create API Key → Select 'Restricted Access' → Grant 'Mail Send' permission → Generate & View
[Get your credentials here](https://app.sendgrid.com/settings/api_keys).
## Operations
### Call
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | -------------------------------------------------------- | ------- |
| **Get Call** | `get_call` | Get details about a specific call by SID | |
| **List Calls** | `list_calls` | List calls made to/from your account with filters | |
| **Make Outbound Call** | `make_outbound_call` | Make an outbound phone call with TwiML instructions | |
| **Update in Progress Call** | `update_in_progress_call` | Update an in-progress call (redirect, hangup, or modify) | |
### Conference
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | -------------------------------------------------- | ------- |
| **Get Conference** | `get_conference` | Get details about a specific conference | |
| **List Conference Participants** | `list_conference_participants` | List participants in a conference | |
| **List Conferences** | `list_conferences` | List conferences in your account | |
| **Update Conference Participant** | `update_conference_participant` | Update a conference participant (mute, hold, kick) | |
### Conversation
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ------------------------------------------------------------ | ------- |
| **Add Conversation Participant** | `add_conversation_participant` | Add a participant to a conversation (SMS, WhatsApp, or Chat) | |
| **Create Conversation** | `create_conversation` | Create a new conversation (Conversations API) | |
| **Delete Conversation** | `delete_conversation` | Delete a conversation | |
| **Get Conversation** | `get_conversation` | Get details about a specific conversation | |
| **List Conversations** | `list_conversations` | List all conversations in your account | |
| **Send Conversation Message** | `send_conversation_message` | Send a message to a conversation | |
### Email
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | ------------------------------------------------- | ------- |
| **Get Sendgrid Email Stats** | `get_sendgrid_email_stats` | Get email delivery statistics from SendGrid | |
| **Send Sendgrid Template Email** | `send_sendgrid_template_email` | Send an email using a SendGrid template | |
| **Send Sendgrid Transactional Email** | `send_sendgrid_transactional_email` | Send a transactional email via SendGrid Email API | |
### Message
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------------------------------------- | ------- |
| **Delete Message** | `delete_message` | Delete a message from your account (removes from logs) | |
| **Get Message** | `get_message` | Get details about a specific message by SID | |
| **List Messages** | `list_messages` | List messages sent/received from your account with filters | |
| **Send Sms Message** | `send_sms_message` | Send an SMS or MMS message via Twilio Messaging API | |
### Phone number
| Operation | ID | Description | Trigger |
| ------------------------------------- | ----------------------------------- | ----------------------------------------------------------------- | ------- |
| **List Owned Phone Numbers** | `list_owned_phone_numbers` | List phone numbers owned by your account | |
| **Lookup Phone Number Info** | `lookup_phone_number_info` | Look up phone number information (carrier, line type, validation) | |
| **Purchase Phone Number** | `purchase_phone_number` | Purchase an available phone number | |
| **Release Phone Number** | `release_phone_number` | Release (delete) a phone number from your account | |
| **Search Available Phone Numbers** | `search_available_phone_numbers` | Search for available phone numbers to purchase | |
| **Update Phone Number Configuration** | `update_phone_number_configuration` | Update configuration for an owned phone number | |
### Recording
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------------------------------------- | ------- |
| **Delete Call Recording** | `delete_call_recording` | Delete a call recording from your account | |
| **Get Call Recording** | `get_call_recording` | Get details about a specific recording | |
| **List Call Recordings** | `list_call_recordings` | List call recordings from your account | |
### Verification
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------------------------------------------------------- | ------- |
| **Check Verification Code** | `check_verification_code` | Check if a verification code is correct (Twilio Verify API) | |
| **Start Verification Code** | `start_verification_code` | Send a verification code via SMS, Voice, or Email (Twilio Verify API) | |
### WhatsApp message
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ---------------------------------------------------------------- | ------- |
| **Get Whatsapp Message** | `get_whatsapp_message` | Get details about a specific WhatsApp message | |
| **Send Whatsapp Message** | `send_whatsapp_message` | Send a WhatsApp message via Twilio (template or session message) | |
### Other
| Operation | ID | Description | Trigger |
| ------------------- | ----------------- | ---------------------------------------------------------------- | ------- |
| **On Incoming SMS** | `on_incoming_sms` | Trigger: fires when an SMS is received by a Twilio phone number. | Yes |
# X (Twitter)
Source: https://docs.noclick.com/integrations/twitter
Connect X (Twitter) to your workflows: 123 operations across 20 categories.
The X (Twitter) node adds X (Twitter) operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the X (Twitter) node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect X (Twitter) under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Twitter OAuth
Sign in with your X (Twitter) account when prompted; no keys to copy.
NoClick requests the following permissions:
* `tweet.read`
* `tweet.write`
* `users.read`
* `offline.access`
* `like.read`
* `like.write`
* `follows.read`
* `follows.write`
* `bookmark.read`
* `bookmark.write`
* `block.read`
* `block.write`
* `mute.read`
* `mute.write`
* `list.read`
* `list.write`
### Twitter bearer token
Enter the values manually when creating the credential.
[Get your credentials here](https://developer.x.com/en/portal/dashboard).
## Operations
### API usage
| Operation | ID | Description |
| ----------------- | --------------- | ------------------ |
| **Get Api Usage** | `get_api_usage` | Get API usage data |
### Block
| Operation | ID | Description |
| --------------------- | ------------------- | ----------------- |
| **Block User** | `block_user` | Block a user |
| **Get Blocked Users** | `get_blocked_users` | Get blocked users |
| **Unblock User** | `unblock_user` | Unblock a user |
### Bookmark folder
| Operation | ID | Description |
| ------------------------------------------ | ---------------------------------------- | ----------------------------------------------- |
| **Get Bookmark Folders** | `get_bookmark_folders` | Get bookmark folders for the authenticated user |
| **Get Posts Eligible for Community Notes** | `get_posts_eligible_for_community_notes` | Get posts eligible for community notes |
### Community
| Operation | ID | Description |
| ----------------------- | --------------------- | ---------------------- |
| **Get Community by Id** | `get_community_by_id` | Get a community by ID |
| **Search Communities** | `search_communities` | Search for communities |
### Compliance job
| Operation | ID | Description |
| ---------------------------- | -------------------------- | -------------------------- |
| **Create Compliance Job** | `create_compliance_job` | Create a compliance job |
| **Get Compliance Job by Id** | `get_compliance_job_by_id` | Get a compliance job by ID |
| **List Compliance Jobs** | `list_compliance_jobs` | List compliance jobs |
### Direct message
| Operation | ID | Description |
| ---------------------------------------------- | -------------------------------------------- | ----------------------------------------------- |
| **Create Group Direct Message Conversation** | `create_group_direct_message_conversation` | Create a group Direct Message conversation |
| **Delete Direct Message Event** | `delete_direct_message_event` | Delete a DM event |
| **Get All Direct Message Events** | `get_all_direct_message_events` | Get all DM events for the authenticated user |
| **Get Direct Message Conversation with User** | `get_direct_message_conversation_with_user` | Get DM conversation events with a specific user |
| **Get Direct Message Event by Id** | `get_direct_message_event_by_id` | Get a specific DM event by ID |
| **Get Direct Message Events for Conversation** | `get_direct_message_events_for_conversation` | Get DM events for a specific conversation ID |
| **Send Direct Message** | `send_direct_message` | Send a one-to-one Direct Message |
| **Send Direct Message to Conversation** | `send_direct_message_to_conversation` | Send a message to an existing conversation |
### DM block
| Operation | ID | Description |
| -------------------- | ------------------ | ----------------------- |
| **Block User Dms** | `block_user_dms` | Block DMs from a user |
| **Unblock User Dms** | `unblock_user_dms` | Unblock DMs from a user |
### List
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ------------------------------- |
| **Add Member to List** | `add_member_to_list` | Add a member to a list |
| **Create List** | `create_list` | Create a new list |
| **Delete List** | `delete_list` | Delete a list |
| **Follow List** | `follow_list` | Follow a list |
| **Get List by Id** | `get_list_by_id` | Get a list by ID |
| **Get List Followers** | `get_list_followers` | Get followers of a list |
| **Get List Members** | `get_list_members` | Get members of a list |
| **Get Lists Followed by User** | `get_lists_followed_by_user` | Get lists followed by a user |
| **Get Tweets from List** | `get_tweets_from_list` | Get tweets from a list |
| **Get User List Memberships** | `get_user_list_memberships` | Get lists a user is a member of |
| **Get User Owned Lists** | `get_user_owned_lists` | Get lists owned by a user |
| **Get User Pinned Lists** | `get_user_pinned_lists` | Get pinned lists |
| **Pin List** | `pin_list` | Pin a list |
| **Remove Member from List** | `remove_member_from_list` | Remove a member from a list |
| **Unfollow List** | `unfollow_list` | Unfollow a list |
| **Unpin List** | `unpin_list` | Unpin a list |
| **Update List Metadata** | `update_list_metadata` | Update list metadata |
### Media
| Operation | ID | Description |
| --------------------------- | ------------------------- | ---------------------------------- |
| **Create Media Metadata** | `create_media_metadata` | Create metadata for uploaded media |
| **Create Media Subtitles** | `create_media_subtitles` | Create subtitles for media |
| **Delete Media Subtitles** | `delete_media_subtitles` | Delete subtitles from media |
| **Get Media Analytics** | `get_media_analytics` | Get analytics for media |
| **Get Media Upload Status** | `get_media_upload_status` | Get the upload status of media |
### Mute
| Operation | ID | Description |
| ------------------- | ----------------- | --------------- |
| **Get Muted Users** | `get_muted_users` | Get muted users |
| **Mute User** | `mute_user` | Mute a user |
| **Unmute User** | `unmute_user` | Unmute a user |
### News
| Operation | ID | Description |
| -------------------------- | ------------------------ | ------------------------ |
| **Get News Article by Id** | `get_news_article_by_id` | Get a news article by ID |
| **Search News Articles** | `search_news_articles` | Search news articles |
### Space
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | -------------------------------------- |
| **Get Space by Id** | `get_space_by_id` | Get a Space by ID |
| **Get Space Ticket Holders** | `get_space_ticket_holders` | Get buyers (ticket holders) of a Space |
| **Get Spaces by Creator User Ids** | `get_spaces_by_creator_user_ids` | Get Spaces by creator user IDs |
| **Get Spaces by Ids** | `get_spaces_by_ids` | Get multiple Spaces by IDs |
| **Get Tweets from Space** | `get_tweets_from_space` | Get tweets from a Space |
| **Search Spaces** | `search_spaces` | Search for Spaces |
### Stream
| Operation | ID | Description |
| ---------------------------------------------------- | -------------------------------------------------- | ------------------------------------------------ |
| **Add Stream Filter Rules** | `add_stream_filter_rules` | Add stream filter rules |
| **Collect 10 Percent Sampled Stream Tweets** | `collect_10_percent_sampled_stream_tweets` | Connect to 10% sampled stream and collect tweets |
| **Collect Filtered Stream Tweets** | `collect_filtered_stream_tweets` | Connect to filtered stream and collect tweets |
| **Collect Sampled Stream Tweets** | `collect_sampled_stream_tweets` | Connect to sampled stream and collect tweets |
| **Delete Stream Filter Rules** | `delete_stream_filter_rules` | Delete stream filter rules by ID |
| **Get All Streaming Connections** | `get_all_streaming_connections` | Get all streaming connections |
| **Get Stream Filter Rules** | `get_stream_filter_rules` | Get stream filter rules |
| **Get Stream Rule Counts** | `get_stream_rule_counts` | Get stream rule counts |
| **Terminate All Streaming Connections** | `terminate_all_streaming_connections` | Terminate all streaming connections |
| **Terminate Streaming Connection** | `terminate_streaming_connection` | Terminate a specific streaming connection |
| **Terminate Streaming Connections by Endpoint Type** | `terminate_streaming_connections_by_endpoint_type` | Terminate streaming connections by endpoint type |
### Subscription
| Operation | ID | Description |
| ----------------------------------------------- | --------------------------------------------- | ---------------------------------------------- |
| **Create Account Activity Subscription** | `create_account_activity_subscription` | Create an account activity subscription |
| **Create Account Activity Subscription Replay** | `create_account_activity_subscription_replay` | Create an account activity subscription replay |
| **Delete Account Activity Subscription** | `delete_account_activity_subscription` | Delete an account activity subscription |
| **Get Account Activity Subscription Count** | `get_account_activity_subscription_count` | Get account activity subscription count |
| **Get Account Activity Subscriptions** | `get_account_activity_subscriptions` | Get account activity subscriptions |
| **Validate Account Activity Subscription** | `validate_account_activity_subscription` | Validate account activity subscription |
### Timeline
| Operation | ID | Description |
| --------------------- | ------------------- | --------------------------------------- |
| **Get Home Timeline** | `get_home_timeline` | Get reverse chronological home timeline |
### Trend
| Operation | ID | Description |
| ------------------------------------ | ---------------------------------- | ----------------------------------------------------------- |
| **Get Personalized Trending Topics** | `get_personalized_trending_topics` | Get personalized trending topics for the authenticated user |
| **Get Trending Topics by Woeid** | `get_trending_topics_by_woeid` | Get trending topics by WOEID |
### Tweet
| Operation | ID | Description |
| ---------------------------------- | -------------------------------- | ----------------------------------------------------- |
| **Add Tweet to Bookmarks** | `add_tweet_to_bookmarks` | Add a tweet to bookmarks |
| **Create Community Note on Tweet** | `create_community_note_on_tweet` | Create a community note on a tweet |
| **Create Tweet** | `create_tweet` | Create a new tweet |
| **Delete Community Note** | `delete_community_note` | Delete a community note |
| **Delete Tweet** | `delete_tweet` | Delete a tweet |
| **Evaluate Community Note** | `evaluate_community_note` | Evaluate a community note |
| **Get Bookmarked Tweets** | `get_bookmarked_tweets` | Get bookmarked tweets |
| **Get Community Notes Written** | `get_community_notes_written` | Get community notes written by the authenticated user |
| **Get Tweet by Id** | `get_tweet_by_id` | Get a single tweet by ID |
| **Get Tweet Retweeters** | `get_tweet_retweeters` | Get users who retweeted a tweet |
| **Get Tweet Retweets** | `get_tweet_retweets` | Get retweets of a tweet |
| **Get Tweets by Ids** | `get_tweets_by_ids` | Get multiple tweets by IDs |
| **Get Tweets Mentioning User** | `get_tweets_mentioning_user` | Get tweets mentioning a user |
| **Get Tweets Posted by User** | `get_tweets_posted_by_user` | Get tweets posted by a user |
| **Get Tweets Quoting Tweet** | `get_tweets_quoting_tweet` | Get tweets that quote a specific tweet |
| **Get User Liked Tweets** | `get_user_liked_tweets` | Get tweets liked by a user |
| **Get Users Who Liked Tweet** | `get_users_who_liked_tweet` | Get users who liked a tweet |
| **Hide Reply to Tweet** | `hide_reply_to_tweet` | Hide a reply to a tweet |
| **Like Tweet** | `like_tweet` | Like a tweet |
| **Remove Tweet from Bookmarks** | `remove_tweet_from_bookmarks` | Remove a tweet from bookmarks |
| **Retweet Tweet** | `retweet_tweet` | Retweet a tweet |
| **Search All Tweets Full Archive** | `search_all_tweets_full_archive` | Search all tweets (full archive, Enterprise) |
| **Search Recent Tweets** | `search_recent_tweets` | Search recent tweets (last 7 days) |
| **Undo Retweet** | `undo_retweet` | Undo a retweet |
| **Unhide Reply to Tweet** | `unhide_reply_to_tweet` | Unhide a reply to a tweet |
| **Unlike Tweet** | `unlike_tweet` | Unlike a tweet |
| **Upload Media** | `upload_media` | Upload media (simple upload for small files) |
| **Upload Media Chunked** | `upload_media_chunked` | Upload large media using chunked upload |
### Tweet analytics
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | --------------------------------------------------- |
| **Get Tweet Analytics** | `get_tweet_analytics` | Get analytics for tweets |
| **Get Tweet Counts Full Archive** | `get_tweet_counts_full_archive` | Get tweet counts for full archive (Enterprise only) |
| **Get Tweet Counts Recent** | `get_tweet_counts_recent` | Get tweet counts for recent tweets (last 7 days) |
### User
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ------------------------------- |
| **Follow User** | `follow_user` | Follow a user |
| **Get Authenticated User** | `get_authenticated_user` | Get the authenticated user |
| **Get User by Id** | `get_user_by_id` | Get a user by ID |
| **Get User by Username** | `get_user_by_username` | Get a user by username |
| **Get User Followers** | `get_user_followers` | Get followers of a user |
| **Get Users by Ids** | `get_users_by_ids` | Get multiple users by IDs |
| **Get Users by Usernames** | `get_users_by_usernames` | Get multiple users by usernames |
| **Get Users Followed by User** | `get_users_followed_by_user` | Get users followed by a user |
| **Search Users** | `search_users` | Search for users |
| **Unfollow User** | `unfollow_user` | Unfollow a user |
### Webhook
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ----------------------------------- |
| **Create Webhook** | `create_webhook` | Create a webhook |
| **Create Webhook Replay** | `create_webhook_replay` | Create a webhook replay |
| **Create Webhook Stream Link** | `create_webhook_stream_link` | Create a stream link for a webhook |
| **Delete Webhook** | `delete_webhook` | Delete a webhook |
| **Delete Webhook Stream Link** | `delete_webhook_stream_link` | Delete a stream link from a webhook |
| **Get Webhook by Id** | `get_webhook_by_id` | Get a webhook by ID |
| **Get Webhook Stream Links** | `get_webhook_stream_links` | Get stream links for a webhook |
| **Validate Webhook** | `validate_webhook` | Validate a webhook |
# Typeform
Source: https://docs.noclick.com/integrations/typeform
Connect Typeform to your workflows: 45 operations across 10 categories.
The Typeform node adds Typeform operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Typeform also includes 1 trigger operation (marked in the tables below) that can start a workflow when something happens in Typeform.
You can wire the Typeform node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Typeform under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Typeform account when prompted; no keys to copy.
NoClick requests the following permissions:
* `accounts:read`
* `forms:read`
* `forms:write`
* `images:read`
* `images:write`
* `themes:read`
* `themes:write`
* `responses:read`
* `responses:write`
* `webhooks:read`
* `webhooks:write`
* `workspaces:read`
* `workspaces:write`
### Personal access token
Enter the values manually when creating the credential.
[Get your credentials here](https://admin.typeform.com/account#/section/tokens).
## Operations
### Audio and video master
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | --------------------------------------- | ------- |
| **Get Generated Audio Master** | `get_generated_audio_master` | Get generated audio master file | |
| **Get Generated Video Master** | `get_generated_video_master` | Get generated video master file | |
| **Request Audio Master Generation** | `request_audio_master_generation` | Request generation of audio master file | |
| **Request Video Master Generation** | `request_video_master_generation` | Request generation of video master file | |
### Form
| Operation | ID | Description | Trigger |
| ----------------------------------- | --------------------------------- | ------------------------------------------ | ------- |
| **Auto Translate Form to Language** | `auto_translate_form_to_language` | Auto-translate a form to a target language | |
| **Create Form** | `create_form` | Create a new form | |
| **Create Form Translation** | `create_form_translation` | Create or update a translation for a form | |
| **Delete Form** | `delete_form` | Delete a form | |
| **Delete Form Translation** | `delete_form_translation` | Delete a translation for a form | |
| **Get Form** | `get_form` | Retrieve a specific form by ID | |
| **Get Form Custom Messages** | `get_form_custom_messages` | Retrieve custom messages for a form | |
| **Get Form Translation** | `get_form_translation` | Get a specific translation for a form | |
| **Get Form Translation Statuses** | `get_form_translation_statuses` | Get translation statuses for a form | |
| **List Forms** | `list_forms` | List all forms in your account | |
| **Update Form** | `update_form` | Update an existing form | |
| **Update Form Custom Messages** | `update_form_custom_messages` | Update custom messages for a form | |
| **Update Form Translation** | `update_form_translation` | Update a translation for a form | |
### Form insights
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ---------------------------- | ------- |
| **Get Form Insights** | `get_form_insights` | Retrieve insights for a form | |
### Form response
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | --------------------------------------------- | ------- |
| **Delete Form Responses** | `delete_form_responses` | Delete responses from a form | |
| **Download Response Files** | `download_response_files` | Download all files uploaded in form responses | |
| **Get Form Responses** | `get_form_responses` | Retrieve responses for a form | |
| **Get Response File** | `get_response_file` | Get a specific file from a response | |
### Image
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ------------------------------- | ------- |
| **Delete Image** | `delete_image` | Delete an image | |
| **Get Image** | `get_image` | Retrieve a specific image by ID | |
| **List Images** | `list_images` | List all images in your account | |
| **Upload Image** | `upload_image` | Upload a new image | |
### Theme
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ------------------------------- | ------- |
| **Create Theme** | `create_theme` | Create a new theme | |
| **Delete Theme** | `delete_theme` | Delete a theme | |
| **Get Theme** | `get_theme` | Retrieve a specific theme by ID | |
| **List Themes** | `list_themes` | List all themes in your account | |
| **Update Theme** | `update_theme` | Update an existing theme | |
### Video
| Operation | ID | Description | Trigger |
| ---------------- | -------------- | ------------------- | ------- |
| **Upload Video** | `upload_video` | Upload a video file | |
### Webhook
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ------------------------------------- | ------- |
| **Create Form Webhook** | `create_form_webhook` | Create or update a webhook for a form | |
| **Delete Form Webhook** | `delete_form_webhook` | Delete a webhook | |
| **Get Form Webhook** | `get_form_webhook` | Get a specific webhook | |
| **List Form Webhooks** | `list_form_webhooks` | List all webhooks for a form | |
| **Update Form Webhook** | `update_form_webhook` | Update a webhook | |
### Workspace
| Operation | ID | Description | Trigger |
| ---------------------------- | -------------------------- | ------------------------------------------------ | ------- |
| **Create Account Workspace** | `create_account_workspace` | Create a new account workspace | |
| **Create Workspace** | `create_workspace` | Create a new workspace | |
| **Delete Workspace** | `delete_workspace` | Delete a workspace | |
| **Get Workspace** | `get_workspace` | Retrieve a specific workspace by ID | |
| **List Account Workspaces** | `list_account_workspaces` | List all account workspaces (organization level) | |
| **List Workspaces** | `list_workspaces` | List all workspaces in your account | |
| **Update Workspace** | `update_workspace` | Update an existing workspace | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ------------------------------------------------------------------- | ------- |
| **On New Form Response** | `on_new_form_response` | Trigger: fires when a new response is submitted to a Typeform form. | Yes |
# Upstash Vector
Source: https://docs.noclick.com/integrations/upstash-vector
Connect Upstash Vector to your workflows: 11 operations across 3 categories.
The Upstash Vector node adds Upstash Vector operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Upstash Vector node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Upstash Vector under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://console.upstash.com/vector).
## Operations
### Index
| Operation | ID | Description |
| ------------------- | ------- | -------------------------------------------------------------------------------- |
| **Database Info** | `info` | Get database stats (vector count, dimension, similarity function). |
| **Reset Namespace** | `reset` | Delete all vectors from a namespace (or the entire index if no namespace given). |
### Text
| Operation | ID | Description |
| --------------------------- | ------------------ | ---------------------------------------------------------------------------------------------- |
| **Query by Text** | `query_text` | Search by text, Upstash embeds the text server-side (requires an embedding-enabled database). |
| **Upload & Index Document** | `upload_and_index` | Upload a document, chunk it, and index it with server-side embedding. |
| **Upsert Text** | `upsert_text` | Insert text records, Upstash embeds them server-side (requires an embedding-enabled database). |
### Vectors
| Operation | ID | Description |
| -------------------------- | -------- | ----------------------------------------------------------------------------------------------- |
| **Delete Vectors** | `delete` | Delete vectors by ID. |
| **Fetch Vectors** | `fetch` | Fetch vectors by ID. |
| **List Vectors (Range)** | `range` | Scroll / paginate through all vectors in a namespace using a cursor. |
| **Query / Search** | `query` | Find the most similar vectors to a query vector. |
| **Update Vector Metadata** | `update` | Update the metadata and/or data field of an existing vector without re-supplying the embedding. |
| **Upsert Vectors** | `upsert` | Insert or overwrite vectors. |
# Voyage AI
Source: https://docs.noclick.com/integrations/voyage
Connect Voyage AI to your workflows: 14 operations across 4 categories.
The Voyage AI node adds Voyage AI operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Voyage AI node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Voyage AI under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
Sign up at voyageai.com, then create an API key in the dashboard.
[Get your credentials here](https://dash.voyageai.com/api-keys).
## Operations
### Batch
| Operation | ID | Description |
| -------------------- | -------------- | ----------- |
| **Cancel Batch Job** | `cancel_batch` | |
| **Create Batch Job** | `create_batch` | |
| **Get Batch Job** | `get_batch` | |
| **List Batch Jobs** | `list_batches` | |
### Embeddings
| Operation | ID | Description |
| -------------------------------------------- | ---------------------- | ----------- |
| **Generate Contextualized Chunk Embeddings** | `embed_contextualized` | |
| **Generate Multimodal Embeddings** | `embed_multimodal` | |
| **Generate Text Embeddings** | `embed` | |
### Files
| Operation | ID | Description |
| --------------------- | ------------------- | ----------- |
| **Bulk Delete Files** | `bulk_delete_files` | |
| **Delete File** | `delete_file` | |
| **Get File** | `get_file` | |
| **Get File Content** | `get_file_content` | |
| **List Files** | `list_files` | |
| **Upload Batch File** | `upload_file` | |
### Reranking
| Operation | ID | Description |
| -------------------- | -------- | ----------- |
| **Rerank Documents** | `rerank` | |
# Weaviate
Source: https://docs.noclick.com/integrations/weaviate
Connect Weaviate to your workflows: 14 operations across 3 categories.
The Weaviate node adds Weaviate operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Weaviate node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Weaviate under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Enter the values manually when creating the credential.
[Get your credentials here](https://console.weaviate.cloud/).
## Operations
### Objects
| Operation | ID | Description |
| --------------------------- | ------------------ | -------------------------------------------------------------------------- |
| **Batch Delete Objects** | `batch_delete` | Batch-delete objects matching a where filter (up to 10,000 per call). |
| **Delete Object** | `delete` | Delete an object by ID (REST). |
| **Get Object** | `get` | Get an object by ID (REST). |
| **Insert Object** | `insert` | Insert an object (REST). |
| **Update Object** | `update` | Partial update (PATCH /v1/objects/\{class}/\{id}), merges provided fields. |
| **Upload & Index Document** | `upload_and_index` | Upload a document file, chunk + embed it, and batch-insert objects. |
### Schema
| Operation | ID | Description |
| --------------------- | ------------------- | ---------------------------------------------------- |
| **Create Collection** | `create_collection` | Create a collection (schema class). |
| **Delete Collection** | `delete_collection` | Drop a collection and ALL of its objects, permanent. |
| **List Collections** | `list_collections` | List collections (schema classes). |
### Search
| Operation | ID | Description |
| --------------------------- | ------------------- | ---------------------------------------------------------------------------------------------------- |
| **Aggregate** | `aggregate` | Aggregate statistics over a collection (GraphQL Aggregate, count, mean, topOccurrences, etc.). |
| **Generative Search (RAG)** | `generative_search` | Generative search (RAG): retrieve objects then generate text with an LLM (GraphQL generate). |
| **Hybrid Search** | `hybrid_search` | Hybrid BM25 + vector search (GraphQL hybrid). |
| **Query / Search** | `query` | Vector similarity search (GraphQL nearVector). |
| **Query by Text** | `query_text` | Semantic search by text (GraphQL nearText, requires the class to have a text2vec vectorizer module). |
# Webflow
Source: https://docs.noclick.com/integrations/webflow
Connect Webflow to your workflows: 95 operations across 13 categories.
The Webflow node adds Webflow operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Webflow also includes 14 trigger operations (marked in the tables below) that can start a workflow when something happens in Webflow.
You can wire the Webflow node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Webflow under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Webflow account when prompted; no keys to copy.
[Get your credentials here](https://developers.webflow.com/data/docs/register-an-app).
NoClick requests the following permissions:
* `sites:read`
* `sites:write`
* `pages:read`
* `pages:write`
* `cms:read`
* `cms:write`
* `custom_code:read`
* `custom_code:write`
* `forms:read`
* `forms:write`
* `ecommerce:read`
* `ecommerce:write`
* `assets:read`
* `assets:write`
* `components:read`
* `components:write`
* `comments:read`
* `comments:write`
* `site_config:read`
* `site_config:write`
* `site_activity:read`
* `workspace:read`
* `workspace:write`
* `authorized_user:read`
### Api token
Enter the values manually when creating the credential.
[Get your credentials here](https://developers.webflow.com/data/reference/authentication).
## Operations
### Assets
| Operation | ID | Description | Trigger |
| --------------------------------- | --------------------- | ----------------------------------------------------------------------------- | ------- |
| **Create Asset (Get Upload URL)** | `create_asset` | Create an asset (step 1: returns a presigned S3 upload URL to POST bytes to). | |
| **Create Asset Folder** | `create_asset_folder` | Create an asset folder. | |
| **Delete Asset** | `delete_asset` | Delete an asset. | |
| **Get Asset** | `get_asset` | Get a single asset's metadata. | |
| **Get Asset Folder** | `get_asset_folder` | Get a single asset folder. | |
| **List Asset Folders** | `list_asset_folders` | List a site's asset folders. | |
| **List Assets** | `list_assets` | List a site's assets. | |
| **Update Asset** | `update_asset` | Update an asset's display name / alt text. | |
### CMS items
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------- | ------------------------------------------------------------ | ------- |
| **Create Collection Item** | `create_item` | Create one or more staged CMS items. | |
| **Create Items (Bulk)** | `create_bulk_items` | Create multiple CMS items at once (up to 100, multi-locale). | |
| **Create Live Item** | `create_live_item` | Create CMS item(s) directly on the live site. | |
| **Delete Collection Item** | `delete_item` | Delete a staged CMS item. | |
| **Get Collection Item** | `get_item` | Get a single CMS item. | |
| **Get Live Item** | `get_live_item` | Get a single published (live) CMS item. | |
| **List Collection Items** | `list_items` | List (staged) items in a CMS collection. | |
| **List Live Items** | `list_live_items` | List published (live) items in a collection. | |
| **Publish Collection Items** | `publish_items` | Publish staged CMS items to the live site. | |
| **Unpublish Live Item** | `delete_live_item` | Unpublish (delete-live) a CMS item from the live site. | |
| **Update Collection Item** | `update_item` | Update a staged CMS item. | |
| **Update Live Item** | `update_live_item` | Update a published (live) CMS item. | |
### Collections
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Create Collection** | `create_collection` | Create a new CMS collection on a site. | |
| **Create Collection Field** | `create_collection_field` | Add a field to a CMS collection. | |
| **Delete Collection** | `delete_collection` | Delete a CMS collection. | |
| **Delete Collection Field** | `delete_collection_field` | Delete a field from a collection. | |
| **Get Collection Details** | `get_collection` | Get a CMS collection's schema and fields. | |
| **List Collections** | `list_collections` | List CMS collections on a site. | |
| **Update Collection Field** | `update_collection_field` | Update a collection field's display name / required / help text (type is immutable). | |
### Comments
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | --------------------------------- | ------- |
| **Get Comment Thread** | `get_comment_thread` | Get a single comment thread. | |
| **List Comment Replies** | `list_comment_replies` | List replies in a comment thread. | |
| **List Comment Threads** | `list_comment_threads` | List page-design comment threads. | |
### Components
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------ | ------- |
| **Get Component Content** | `get_component_content` | Get a component's content (DOM node tree). | |
| **Get Component Properties** | `get_component_properties` | Get a component's properties. | |
| **List Components** | `list_components` | List a site's components. | |
| **Update Component Content** | `update_component_content` | Update a component's static content (DOM nodes). | |
| **Update Component Properties** | `update_component_properties` | Update a component's properties. | |
### Custom code
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ---------------------------------------------------------------------------- | ------- |
| **Apply Page Custom Code** | `apply_page_custom_code` | Apply scripts to a page (full-array upsert). | |
| **Apply Site Custom Code** | `apply_site_custom_code` | Apply scripts to a site (full-array upsert). | |
| **Get Page Custom Code** | `get_page_custom_code` | Get the scripts applied to a page. | |
| **Get Site Custom Code** | `get_site_custom_code` | Get the scripts applied to a site. | |
| **List Registered Scripts** | `list_registered_scripts` | List custom-code scripts registered to a site. | |
| **Register Hosted Script** | `register_hosted_script` | Register a hosted custom-code script to the site's library. | |
| **Register Inline Script** | `register_inline_script` | Register an inline custom-code script (\<=2000 chars) to the site's library. | |
| **Remove Page Custom Code** | `remove_page_custom_code` | Remove all scripts applied to a page. | |
| **Remove Site Custom Code** | `remove_site_custom_code` | Remove all scripts applied to a site. | |
### Ecommerce
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------- | ------- |
| **Create Product & SKU** | `create_product` | Create an ecommerce product and its default SKU. | |
| **Create SKUs** | `create_skus` | Create additional SKUs for a product. | |
| **Fulfill Order** | `fulfill_order` | Mark an ecommerce order as fulfilled. | |
| **Get Ecommerce Settings** | `get_ecommerce_settings` | Get a site's ecommerce settings (default currency, etc.). | |
| **Get Order** | `get_order` | Get a single ecommerce order. | |
| **Get Product** | `get_product` | Get a product and its SKUs. | |
| **List Inventory** | `list_inventory` | Get inventory for a SKU. | |
| **List Orders** | `list_orders` | List ecommerce orders. | |
| **List Products & SKUs** | `list_products` | List ecommerce products and SKUs. | |
| **Refund Order** | `refund_order` | Refund an order. | |
| **Unfulfill Order** | `unfulfill_order` | Mark an order as unfulfilled. | |
| **Update Inventory** | `update_inventory` | Update inventory for a SKU. | |
| **Update Order** | `update_order` | Update an order (comment, shipping provider/tracking). | |
| **Update Product** | `update_product` | Update a product's field data. | |
| **Update SKU** | `update_sku` | Update a single SKU. | |
### Forms
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------- | ------- |
| **Delete Submission** | `delete_submission` | Delete a form submission. | |
| **Get Form Schema** | `get_form` | Get a form's field schema. | |
| **Get Form Submission** | `get_form_submission` | Get a single form submission. | |
| **List Form Submissions** | `list_form_submissions` | List submissions for a form. | |
| **List Forms** | `list_forms` | List forms on a site. | |
| **List Site Form Submissions** | `list_site_form_submissions` | List all form submissions across a site. | |
| **Modify Submission** | `modify_submission` | Modify a form submission (hidden fields only). | |
### Pages
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | ----------------------------------------------------------- | ------- |
| **Get Page Content** | `get_page_content` | Get a page's static (DOM) text content. | |
| **Get Page Metadata** | `get_page_metadata` | Get a page's metadata (SEO, Open Graph, slug, draft state). | |
| **List Pages** | `list_pages` | List all static pages on a site. | |
| **Update Page Content** | `update_page_content` | Update a page's static text content (DOM nodes). | |
| **Update Page Metadata** | `update_page_metadata` | Update a page's metadata (title, slug, SEO, Open Graph). | |
### Sites
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------------------------- | ------- |
| **Get Custom Domains** | `get_custom_domains` | List a site's custom domains (IDs used when publishing). | |
| **Get Site** | `get_site` | Get details and metadata for a single site. | |
| **List Sites** | `list_sites` | List all sites the token can access. | |
| **Publish Site** | `publish_site` | Publish a site to its domains (max 1 successful publish/min). | |
### Token
| Operation | ID | Description | Trigger |
| ----------------------- | --------------------- | ---------------------------------------------------------------------- | ------- |
| **Get Authorized User** | `get_authorized_user` | Get info about the user who authorized the token. | |
| **Introspect Token** | `introspect_token` | Introspect the token, scopes, rate limit, authorized sites/workspaces. | |
### Triggers
| Operation | ID | Description | Trigger |
| ---------------------------------- | ----------------------------- | --------------------------------------------------- | ------- |
| **On Collection Item Changed** | `collection_item_changed` | Fires when a CMS collection item is updated. | Yes |
| **On Collection Item Created** | `collection_item_created` | Fires when a CMS collection item is created. | Yes |
| **On Collection Item Deleted** | `collection_item_deleted` | Fires when a CMS collection item is deleted. | Yes |
| **On Collection Item Published** | `collection_item_published` | Fires when a CMS collection item is published live. | Yes |
| **On Collection Item Unpublished** | `collection_item_unpublished` | Fires when a CMS collection item is unpublished. | Yes |
| **On Comment Created** | `comment_created` | Fires when a comment is created on the site. | Yes |
| **On Form Submission** | `form_submission` | Fires when a form is submitted on the site. | Yes |
| **On Inventory Changed** | `ecomm_inventory_changed` | Fires when ecommerce inventory changes. | Yes |
| **On New Order** | `ecomm_new_order` | Fires when a new ecommerce order is placed. | Yes |
| **On Order Changed** | `ecomm_order_changed` | Fires when an ecommerce order changes. | Yes |
| **On Page Created** | `page_created` | Fires when a page is created. | Yes |
| **On Page Deleted** | `page_deleted` | Fires when a page is deleted. | Yes |
| **On Page Metadata Updated** | `page_metadata_updated` | Fires when a page's metadata (SEO/slug/OG) changes. | Yes |
| **On Site Publish** | `site_publish` | Fires when the site is published. | Yes |
### Webhooks
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | -------------------------------------------------- | ------- |
| **Create Webhook** | `create_webhook` | Register a webhook (triggerType + url) for a site. | |
| **Get Webhook** | `get_webhook` | Get a single registered webhook. | |
| **List Webhooks** | `list_webhooks` | List registered webhooks for a site. | |
| **Remove Webhook** | `remove_webhook` | Delete a registered webhook. | |
# WhatsApp
Source: https://docs.noclick.com/integrations/whatsapp
Connect WhatsApp to your workflows: 38 operations across 8 categories.
The WhatsApp node adds WhatsApp operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
WhatsApp also includes 2 trigger operations (marked in the tables below) that can start a workflow when something happens in WhatsApp.
You can wire the WhatsApp node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
Scan the QR code once per phone number. If that connection later drops, scan again for the credential you already have instead of making a second one: the scan reconnects it in place, keeps the triggers registered on it, and does not start a second monthly connection fee. See [Connecting accounts](/credentials/connecting) and [Credential problems](/troubleshooting/credentials).
A dropped link is not reported the instant it goes quiet. A restart at the provider can flap every connection for under a minute, and re-scanning a link that was about to come back adds a second device link, which risks logging the phone out of all of them. NoClick waits for the link to stay down before it emails you, and if it recovers on its own after an email went out, a follow-up tells you so and to leave the QR code alone. See [Email notifications](/billing/notifications).
On the **Receive Message** trigger, NoClick fills in the **Webhook URL** itself and the field is read-only. **Verify Token (Optional)** belongs to the Cloud API subscription handshake, so it appears only on an access token credential and is hidden on a QR connection, which does not use it. A trigger that could not register says why, for example that the phone link is disconnected and needs reconnecting, and clears the message once a later attempt succeeds.
## Credentials
Connect WhatsApp under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### QR code
Connect by scanning a QR code when prompted.
Connect your WhatsApp by scanning a QR code. A persistent connection fee of \$0.99/month will be charged to your balance.
### Access token
Enter the values manually when creating the credential.
1. Go to Meta Developer Console 2. Select your app -> WhatsApp -> API Setup 3. Copy Phone Number ID and Access Token 4. For permanent token: Business Settings -> System Users -> Generate New Token
[Get your credentials here](https://developers.facebook.com/apps).
## Operations
### Account
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ----------------------------------------- | ------- |
| **Get Account Info** | `get_account_info` | Get WhatsApp Business Account information | |
### Chats
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | --------------------------------------------------------------- | ------- |
| **Get Chat Messages** | `get_chat_messages` | Read message history from a chat (QR credentials) | |
| **List Contacts** | `list_contacts` | List the connected account's WhatsApp contacts (QR credentials) | |
| **List Recent Chats** | `list_recent_chats` | List recent WhatsApp conversations | |
| **Mark Chat Read** | `mark_chat_read` | Mark a chat's messages as read (QR credentials) | |
### Media
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------------- | ------- |
| **Delete Media** | `delete_media` | Delete media from WhatsApp servers | |
| **Download Media** | `download_media` | Download media file (returns binary data) | |
| **Get Media Url** | `get_media_url` | Retrieve media URL from media ID | |
| **Upload Media** | `upload_media` | Upload media to WhatsApp | |
### Message
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------------- | ------- |
| **Edit Message** | `edit_message` | Edit a previously sent message (QR credentials) | |
| **Mark Message Read** | `mark_message_read` | Mark a message as read | |
| **Send Audio Message** | `send_audio_message` | Send an audio message | |
| **Send Catalog Message** | `send_catalog_message` | Send catalog message | |
| **Send Contact Card** | `send_contact_card` | Send a contact card message | |
| **Send Document Message** | `send_document_message` | Send a document message | |
| **Send Image Message** | `send_image_message` | Send an image message | |
| **Send Interactive Buttons** | `send_interactive_buttons` | Send an interactive message with quick reply buttons | |
| **Send Interactive List** | `send_interactive_list` | Send an interactive list message | |
| **Send Location Message** | `send_location_message` | Send a location message | |
| **Send Multi Product Message** | `send_multi_product_message` | Send multiple products message | |
| **Send Product Message** | `send_product_message` | Send a single product message | |
| **Send Reaction Emoji** | `send_reaction_emoji` | Send a reaction (emoji) to a message | |
| **Send Text Message** | `send_text_message` | Send a text message | |
| **Send Video Message** | `send_video_message` | Send a video message | |
### Phone
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------- | ------- |
| **Get Phone Number Info** | `get_phone_number_info` | Get phone number information | |
| **List Account Phone Numbers** | `list_account_phone_numbers` | List all phone numbers in the account | |
| **Register Phone Number** | `register_phone_number` | Register a phone number with WhatsApp Business | |
| **Request Verification Code** | `request_verification_code` | Request verification code via SMS or voice | |
### Profile
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ----------------------------------------------- | ------- |
| **Get Account Profile** | `get_account_profile` | Get the connected WhatsApp account profile info | |
| **Get Business Profile** | `get_business_profile` | Get business profile information | |
| **Update Business Profile** | `update_business_profile` | Update business profile information | |
### Template
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------ | ------- |
| **Create Message Template** | `create_message_template` | Create a new message template | |
| **Delete Message Template** | `delete_message_template` | Delete a message template | |
| **Get Message Template** | `get_message_template` | Get a specific message template | |
| **List Message Templates** | `list_message_templates` | List all message templates | |
| **Send Template Message** | `send_template_message` | Send a pre-approved template message | |
### Other
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------- | ----------------------------------------------------------------------------------------- | ------- |
| **Receive Message** | `receive_message` | Receive incoming messages via webhook. Works with both QR scan and Cloud API credentials. | Yes |
| **Receive Status Update** | `receive_status_update` | Receive message status updates via webhook | Yes |
# Word
Source: https://docs.noclick.com/integrations/word
Connect Word to your workflows: 22 operations across 3 categories.
The Word node adds Word operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the Word node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Word under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your Word account when prompted; no keys to copy.
Connect your Microsoft account to access Word documents. Uses Microsoft Graph API with OAuth 2.0.
[Get your credentials here](https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade).
NoClick requests the following permissions:
* `https://graph.microsoft.com/Files.ReadWrite.All`
* `https://graph.microsoft.com/User.Read`
## Operations
### Document
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | -------------------------------------------------- |
| **Convert Document to Html** | `convert_document_to_html` | Convert Word document to HTML |
| **Convert Document to Pdf** | `convert_document_to_pdf` | Convert Word document to PDF |
| **Copy Word Document** | `copy_word_document` | Copy a Word document |
| **Create Blank Document** | `create_blank_document` | Create a new blank Word document |
| **Delete Word Document** | `delete_word_document` | Delete a Word document |
| **Download Document Content** | `download_document_content` | Download Word document content |
| **Fetch Document Metadata** | `fetch_document_metadata` | Get Word document metadata |
| **Fetch Document Preview Link** | `fetch_document_preview_link` | Get an embeddable preview link for a Word document |
| **Fetch Document Thumbnail** | `fetch_document_thumbnail` | Get a thumbnail image of a Word document |
| **List Onedrive Documents** | `list_onedrive_documents` | List Word documents from OneDrive |
| **Move Document to Folder** | `move_document_to_folder` | Move a Word document to a different folder |
| **Rename Word Document** | `rename_word_document` | Rename a Word document |
| **Search Onedrive Documents** | `search_onedrive_documents` | Search for Word documents across OneDrive |
| **Upload Word Document** | `upload_word_document` | Upload a Word document |
### Document permission
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | ------------------------------------------ |
| **Create Document Sharing Link** | `create_document_sharing_link` | Create a sharing link for a Word document |
| **List Document Permissions** | `list_document_permissions` | List permissions for a Word document |
| **Remove Document Sharing Permission** | `remove_document_sharing_permission` | Remove a sharing permission |
| **Share Document with User** | `share_document_with_user` | Share a Word document with a user or group |
| **Update Document Permission Level** | `update_document_permission_level` | Update permission level for a user |
### Document version
| Operation | ID | Description |
| ---------------------------------------- | -------------------------------------- | --------------------------------------------- |
| **Fetch Document Version** | `fetch_document_version` | Get details of a specific document version |
| **List Document Version History** | `list_document_version_history` | List version history for a Word document |
| **Restore Document to Previous Version** | `restore_document_to_previous_version` | Restore a previous version of a Word document |
# WordPress
Source: https://docs.noclick.com/integrations/wordpress
Connect WordPress to your workflows: 38 operations across 8 categories.
The WordPress node adds WordPress operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the WordPress node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect WordPress under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your WordPress account when prompted; no keys to copy.
NoClick requests the following permissions:
* `global`
### Application password
Enter the values manually when creating the credential.
Go to Users → Your Profile → Application Passwords in WordPress admin
[Get your credentials here](https://wordpress.org/support/article/application-passwords/).
### Basic auth
Enter the values manually when creating the credential.
Install Basic-Auth plugin (not recommended for production)
[Get your credentials here](https://github.com/WP-API/Basic-Auth).
## Operations
### Category
| Operation | ID | Description |
| ------------------- | ----------------- | --------------------------- |
| **Create Category** | `create_category` | Create a new category |
| **Delete Category** | `delete_category` | Delete a category |
| **Get Category** | `get_category` | Get a single category by ID |
| **List Categories** | `list_categories` | List categories |
| **Update Category** | `update_category` | Update an existing category |
### Comment
| Operation | ID | Description |
| ----------------------- | --------------------- | -------------------------- |
| **Create Post Comment** | `create_post_comment` | Create a new comment |
| **Delete Comment** | `delete_comment` | Delete a comment |
| **Get Comment** | `get_comment` | Get a single comment by ID |
| **List Comments** | `list_comments` | List comments |
| **Update Comment** | `update_comment` | Update an existing comment |
### Media
| Operation | ID | Description |
| ------------------------- | ----------------------- | ----------------------------- |
| **Delete Media Item** | `delete_media_item` | Delete a media item |
| **Get Media Item** | `get_media_item` | Get a single media item by ID |
| **List Media Items** | `list_media_items` | List media items |
| **Update Media Metadata** | `update_media_metadata` | Update media metadata |
| **Upload Media File** | `upload_media_file` | Upload a new media file |
### Page
| Operation | ID | Description |
| --------------- | ------------- | ---------------------------------------- |
| **Create Page** | `create_page` | Create a new page |
| **Delete Page** | `delete_page` | Delete a page |
| **Get Page** | `get_page` | Get a single page by ID |
| **List Pages** | `list_pages` | List pages with filtering and pagination |
| **Update Page** | `update_page` | Update an existing page |
### Post
| Operation | ID | Description |
| ------------------ | ---------------- | -------------------------------------------------- |
| **Create Post** | `create_post` | Create a new post |
| **Delete Post** | `delete_post` | Delete a post |
| **Get Post** | `get_post` | Get a single post by ID |
| **List Posts** | `list_posts` | List posts with filtering, sorting, and pagination |
| **Search Content** | `search_content` | Search across all content types |
| **Update Post** | `update_post` | Update an existing post |
### Site settings
| Operation | ID | Description |
| ------------------------ | ---------------------- | -------------------- |
| **Get Site Settings** | `get_site_settings` | Get site settings |
| **Update Site Settings** | `update_site_settings` | Update site settings |
### Tag
| Operation | ID | Description |
| -------------- | ------------ | ---------------------- |
| **Create Tag** | `create_tag` | Create a new tag |
| **Delete Tag** | `delete_tag` | Delete a tag |
| **Get Tag** | `get_tag` | Get a single tag by ID |
| **List Tags** | `list_tags` | List tags |
| **Update Tag** | `update_tag` | Update an existing tag |
### User
| Operation | ID | Description |
| --------------- | ------------- | ----------------------- |
| **Create User** | `create_user` | Create a new user |
| **Delete User** | `delete_user` | Delete a user |
| **Get User** | `get_user` | Get a single user by ID |
| **List Users** | `list_users` | List users |
| **Update User** | `update_user` | Update an existing user |
# YouTube
Source: https://docs.noclick.com/integrations/youtube
Connect YouTube to your workflows: 80 operations across 19 categories.
The YouTube node adds YouTube operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
You can wire the YouTube node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect YouTube under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
Sign in with your YouTube account when prompted; no keys to copy.
NoClick requests the following permissions:
* `https://www.googleapis.com/auth/youtube.force-ssl`
* `https://www.googleapis.com/auth/youtube.upload`
* `https://www.googleapis.com/auth/yt-analytics.readonly`
* `https://www.googleapis.com/auth/yt-analytics-monetary.readonly`
* `https://www.googleapis.com/auth/youtube.channel-memberships.creator`
## Operations
### Activity
| Operation | ID | Description |
| -------------------------------------- | ------------------------------------ | ---------------------------- |
| **List Authenticated User Activities** | `list_authenticated_user_activities` | List your channel activities |
### Analytics
| Operation | ID | Description |
| --------------------------------- | ------------------------------- | -------------------------------------------------------------- |
| **Get Channel Revenue Analytics** | `get_channel_revenue_analytics` | Get revenue analytics for your channel (requires monetization) |
| **Get Channel Traffic Sources** | `get_channel_traffic_sources` | Get traffic source breakdown for your channel |
| **Get Viewer Demographics** | `get_viewer_demographics` | Get viewer demographics (age, gender) |
### Caption
| Operation | ID | Description |
| -------------------------- | ------------------------ | ------------------------- |
| **Download Caption Track** | `download_caption_track` | Download a caption track |
| **List Video Captions** | `list_video_captions` | List captions for a video |
### Channel
| Operation | ID | Description |
| -------------------------------------------- | ------------------------------------------ | --------------------------------------------------------------------- |
| **Get Authenticated User Channel** | `get_authenticated_user_channel` | Get the authenticated user's channel |
| **Get Channel Analytics** | `get_channel_analytics` | Get analytics for your channel (views, watch time, subscribers, etc.) |
| **List Authenticated User Channel Sections** | `list_authenticated_user_channel_sections` | List your channel sections |
| **List Channel Activities** | `list_channel_activities` | List activities for a specific channel |
| **List Channel Playlists** | `list_channel_playlists` | Get playlists from a specific channel |
| **List Channel Sections** | `list_channel_sections` | List channel sections for a specific channel |
| **List Channel Video Comments** | `list_channel_video_comments` | List comment threads for a channel's videos |
| **List Channels by Id** | `list_channels_by_id` | Get channels by their IDs |
| **Update Channel Branding** | `update_channel_branding` | Update channel branding settings |
### Comment
| Operation | ID | Description |
| ------------------------------------- | ----------------------------------- | ---------------------------------------------- |
| **Create Channel Discussion Comment** | `create_channel_discussion_comment` | Create a comment on a channel's discussion tab |
| **Create Comment Reply** | `create_comment_reply` | Create a reply to an existing comment |
| **Create Video Comment** | `create_video_comment` | Create a top-level comment on a video |
| **Delete Comment** | `delete_comment` | Delete a comment |
| **List Comment Replies** | `list_comment_replies` | List replies to a comment |
| **List Comments by Id** | `list_comments_by_id` | Get comments by their IDs |
| **List Video Comments** | `list_video_comments` | List comment threads for a video |
| **Set Comment Moderation Status** | `set_comment_moderation_status` | Set moderation status for a comment |
| **Update Comment** | `update_comment` | Update a comment |
### Language
| Operation | ID | Description |
| ---------------------------- | -------------------------- | ------------------------ |
| **List Supported Languages** | `list_supported_languages` | List supported languages |
### Live broadcast
| Operation | ID | Description |
| ------------------------------- | ----------------------------- | ------------------------------------------------ |
| **Bind Broadcast to Stream** | `bind_broadcast_to_stream` | Bind a broadcast to a stream |
| **Create Live Broadcast** | `create_live_broadcast` | Create a new live broadcast |
| **Delete Live Broadcast** | `delete_live_broadcast` | Delete a live broadcast |
| **List Live Broadcasts** | `list_live_broadcasts` | List live broadcasts |
| **Transition Broadcast Status** | `transition_broadcast_status` | Transition broadcast to a new status (start/end) |
| **Update Live Broadcast** | `update_live_broadcast` | Update a live broadcast |
### Live chat
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | --------------------------------- |
| **Add Live Chat Moderator** | `add_live_chat_moderator` | Add a moderator to live chat |
| **Ban Live Chat User** | `ban_live_chat_user` | Ban a user from live chat |
| **Delete Live Chat Message** | `delete_live_chat_message` | Delete a message from live chat |
| **List Live Chat Messages** | `list_live_chat_messages` | List messages from a live chat |
| **List Live Chat Moderators** | `list_live_chat_moderators` | List moderators for a live chat |
| **Remove Live Chat Moderator** | `remove_live_chat_moderator` | Remove a moderator from live chat |
| **Send Live Chat Message** | `send_live_chat_message` | Send a message to live chat |
| **Unban Live Chat User** | `unban_live_chat_user` | Remove a ban from live chat |
### Live stream
| Operation | ID | Description |
| ---------------------- | -------------------- | ------------------------ |
| **Create Live Stream** | `create_live_stream` | Create a new live stream |
| **Delete Live Stream** | `delete_live_stream` | Delete a live stream |
| **List Live Streams** | `list_live_streams` | List live streams |
| **Update Live Stream** | `update_live_stream` | Update a live stream |
### Member
| Operation | ID | Description |
| -------------------------- | ------------------------ | ---------------------------------------------------------- |
| **List Channel Members** | `list_channel_members` | List channel members (requires channel membership feature) |
| **List Membership Levels** | `list_membership_levels` | List channel membership levels |
### Playlist
| Operation | ID | Description |
| ------------------------------------- | ----------------------------------- | ------------------------------- |
| **Add Video to Playlist** | `add_video_to_playlist` | Add a video to a playlist |
| **Create Playlist** | `create_playlist` | Create a new playlist |
| **Delete Playlist** | `delete_playlist` | Delete a playlist |
| **Get Playlist** | `get_playlist` | Get a single playlist |
| **List Authenticated User Playlists** | `list_authenticated_user_playlists` | Get your own playlists |
| **List Playlist Items** | `list_playlist_items` | List items in a playlist |
| **List Playlists by Id** | `list_playlists_by_id` | Get playlists by their IDs |
| **Remove Item from Playlist** | `remove_item_from_playlist` | Remove an item from a playlist |
| **Update Playlist** | `update_playlist` | Update a playlist |
| **Update Playlist Item Position** | `update_playlist_item_position` | Update a playlist item position |
### Rating
| Operation | ID | Description |
| ---------------------------------------- | -------------------------------------- | ----------------------------------- |
| **List Authenticated User Rated Videos** | `list_authenticated_user_rated_videos` | Get videos you've liked or disliked |
### Region
| Operation | ID | Description |
| -------------------------- | ------------------------ | ---------------------- |
| **List Supported Regions** | `list_supported_regions` | List supported regions |
### Reporting job
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | ---------------------------------------------- |
| **Create Reporting Job** | `create_reporting_job` | Create a scheduled reporting job |
| **Delete Reporting Job** | `delete_reporting_job` | Delete a reporting job |
| **Get Reporting Job** | `get_reporting_job` | Get details of a specific reporting job |
| **List Bulk Reporting Types** | `list_bulk_reporting_types` | List available report types for bulk reporting |
| **List Reporting Job Reports** | `list_reporting_job_reports` | List reports generated by a reporting job |
| **List Reporting Jobs** | `list_reporting_jobs` | List all scheduled reporting jobs |
### Search
| Operation | ID | Description |
| ------------------ | ---------------- | ----------------------------------------- |
| **Search Youtube** | `search_youtube` | Search for videos, channels, or playlists |
### Subscription
| Operation | ID | Description |
| ---------------------------- | -------------------------- | -------------------------- |
| **List Subscriptions** | `list_subscriptions` | List subscriptions |
| **Subscribe to Channel** | `subscribe_to_channel` | Subscribe to a channel |
| **Unsubscribe from Channel** | `unsubscribe_from_channel` | Unsubscribe from a channel |
### Super chat
| Operation | ID | Description |
| -------------------------- | ------------------------ | ---------------------------------------- |
| **List Super Chat Events** | `list_super_chat_events` | List Super Chat events from live streams |
### Video
| Operation | ID | Description |
| ------------------------------ | ---------------------------- | -------------------------------------------------------- |
| **Delete Video** | `delete_video` | Delete a video |
| **Get Top Performing Videos** | `get_top_performing_videos` | Get your top performing videos by various metrics |
| **Get User Video Ratings** | `get_user_video_ratings` | Get your rating for videos |
| **Get Video** | `get_video` | Get a single video by ID |
| **Get Video Analytics** | `get_video_analytics` | Get analytics for specific videos |
| **List Region Popular Videos** | `list_region_popular_videos` | Get most popular videos in a region |
| **List Videos by Id** | `list_videos_by_id` | Get videos by their IDs |
| **Rate Video** | `rate_video` | Rate a video (like/dislike/none) |
| **Set Video Thumbnail** | `set_video_thumbnail` | Set a custom thumbnail for a video |
| **Update Video Metadata** | `update_video_metadata` | Update video metadata |
| **Upload Video** | `upload_video_from_url` | Upload a video (file upload, URL, or upstream reference) |
### Video category
| Operation | ID | Description |
| ------------------------- | ----------------------- | --------------------- |
| **List Video Categories** | `list_video_categories` | List video categories |
# Zendesk
Source: https://docs.noclick.com/integrations/zendesk
Connect Zendesk to your workflows: 326 operations across 18 categories.
The Zendesk node adds Zendesk operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Zendesk also includes 21 trigger operations (marked in the tables below) that can start a workflow when something happens in Zendesk.
You can wire the Zendesk node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Zendesk under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### Api token
Enter the values manually when creating the credential.
[Get your credentials here](https://support.zendesk.com/hc/en-us/articles/4408889192858-Managing-access-to-the-Zendesk-API).
### Conversations
Enter the values manually when creating the credential.
[Get your credentials here](https://developer.zendesk.com/documentation/conversations/getting-started/api-authentication/).
## Operations
### Business rules
| Operation | ID | Description | Trigger |
| ------------------------------------------- | ------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Count View** | `count_view` | Get the ticket count for a single view. | |
| **Create Automation (Business Rule)** | `create_automation` | Create a ticket automation (business rule). | |
| **Create Macro** | `create_macro` | Create a new macro. | |
| **Create SLA Policy (Business Rule)** | `create_sla_policy` | Create an SLA policy (business rule). | |
| **Create Trigger (Business Rule)** | `create_trigger` | Create a ticket trigger (business rule). | |
| **Create View** | `create_view` | Create a new view. | |
| **Delete Automation (Business Rule)** | `delete_automation` | Delete a ticket automation (business rule) by ID. | |
| **Delete Macro** | `delete_macro` | Delete a macro by ID. | |
| **Delete SLA Policy (Business Rule)** | `delete_sla_policy` | Delete an SLA policy (business rule) by ID. | |
| **Delete Trigger (Business Rule)** | `delete_trigger` | Delete a ticket trigger (business rule) by ID. | |
| **Delete View** | `delete_view` | Delete a view by ID. | |
| **Execute View** | `execute_view` | Execute a view and return its tickets with the view's columns. | |
| **Export View** | `export_view` | Export a view (returns an export ticket set for the view). | |
| **List Active Automations (Business Rule)** | `list_active_automations` | List only the active ticket automations (business rules). | |
| **List Active Macros** | `list_active_macros` | List all active shared macros. | |
| **List Active Triggers (Business Rule)** | `list_active_triggers` | List only the active ticket triggers (business rules). | |
| **List Active Views** | `list_active_views` | List all active shared and personal views. | |
| **List Automations (Business Rule)** | `list_automations` | List all ticket automations (business rules). | |
| **List Macros** | `list_macros` | List all shared macros available to the current user. | |
| **List SLA Policies (Business Rule)** | `list_sla_policies` | List all SLA policies (business rules). | |
| **List Tickets From View** | `list_view_tickets` | List the tickets that belong to a view. | |
| **List Triggers (Business Rule)** | `list_triggers` | List all ticket triggers (business rules). | |
| **List Views** | `list_views` | List all shared and personal views available to the current user. | |
| **Show Automation (Business Rule)** | `show_automation` | Retrieve a single ticket automation (business rule) by ID. | |
| **Show Changes to Ticket** | `show_macro_changes` | Show the changes a macro would make (the macro's resulting actions). | |
| **Show Macro** | `show_macro` | Retrieve a single macro by ID. | |
| **Show SLA Policy (Business Rule)** | `show_sla_policy` | Retrieve a single SLA policy (business rule) by ID. | |
| **Show Ticket After Applying Macro** | `show_ticket_after_macro` | Preview a ticket as it would appear after applying a macro (no changes saved). | |
| **Show Trigger (Business Rule)** | `show_trigger` | Retrieve a single ticket trigger (business rule) by ID. | |
| **Show View** | `show_view` | Retrieve a single view by ID. | |
| **Update Automation (Business Rule)** | `update_automation` | Update an existing ticket automation (business rule). | |
| **Update Macro** | `update_macro` | Update an existing macro. | |
| **Update SLA Policy (Business Rule)** | `update_sla_policy` | Update an existing SLA policy (business rule). | |
| **Update Trigger (Business Rule)** | `update_trigger` | Update an existing ticket trigger (business rule). | |
| **Update View** | `update_view` | Update an existing view. | |
### Chat
| Operation | ID | Description | Trigger |
| -------------------- | ------------------ | ---------------------------------------- | ------- |
| **List Agents** | `list_agents` | List Chat agents (Chat REST API). | |
| **List Chats** | `list_chats` | List Chat conversations (Chat REST API). | |
| **List Departments** | `list_departments` | List Chat departments (Chat REST API). | |
| **Show Agent** | `show_agent` | Show a single Chat agent by id. | |
| **Show Chat** | `show_chat` | Show a single Chat conversation by id. | |
### Conversations
| Operation | ID | Description | Trigger |
| ---------------------------- | ------------------------- | ------------------------------------------------------------------- | ------- |
| **SCC: Accept Control** | `scc_accept_control` | Accept offered switchboard control. | |
| **SCC: Create Conversation** | `scc_create_conversation` | Create a Sunshine Conversations conversation. | |
| **SCC: Create Integration** | `scc_create_integration` | Create a Sunshine Conversations integration. | |
| **SCC: Create User** | `scc_create_user` | Create a Sunshine Conversations user. | |
| **SCC: Create Webhook** | `scc_create_webhook` | Create a webhook on a custom integration. | |
| **SCC: Delete All Messages** | `scc_delete_all_messages` | Delete all messages in a conversation. | |
| **SCC: Delete Conversation** | `scc_delete_conversation` | Delete a conversation. | |
| **SCC: Delete Message** | `scc_delete_message` | Delete a single message. | |
| **SCC: Delete User** | `scc_delete_user` | Delete a Sunshine Conversations user. | |
| **SCC: Find Users by Email** | `scc_list_users` | Find Sunshine Conversations users by email (SCC requires a filter). | |
| **SCC: Get Conversation** | `scc_get_conversation` | Get a Sunshine Conversations conversation. | |
| **SCC: Get User** | `scc_get_user` | Get a Sunshine Conversations user by ID or external ID. | |
| **SCC: List Conversations** | `scc_list_conversations` | List conversations, optionally filtered by user. | |
| **SCC: List Integrations** | `scc_list_integrations` | List Sunshine Conversations integrations. | |
| **SCC: List Messages** | `scc_list_messages` | List messages in a conversation (max 100/page). | |
| **SCC: List Webhooks** | `scc_list_webhooks` | List webhooks on a custom integration. | |
| **SCC: Offer Control** | `scc_offer_control` | Offer switchboard control of a conversation. | |
| **SCC: Pass Control** | `scc_pass_control` | Pass switchboard control of a conversation to another integration. | |
| **SCC: Post Activity** | `scc_post_activity` | Post a conversation activity (typing / read). | |
| **SCC: Post Message** | `scc_post_message` | Post a message to a conversation. | |
| **SCC: Release Control** | `scc_release_control` | Release switchboard control back to the default integration. | |
| **SCC: Update Conversation** | `scc_update_conversation` | Update a conversation's display name / metadata. | |
| **SCC: Update User** | `scc_update_user` | Update a Sunshine Conversations user's profile/metadata. | |
### Custom objects
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------------------------------------------------------------------- | ------- |
| **Count Custom Object Records** | `count_custom_object_records` | Return the total count of records for a custom object type. | |
| **Create Custom Object** | `create_custom_object` | Create a new custom object type. | |
| **Create Custom Object Field** | `create_custom_object_field` | Create a new field on a custom object type. | |
| **Create Custom Object Record** | `create_custom_object_record` | Create a new custom object record. | |
| **Delete Custom Object** | `delete_custom_object` | Delete a custom object type by its key. | |
| **Delete Custom Object Field** | `delete_custom_object_field` | Delete a custom object field by key or ID. | |
| **Delete Custom Object Record** | `delete_custom_object_record` | Delete a custom object record by ID. | |
| **List Custom Object Fields** | `list_custom_object_fields` | List the fields defined on a custom object type. | |
| **List Custom Object Records** | `list_custom_object_records` | List the records of a custom object type. | |
| **List Custom Objects** | `list_custom_objects` | List all custom object types defined in the account. | |
| **Search Custom Object Records** | `search_custom_object_records` | Search a custom object type's records with a text/filter query. | |
| **Show Custom Object** | `show_custom_object` | Retrieve a single custom object type by its key. | |
| **Show Custom Object Field** | `show_custom_object_field` | Retrieve a single custom object field by key or ID. | |
| **Show Custom Object Record** | `show_custom_object_record` | Retrieve a single custom object record by ID. | |
| **Update Custom Object** | `update_custom_object` | Update an existing custom object type. | |
| **Update Custom Object Field** | `update_custom_object_field` | Update an existing custom object field. | |
| **Update Custom Object Record** | `update_custom_object_record` | Update an existing custom object record. | |
| **Upsert Custom Object Record** | `upsert_custom_object_record` | Create or update a custom object record matched by external id or name. | |
### Custom roles
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------- | ------- |
| **Create Custom Role** | `create_custom_role` | Create a custom agent role. | |
| **Delete Custom Role** | `delete_custom_role` | Delete a custom agent role. | |
| **List Custom Roles** | `list_custom_roles` | List the custom agent roles in the account. | |
| **Show Custom Role** | `show_custom_role` | Show a single custom agent role by ID. | |
| **Update Custom Role** | `update_custom_role` | Update a custom agent role. | |
### Events
| Operation | ID | Description | Trigger |
| ---------------------------- | ----------------------- | -------------------------------------------------------------------- | ------- |
| **Create or Update Profile** | `create_update_profile` | Create or update a user profile (identified by an identifier query). | |
| **Delete Profile** | `delete_profile` | Delete a user profile by its profile id. | |
| **Get User Events** | `get_user_events` | Get the events tracked for a Zendesk user. | |
| **Show Profile** | `show_profile` | Show a user profile by its profile id. | |
| **Track User Event** | `track_user_event` | Store (track) an event for a Zendesk user. | |
### Group memberships
| Operation | ID | Description | Trigger |
| --------------------------------- | ----------------------------------- | --------------------------------------------------------------------- | ------- |
| **Create Group Membership** | `create_group_membership` | Assign a user to a group by creating a group membership. | |
| **Create Many Group Memberships** | `create_many_group_memberships` | Bulk-create up to 100 group memberships. Returns an async job status. | |
| **Delete Group Membership** | `delete_group_membership` | Delete a group membership, removing a user from a group. | |
| **List Assignable Memberships** | `list_assignable_group_memberships` | List group memberships that are assignable. | |
| **List Group Memberships** | `list_group_memberships` | List all group memberships in the account. | |
| **List Memberships by Group** | `list_group_memberships_by_group` | List the memberships of a group. | |
| **List User's Group Memberships** | `list_user_group_memberships` | List the group memberships for a user. | |
| **Set Default Group Membership** | `set_default_group_membership` | Set a group membership as the user's default group. | |
| **Show Group Membership** | `show_group_membership` | Show a single group membership by ID. | |
### Groups
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | -------------------------------------------- | ------- |
| **Create Group** | `create_group` | Create an agent group. | |
| **Delete Group** | `delete_group` | Delete an agent group. | |
| **List Assignable Groups** | `list_assignable_groups` | List groups that tickets can be assigned to. | |
| **Show Group** | `show_group` | Show a single agent group by ID. | |
| **Update Group** | `update_group` | Update an agent group. | |
### Help center
| Operation | ID | Description | Trigger |
| ------------------------------- | ----------------------------- | ------------------------------------------------------------------ | ------- |
| **Archive Article** | `archive_article` | Archive (delete) a Help Center article. | |
| **Create Article** | `create_article` | Create a Help Center article in a section. | |
| **Create Article Comment** | `create_article_comment` | Create a comment on a Help Center article. | |
| **Create Article Label** | `create_article_label` | Add a label to an article. | |
| **Create Article Subscription** | `create_article_subscription` | Subscribe a user to a Help Center article. | |
| **Create Category** | `create_category` | Create a Help Center category. | |
| **Create Section** | `create_section` | Create a Help Center section within a category. | |
| **Create Section Subscription** | `create_section_subscription` | Subscribe a user to a Help Center section. | |
| **Create Translation** | `create_translation` | Add a translation to a Help Center article. | |
| **Delete Article Attachment** | `delete_article_attachment` | Delete an article attachment by ID. | |
| **Delete Article Comment** | `delete_article_comment` | Delete a comment on a Help Center article. | |
| **Delete Article Label** | `delete_article_label` | Remove a label from an article. | |
| **Delete Article Subscription** | `delete_article_subscription` | Remove a subscription from a Help Center article. | |
| **Delete Category** | `delete_category` | Delete a Help Center category. | |
| **Delete Section** | `delete_section` | Delete a Help Center section. | |
| **Delete Section Subscription** | `delete_section_subscription` | Remove a subscription from a Help Center section. | |
| **Delete Translation** | `delete_translation` | Delete a Help Center translation by its ID. | |
| **List Article Attachments** | `list_article_attachments` | List the attachments on an article. | |
| **List Article Comments** | `list_article_comments` | List the comments on a Help Center article. | |
| **List Article Labels** | `list_article_labels` | List the labels attached to an article. | |
| **List Article Subscriptions** | `list_article_subscriptions` | List the subscriptions on a Help Center article. | |
| **List Articles** | `list_articles` | List all Help Center articles. | |
| **List Categories** | `list_categories` | List all Help Center categories. | |
| **List Category Articles** | `list_category_articles` | List articles belonging to a category. | |
| **List Section Articles** | `list_section_articles` | List articles belonging to a section. | |
| **List Section Subscriptions** | `list_section_subscriptions` | List the subscriptions on a Help Center section. | |
| **List Sections** | `list_sections` | List all Help Center sections. | |
| **List Translations** | `list_translations` | List the translations of a Help Center article. | |
| **Search Articles** | `search_articles` | Search Help Center articles by query text. | |
| **Show Article** | `show_article` | Retrieve a single Help Center article by ID. | |
| **Show Article Attachment** | `show_article_attachment` | Retrieve a single article attachment by ID. | |
| **Show Article Comment** | `show_article_comment` | Show a single comment on a Help Center article. | |
| **Show Category** | `show_category` | Show a single Help Center category. | |
| **Show Section** | `show_section` | Show a single Help Center section. | |
| **Unified Guide Search** | `guide_search` | Unified Guide search across articles, posts, and external content. | |
| **Update Article** | `update_article` | Update an existing Help Center article (PATCH). | |
| **Update Article Comment** | `update_article_comment` | Update a comment on a Help Center article. | |
| **Update Category** | `update_category` | Update a Help Center category. | |
| **Update Section** | `update_section` | Update a Help Center section. | |
| **Update Translation** | `update_translation` | Update a Help Center article translation for a locale. | |
### Metadata
| Operation | ID | Description | Trigger |
| ------------------------------------ | ---------------------------- | ----------------------------------------------------------------------------------------- | ------- |
| **Create Brand** | `create_brand` | Create a brand. | |
| **Create Custom Status** | `create_custom_status` | Create a custom ticket status. | |
| **Create Request** | `create_request` | Create a request (end-user ticket) with an initial comment. | |
| **Create Side Conversation** | `create_side_conversation` | Start a new side conversation on a ticket. | |
| **Create Ticket Field** | `create_ticket_field` | Create a ticket field. | |
| **Create Ticket Field Option** | `create_ticket_field_option` | Create a custom field option on a drop-down ticket field. | |
| **Create Ticket Form** | `create_ticket_form` | Create a ticket form. | |
| **Delete Brand** | `delete_brand` | Delete a brand. | |
| **Delete Ticket Field** | `delete_ticket_field` | Delete a ticket field. | |
| **Delete Ticket Field Option** | `delete_ticket_field_option` | Delete a custom field option from a drop-down ticket field. | |
| **Delete Ticket Form** | `delete_ticket_form` | Delete a ticket form. | |
| **Import Many Tickets** | `import_many_tickets` | Bulk-import up to 100 historical tickets as a background job. | |
| **Import Ticket** | `import_ticket` | Import a single historical ticket, preserving original timestamps. | |
| **Incremental Organizations Export** | `incremental_organizations` | Time-based incremental export of organizations changed since a start time. | |
| **Incremental Ticket Events Export** | `incremental_ticket_events` | Time-based incremental export of ticket events since a start time. | |
| **Incremental Users Export** | `incremental_users` | Cursor-based incremental export of users changed since a start time. | |
| **List Brands** | `list_brands` | List all brands. | |
| **List Custom Statuses** | `list_custom_statuses` | List custom ticket statuses. | |
| **List Groups** | `list_groups` | List agent groups. | |
| **List Request Comments** | `list_request_comments` | List the comments on a request. | |
| **List Requests** | `list_requests` | List end-user requests (the requester-facing view of tickets). | |
| **List Satisfaction Ratings** | `list_satisfaction_ratings` | List CSAT satisfaction ratings on solved tickets. | |
| **List Side Conversations** | `list_side_conversations` | List the side conversations on a ticket. | |
| **List Ticket Field Options** | `list_ticket_field_options` | List the custom field options of a drop-down ticket field. | |
| **List Ticket Fields** | `list_ticket_fields` | List ticket field definitions. | |
| **List Ticket Forms** | `list_ticket_forms` | List all ticket forms. | |
| **Reply to Side Conversation** | `reply_side_conversation` | Reply to an existing side conversation on a ticket. | |
| **Show Brand** | `show_brand` | Show a single brand. | |
| **Show Custom Status** | `show_custom_status` | Show a single custom ticket status. | |
| **Show Job Status** | `show_job_status` | Poll the status of an async bulk job (create\_many / update\_many). | |
| **Show Request** | `show_request` | Retrieve a single request by ID. | |
| **Show Side Conversation** | `show_side_conversation` | Retrieve a single side conversation on a ticket. | |
| **Show Ticket Field** | `show_ticket_field` | Show a single ticket field definition. | |
| **Show Ticket Field Option** | `show_ticket_field_option` | Show a single custom field option of a ticket field. | |
| **Show Ticket Form** | `show_ticket_form` | Show a single ticket form. | |
| **Update Brand** | `update_brand` | Update a brand. | |
| **Update Custom Status** | `update_custom_status` | Update a custom ticket status. | |
| **Update Request** | `update_request` | Update a request. End users can only add a comment, mark it solved, or add collaborators. | |
| **Update Side Conversation** | `update_side_conversation` | Update a side conversation's state or subject. | |
| **Update Ticket Field** | `update_ticket_field` | Update a ticket field. | |
| **Update Ticket Field Option** | `update_ticket_field_option` | Update an existing custom field option of a drop-down ticket field. | |
| **Update Ticket Form** | `update_ticket_form` | Update a ticket form. | |
### Organizations
| Operation | ID | Description | Trigger |
| ---------------------------------------- | -------------------------------------- | --------------------------------------------------------------------------------------------- | ------- |
| **Bulk Delete Organizations** | `destroy_many_organizations` | Bulk delete organizations by ID in one background job (up to 100). | |
| **Count Organizations** | `count_organizations` | Count the organizations in the account. | |
| **Create Many Organization Memberships** | `create_many_organization_memberships` | Bulk-create up to 100 organization memberships (async job). | |
| **Create Many Organizations** | `create_many_organizations` | Create many organizations in one background job (up to 100). | |
| **Create Or Update Organization** | `create_or_update_organization` | Create an organization, or update it if one already exists with the same name or external ID. | |
| **Create Organization** | `create_organization` | Create an organization. | |
| **Create Organization Field** | `create_organization_field` | Create a custom organization field. | |
| **Create Organization Membership** | `create_organization_membership` | Add a user to an organization. | |
| **Create Organization Subscription** | `create_organization_subscription` | Subscribe a user to an organization's updates. | |
| **Delete Organization** | `delete_organization` | Delete an organization. | |
| **Delete Organization Field** | `delete_organization_field` | Delete an organization field. | |
| **Delete Organization Membership** | `delete_organization_membership` | Remove a user from an organization by membership ID. | |
| **Delete Organization Subscription** | `delete_organization_subscription` | Delete an organization subscription. | |
| **List Organization Fields** | `list_organization_fields` | List all organization fields. | |
| **List Organization Memberships** | `list_organization_memberships` | List all organization memberships. | |
| **List Organization Subscriptions** | `list_organization_subscriptions` | List all organization subscriptions. | |
| **List Organizations** | `list_organizations` | List organizations. | |
| **List User's Organization Memberships** | `list_user_organization_memberships` | List the organization memberships for a given user. | |
| **Merge Organization** | `merge_organization` | Merge one organization into another in a background job. | |
| **Organization Related Information** | `related_organizations` | Show data related to an organization (ticket, user and group counts). | |
| **Search Organizations** | `search_organizations` | Search organizations by external ID, or autocomplete by name prefix. | |
| **Set Default Organization Membership** | `set_default_organization_membership` | Set an organization membership as the user's default. | |
| **Show Many Organizations** | `show_many_organizations` | Show many organizations by IDs or external IDs (up to 100). | |
| **Show Organization** | `show_organization` | Show a single organization by ID. | |
| **Show Organization Field** | `show_organization_field` | Retrieve a single organization field by ID. | |
| **Show Organization Membership** | `show_organization_membership` | Retrieve a single organization membership by ID. | |
| **Show Organization Subscription** | `show_organization_subscription` | Retrieve a single organization subscription by ID. | |
| **Update Many Organizations** | `update_many_organizations` | Apply the same update to many organizations in one background job. | |
| **Update Organization** | `update_organization` | Update an organization. | |
| **Update Organization Field** | `update_organization_field` | Update an existing organization field. | |
### Search
| Operation | ID | Description | Trigger |
| --------------------- | ------------------- | ----------------------------------------------------------------- | ------- |
| **Autocomplete Tags** | `autocomplete_tags` | Autocomplete tag names by prefix. | |
| **Export Search** | `export_search` | Export search results with cursor pagination (large result sets). | |
| **Search** | `search` | Unified search across tickets, users, organizations, and groups. | |
| **Search Count** | `search_count` | Return only the count of results matching a search query. | |
| **Search Users** | `search_users` | Find users by name, email, external\_id, etc. | |
### Sessions
| Operation | ID | Description | Trigger |
| -------------------------- | ------------------------ | --------------------------------------------------------------- | ------- |
| **Delete Session** | `delete_session` | Delete a user session, signing that session out. | |
| **List User Sessions** | `list_user_sessions` | List the active sessions for a user. | |
| **Logout Current Session** | `logout_current_session` | Delete the current session, logging out the authenticated user. | |
| **Show Current Session** | `show_current_session` | Show the current session of the authenticated user. | |
| **Show Session** | `show_session` | Show a single user session by ID. | |
### Talk
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------- | ------- |
| **Agents Activity** | `agents_activity` | Show per-agent Talk voice activity stats. | |
| **Create Voicemail Ticket** | `create_voicemail_ticket` | Create a Talk Partner Edition voice / voicemail ticket. | |
| **Current Queue Activity** | `current_queue_activity` | Show Talk's current voice queue activity snapshot. | |
| **Show Availability** | `show_availability` | Show a Talk agent's voice availability. | |
| **Update Availability** | `update_availability` | Update a Talk agent's voice availability state. | |
### Tickets
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ---------------------------------------------------------------------- | ------- |
| **Add Comment** | `add_comment` | Reply to a ticket by adding a public or internal comment. | |
| **Add Tags** | `add_tags` | Add tags to a ticket. | |
| **Bulk Delete Tickets** | `destroy_many_tickets` | Bulk-delete tickets by ID (async job). | |
| **Count Tickets** | `count_tickets` | Return an approximate count of tickets. | |
| **Create Many Tickets** | `create_many_tickets` | Bulk-create up to 100 tickets (asynchronous; returns a job status). | |
| **Create Satisfaction Rating** | `create_satisfaction_rating` | Create a satisfaction rating on a solved ticket. | |
| **Create Ticket** | `create_ticket` | Create a new ticket. | |
| **Delete Ticket** | `delete_ticket` | Soft-delete a ticket. | |
| **Incremental Ticket Export** | `list_incremental_tickets` | Cursor-based incremental export of tickets changed since a start time. | |
| **List Organization Tickets** | `list_organization_tickets` | List tickets belonging to an organization. | |
| **List Ticket Audits** | `list_audits` | List the full change history (audits) for a ticket. | |
| **List Ticket Comments** | `list_comments` | List the comments / conversation on a ticket. | |
| **List Ticket Tags** | `list_ticket_tags` | List the tags on a ticket. | |
| **List Tickets** | `list_tickets` | List tickets, optionally sorted. | |
| **List User Tickets** | `list_user_tickets` | List tickets requested by, assigned to, or CC'd to a user. | |
| **Make Comment Private** | `make_comment_private` | Convert a public ticket comment into an internal (private) note. | |
| **Mark Ticket as Spam** | `mark_ticket_as_spam` | Mark a ticket as spam and suspend its requester. | |
| **Merge Tickets** | `merge_tickets` | Merge one or more source tickets into a target ticket. | |
| **Remove Ticket Tags** | `remove_ticket_tags` | Remove specific tags from a ticket. | |
| **Set Ticket Tags** | `set_ticket_tags` | Replace all tags on a ticket. | |
| **Show Many Tickets** | `show_many_tickets` | Retrieve multiple tickets by ID in one call. | |
| **Show Ticket** | `show_ticket` | Retrieve a single ticket by ID. | |
| **Update Many Tickets** | `update_many_tickets` | Bulk-update tickets by IDs (asynchronous; returns a job status). | |
| **Update Ticket** | `update_ticket` | Update a ticket, change status/assignee/tags or add a comment. | |
| **Upload File (Attachment)** | `upload_file` | Upload a file from a URL to Zendesk and return an attachment token. | |
### Users
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------------------------------- | ------- |
| **Autocomplete Users** | `autocomplete_users` | Find users whose name or email starts with a partial string. | |
| **Bulk Delete Users** | `bulk_delete_users` | Bulk soft-delete up to 100 users by ID or external ID (asynchronous; returns a job status). | |
| **Count Users** | `count_users` | Return the total number of users, optionally filtered by role. | |
| **Create Many Users** | `create_many_users` | Bulk-create up to 100 users (asynchronous; returns a job status). | |
| **Create or Update Many Users** | `create_or_update_many_users` | Bulk upsert up to 100 users by email / external\_id (asynchronous; returns a job status). | |
| **Create or Update User** | `create_or_update_user` | Upsert a user by email / external\_id (idempotent create). | |
| **Create User** | `create_user` | Create an end user or agent. | |
| **Create User Field** | `create_user_field` | Create a custom user field. | |
| **Create User Field Option** | `create_user_field_option` | Add an option to a dropdown/multiselect user field. | |
| **Create User Identity** | `create_identity` | Add an email or phone identity to a user. | |
| **Delete User** | `delete_user` | Soft-delete a user. | |
| **Delete User Field** | `delete_user_field` | Delete a custom user field. | |
| **Delete User Field Option** | `delete_user_field_option` | Delete an option from a user field. | |
| **Delete User Identity** | `delete_identity` | Delete an identity from a user. | |
| **List User Field Options** | `list_user_field_options` | List the dropdown options of a custom user field. | |
| **List User Fields** | `list_user_fields` | List all custom user fields. | |
| **List User Identities** | `list_identities` | List all identities (email/phone) for a user. | |
| **List Users** | `list_users` | List users (agents and end users). | |
| **List Users by Group** | `list_users_by_group` | List the users that belong to a group. | |
| **List Users by Organization** | `list_users_by_organization` | List the users that belong to an organization. | |
| **Make Identity Primary** | `make_identity_primary` | Make an identity the user's primary identity. | |
| **Merge End Users** | `merge_end_users` | Merge one end user into another end user. | |
| **Permanently Delete User** | `permanently_delete_user` | Permanently delete a user that has already been soft-deleted. | |
| **Request Identity Verification** | `request_identity_verification` | Send the user a verification email/text for an identity. | |
| **Show Many Users** | `show_many_users` | Retrieve multiple users at once by ID or external ID. | |
| **Show Self** | `show_self` | Retrieve the user tied to the current API credentials. | |
| **Show User** | `show_user` | Retrieve a single user by ID. | |
| **Show User Field** | `show_user_field` | Show a single custom user field. | |
| **Show User Identity** | `show_identity` | Show a single identity on a user. | |
| **Show User Related** | `show_user_related` | Retrieve a user's related counts (tickets, entries, etc.). | |
| **Update Many Users** | `update_many_users` | Bulk-update users (asynchronous; returns a job status). | |
| **Update User** | `update_user` | Update attributes of an existing user. | |
| **Update User Field** | `update_user_field` | Update a custom user field. | |
| **Update User Field Option** | `update_user_field_option` | Update an existing option on a user field. | |
| **Update User Identity** | `update_identity` | Update the value or verification state of a user identity. | |
| **Verify Identity** | `verify_identity` | Mark an identity as verified without sending a verification email. | |
### Webhooks
| Operation | ID | Description | Trigger |
| ---------------------------- | ---------------------------------- | --------------------------------------------------------------------------- | ------- |
| **Clone Webhook** | `clone_webhook` | Create a new webhook by cloning an existing one. | |
| **Create Webhook** | `create_webhook` | Register a webhook endpoint via the Webhooks API. | |
| **Delete Webhook** | `delete_webhook` | Delete a webhook by ID. | |
| **List Invocation Attempts** | `list_webhook_invocation_attempts` | List the delivery attempts for a single webhook invocation. | |
| **List Webhook Invocations** | `list_webhook_invocations` | List recent invocations (delivery events) for a webhook. | |
| **List Webhooks** | `list_webhooks` | List webhooks configured on the account. | |
| **Patch Webhook** | `patch_webhook` | Partially update a webhook (PATCH). Only the fields you supply change. | |
| **Reset Signing Secret** | `reset_webhook_signing_secret` | Rotate (reset) a webhook's signing secret and return the new one. | |
| **Show Signing Secret** | `show_webhook_signing_secret` | Retrieve a webhook's signing secret (used to verify authenticity). | |
| **Show Webhook** | `show_webhook` | Retrieve a single webhook by ID. | |
| **Test Webhook** | `test_webhook` | Send a test request for a webhook without saving it. | |
| **Update Webhook** | `update_webhook` | Replace a webhook (PUT). The JSON body must be the complete webhook object. | |
### Other
| Operation | ID | Description | Trigger |
| ----------------------------------- | ------------------------------------ | --------------------------------------------------------------------------------- | ------- |
| **On Any Ticket Event** | `on_any_ticket_event` | Fire the workflow when Zendesk delivers the 'Any Ticket Event' event. | Yes |
| **On CSAT rating received** | `on_ticket_csat_received` | Fire the workflow when Zendesk delivers the 'CSAT rating received' event. | Yes |
| **On Organization created** | `on_organization_created` | Fire the workflow when Zendesk delivers the 'Organization created' event. | Yes |
| **On Organization deleted** | `on_organization_deleted` | Fire the workflow when Zendesk delivers the 'Organization deleted' event. | Yes |
| **On Ticket agent reassigned** | `on_ticket_agent_assignment_changed` | Fire the workflow when Zendesk delivers the 'Ticket agent reassigned' event. | Yes |
| **On Ticket comment added** | `on_ticket_comment_added` | Fire the workflow when Zendesk delivers the 'Ticket comment added' event. | Yes |
| **On Ticket created** | `on_ticket_created` | Fire the workflow when Zendesk delivers the 'Ticket created' event. | Yes |
| **On Ticket custom field changed** | `on_ticket_custom_field_changed` | Fire the workflow when Zendesk delivers the 'Ticket custom field changed' event. | Yes |
| **On Ticket custom status changed** | `on_ticket_custom_status_changed` | Fire the workflow when Zendesk delivers the 'Ticket custom status changed' event. | Yes |
| **On Ticket group reassigned** | `on_ticket_group_assignment_changed` | Fire the workflow when Zendesk delivers the 'Ticket group reassigned' event. | Yes |
| **On Ticket merged** | `on_ticket_merged` | Fire the workflow when Zendesk delivers the 'Ticket merged' event. | Yes |
| **On Ticket organization changed** | `on_ticket_organization_changed` | Fire the workflow when Zendesk delivers the 'Ticket organization changed' event. | Yes |
| **On Ticket priority changed** | `on_ticket_priority_changed` | Fire the workflow when Zendesk delivers the 'Ticket priority changed' event. | Yes |
| **On Ticket requester changed** | `on_ticket_requester_changed` | Fire the workflow when Zendesk delivers the 'Ticket requester changed' event. | Yes |
| **On Ticket soft-deleted** | `on_ticket_soft_deleted` | Fire the workflow when Zendesk delivers the 'Ticket soft-deleted' event. | Yes |
| **On Ticket status changed** | `on_ticket_status_changed` | Fire the workflow when Zendesk delivers the 'Ticket status changed' event. | Yes |
| **On Ticket subject changed** | `on_ticket_subject_changed` | Fire the workflow when Zendesk delivers the 'Ticket subject changed' event. | Yes |
| **On Ticket tags changed** | `on_ticket_tags_changed` | Fire the workflow when Zendesk delivers the 'Ticket tags changed' event. | Yes |
| **On Ticket type changed** | `on_ticket_type_changed` | Fire the workflow when Zendesk delivers the 'Ticket type changed' event. | Yes |
| **On User created** | `on_user_created` | Fire the workflow when Zendesk delivers the 'User created' event. | Yes |
| **On User deleted** | `on_user_deleted` | Fire the workflow when Zendesk delivers the 'User deleted' event. | Yes |
# Zoom
Source: https://docs.noclick.com/integrations/zoom
Connect Zoom to your workflows: 1224 operations across 26 categories.
The Zoom node adds Zoom operations to your workflows. Add it on the canvas or ask the AI builder for it by name, then pick an operation and fill in its fields.
Zoom also includes 96 trigger operations (marked in the tables below) that can start a workflow when something happens in Zoom.
You can wire the Zoom node into an AI agent as a tool provider: the agent calls the operations you allow. See [Agent tools](/agents/tools).
## Credentials
Connect Zoom under **Credentials** in the node settings. See [Connecting credentials](/credentials/connecting) for the general flow.
### OAuth
Sign in with your Zoom account when prompted; no keys to copy.
[Get your credentials here](https://marketplace.zoom.us/develop/create).
NoClick requests the following permissions:
* `archiving:read:archived_files`
* `archiving:update:archived_file_auto_delete_status`
* `calendar:delete:acl`
* `calendar:delete:calendar`
* `calendar:delete:calendar_list`
* `calendar:delete:event`
* `calendar:read:acl`
* `calendar:read:calendar`
* `calendar:read:calendar_list`
* `calendar:read:color`
* `calendar:read:event`
* `calendar:read:instance_event`
* `calendar:read:list_acl`
* `calendar:read:list_calendar_lists`
* `calendar:read:list_events`
* `calendar:update:acl`
* `calendar:update:calendar`
* `calendar:update:calendar_list`
* `calendar:update:event`
* `calendar:write:acl`
* `calendar:write:calendar`
* `calendar:write:calendar_list`
* `calendar:write:event`
* `calendar:write:import_event`
* `calendar:write:move_event`
* `calendar:write:quick_add_event`
* `clips:delete:clip`
* `clips:delete:collaborators`
* `clips:delete:comment`
* `clips:read:chapters`
* `clips:read:clip`
* `clips:read:download_clip`
* `clips:read:list_collaborator`
* `clips:read:list_comments`
* `clips:read:list_user_clips`
* `clips:update:clip`
* `clips:update:share_setting`
* `clips:write:chapters`
* `clips:write:collaborators`
* `clips:write:duplicate`
* `cloud_recording:delete:meeting_recording`
* `cloud_recording:delete:recording_file`
* `cloud_recording:read:list_recording_files`
* `cloud_recording:read:list_recording_registrants`
* `cloud_recording:read:list_user_recordings`
* `cloud_recording:read:recording_analytics_details`
* `cloud_recording:read:recording_analytics_summary`
* `cloud_recording:read:recording_settings`
* `cloud_recording:read:registration_questions`
* `cloud_recording:update:recording_settings`
* `cloud_recording:update:recover_meeting_recordings`
* `cloud_recording:update:recover_single_recording`
* `cloud_recording:update:registrant_status`
* `cloud_recording:update:registration_questions`
* `cloud_recording:write:recording_registrant`
* `contact:read:list_contacts`
* `docs:delete:collaborator`
* `docs:delete:file`
* `docs:read:export`
* `docs:read:file`
* `docs:read:general_access`
* `docs:read:import`
* `docs:read:list_children`
* `docs:read:list_file_collaborators`
* `docs:update:collaborator`
* `docs:update:file`
* `docs:update:general_access`
* `docs:write:collaborator`
* `docs:write:export`
* `docs:write:file`
* `docs:write:import`
* `email:delete:draft`
* `email:delete:label`
* `email:delete:msg`
* `email:delete:thread`
* `email:read:attachment`
* `email:read:draft`
* `email:read:history`
* `email:read:label`
* `email:read:list_drafts`
* `email:read:list_labels`
* `email:read:list_msgs`
* `email:read:list_threads`
* `email:read:msg`
* `email:read:profile`
* `email:read:thread`
* `email:update:draft`
* `email:update:label`
* `email:write:draft`
* `email:write:label`
* `email:write:modify_msg`
* `email:write:msg`
* `email:write:send_draft`
* `email:write:send_msg`
* `email:write:thread`
* `email:write:trash_msg`
* `email:write:trash_thread`
* `email:write:untrash_msg`
* `email:write:untrash_thread`
* `marketplace:read:app`
* `marketplace:read:list_user_app_requests`
* `marketplace:read:list_user_entitlements`
* `marketplace:read:list_webhook_logs`
* `marketplace:write:app`
* `meeting:delete:live_meeting_chat_message`
* `meeting:delete:meeting`
* `meeting:delete:poll`
* `meeting:delete:registrant`
* `meeting:delete:summary`
* `meeting:delete:survey`
* `meeting:read:invitation`
* `meeting:read:list_meetings`
* `meeting:read:list_past_instances`
* `meeting:read:list_past_participants`
* `meeting:read:list_poll_results`
* `meeting:read:list_polls`
* `meeting:read:list_registrants`
* `meeting:read:list_registration_questions`
* `meeting:read:list_templates`
* `meeting:read:list_upcoming_meetings`
* `meeting:read:live_streaming_token`
* `meeting:read:livestream`
* `meeting:read:local_recording_token`
* `meeting:read:meeting`
* `meeting:read:past_meeting`
* `meeting:read:past_qa`
* `meeting:read:poll`
* `meeting:read:registrant`
* `meeting:read:summary`
* `meeting:read:survey`
* `meeting:read:token`
* `meeting:update:in_meeting_controls`
* `meeting:update:live_meeting_chat_message`
* `meeting:update:livestream`
* `meeting:update:livestream_status`
* `meeting:update:meeting`
* `meeting:update:participant_rtms_app_status`
* `meeting:update:poll`
* `meeting:update:registrant_status`
* `meeting:update:registration_question`
* `meeting:update:status`
* `meeting:update:survey`
* `meeting:write:batch_polls`
* `meeting:write:batch_registrants`
* `meeting:write:invite_links`
* `meeting:write:meeting`
* `meeting:write:poll`
* `meeting:write:registrant`
* `meeting:write:sip_dialing`
* `meeting:write:template`
* `pac:read:list_pac_accounts`
* `phone:read:list_call_logs`
* `role:delete:member`
* `role:delete:role`
* `role:read:list_members`
* `role:read:list_roles`
* `role:read:role`
* `role:update:role`
* `role:write:member`
* `role:write:role`
* `scheduler:delete:availability`
* `scheduler:delete:delete_schedule`
* `scheduler:delete:scheduled_event`
* `scheduler:read:analytics`
* `scheduler:read:availability`
* `scheduler:read:get_schedule`
* `scheduler:read:list_availability`
* `scheduler:read:list_schedule`
* `scheduler:read:list_scheduled_events`
* `scheduler:read:routing`
* `scheduler:read:scheduled_event`
* `scheduler:read:scheduled_event_attendee`
* `scheduler:update:availability`
* `scheduler:update:patch_schedule`
* `scheduler:update:scheduled_event`
* `scheduler:write:availability`
* `scheduler:write:insert_schedule`
* `scheduler:write:scheduled_event`
* `team_chat:delete:channel`
* `team_chat:delete:file`
* `team_chat:delete:member`
* `team_chat:delete:shared_space`
* `team_chat:delete:shared_space_administrators`
* `team_chat:delete:shared_space_members`
* `team_chat:delete:user_channel`
* `team_chat:delete:user_message`
* `team_chat:read:channel`
* `team_chat:read:contact`
* `team_chat:read:file`
* `team_chat:read:list_contacts`
* `team_chat:read:list_members`
* `team_chat:read:list_shared_space_channels`
* `team_chat:read:list_shared_space_members`
* `team_chat:read:list_shared_spaces`
* `team_chat:read:list_user_channels`
* `team_chat:read:list_user_messages`
* `team_chat:read:shared_space`
* `team_chat:read:user_channel`
* `team_chat:read:user_message`
* `team_chat:update:channel`
* `team_chat:update:message_emoji`
* `team_chat:update:message_status`
* `team_chat:update:shared_space`
* `team_chat:update:shared_space_channels`
* `team_chat:update:shared_space_owner`
* `team_chat:update:user_channel`
* `team_chat:update:user_message`
* `team_chat:write:member`
* `team_chat:write:members`
* `team_chat:write:search_channels`
* `team_chat:write:shared_space`
* `team_chat:write:shared_space_administrators`
* `team_chat:write:shared_space_members`
* `team_chat:write:user_channel`
* `team_chat:write:user_message`
* `tsp:delete:tsp_account`
* `tsp:read:list_tsp_accounts`
* `tsp:read:tsp_account`
* `tsp:update:tsp_account`
* `tsp:write:tsp_account`
* `user:delete:assistant`
* `user:delete:profile_picture`
* `user:delete:scheduler`
* `user:delete:token`
* `user:delete:user`
* `user:delete:virtual_background_files`
* `user:read:collaboration_device`
* `user:read:email`
* `user:read:list_assistants`
* `user:read:list_collaboration_devices`
* `user:read:list_permissions`
* `user:read:list_schedulers`
* `user:read:pm_room`
* `user:read:settings`
* `user:read:token`
* `user:read:user`
* `user:read:zak`
* `user:update:email`
* `user:update:password`
* `user:update:presence_status`
* `user:update:settings`
* `user:update:status`
* `user:update:user`
* `user:write:assistant`
* `user:write:profile_picture`
* `user:write:virtual_background_files`
* `webinar:delete:branding_name_tag`
* `webinar:delete:branding_virtual_background`
* `webinar:delete:branding_wallpaper`
* `webinar:delete:panelist`
* `webinar:delete:poll`
* `webinar:delete:registrant`
* `webinar:delete:survey`
* `webinar:delete:webinar`
* `webinar:read:branding`
* `webinar:read:list_absentees`
* `webinar:read:list_panelists`
* `webinar:read:list_past_instances`
* `webinar:read:list_past_participants`
* `webinar:read:list_past_polls`
* `webinar:read:list_polls`
* `webinar:read:list_registrants`
* `webinar:read:list_registration_questions`
* `webinar:read:list_templates`
* `webinar:read:list_tracking_sources`
* `webinar:read:list_webinars`
* `webinar:read:live_streaming_token`
* `webinar:read:livestream`
* `webinar:read:local_recording_token`
* `webinar:read:past_qa`
* `webinar:read:poll`
* `webinar:read:registrant`
* `webinar:read:survey`
* `webinar:read:webinar`
* `webinar:update:branding_name_tag`
* `webinar:update:livestream`
* `webinar:update:livestream_status`
* `webinar:update:poll`
* `webinar:update:registrant_status`
* `webinar:update:registration_question`
* `webinar:update:status`
* `webinar:update:survey`
* `webinar:update:webinar`
* `webinar:write:batch_registrants`
* `webinar:write:branding_name_tag`
* `webinar:write:branding_virtual_background`
* `webinar:write:branding_wallpaper`
* `webinar:write:invite_links`
* `webinar:write:panelist`
* `webinar:write:poll`
* `webinar:write:registrant`
* `webinar:write:template`
* `webinar:write:webinar`
* `whiteboard:delete:collaborator`
* `whiteboard:delete:project`
* `whiteboard:delete:project_collaborator`
* `whiteboard:delete:project_whiteboard`
* `whiteboard:delete:whiteboard`
* `whiteboard:read:archived_file`
* `whiteboard:read:export`
* `whiteboard:read:file`
* `whiteboard:read:import`
* `whiteboard:read:list_collaborators`
* `whiteboard:read:list_projects`
* `whiteboard:read:list_sessions`
* `whiteboard:read:list_whiteboards`
* `whiteboard:read:project`
* `whiteboard:read:project_collaborator`
* `whiteboard:read:session`
* `whiteboard:read:subproject`
* `whiteboard:read:whiteboard`
* `whiteboard:update:collaborator`
* `whiteboard:update:project`
* `whiteboard:update:project_collaborator`
* `whiteboard:update:share_setting`
* `whiteboard:write:export`
* `whiteboard:write:import`
* `whiteboard:write:project`
* `whiteboard:write:project_collaborator`
* `whiteboard:write:project_whiteboard`
* `whiteboard:write:whiteboard`
* `zoom_events:delete:access_links`
* `zoom_events:delete:event`
* `zoom_events:delete:exhibitor`
* `zoom_events:delete:hub_host`
* `zoom_events:delete:session`
* `zoom_events:delete:session_reservations`
* `zoom_events:delete:speaker`
* `zoom_events:delete:ticket`
* `zoom_events:delete:ticket_type`
* `zoom_events:read:access_links`
* `zoom_events:read:event`
* `zoom_events:read:exhibitor`
* `zoom_events:read:list_access_links`
* `zoom_events:read:list_attendee_actions`
* `zoom_events:read:list_coeditors`
* `zoom_events:read:list_email_types`
* `zoom_events:read:list_emails_status`
* `zoom_events:read:list_events`
* `zoom_events:read:list_exhibitors`
* `zoom_events:read:list_hub_hosts`
* `zoom_events:read:list_hub_videos`
* `zoom_events:read:list_hubs`
* `zoom_events:read:list_registrants`
* `zoom_events:read:list_registration_questions`
* `zoom_events:read:list_session_attendee_actions`
* `zoom_events:read:list_session_attendees`
* `zoom_events:read:list_session_interpreters`
* `zoom_events:read:list_session_polls`
* `zoom_events:read:list_session_reservations`
* `zoom_events:read:list_session_surveys`
* `zoom_events:read:list_sessions`
* `zoom_events:read:list_speakers`
* `zoom_events:read:list_sponsor_tiers`
* `zoom_events:read:list_ticket_types`
* `zoom_events:read:list_tickets`
* `zoom_events:read:session`
* `zoom_events:read:session_livestream_config`
* `zoom_events:read:session_token`
* `zoom_events:read:speaker`
* `zoom_events:read:ticket`
* `zoom_events:update:access_links`
* `zoom_events:update:batch_attendee_actions`
* `zoom_events:update:batch_session_attendee_actions`
* `zoom_events:update:event`
* `zoom_events:update:exhibitor`
* `zoom_events:update:registraion_question`
* `zoom_events:update:session`
* `zoom_events:update:session_interpreter`
* `zoom_events:update:session_livestream_config`
* `zoom_events:update:session_poll`
* `zoom_events:update:speaker`
* `zoom_events:update:ticket_type`
* `zoom_events:write:access_links`
* `zoom_events:write:coeditor`
* `zoom_events:write:event`
* `zoom_events:write:exhibitor`
* `zoom_events:write:hub_host`
* `zoom_events:write:session_reservations`
* `zoom_events:write:speaker`
* `zoom_events:write:ticket`
* `zoom_events:write:ticket_type`
* `zoom_quality_management:read:evaluations`
* `zoom_quality_management:read:interactions`
* `zoom_quality_management:write:interactions`
* `zra:read:team`
* `zra:read:team_list`
* `zra:read:team_managers`
* `zra:read:team_members`
* `zva:delete:km_article`
* `zva:read:km_article`
* `zva:read:list_km_articles`
* `zva:update:km_article`
* `zva:write:km_article`
### Server to server
Enter the values manually when creating the credential.
Create a Server-to-Server OAuth app at marketplace.zoom.us (Develop -> Build App -> Server-to-Server OAuth). Copy the Account ID, Client ID, and Client Secret, and add the scopes your operations need (meeting, webinar, user, recording, phone, chat).
[Get your credentials here](https://marketplace.zoom.us/develop/create).
## Operations
### Accounts
| Operation | ID | Description | Trigger |
| -------------------------------- | ------------------------------ | ----------------------------------------------------------------------------- | ------- |
| **Get Account Lock Settings** | `get_account_lock_settings` | Get an account's locked settings. Use 'me' for the master/regular account. | |
| **Get Account Settings** | `get_account_settings` | Get an account's settings. Use 'me' for the master/regular account. | |
| **Update Account Lock Settings** | `update_account_lock_settings` | Update an account's locked settings. Use 'me' for the master/regular account. | |
| **Update Account Owner** | `update_account_owner` | Change the owner of a sub account to another user on that account. | |
| **Update Account Settings** | `update_account_settings` | Update an account's settings. Use 'me' for the master/regular account. | |
### AI services
| Operation | ID | Description | Trigger |
| ------------------------- | -------------------------- | ------------------------------------------------ | ------- |
| **Cancel Scribe Job** | `ai_cancel_scribe_job` | Cancel a Zoom Scribe batch job. | |
| **Get Scribe Job** | `ai_get_scribe_job` | Get the status of a Zoom Scribe batch job. | |
| **List Scribe Job Files** | `ai_list_scribe_job_files` | List output files for a Zoom Scribe batch job. | |
| **List Scribe Jobs** | `ai_list_scribe_jobs` | List Zoom Scribe (transcription) batch jobs. | |
| **Submit Scribe Job** | `ai_submit_scribe_job` | Submit a Zoom Scribe (transcription) batch job. | |
| **Transcribe (Sync)** | `ai_transcribe` | Synchronously transcribe audio with Zoom Scribe. | |
### Contact center
| Operation | ID | Description | Trigger |
| ----------------------------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------ | ------- |
| **Add Contact** | `cc_add_contact` | Add a contact to a campaign contact list. | |
| **Add DNC Phones** | `cc_add_dnc_phones` | Add phone numbers to a Do Not Call (DNC) list. | |
| **Add Flow Entry Points** | `cc_add_flow_entry_points` | Add entry points to a Zoom Contact Center flow. | |
| **Assign Inbox Queues** | `cc_assign_inbox_queues` | Grant queues access to an inbox. | |
| **Assign Inbox Users** | `cc_assign_inbox_users` | Grant users access to an inbox. | |
| **Assign Queue Agents** | `cc_assign_queue_agents` | Assign agents to a Zoom Contact Center queue. | |
| **Assign Queue Disposition Sets** | `cc_assign_queue_disposition_sets` | Assign disposition sets to a Zoom Contact Center queue. | |
| **Assign Queue Dispositions** | `cc_assign_queue_dispositions` | Assign dispositions to a Zoom Contact Center queue. | |
| **Assign Queue Interrupt Menu** | `cc_assign_queue_interrupt_menu` | Assign a menu based interrupt to a Zoom Contact Center queue. | |
| **Assign Queue Supervisors** | `cc_assign_queue_supervisors` | Assign supervisors to a Zoom Contact Center queue. | |
| **Assign Queue Teams** | `cc_assign_queue_teams` | Assign teams to a Zoom Contact Center queue. | |
| **Assign Region Users** | `cc_assign_region_users` | Assign users to a Contact Center region. | |
| **Assign Team Agents** | `cc_assign_team_agents` | Assign agents (members) to a team | |
| **Assign Team Supervisors** | `cc_assign_team_supervisors` | Assign supervisors to a team | |
| **Batch Create Contacts** | `cc_batch_create_contacts` | Batch create up to 10 contacts in an address book. | |
| **Batch Create Queues** | `cc_batch_create_queues` | Batch create Zoom Contact Center queues with a template. | |
| **Batch Delete Contacts** | `cc_batch_delete_contacts` | Batch delete up to 50 contacts from an address book. | |
| **Batch Delete Queues** | `cc_batch_delete_queues` | Batch delete Zoom Contact Center queues. | |
| **Batch Update Contact Lists** | `cc_batch_update_contact_lists` | Batch update campaign contact lists. | |
| **Batch Update Contacts** | `cc_batch_update_contacts` | Batch update contacts within a campaign contact list. | |
| **CC Add User Skills** | `cc_add_user_skills` | Assign one or more skills to a Contact Center user. | |
| **CC Assign Role Users** | `cc_assign_role_users` | Assign users to a Zoom Contact Center role. | |
| **CC Batch Create Users** | `cc_batch_create_users` | Batch add multiple Zoom users to Contact Center as agents. | |
| **CC Batch Delete Users** | `cc_batch_delete_users` | Batch remove multiple users from Contact Center. | |
| **CC Batch Update User Status** | `cc_batch_update_user_status` | Batch update the engagement/agent status of multiple Contact Center users. | |
| **CC Batch Update Users** | `cc_batch_update_users` | Batch update multiple Contact Center users' profiles. | |
| **CC Create Agent Routing Profile** | `cc_create_agent_routing_profile` | Create a Zoom Contact Center agent routing profile. | |
| **CC Create Consumer Routing Profile** | `cc_create_consumer_routing_profile` | Create a Zoom Contact Center consumer routing profile. | |
| **CC Create Role** | `cc_create_role` | Create a new Zoom Contact Center role. | |
| **CC Create User** | `cc_create_user` | Add (assign) a Zoom user to Contact Center as an agent. | |
| **CC Create User Template** | `cc_create_user_template` | Create a Contact Center user settings template. | |
| **CC Delete Agent Routing Profile** | `cc_delete_agent_routing_profile` | Delete a Zoom Contact Center agent routing profile. | |
| **CC Delete Consumer Routing Profile** | `cc_delete_consumer_routing_profile` | Delete a Zoom Contact Center consumer routing profile. | |
| **CC Delete Role** | `cc_delete_role` | Delete a Zoom Contact Center role. | |
| **CC Delete Role Privileges** | `cc_delete_role_privileges` | Remove privileges from a Zoom Contact Center role. | |
| **CC Delete Role User** | `cc_delete_role_user` | Unassign a single user from a Zoom Contact Center role. | |
| **CC Delete User** | `cc_delete_user` | Remove a user from Contact Center. | |
| **CC Delete User Recordings** | `cc_delete_user_recordings` | Delete a Contact Center user's engagement recordings. | |
| **CC Delete User Template** | `cc_delete_user_template` | Delete a Contact Center user settings template. | |
| **CC Duplicate Role** | `cc_duplicate_role` | Duplicate an existing Zoom Contact Center role. | |
| **CC Get Agent Routing Profile** | `cc_get_agent_routing_profile` | Get a Zoom Contact Center agent routing profile. | |
| **CC Get Consumer Routing Profile** | `cc_get_consumer_routing_profile` | Get a Zoom Contact Center consumer routing profile. | |
| **CC Get Role** | `cc_get_role` | Get details of a Zoom Contact Center role. | |
| **CC Get Role Users** | `cc_get_role_users` | List users assigned to a Zoom Contact Center role. | |
| **CC Get User** | `cc_get_user` | Get a Contact Center user's profile. | |
| **CC Get User Template** | `cc_get_user_template` | Get a Contact Center user settings template. | |
| **CC List Agent Routing Profiles** | `cc_list_agent_routing_profiles` | List Zoom Contact Center agent routing profiles. | |
| **CC List Consumer Routing Profiles** | `cc_list_consumer_routing_profiles` | List Zoom Contact Center consumer routing profiles. | |
| **CC List Roles** | `cc_list_roles` | List all Zoom Contact Center roles. | |
| **CC List User Queues** | `cc_list_user_queues` | List the queues a Contact Center user is a member of. | |
| **CC List User Recordings** | `cc_list_user_recordings` | List a Contact Center user's engagement recordings. | |
| **CC List User Skills** | `cc_list_user_skills` | List the skills assigned to a Contact Center user. | |
| **CC List User Templates** | `cc_list_user_templates` | List Contact Center user settings templates. | |
| **CC List Users** | `cc_list_users` | List Zoom Contact Center users (agents). | |
| **CC Opt In/Out Queues** | `cc_opt_in_out_queues` | Opt a Contact Center user in or out of one or more queues. | |
| **CC Remove User Skill** | `cc_remove_user_skill` | Remove a skill from a Contact Center user. | |
| **CC Update Agent Routing Profile** | `cc_update_agent_routing_profile` | Update a Zoom Contact Center agent routing profile. | |
| **CC Update Consumer Routing Profile** | `cc_update_consumer_routing_profile` | Update a Zoom Contact Center consumer routing profile. | |
| **CC Update Role** | `cc_update_role` | Update a Zoom Contact Center role. | |
| **CC Update User** | `cc_update_user` | Update a Contact Center user's profile. | |
| **CC Update User Status** | `cc_update_user_status` | Update a single Contact Center user's engagement/agent status. | |
| **CC Update User Template** | `cc_update_user_template` | Update a Contact Center user settings template. | |
| **Control Engagement Recording** | `cc_control_engagement_recording` | Control a Contact Center engagement recording (pause/resume/stop/start). | |
| **Control Recording** | `cc_control_recording` | Control the recording of a live Contact Center engagement (start/pause/resume/stop). | |
| **Create Address Book** | `cc_create_address_book` | Create a new address book in Zoom Contact Center. | |
| **Create Address Book Custom Field** | `cc_create_address_book_custom_field` | Create an address book custom field. | |
| **Create Address Book Unit** | `cc_create_address_book_unit` | Create a new address book unit. | |
| **Create Agent Status** | `cc_create_agent_status` | Create a Contact Center system status. | |
| **Create Business Hours** | `cc_create_business_hours` | Create Contact Center business hours | |
| **Create Campaign** | `cc_create_campaign` | Create an outbound campaign. | |
| **Create CC Asset** | `cc_create_asset` | Create a Contact Center asset library asset. | |
| **Create CC Asset Category** | `cc_create_asset_category` | Create a Contact Center asset library category. | |
| **Create CC Variable** | `cc_create_variable` | Create a Contact Center variable. | |
| **Create CC Variable Group** | `cc_create_variable_group` | Create a Contact Center variable group. | |
| **Create Closure Set** | `cc_create_closure` | Create a Contact Center closure set | |
| **Create Contact** | `cc_create_contact` | Create a single contact in an address book. | |
| **Create Contact List** | `cc_create_contact_list` | Create a campaign contact list. | |
| **Create Disposition** | `cc_create_disposition` | Create a disposition. | |
| **Create Disposition Set** | `cc_create_disposition_set` | Create a disposition set. | |
| **Create Engagement** | `cc_create_engagement` | Create (start) a Contact Center engagement. | |
| **Create Flow** | `cc_create_flow` | Create (import) a Zoom Contact Center flow. | |
| **Create Inbox** | `cc_create_inbox` | Create a new Contact Center inbox. | |
| **Create Queue** | `cc_create_queue` | Create a Zoom Contact Center queue. | |
| **Create Region** | `cc_create_region` | Create a Contact Center region. | |
| **Create Skill** | `cc_create_skill` | Create a Zoom Contact Center skill. | |
| **Create Skill Category** | `cc_create_skill_category` | Create a Zoom Contact Center skill category. | |
| **Create Team** | `cc_create_team` | Create a Contact Center team | |
| **Delete Address Book** | `cc_delete_address_book` | Delete an address book. | |
| **Delete Address Book Custom Field** | `cc_delete_address_book_custom_field` | Delete an address book custom field. | |
| **Delete Address Book Unit** | `cc_delete_address_book_unit` | Delete an address book unit. | |
| **Delete Agent Status** | `cc_delete_agent_status` | Delete a Contact Center system status. | |
| **Delete All Inbox Messages** | `cc_delete_inboxes_messages` | Delete account-level Contact Center inbox messages. | |
| **Delete Business Hours** | `cc_delete_business_hours` | Delete Contact Center business hours | |
| **Delete Campaign** | `cc_delete_campaign` | Delete an outbound campaign. | |
| **Delete CC Asset** | `cc_delete_asset` | Delete a Contact Center asset. | |
| **Delete CC Asset Category** | `cc_delete_asset_category` | Delete a Contact Center asset library category. | |
| **Delete CC Asset Items** | `cc_delete_asset_items` | Delete specific items within a Contact Center asset. | |
| **Delete CC Variable** | `cc_delete_variable` | Delete a Contact Center variable. | |
| **Delete CC Variable Group** | `cc_delete_variable_group` | Delete a Contact Center variable group. | |
| **Delete CC Variable Log** | `cc_delete_variable_log` | Delete a Contact Center variable log entry. | |
| **Delete Closure Set** | `cc_delete_closure` | Delete a Contact Center closure set | |
| **Delete Contact** | `cc_delete_contact` | Delete a contact from a campaign contact list. | |
| **Delete Contact List** | `cc_delete_contact_list` | Delete a campaign contact list. | |
| **Delete Disposition** | `cc_delete_disposition` | Delete a disposition. | |
| **Delete Disposition Set** | `cc_delete_disposition_set` | Delete a disposition set. | |
| **Delete DNC Phones** | `cc_delete_dnc_phones` | Remove phone numbers from a Do Not Call (DNC) list. | |
| **Delete Engagement Recordings** | `cc_delete_engagement_recordings` | Delete all recordings for a Contact Center engagement. | |
| **Delete Flow** | `cc_delete_flow` | Delete a Zoom Contact Center flow. | |
| **Delete Flow Entry Points** | `cc_delete_flow_entry_points` | Delete the entry points of a Zoom Contact Center flow. | |
| **Delete Inbox Message** | `cc_delete_inbox_message` | Delete a single message within an inbox. | |
| **Delete Inbox Messages** | `cc_delete_inbox_messages` | Delete all messages within a specific inbox. | |
| **Delete Inboxes** | `cc_delete_inboxes` | Delete multiple Contact Center inboxes. | |
| **Delete Queue** | `cc_delete_queue` | Delete a Zoom Contact Center queue. | |
| **Delete Queue Callback Attendee** | `cc_delete_queue_callback_attendee` | Delete an attendee from a Zoom Contact Center queue's scheduled callback. | |
| **Delete Queue Interrupt Menu** | `cc_delete_queue_interrupt_menu` | Delete a Zoom Contact Center queue's interrupt menu configuration. | |
| **Delete Queue Recordings** | `cc_delete_queue_recordings` | Delete a Zoom Contact Center queue's recordings. | |
| **Delete Recording** | `cc_delete_recording` | Delete a Contact Center recording. | |
| **Delete Region** | `cc_delete_region` | Delete a Contact Center region. | |
| **Delete Skill** | `cc_delete_skill` | Delete a Zoom Contact Center skill. | |
| **Delete Skill Category** | `cc_delete_skill_category` | Delete a Zoom Contact Center skill category. | |
| **Delete Team** | `cc_delete_team` | Delete a Contact Center team | |
| **Duplicate CC Asset** | `cc_duplicate_asset` | Duplicate a Contact Center asset. | |
| **Export Flow** | `cc_export_flow` | Export a Zoom Contact Center flow's definition. | |
| **Get Address Book** | `cc_get_address_book` | Get the details of an address book. | |
| **Get Address Book Custom Field** | `cc_get_address_book_custom_field` | Get the details of an address book custom field. | |
| **Get Address Book Unit** | `cc_get_address_book_unit` | Get the details of an address book unit. | |
| **Get Agent Status** | `cc_get_agent_status` | Get details of a Contact Center system status. | |
| **Get Business Hours** | `cc_get_business_hours` | Get Contact Center business hours | |
| **Get Campaign** | `cc_get_campaign` | Get an outbound campaign. | |
| **Get CC Asset** | `cc_get_asset` | Get a Contact Center asset's details and access URL. | |
| **Get CC Asset Category** | `cc_get_asset_category` | Get a Contact Center asset library category. | |
| **Get CC Variable** | `cc_get_variable` | Get a Contact Center variable's details. | |
| **Get CC Variable Group** | `cc_get_variable_group` | Get a Contact Center variable group's details. | |
| **Get CC Variable Log** | `cc_get_variable_log` | Get a Contact Center variable log entry. | |
| **Get Closure Set** | `cc_get_closure` | Get a Contact Center closure set | |
| **Get Contact** | `cc_get_contact` | Get a contact within a campaign contact list. | |
| **Get Contact Custom Fields** | `cc_get_contact_custom_fields` | Get the custom field values for a specific contact. | |
| **Get Contact List** | `cc_get_contact_list` | Get a campaign contact list. | |
| **Get Disposition** | `cc_get_disposition` | Get a disposition. | |
| **Get Disposition Set** | `cc_get_disposition_set` | Get a disposition set. | |
| **Get Engagement** | `cc_get_engagement` | Get details of a Contact Center engagement. | |
| **Get Engagement Attachments** | `cc_get_engagement_attachments` | List attachments of a Contact Center engagement. | |
| **Get Engagement Events** | `cc_get_engagement_events` | List the events (timeline, transfers) of a Contact Center engagement. | |
| **Get Engagement Note** | `cc_get_engagement_note` | Get a specific note on a Contact Center engagement. | |
| **Get Engagement Recording Status** | `cc_get_engagement_recording_status` | Get the recording status of a Contact Center engagement. | |
| **Get Engagement Recordings** | `cc_get_engagement_recordings` | List recordings (audio/transcript) of a Contact Center engagement. | |
| **Get Engagement Survey** | `cc_get_engagement_survey` | Get the post-engagement survey results for a Contact Center engagement. | |
| **Get Flow** | `cc_get_flow` | Get the details of a Zoom Contact Center flow. | |
| **Get Historical Dataset** | `cc_get_historical_dataset` | Get a Contact Center historical analytics dataset report. | |
| **Get Historical Log** | `cc_get_historical_log` | Get a Contact Center historical analytics log (engagement or journey). | |
| **Get Inbox** | `cc_get_inbox` | Get details of a specific Contact Center inbox. | |
| **Get Inbox Email Notifications** | `cc_get_inbox_email_notifications` | Get email notification settings for an inbox. | |
| **Get Note** | `cc_get_note` | Get a specific note for a Contact Center engagement. | |
| **Get Queue** | `cc_get_queue` | Get a Zoom Contact Center queue. | |
| **Get Queue Operating Hours** | `cc_get_queue_operating_hours` | Get a queue's operating hours | |
| **Get Region** | `cc_get_region` | Get a Contact Center region. | |
| **Get Skill** | `cc_get_skill` | Get the details of a Zoom Contact Center skill. | |
| **Get Skill Category** | `cc_get_skill_category` | Get the details of a Zoom Contact Center skill category. | |
| **Get Team** | `cc_get_team` | Get a Contact Center team | |
| **List Address Book Custom Fields** | `cc_list_address_book_custom_fields` | List address book custom fields. | |
| **List Address Book Units** | `cc_list_address_book_units` | List all address book units in Zoom Contact Center. | |
| **List Address Books** | `cc_list_address_books` | List all address books in Zoom Contact Center. | |
| **List Agent Leg Reports** | `cc_agent_leg_metrics` | List agent leg reports (legacy reports). | |
| **List Agent Status History** | `cc_agent_status_history` | List agent's status history reports (legacy reports). | |
| **List Agent Statuses** | `cc_list_agent_statuses` | List Contact Center user system statuses. | |
| **List Agent Time Sheets** | `cc_agent_time_sheets` | List agent's time sheet reports (legacy reports). | |
| **List All Flow Entry Points** | `cc_list_flows_entry_points` | List entry points across all Zoom Contact Center flows. | |
| **List All Inbox Messages** | `cc_list_inboxes_messages` | List messages (voicemails/recordings) across all Contact Center inboxes. | |
| **List All Notes** | `cc_list_all_notes` | List engagement notes across the Contact Center account. | |
| **List Business Hours** | `cc_list_business_hours` | List Contact Center business hours | |
| **List Business Hours Flows** | `cc_list_business_hours_flows` | List a business hours' flows | |
| **List Business Hours Queues** | `cc_list_business_hours_queues` | List a business hours' queues | |
| **List Campaigns** | `cc_list_campaigns` | List outbound campaigns. | |
| **List CC Asset Categories** | `cc_list_asset_categories` | List Contact Center asset library categories. | |
| **List CC Assets** | `cc_list_assets` | List Contact Center asset library assets (media, prompts, files). | |
| **List CC Variable Groups** | `cc_list_variable_groups` | List Contact Center variable groups. | |
| **List CC Variable Logs** | `cc_list_variable_logs` | List Contact Center variable change logs. | |
| **List CC Variables** | `cc_list_variables` | List Contact Center variables. | |
| **List Closure Flows** | `cc_list_closure_flows` | List a closure set's flows | |
| **List Closure Queues** | `cc_list_closure_queues` | List a closure set's queues | |
| **List Closures** | `cc_list_closures` | List Contact Center closure sets | |
| **List Contact Lists** | `cc_list_contact_lists` | List campaign contact lists. | |
| **List Contacts** | `cc_list_contacts` | List contacts within a campaign contact list. | |
| **List Disposition Sets** | `cc_list_disposition_sets` | List disposition sets. | |
| **List Dispositions** | `cc_list_dispositions` | List dispositions. | |
| **List DNC Phones** | `cc_list_dnc_phones` | List phone numbers in a Do Not Call (DNC) list. | |
| **List Email Logs** | `cc_list_email_logs` | List Contact Center email engagement logs. | |
| **List Engagement Notes** | `cc_list_engagement_notes` | List notes for a specific Contact Center engagement. | |
| **List Engagement Recordings** | `cc_list_engagement_recordings` | List recordings for a specific Contact Center engagement. | |
| **List Engagements** | `cc_list_engagements` | List Contact Center engagement logs. | |
| **List Flow Entry Points** | `cc_list_flow_entry_points` | List the entry points of a Zoom Contact Center flow. | |
| **List Flows** | `cc_list_flows` | List all Zoom Contact Center flows. | |
| **List Historical Agent Performance** | `cc_hist_agent_performance` | List historical agent performance dataset data (CX Analytics). | |
| **List Historical Agent Reports by Queue** | `cc_queue_agents_metrics` | List historical agent reports by queue (legacy reports). | |
| **List Historical Agent Timecard** | `cc_hist_agent_timecard` | List historical agent timecard dataset data (CX Analytics). | |
| **List Historical Call Journey Data** | `cc_hist_journey_log` | List historical Zoom Phone to Contact Center call journey log data (CX Analytics). | |
| **List Historical Detail Reports** | `cc_historical_detail_metrics` | List historical detail reports (legacy reports). | |
| **List Historical Disposition Data** | `cc_hist_disposition` | List historical disposition dataset data (CX Analytics). | |
| **List Historical Engagement Data** | `cc_hist_engagement` | List historical engagement dataset data (CX Analytics). | |
| **List Historical Engagement Logs** | `cc_hist_engagement_log` | List historical engagement log data (CX Analytics). | |
| **List Historical Expert Assist Data** | `cc_hist_expert_assist` | List historical expert assist dataset data (CX Analytics). | |
| **List Historical Flow Performance** | `cc_hist_flow_performance` | List historical flow performance dataset data (CX Analytics). | |
| **List Historical Outbound Dialer Performance** | `cc_hist_outbound_dialer_performance` | List historical outbound dialer performance dataset data (CX Analytics). | |
| **List Historical Queue Performance** | `cc_hist_queue_performance` | List historical queue performance dataset data (CX Analytics). | |
| **List Historical Queue Reports** | `cc_historical_queue_metrics` | List historical queue reports (legacy reports). | |
| **List Historical Queue's Agents Reports** | `cc_queue_agent_metrics` | List a historical queue's agents reports (legacy reports). | |
| **List Inbox Messages** | `cc_list_inbox_messages` | List messages (voicemails/recordings) within a specific inbox. | |
| **List Inbox Queues** | `cc_list_inbox_queues` | List queues that have access to an inbox. | |
| **List Inbox Users** | `cc_list_inbox_users` | List users that have access to an inbox. | |
| **List Inboxes** | `cc_list_inboxes` | List all Contact Center inboxes on the account. | |
| **List Messaging Logs** | `cc_list_messaging_logs` | List Contact Center messaging engagement logs. | |
| **List Notes** | `cc_list_notes` | List all Contact Center engagement notes across engagements. | |
| **List Operation Logs** | `cc_list_operation_logs` | List Contact Center operation (audit) logs. | |
| **List Queue Agents** | `cc_list_queue_agents` | List agents assigned to a Zoom Contact Center queue. | |
| **List Queue Callback Slots** | `cc_list_queue_callback_slots` | List a Zoom Contact Center queue's scheduled callback availability slots. | |
| **List Queue Disposition Sets** | `cc_list_queue_disposition_sets` | List disposition sets assigned to a Zoom Contact Center queue. | |
| **List Queue Dispositions** | `cc_list_queue_dispositions` | List dispositions assigned to a Zoom Contact Center queue. | |
| **List Queue Recordings** | `cc_list_queue_recordings` | List a Zoom Contact Center queue's recordings. | |
| **List Queue Supervisors** | `cc_list_queue_supervisors` | List supervisors assigned to a Zoom Contact Center queue. | |
| **List Queues** | `cc_list_queues` | List Zoom Contact Center queues. | |
| **List Recordings** | `cc_list_recordings` | List Contact Center recordings. | |
| **List Region Users** | `cc_list_region_users` | List users assigned to a Contact Center region. | |
| **List Regions** | `cc_list_regions` | List Contact Center regions. | |
| **List Skill Categories** | `cc_list_skill_categories` | List all Zoom Contact Center skill categories. | |
| **List Skill Users** | `cc_list_skill_users` | List the users assigned to a Zoom Contact Center skill. | |
| **List Skills** | `cc_list_skills` | List all Zoom Contact Center skills. | |
| **List SMS Logs** | `cc_list_sms_logs` | List Contact Center SMS engagement logs. | |
| **List Team Agents** | `cc_list_team_agents` | List a team's agents (members) | |
| **List Team Children** | `cc_list_team_children` | List a team's child teams | |
| **List Team Parents** | `cc_list_team_parents` | List a team's parent teams | |
| **List Team Supervisors** | `cc_list_team_supervisors` | List a team's supervisors | |
| **List Teams** | `cc_list_teams` | List Contact Center teams | |
| **List User Devices** | `cc_list_user_devices` | List the devices of a Contact Center user. | |
| **List Voice Call Logs** | `cc_list_voice_call_logs` | List Contact Center voice call engagement logs. | |
| **List Work Item Logs** | `cc_list_work_item_logs` | List Contact Center work item engagement logs. | |
| **Move Team** | `cc_move_team` | Move a team under a new parent team | |
| **Publish Flow** | `cc_publish_flow` | Publish a Zoom Contact Center flow. | |
| **Schedule Queue Callback** | `cc_schedule_queue_callback` | Schedule a callback on a Zoom Contact Center queue. | |
| **Send Message** | `cc_send_message` | Send a Contact Center message (messaging channel). | |
| **Send SMS** | `cc_send_sms` | Send an SMS from a Contact Center SMS-capable number to consumer numbers. | |
| **Send User Command** | `cc_send_user_command` | Send a call control command to a Contact Center user's device. | |
| **Set Campaign Status** | `cc_set_campaign_status` | Change a campaign's status (start, stop, pause, resume). | |
| **Unassign Inbox Queues** | `cc_unassign_inbox_queues` | Revoke queue access from an inbox. | |
| **Unassign Inbox Users** | `cc_unassign_inbox_users` | Revoke user access from an inbox. | |
| **Unassign Queue Agent** | `cc_unassign_queue_agent` | Unassign an agent from a Zoom Contact Center queue. | |
| **Unassign Queue Disposition** | `cc_unassign_queue_disposition` | Unassign a disposition from a Zoom Contact Center queue. | |
| **Unassign Queue Disposition Set** | `cc_unassign_queue_disposition_set` | Unassign a disposition set from a Zoom Contact Center queue. | |
| **Unassign Queue Supervisor** | `cc_unassign_queue_supervisor` | Unassign a supervisor from a Zoom Contact Center queue. | |
| **Unassign Queue Team** | `cc_unassign_queue_team` | Unassign a team from a Zoom Contact Center queue. | |
| **Unassign Queue Teams** | `cc_unassign_queue_teams` | Unassign multiple teams from a Zoom Contact Center queue. | |
| **Unassign Team Agents** | `cc_unassign_team_agents` | Unassign agents (members) from a team | |
| **Unassign Team Supervisors** | `cc_unassign_team_supervisors` | Unassign supervisors from a team | |
| **Update Address Book** | `cc_update_address_book` | Update an existing address book. | |
| **Update Address Book Custom Field** | `cc_update_address_book_custom_field` | Update an address book custom field. | |
| **Update Address Book Unit** | `cc_update_address_book_unit` | Update an existing address book unit. | |
| **Update Agent Status** | `cc_update_agent_status` | Update a Contact Center system status. | |
| **Update Business Hours** | `cc_update_business_hours` | Update Contact Center business hours | |
| **Update Campaign** | `cc_update_campaign` | Update an outbound campaign. | |
| **Update CC Asset** | `cc_update_asset` | Update a Contact Center asset's metadata or content. | |
| **Update CC Asset Category** | `cc_update_asset_category` | Update a Contact Center asset library category. | |
| **Update CC Variable** | `cc_update_variable` | Update a Contact Center variable. | |
| **Update CC Variable Group** | `cc_update_variable_group` | Update a Contact Center variable group. | |
| **Update Closure Set** | `cc_update_closure` | Update a Contact Center closure set | |
| **Update Contact** | `cc_update_contact` | Update a contact within a campaign contact list. | |
| **Update Contact List** | `cc_update_contact_list` | Update a campaign contact list. | |
| **Update Disposition** | `cc_update_disposition` | Update a disposition. | |
| **Update Disposition Set** | `cc_update_disposition_set` | Update a disposition set. | |
| **Update Engagement** | `cc_update_engagement` | Update a Contact Center engagement (e.g. transfer to agent/queue, set fields). | |
| **Update Engagement Note** | `cc_update_engagement_note` | Update a note on a Contact Center engagement. | |
| **Update Flow** | `cc_update_flow` | Edit a Zoom Contact Center flow. | |
| **Update Inbox** | `cc_update_inbox` | Update a Contact Center inbox. | |
| **Update Inbox Email Notification** | `cc_update_inbox_email_notification` | Update email notification settings for an inbox. | |
| **Update Note** | `cc_update_note` | Update a Contact Center engagement note. | |
| **Update Queue** | `cc_update_queue` | Update a Zoom Contact Center queue. | |
| **Update Queue Agent** | `cc_update_queue_agent` | Update an agent assigned to a Zoom Contact Center queue. | |
| **Update Queue Interrupt** | `cc_update_queue_interrupt` | Update a Zoom Contact Center queue's interrupt settings. | |
| **Update Queue Operating Hours** | `cc_update_queue_operating_hours` | Update a queue's operating hours | |
| **Update Region** | `cc_update_region` | Update a Contact Center region. | |
| **Update Skill** | `cc_update_skill` | Update a Zoom Contact Center skill. | |
| **Update Skill Category** | `cc_update_skill_category` | Update a Zoom Contact Center skill category. | |
| **Update Team** | `cc_update_team` | Update a Contact Center team | |
### Contacts
| Operation | ID | Description | Trigger |
| --------------------------- | ------------------------- | ------------------------------------------------------------ | ------- |
| **Get Company Contact** | `get_company_contact` | Get details of a specific company (directory) contact. | |
| **Get User Contact** | `get_user_contact` | Get details of one of the current user's Zoom Chat contacts. | |
| **List User Contacts** | `list_user_contacts` | List the current user's Zoom Chat contacts. | |
| **Search Company Contacts** | `search_company_contacts` | Search an account's company (directory) contacts. | |
### Docs
| Operation | ID | Description | Trigger |
| ---------------------------- | ---------------------------- | ----------------------------------------------------------- | ------- |
| **Add Collaborators** | `docs_add_collaborators` | Add collaborators to a Zoom Docs file. | |
| **Create Doc** | `docs_create_doc` | Create a new Zoom Docs file. | |
| **Create Export** | `docs_create_export` | Create a Zoom Docs file export job. | |
| **Create Import** | `docs_create_import` | Create a new Zoom Docs file by import. | |
| **Delete File** | `docs_delete_file` | Delete a Zoom Docs file. | |
| **Get Export Status** | `docs_get_export_status` | Get the status of a Zoom Docs file export job. | |
| **Get File Metadata** | `docs_get_file` | Query metadata for a Zoom Docs file. | |
| **Get General Access** | `docs_get_general_access` | Get the general access setting of a Zoom Docs file. | |
| **Get Import Status** | `docs_get_import_status` | Get the status of a Zoom Docs file import job. | |
| **List Children** | `docs_list_children` | List all child files/folders of a Zoom Docs file or folder. | |
| **List Collaborators** | `docs_list_collaborators` | List collaborators of a Zoom Docs file. | |
| **Remove Collaborator** | `docs_remove_collaborator` | Remove a collaborator from a Zoom Docs file. | |
| **Update Collaborator Role** | `docs_update_collaborator` | Modify a collaborator's role on a Zoom Docs file. | |
| **Update File Metadata** | `docs_update_file` | Modify metadata of a Zoom Docs file. | |
| **Update General Access** | `docs_update_general_access` | Modify the general access setting of a Zoom Docs file. | |
### Marketplace
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------------------- | ----------------------------------------------------------- | ------- |
| **Create App** | `marketplace_create_app` | Create a new Marketplace app. | |
| **Delete App** | `marketplace_delete_app` | Delete a Marketplace app. | |
| **Export Manifest** | `marketplace_export_manifest` | Export a Marketplace app's manifest. | |
| **Get App** | `marketplace_get_app` | Get information about a Marketplace app. | |
| **Get Monetization Entitlements** | `marketplace_get_monetization_entitlements` | Get app user entitlements for monetized Marketplace apps. | |
| **Get User Apps** | `marketplace_get_user_apps` | Get the list of apps a user has requested or subscribed to. | |
| **Get User Entitlements** | `marketplace_get_user_entitlements` | Get a user's Marketplace app entitlements. | |
| **Get Webhook Logs** | `marketplace_get_webhook_logs` | Get webhook logs for a Marketplace app. | |
| **List Webhook Logs** | `marketplace_list_webhook_logs` | List a Marketplace app's webhook delivery logs. | |
| **Update App Manifest** | `marketplace_update_app_manifest` | Update a Marketplace app using its manifest. | |
| **Validate Manifest** | `marketplace_validate_manifest` | Validate a Marketplace app manifest. | |
### Meetings
| Operation | ID | Description | Trigger |
| ----------------------------------------- | ---------------------------------------- | ------------------------------------------------------------------------ | ------- |
| **Add Meeting Registrant** | `add_meeting_registrant` | Register a user for a meeting that requires registration. | |
| **Batch Add Meeting Registrants** | `batch_add_meeting_registrants` | Register up to 30 registrants at once for a meeting. | |
| **Batch Create Meeting Polls** | `batch_create_meeting_polls` | Create a batch of polls for a meeting. | |
| **Create Meeting** | `create_meeting` | Schedule a new meeting for a user. | |
| **Create Meeting Invite Links** | `create_meeting_invite_links` | Create one or more join links (personalized invite links) for a meeting. | |
| **Create Meeting Poll** | `create_meeting_poll` | Create a poll for a meeting. | |
| **Create Meeting Template** | `create_meeting_template` | Create a meeting template from an existing meeting. | |
| **Delete Live Meeting Chat Message** | `delete_live_meeting_chat_message` | Delete an in-meeting chat message from a live meeting. | |
| **Delete Meeting** | `delete_meeting` | Delete a meeting. | |
| **Delete Meeting Poll** | `delete_meeting_poll` | Delete a specific meeting poll. | |
| **Delete Meeting Registrant** | `delete_meeting_registrant` | Delete a specific meeting registrant. | |
| **Delete Meeting Summary** | `delete_meeting_summary` | Delete the AI Companion summary for a specific meeting. | |
| **Delete Meeting Survey** | `delete_meeting_survey` | Delete a meeting's post-meeting survey. | |
| **Get Live Streaming Join Token** | `get_meeting_live_streaming_join_token` | Get a join token for live streaming a meeting. | |
| **Get Local Recording Join Token** | `get_meeting_local_recording_join_token` | Get a join token for local recording of a meeting. | |
| **Get Meeting** | `get_meeting` | Retrieve details of a specific meeting. | |
| **Get Meeting Invitation** | `get_meeting_invitation` | Retrieve the meeting invitation text. | |
| **Get Meeting Livestream** | `get_meeting_livestream` | Retrieve a meeting's live stream configuration. | |
| **Get Meeting Poll** | `get_meeting_poll` | Get details of a specific meeting poll. | |
| **Get Meeting Registrant** | `get_meeting_registrant` | Get details of a specific meeting registrant. | |
| **Get Meeting Registration Questions** | `get_meeting_registration_questions` | Get the registration questions configured for a meeting. | |
| **Get Meeting SIP Dialing** | `meeting_sip_dialing` | Get SIP URI details (dial-in) with a passcode for a meeting. | |
| **Get Meeting Summary** | `get_meeting_summary` | Get the AI Companion summary for a specific meeting. | |
| **Get Meeting Survey** | `get_meeting_survey` | Retrieve a meeting's post-meeting survey. | |
| **Get Meeting Token** | `get_meeting_token` | Get a meeting's local recording/live-streaming/closed-caption token. | |
| **Get Past Meeting** | `get_past_meeting` | Retrieve details of a completed meeting instance. | |
| **List Meeting Polls** | `list_meeting_polls` | List all polls of a meeting. | |
| **List Meeting Registrants** | `list_meeting_registrants` | List registrants of a meeting. | |
| **List Meeting Templates** | `list_meeting_templates` | List a user's meeting templates. | |
| **List Meetings** | `list_meetings` | List scheduled meetings for a user. | |
| **List Past Meeting Instances** | `list_past_meeting_instances` | List all instances of a past meeting. | |
| **List Past Meeting Polls** | `list_past_meeting_polls` | List poll results of a past meeting. | |
| **List Past Meeting Q\&A** | `list_past_meeting_qa` | List Q\&A results of a past meeting. | |
| **List Past Participants** | `list_past_participants` | List participants who attended a past meeting. | |
| **List Upcoming Meetings** | `list_upcoming_meetings` | List a user's upcoming meetings (scheduled within the next 24 hours). | |
| **Update Live Meeting Chat Message** | `update_live_meeting_chat_message` | Edit an in-meeting chat message in a live meeting. | |
| **Update Live Meeting RTMS Status** | `update_live_meeting_rtms_status` | Start or stop the RTMS app for a live meeting. | |
| **Update Meeting** | `update_meeting` | Update a scheduled meeting's settings. | |
| **Update Meeting Livestream** | `update_meeting_livestream` | Update a meeting's live stream configuration. | |
| **Update Meeting Livestream Status** | `update_meeting_livestream_status` | Start or stop a meeting's live stream. | |
| **Update Meeting Poll** | `update_meeting_poll` | Update a specific meeting poll. | |
| **Update Meeting Registrant Status** | `update_meeting_registrant_status` | Approve, deny, or cancel meeting registrants. | |
| **Update Meeting Registration Questions** | `update_meeting_registration_questions` | Update the registration questions for a meeting. | |
| **Update Meeting Status** | `update_meeting_status` | End a live meeting or mark a meeting as ended/recovered. | |
| **Update Meeting Survey** | `update_meeting_survey` | Update a meeting's post-meeting survey. | |
| **Use In-Meeting Controls** | `use_in_meeting_controls` | Use in-meeting controls (recording, RTMS) on a live meeting. | |
### Number management
| Operation | ID | Description | Trigger |
| ----------------------------------- | ------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Assign Calling Plan to User** | `num_assign_calling_plan` | Assign a calling plan to a user (number provisioning; classic Phone endpoint). | |
| **Assign Numbers to User** | `num_assign_numbers_to_user` | Assign phone numbers to a user (number provisioning; classic Phone endpoint). | |
| **Get Phone (Account) Number** | `num_get_phone_number` | Get a Zoom Phone account phone number's details (classic Phone endpoint). | |
| **List Phone (Account) Numbers** | `num_list_phone_numbers` | List Zoom Phone account phone numbers (classic Phone endpoint). | |
| **Unassign Calling Plan from User** | `num_unassign_calling_plan` | Unassign a calling plan from a user (classic Phone endpoint). | |
| **Unassign Number from User** | `num_unassign_number_from_user` | Unassign a phone number from a user (classic Phone endpoint). | |
| **Update Number Site** | `num_update_phone_number_site` | Update a Zoom Phone number's assigned site (classic Phone endpoint). | |
### Phone
| Operation | ID | Description | Trigger |
| ------------------ | ---------------- | ----------------------------------------------------- | ------- |
| **List Call Logs** | `list_call_logs` | List account call logs (Zoom Phone license required). | |
### Quality management
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------- | ------- |
| **Add Interaction** | `qm_add_interaction` | Add a quality management interaction from a recording download URL. | |
| **Create Knowledge Base Article** | `va_create_article` | Create a Virtual Agent knowledge base article. | |
| **Delete Chatbot Message** | `chatbot_delete_message` | Delete a chatbot message. | |
| **Delete Knowledge Base Article** | `va_delete_article` | Delete a Virtual Agent knowledge base article. | |
| **Edit Chatbot Message** | `chatbot_edit_message` | Edit a chatbot message. | |
| **Get Evaluation Details** | `qm_get_evaluation` | View details of a specific quality management evaluation. | |
| **Get Interaction Details** | `qm_get_interaction` | View details of a specific quality management interaction. | |
| **Get Knowledge Base Article** | `va_get_article` | Get a Virtual Agent knowledge base article. | |
| **List Automated Evaluations** | `qm_list_automated_evaluations` | List automated (AI) quality management evaluations. | |
| **List Interactions** | `qm_list_interactions` | List quality management interactions. | |
| **List Knowledge Base Articles** | `va_list_articles` | List Virtual Agent knowledge base articles. | |
| **List Manual Evaluations** | `qm_list_manual_evaluations` | List manual quality management evaluations. | |
| **Send Chatbot Message** | `chatbot_send_message` | Send a chatbot message to Zoom Team Chat. | |
| **Update Knowledge Base Article** | `va_update_article` | Update a Virtual Agent knowledge base article. | |
### Recordings
| Operation | ID | Description | Trigger |
| ----------------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------- | ------- |
| **Create Recording Registrant** | `create_recording_registrant` | Register a viewer for a meeting's on-demand cloud recording. | |
| **Delete Meeting Recordings** | `delete_meeting_recordings` | Delete a meeting's cloud recordings. | |
| **Delete Recording File** | `delete_recording_file` | Delete a single cloud recording file for a meeting. | |
| **Get Meeting Recordings** | `get_meeting_recordings` | Get cloud recording files for a meeting. | |
| **Get Past Meeting Archive Files** | `get_past_meeting_archive_files` | Get the archived files for a specific past meeting/webinar instance. | |
| **Get Recording Analytics Details** | `get_recording_analytics_details` | Get detailed analytics for a meeting's cloud recording (per-viewer detail). | |
| **Get Recording Analytics Summary** | `get_recording_analytics_summary` | Get an analytics summary for a meeting's cloud recording. | |
| **Get Recording Registrant Questions** | `get_recording_registrant_questions` | Get the registration questions for a meeting's on-demand cloud recording. | |
| **Get Recording Settings** | `get_recording_settings` | Get the cloud recording settings for a meeting. | |
| **List Recording Registrants** | `list_recording_registrants` | List registrants for a meeting's on-demand cloud recording. | |
| **List User Recordings** | `list_user_recordings` | List a user's cloud recordings (date-filterable). | |
| **Recover Meeting Recordings** | `recover_meeting_recordings` | Recover all deleted cloud recordings for a meeting (from trash). | |
| **Recover Recording File** | `recover_recording_file` | Recover a single deleted cloud recording file (from trash). | |
| **Update Archive File** | `update_archive_file` | Update the auto-delete status of a single archived file. | |
| **Update Recording Registrant Questions** | `update_recording_registrant_questions` | Update the registration questions for a meeting's on-demand cloud recording. | |
| **Update Recording Registrant Status** | `update_recording_registrant_status` | Approve or deny registrants for a meeting's on-demand cloud recording. | |
| **Update Recording Settings** | `update_recording_settings` | Update the cloud recording settings (access, password, approval) for a meeting. | |
### Revenue accelerator
| Operation | ID | Description | Trigger |
| ------------------------------- | -------------------------- | ----------------------------------------------------------------------------------- | ------- |
| **Add Conversation** | `zra_add_conversation` | Add a conversation into Revenue Accelerator by file ID or third-party download URL. | |
| **Add Conversation Comment** | `zra_add_comment` | Add a comment to a specific conversation. | |
| **Delete Conversation** | `zra_delete_conversation` | Delete a Revenue Accelerator conversation by ID. | |
| **Delete Conversation Comment** | `zra_delete_comment` | Delete a comment from a specific conversation. | |
| **Delete Deal Activity** | `zra_delete_deal_activity` | Delete an activity from a Revenue Accelerator deal | |
| **Edit Conversation Comment** | `zra_edit_comment` | Edit a comment on a specific conversation. | |
| **Get Content Analysis** | `zra_get_content_analysis` | Get the content analysis (transcript-derived insights) for a conversation. | |
| **Get Conversation** | `zra_get_conversation` | Get information for a specific Revenue Accelerator conversation. | |
| **Get CRM Settings** | `zra_get_crm_settings` | Get current Revenue Accelerator CRM API registration | |
| **Get CRM Task Result** | `zra_get_crm_task` | Poll a Revenue Accelerator CRM async import task result | |
| **Get Deal** | `zra_get_deal` | Get Revenue Accelerator deal information | |
| **Get Deal Activities** | `zra_get_deal_activities` | Get activities for a Revenue Accelerator deal | |
| **Get Indicators Settings** | `zra_get_indicators` | Get Revenue Accelerator indicators (tracker/topic) settings | |
| **Get Interactions** | `zra_get_interactions` | Get interactions (engagement metrics) for a specific conversation. | |
| **Get Scorecards** | `zra_get_scorecards` | Get scorecards for a specific conversation. | |
| **Get Team** | `zra_get_team` | Get Revenue Accelerator team detail | |
| **Import CRM Accounts** | `zra_import_crm_accounts` | Bulk import CRM accounts into Zoom Revenue Accelerator. | |
| **Import CRM Contacts** | `zra_import_crm_contacts` | Bulk import CRM contacts into Zoom Revenue Accelerator. | |
| **Import CRM Deals** | `zra_import_crm_deals` | Bulk import CRM deals into Zoom Revenue Accelerator. | |
| **Import CRM Leads** | `zra_import_crm_leads` | Bulk import CRM leads into Zoom Revenue Accelerator. | |
| **List Conversation Comments** | `zra_list_comments` | List comments on a specific conversation. | |
| **List Conversations** | `zra_list_conversations` | List all Revenue Accelerator conversations/recordings. | |
| **List CRM Accounts** | `zra_list_crm_accounts` | List CRM accounts synced into Zoom Revenue Accelerator. | |
| **List CRM Contacts** | `zra_list_crm_contacts` | List CRM contacts synced into Zoom Revenue Accelerator. | |
| **List CRM Deals** | `zra_list_crm_deals` | List CRM deals synced into Zoom Revenue Accelerator. | |
| **List CRM Leads** | `zra_list_crm_leads` | List CRM leads synced into Zoom Revenue Accelerator. | |
| **List Deal Activities** | `zra_list_deal_activities` | List activities for a Zoom Revenue Accelerator deal. | |
| **List Deals** | `zra_list_deals` | List Revenue Accelerator deals | |
| **List Scheduled Meetings** | `zra_list_scheduled` | List Revenue Accelerator scheduled meetings | |
| **List Team Managers** | `zra_list_team_managers` | List managers of a Revenue Accelerator team | |
| **List Team Members** | `zra_list_team_members` | List members of a Revenue Accelerator team | |
| **List Teams** | `zra_list_teams` | List Revenue Accelerator account teams | |
| **Register CRM Connection** | `zra_register_crm` | Register a Revenue Accelerator CRM API connection | |
| **Unregister CRM Connection** | `zra_unregister_crm` | Unregister the Revenue Accelerator CRM API connection | |
| **Update Conversation Host** | `zra_update_host` | Update (reassign) the host of a Revenue Accelerator conversation. | |
### Roles
| Operation | ID | Description | Trigger |
| ------------------------ | ---------------------- | -------------------------------------- | ------- |
| **Assign Role Members** | `assign_role_members` | Assign one or more members to a role. | |
| **Create Role** | `create_role` | Create a new account role. | |
| **Delete Role** | `delete_role` | Delete a role. | |
| **Get Role** | `get_role` | Get information about a specific role. | |
| **List Role Members** | `list_role_members` | List the members assigned to a role. | |
| **List Roles** | `list_roles` | List all account roles. | |
| **Unassign Role Member** | `unassign_role_member` | Unassign a member from a role. | |
| **Update Role** | `update_role` | Update an existing role. | |
### Scheduler
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------------- | ------------------------------------------------------------------------------ | ------- |
| **Create Availability** | `create_scheduler_availability` | Create a Zoom Scheduler availability schedule. | |
| **Create Booking** | `create_scheduler_booking` | Book a time slot on an existing Zoom Scheduler schedule. | |
| **Create Schedule** | `create_scheduler_schedule` | Create a Zoom Scheduler schedule (meeting type), optionally a single-use link. | |
| **Delete Availability** | `delete_scheduler_availability` | Delete a Zoom Scheduler availability schedule. | |
| **Delete Schedule** | `delete_scheduler_schedule` | Delete a Zoom Scheduler schedule. | |
| **Delete Scheduled Event** | `delete_scheduled_event` | Delete (cancel) a Zoom Scheduler scheduled event. | |
| **Get Availability** | `get_scheduler_availability` | Retrieve a Zoom Scheduler availability schedule. | |
| **Get Event Attendee** | `get_scheduled_event_attendee` | Retrieve an attendee of a Zoom Scheduler scheduled event. | |
| **Get Routing Response** | `get_scheduler_routing_response` | Retrieve a specific Zoom Scheduler routing form response. | |
| **Get Schedule** | `get_scheduler_schedule` | Retrieve a Zoom Scheduler schedule. | |
| **Get Scheduled Event** | `get_scheduled_event` | Retrieve a Zoom Scheduler scheduled event. | |
| **List Availability** | `list_scheduler_availability` | List Zoom Scheduler availability schedules. | |
| **List Routing Responses** | `list_scheduler_routing_responses` | List Zoom Scheduler routing form responses across all routing forms. | |
| **List Scheduled Events** | `list_scheduled_events` | List Zoom Scheduler scheduled events (bookings). | |
| **List Schedules** | `list_scheduler_schedules` | List Zoom Scheduler schedules (meeting types). | |
| **Scheduler Analytics Report** | `scheduler_analytics` | Generate the Zoom Scheduler analytics report. | |
| **Update Availability** | `update_scheduler_availability` | Update a Zoom Scheduler availability schedule. | |
| **Update Schedule** | `update_scheduler_schedule` | Update a Zoom Scheduler schedule. | |
| **Update Scheduled Event** | `update_scheduled_event` | Update a Zoom Scheduler scheduled event (status, attendees, notes). | |
### Team chat
| Operation | ID | Description | Trigger |
| ----------------------------------- | ------------------------------ | --------------------------------------------------------------------------- | ------- |
| **Add Shared Space Members** | `add_shared_space_members` | Add members to a Team Chat shared space. | |
| **Create Chat Channel** | `create_chat_channel` | Create a Team Chat channel for a user. | |
| **Create Shared Space** | `create_shared_space` | Create a Team Chat shared space. | |
| **Delete Admin Channel** | `delete_admin_channel` | Delete a Team Chat channel by ID (admin). | |
| **Delete Chat Channel** | `delete_chat_channel` | Delete a Team Chat channel. | |
| **Delete Chat File** | `delete_chat_file` | Delete a file from Team Chat. | |
| **Delete Chat Message** | `delete_chat_message` | Delete a Team Chat message. | |
| **Delete Shared Space** | `delete_shared_space` | Delete a Team Chat shared space. | |
| **Demote Shared Space Admin** | `demote_shared_space_admin` | Demote a shared space administrator to a member. | |
| **Get Admin Channel** | `get_admin_channel` | Get a Team Chat channel by ID (admin). | |
| **Get Chat Channel** | `get_chat_channel` | Get information about a specific Team Chat channel. | |
| **Get Chat File** | `get_chat_file` | Get metadata for a single Team Chat file. | |
| **Get Chat Message** | `get_chat_message` | Retrieve a specific Team Chat message by ID. | |
| **Get IM Session (Legacy)** | `get_im_session` | Get a legacy IM chat session's messages (deprecated /im/chat/sessions API). | |
| **Get Shared Space** | `get_shared_space` | Get details of a Team Chat shared space. | |
| **Invite Channel Members (Admin)** | `invite_channel_members_admin` | Invite (add) members to a Team Chat channel (admin). | |
| **Invite Chat Channel Members** | `invite_chat_channel_members` | Invite/add members to a Team Chat channel. | |
| **Join Chat Channel** | `join_chat_channel` | Join a Team Chat channel as the current user. | |
| **Leave Chat Channel** | `leave_chat_channel` | Leave a Team Chat channel as the current user. | |
| **List Channel Members (Admin)** | `list_channel_members_admin` | List the members of a Team Chat channel (admin). | |
| **List Chat Channel Members** | `list_chat_channel_members` | List the members of a Team Chat channel. | |
| **List Chat Channels** | `list_chat_channels` | List the Team Chat channels a user belongs to. | |
| **List Chat Messages** | `list_user_chat_messages` | List a user's Team Chat messages to/from a contact or in a channel. | |
| **List Scheduled Messages** | `list_scheduled_chat_messages` | List a user's scheduled Team Chat messages. | |
| **List Shared Space Channels** | `list_shared_space_channels` | List channels within a Team Chat shared space. | |
| **List Shared Space Members** | `list_shared_space_members` | List members of a Team Chat shared space. | |
| **List Shared Spaces** | `list_shared_spaces` | List all Team Chat shared spaces on the account. | |
| **Mark Message Read/Unread** | `mark_chat_message_status` | Mark a Team Chat message as read or unread. | |
| **Move Shared Space Channels** | `move_shared_space_channels` | Move channels into or out of a Team Chat shared space. | |
| **Promote Shared Space Admins** | `promote_shared_space_admins` | Promote shared space members to administrators. | |
| **React to Chat Message** | `react_chat_message` | Add or remove an emoji reaction on a Team Chat message. | |
| **Remove Channel Member (Admin)** | `remove_channel_member_admin` | Remove a member from a Team Chat channel (admin). | |
| **Remove Chat Channel Member** | `remove_chat_channel_member` | Remove a single member from a Team Chat channel. | |
| **Remove Shared Space Member** | `remove_shared_space_member` | Remove a member from a Team Chat shared space. | |
| **Search Account Channels** | `search_account_channels` | Search the account's Team Chat channels by keyword (admin). | |
| **Search Chat Channels** | `search_chat_channels` | Search Team Chat channels. | |
| **Send Chat Message** | `send_chat_message` | Send a Team Chat message on behalf of a user. | |
| **Send IM Message (Legacy)** | `send_im_message` | Send a legacy IM chat message (deprecated /im/users/me/chat/messages API). | |
| **Transfer Shared Space Ownership** | `transfer_shared_space_owner` | Transfer ownership of a Team Chat shared space. | |
| **Update Admin Channel** | `update_admin_channel` | Update a Team Chat channel's name/settings (admin). | |
| **Update Chat Channel** | `update_chat_channel` | Update a Team Chat channel's name or settings. | |
| **Update Chat Message** | `update_chat_message` | Edit the text of an existing Team Chat message. | |
| **Update Shared Space** | `update_shared_space` | Update settings of a Team Chat shared space. | |
### Triggers
| Operation | ID | Description | Trigger |
| ------------------------------------------- | -------------------------------------------- | -------------------------------------------------------------------------------- | ------- |
| **On Account Settings Updated** | `on_account_settings_updated` | Fires on the Zoom \`account.settings\_updated\` webhook event. | Yes |
| **On Account Updated** | `on_account_updated` | Fires on the Zoom \`account.updated\` webhook event. | Yes |
| **On Account Vanity URL Updated** | `on_account_vanity_url_updated` | Fires on the Zoom \`account.vanity\_url\_updated\` webhook event. | Yes |
| **On Any Zoom Event** | `on_any_zoom_event` | Fires on any Zoom webhook event delivered to this URL. | Yes |
| **On Breakout Room Ended** | `on_meeting_breakout_room_ended` | Fires on the Zoom \`meeting.breakout\_room\_ended\` webhook event. | Yes |
| **On Breakout Room Started** | `on_meeting_breakout_room_started` | Fires on the Zoom \`meeting.breakout\_room\_started\` webhook event. | Yes |
| **On Chat Channel Created** | `on_chat_channel_created` | Fires on the Zoom \`chat\_channel.created\` webhook event. | Yes |
| **On Chat Channel Deleted** | `on_chat_channel_deleted` | Fires on the Zoom \`chat\_channel.deleted\` webhook event. | Yes |
| **On Chat Channel Member Invited** | `on_chat_channel_member_invited` | Fires on the Zoom \`chat\_channel.member\_invited\` webhook event. | Yes |
| **On Chat Channel Member Joined** | `on_chat_channel_member_joined` | Fires on the Zoom \`chat\_channel.member\_joined\` webhook event. | Yes |
| **On Chat Channel Member Left** | `on_chat_channel_member_left` | Fires on the Zoom \`chat\_channel.member\_left\` webhook event. | Yes |
| **On Chat Channel Updated** | `on_chat_channel_updated` | Fires on the Zoom \`chat\_channel.updated\` webhook event. | Yes |
| **On Chat Message Deleted** | `on_chat_message_deleted` | Fires on the Zoom \`chat\_message.deleted\` webhook event. | Yes |
| **On Chat Message Sent** | `on_chat_message_sent` | Fires on the Zoom \`chat\_message.sent\` webhook event. | Yes |
| **On Chat Message Updated** | `on_chat_message_updated` | Fires on the Zoom \`chat\_message.updated\` webhook event. | Yes |
| **On Meeting Alert** | `on_meeting_alert` | Fires on the Zoom \`meeting.alert\` webhook event. | Yes |
| **On Meeting Chat Message Sent** | `on_meeting_chat_message_sent` | Fires on the Zoom \`meeting.chat\_message\_sent\` webhook event. | Yes |
| **On Meeting Created** | `on_meeting_created` | Fires on the Zoom \`meeting.created\` webhook event. | Yes |
| **On Meeting Deleted** | `on_meeting_deleted` | Fires on the Zoom \`meeting.deleted\` webhook event. | Yes |
| **On Meeting Ended** | `on_meeting_ended` | Fires on the Zoom \`meeting.ended\` webhook event. | Yes |
| **On Meeting Live Streaming Started** | `on_meeting_live_streaming_started` | Fires on the Zoom \`meeting.live\_streaming\_started\` webhook event. | Yes |
| **On Meeting Live Streaming Stopped** | `on_meeting_live_streaming_stopped` | Fires on the Zoom \`meeting.live\_streaming\_stopped\` webhook event. | Yes |
| **On Meeting Participant Joined** | `on_meeting_participant_joined` | Fires on the Zoom \`meeting.participant\_joined\` webhook event. | Yes |
| **On Meeting Participant Left** | `on_meeting_participant_left` | Fires on the Zoom \`meeting.participant\_left\` webhook event. | Yes |
| **On Meeting Permanently Deleted** | `on_meeting_permanently_deleted` | Fires on the Zoom \`meeting.permanently\_deleted\` webhook event. | Yes |
| **On Meeting Registration Approved** | `on_meeting_registration_approved` | Fires on the Zoom \`meeting.registration\_approved\` webhook event. | Yes |
| **On Meeting Registration Cancelled** | `on_meeting_registration_cancelled` | Fires on the Zoom \`meeting.registration\_cancelled\` webhook event. | Yes |
| **On Meeting Registration Created** | `on_meeting_registration_created` | Fires on the Zoom \`meeting.registration\_created\` webhook event. | Yes |
| **On Meeting Registration Denied** | `on_meeting_registration_denied` | Fires on the Zoom \`meeting.registration\_denied\` webhook event. | Yes |
| **On Meeting Risk Alert** | `on_meeting_risk_alert` | Fires on the Zoom \`meeting.risk\_alert\` webhook event. | Yes |
| **On Meeting Sharing Ended** | `on_meeting_sharing_ended` | Fires on the Zoom \`meeting.sharing\_ended\` webhook event. | Yes |
| **On Meeting Sharing Started** | `on_meeting_sharing_started` | Fires on the Zoom \`meeting.sharing\_started\` webhook event. | Yes |
| **On Meeting Started** | `on_meeting_started` | Fires on the Zoom \`meeting.started\` webhook event. | Yes |
| **On Meeting Summary Completed** | `on_meeting_summary_completed` | Fires on the Zoom \`meeting.summary\_completed\` webhook event. | Yes |
| **On Meeting Updated** | `on_meeting_updated` | Fires on the Zoom \`meeting.updated\` webhook event. | Yes |
| **On Participant Admitted** | `on_meeting_participant_admitted` | Fires on the Zoom \`meeting.participant\_admitted\` webhook event. | Yes |
| **On Participant JBH Joined** | `on_meeting_participant_jbh_joined` | Fires on the Zoom \`meeting.participant\_jbh\_joined\` webhook event. | Yes |
| **On Participant JBH Waiting** | `on_meeting_participant_jbh_waiting` | Fires on the Zoom \`meeting.participant\_jbh\_waiting\` webhook event. | Yes |
| **On Participant Joined Waiting Room** | `on_meeting_participant_joined_waiting_room` | Fires on the Zoom \`meeting.participant\_joined\_waiting\_room\` webhook event. | Yes |
| **On Participant Left Waiting Room** | `on_meeting_participant_left_waiting_room` | Fires on the Zoom \`meeting.participant\_left\_waiting\_room\` webhook event. | Yes |
| **On Participant Put In Waiting Room** | `on_meeting_participant_put_in_waiting_room` | Fires on the Zoom \`meeting.participant\_put\_in\_waiting\_room\` webhook event. | Yes |
| **On Participant Role Changed** | `on_meeting_participant_role_changed` | Fires on the Zoom \`meeting.participant\_role\_changed\` webhook event. | Yes |
| **On Phone Callee Answered** | `on_phone_callee_answered` | Fires on the Zoom \`phone.callee\_answered\` webhook event. | Yes |
| **On Phone Callee Ended** | `on_phone_callee_ended` | Fires on the Zoom \`phone.callee\_ended\` webhook event. | Yes |
| **On Phone Callee Missed** | `on_phone_callee_missed` | Fires on the Zoom \`phone.callee\_missed\` webhook event. | Yes |
| **On Phone Callee Rejected** | `on_phone_callee_rejected` | Fires on the Zoom \`phone.callee\_rejected\` webhook event. | Yes |
| **On Phone Caller Connected** | `on_phone_caller_connected` | Fires on the Zoom \`phone.caller\_connected\` webhook event. | Yes |
| **On Phone Caller Ended** | `on_phone_caller_ended` | Fires on the Zoom \`phone.caller\_ended\` webhook event. | Yes |
| **On Phone Emergency Alert** | `on_phone_emergency_alert` | Fires on the Zoom \`phone.emergency\_alert\` webhook event. | Yes |
| **On Phone Recording Completed** | `on_phone_recording_completed` | Fires on the Zoom \`phone.recording\_completed\` webhook event. | Yes |
| **On Phone Recording Started** | `on_phone_recording_started` | Fires on the Zoom \`phone.recording\_started\` webhook event. | Yes |
| **On Phone Recording Stopped** | `on_phone_recording_stopped` | Fires on the Zoom \`phone.recording\_stopped\` webhook event. | Yes |
| **On Phone SMS Received** | `on_phone_sms_received` | Fires on the Zoom \`phone.sms\_received\` webhook event. | Yes |
| **On Phone SMS Sent** | `on_phone_sms_sent` | Fires on the Zoom \`phone.sms\_sent\` webhook event. | Yes |
| **On Phone Voicemail Received** | `on_phone_voicemail_received` | Fires on the Zoom \`phone.voicemail\_received\` webhook event. | Yes |
| **On Phone Voicemail Transcript Completed** | `on_phone_voicemail_transcript_completed` | Fires on the Zoom \`phone.voicemail\_transcript\_completed\` webhook event. | Yes |
| **On Recording Batch Deleted** | `on_recording_batch_deleted` | Fires on the Zoom \`recording.batch\_deleted\` webhook event. | Yes |
| **On Recording Completed** | `on_recording_completed` | Fires on the Zoom \`recording.completed\` webhook event. | Yes |
| **On Recording Deleted** | `on_recording_deleted` | Fires on the Zoom \`recording.deleted\` webhook event. | Yes |
| **On Recording Paused** | `on_recording_paused` | Fires on the Zoom \`recording.paused\` webhook event. | Yes |
| **On Recording Recovered** | `on_recording_recovered` | Fires on the Zoom \`recording.recovered\` webhook event. | Yes |
| **On Recording Registration Approved** | `on_recording_registration_approved` | Fires on the Zoom \`recording.registration\_approved\` webhook event. | Yes |
| **On Recording Registration Created** | `on_recording_registration_created` | Fires on the Zoom \`recording.registration\_created\` webhook event. | Yes |
| **On Recording Resumed** | `on_recording_resumed` | Fires on the Zoom \`recording.resumed\` webhook event. | Yes |
| **On Recording Started** | `on_recording_started` | Fires on the Zoom \`recording.started\` webhook event. | Yes |
| **On Recording Stopped** | `on_recording_stopped` | Fires on the Zoom \`recording.stopped\` webhook event. | Yes |
| **On Recording Transcript Completed** | `on_recording_transcript_completed` | Fires on the Zoom \`recording.transcript\_completed\` webhook event. | Yes |
| **On Recording Trashed** | `on_recording_trashed` | Fires on the Zoom \`recording.trashed\` webhook event. | Yes |
| **On Sub-Account Created** | `on_account_created` | Fires on the Zoom \`account.created\` webhook event. | Yes |
| **On Sub-Account Disassociated** | `on_account_disassociated` | Fires on the Zoom \`account.disassociated\` webhook event. | Yes |
| **On User Activated** | `on_user_activated` | Fires on the Zoom \`user.activated\` webhook event. | Yes |
| **On User Created** | `on_user_created` | Fires on the Zoom \`user.created\` webhook event. | Yes |
| **On User Deactivated** | `on_user_deactivated` | Fires on the Zoom \`user.deactivated\` webhook event. | Yes |
| **On User Deleted** | `on_user_deleted` | Fires on the Zoom \`user.deleted\` webhook event. | Yes |
| **On User Disassociated** | `on_user_disassociated` | Fires on the Zoom \`user.disassociated\` webhook event. | Yes |
| **On User Invitation Accepted** | `on_user_invitation_accepted` | Fires on the Zoom \`user.invitation\_accepted\` webhook event. | Yes |
| **On User Personal Notes Updated** | `on_user_personal_notes_updated` | Fires on the Zoom \`user.personal\_notes\_updated\` webhook event. | Yes |
| **On User Presence Status Updated** | `on_user_presence_status_updated` | Fires on the Zoom \`user.presence\_status\_updated\` webhook event. | Yes |
| **On User Settings Updated** | `on_user_settings_updated` | Fires on the Zoom \`user.settings\_updated\` webhook event. | Yes |
| **On User Signed In** | `on_user_signed_in` | Fires on the Zoom \`user.signed\_in\` webhook event. | Yes |
| **On User Signed Out** | `on_user_signed_out` | Fires on the Zoom \`user.signed\_out\` webhook event. | Yes |
| **On User Updated** | `on_user_updated` | Fires on the Zoom \`user.updated\` webhook event. | Yes |
| **On Webinar Alert** | `on_webinar_alert` | Fires on the Zoom \`webinar.alert\` webhook event. | Yes |
| **On Webinar Created** | `on_webinar_created` | Fires on the Zoom \`webinar.created\` webhook event. | Yes |
| **On Webinar Deleted** | `on_webinar_deleted` | Fires on the Zoom \`webinar.deleted\` webhook event. | Yes |
| **On Webinar Ended** | `on_webinar_ended` | Fires on the Zoom \`webinar.ended\` webhook event. | Yes |
| **On Webinar Participant Joined** | `on_webinar_participant_joined` | Fires on the Zoom \`webinar.participant\_joined\` webhook event. | Yes |
| **On Webinar Participant Left** | `on_webinar_participant_left` | Fires on the Zoom \`webinar.participant\_left\` webhook event. | Yes |
| **On Webinar Registration Approved** | `on_webinar_registration_approved` | Fires on the Zoom \`webinar.registration\_approved\` webhook event. | Yes |
| **On Webinar Registration Cancelled** | `on_webinar_registration_cancelled` | Fires on the Zoom \`webinar.registration\_cancelled\` webhook event. | Yes |
| **On Webinar Registration Created** | `on_webinar_registration_created` | Fires on the Zoom \`webinar.registration\_created\` webhook event. | Yes |
| **On Webinar Registration Denied** | `on_webinar_registration_denied` | Fires on the Zoom \`webinar.registration\_denied\` webhook event. | Yes |
| **On Webinar Sharing Ended** | `on_webinar_sharing_ended` | Fires on the Zoom \`webinar.sharing\_ended\` webhook event. | Yes |
| **On Webinar Sharing Started** | `on_webinar_sharing_started` | Fires on the Zoom \`webinar.sharing\_started\` webhook event. | Yes |
| **On Webinar Started** | `on_webinar_started` | Fires on the Zoom \`webinar.started\` webhook event. | Yes |
| **On Webinar Updated** | `on_webinar_updated` | Fires on the Zoom \`webinar.updated\` webhook event. | Yes |
### Users
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------------------------------------------------------------------- | ------- |
| **Add User Assistants** | `add_user_assistants` | Add assistants to a user. | |
| **Add User TSP Account** | `add_user_tsp_account` | Add a TSP account to a user. | |
| **Check User Email** | `check_user_email` | Check whether a user's email is already registered on Zoom. | |
| **Check Vanity Name** | `check_vanity_name` | Check whether a Personal Meeting Room vanity name is available. | |
| **Delete All User Assistants** | `delete_user_assistants` | Delete all of a user's assistants. | |
| **Delete All User Schedulers** | `delete_user_schedulers` | Delete all of a user's schedulers. | |
| **Delete User** | `delete_user` | Delete/deactivate a user. | |
| **Delete User Assistant** | `delete_user_assistant` | Delete a single assistant from a user. | |
| **Delete User Picture** | `delete_user_picture` | Delete a user's profile picture. | |
| **Delete User Scheduler** | `delete_user_scheduler` | Delete a single scheduler from a user. | |
| **Delete User TSP Account** | `delete_user_tsp_account` | Delete a user's TSP account. | |
| **Delete Virtual Background** | `delete_virtual_background` | Delete one or more virtual background files from a user's settings. | |
| **Get Collaboration Device** | `get_collaboration_device` | Get a user's collaboration device by device ID. | |
| **Get User** | `get_user` | Retrieve a user's profile. | |
| **Get User Permissions** | `get_user_permissions` | Get a user's assigned permissions. | |
| **Get User Settings** | `get_user_settings` | Retrieve a user's Zoom settings (meeting, recording, telephony, feature, TSP, profile). | |
| **Get User Token** | `get_user_token` | Retrieve a user's token or ZAK (Zoom Access Key) used to start meetings on their behalf. | |
| **Get User TSP Account** | `get_user_tsp_account` | Get a user's TSP account by TSP bridge ID. | |
| **Get User ZAK** | `get_user_zak` | Retrieve a user's ZAK (Zoom Access Key) to start meetings/webinars on their behalf. | |
| **List Collaboration Devices** | `list_collaboration_devices` | List a user's collaboration devices. | |
| **List User Assistants** | `list_user_assistants` | List a user's assistants. | |
| **List User PAC Accounts** | `list_user_pac_accounts` | List a user's PAC (Personal Audio Conference) accounts. | |
| **List User Schedulers** | `list_user_schedulers` | List a user's schedulers. | |
| **List User TSP Accounts** | `list_user_tsp_accounts` | List a user's TSP (Telephony Service Provider) accounts. | |
| **Revoke User Token** | `revoke_user_token` | Revoke a user's SSO token, logging the user out of all Zoom clients. | |
| **Switch User Account** | `switch_user_account` | Move a user from one sub-account to another (master account only). | |
| **Update Presence Status** | `update_presence_status` | Update a user's presence status (e.g. Do Not Disturb, Away, Available). | |
| **Update User** | `update_user` | Update a user's profile/settings. | |
| **Update User Email** | `update_user_email` | Change a user's email address. | |
| **Update User Password** | `update_user_password` | Change a user's login password. | |
| **Update User Settings** | `update_user_settings` | Update a user's Zoom settings via a JSON body (schedule\_meeting, recording, telephony, feature, etc.). | |
| **Update User Status** | `update_user_status` | Activate or deactivate a user. | |
| **Update User TSP Account** | `update_user_tsp_account` | Update a user's TSP account. | |
| **Upload User Picture** | `upload_user_picture` | Upload a user's profile picture (multipart form field 'pic\_file'). | |
| **Upload Virtual Background** | `upload_virtual_background` | Upload a virtual background image to a user's settings (multipart form field 'file'). | |
### Video SDK
| Operation | ID | Description | Trigger |
| ----------------------------------------- | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ------- |
| **Cloud Recording Report** | `videosdk_report_cloud_recording` | Get a Video SDK cloud recording usage report. | |
| **Create Session** | `videosdk_create_session` | Create a Zoom Video SDK session. | |
| **Create Storage Location** | `videosdk_create_storage_location` | Create a Video SDK BYOS storage location (Amazon S3). | |
| **Daily Usage Report** | `videosdk_report_daily` | Get a Video SDK daily usage report (sessions/participants per day). | |
| **Delete Recording File** | `videosdk_delete_recording_file` | Delete a single recording file from a Video SDK session. | |
| **Delete Session** | `videosdk_delete_session` | Delete a Zoom Video SDK session. | |
| **Delete Session Recordings** | `videosdk_delete_session_recordings` | Delete all recordings of a Video SDK session. | |
| **Delete Storage Location** | `videosdk_delete_storage_location` | Delete a Video SDK BYOS storage location. | |
| **Get Live Stream Details** | `videosdk_get_livestream` | Get a Video SDK session's live stream details. | |
| **Get Session Details** | `videosdk_get_session` | Get details of a Zoom Video SDK session. | |
| **Get Session Recordings** | `videosdk_get_session_recordings` | Get all recordings of a Video SDK session. | |
| **Get Session Sharing/Recording Details** | `videosdk_get_session_sharing` | Get screen-sharing and recording details for a session's users. | |
| **Get Session SIP URI** | `videosdk_get_sip_uri` | Get a Video SDK session's SIP URI (with optional embedded passcode) for SIP dialing. | |
| **Get Session User QoS** | `videosdk_get_session_user_qos` | Get QoS (quality of service) data for a single user in a session. | |
| **Get Storage Location** | `videosdk_get_storage_location` | Get details of a Video SDK BYOS storage location. | |
| **In-Session Events Control** | `videosdk_in_session_events` | Use in-session event controls on a live Video SDK session (recording, invites, block/unblock, stream ingestion, remove user). | |
| **List Account Recordings** | `videosdk_list_recordings` | List all Video SDK cloud recordings for the account. | |
| **List Session Recordings** | `videosdk_list_session_recordings` | List a Video SDK session's cloud recordings. | |
| **List Session Stream Ingestions** | `videosdk_list_stream_ingestions` | List a Video SDK session's streaming ingestions. | |
| **List Session Users** | `videosdk_list_session_users` | List users of a Zoom Video SDK session. | |
| **List Session Users QoS** | `videosdk_list_session_users_qos` | List QoS (quality of service) data for all users in a session. | |
| **List Sessions** | `videosdk_list_sessions` | List Zoom Video SDK sessions in a date range. | |
| **List Storage Locations** | `videosdk_list_storage_locations` | List the account's Video SDK BYOS storage locations. | |
| **Operation Logs Report** | `videosdk_report_operation_logs` | Get a Video SDK operation logs report. | |
| **Recover Recording File** | `videosdk_recover_recording_file` | Recover a single Video SDK session recording file from the trash. | |
| **Recover Session Recordings** | `videosdk_recover_session_recordings` | Recover all recordings of a Video SDK session from the trash. | |
| **Switch BYOS Storage** | `videosdk_switch_storage` | Switch the account's Video SDK BYOS storage on/off and select a location. | |
| **Telephone Report** | `videosdk_report_telephone` | Get a Video SDK telephone (dial-in/out) usage report. | |
| **Update Live Stream** | `videosdk_update_livestream` | Update (configure) a Video SDK session's live stream URL/key. | |
| **Update Live Stream Status** | `videosdk_update_livestream_status` | Start/stop a Video SDK session's live stream or change its display mode. | |
| **Update RTMS App Status** | `videosdk_update_rtms_status` | Update a session's Realtime Media Streams (RTMS) app status. | |
| **Update Session Status** | `videosdk_update_session_status` | Update a Video SDK session's status (e.g. end the session). | |
| **Update Storage Location** | `videosdk_update_storage_location` | Update a Video SDK BYOS storage location. | |
| **Webhook Logs Report** | `videosdk_report_webhook_logs` | Get a Video SDK webhook delivery logs report. | |
### Webinars
| Operation | ID | Description | Trigger |
| ----------------------------------------------- | --------------------------------------------- | --------------------------------------------------------------- | ------- |
| **Add Webinar Panelists** | `add_webinar_panelists` | Add one or more panelists to a webinar. | |
| **Add Webinar Registrant** | `add_webinar_registrant` | Register a user for a webinar. | |
| **Batch Add Webinar Registrants** | `batch_add_webinar_registrants` | Register up to 30 registrants for a webinar at once. | |
| **Create Webinar** | `create_webinar` | Schedule a new webinar. | |
| **Create Webinar Branding Name Tag** | `create_webinar_branding_name_tag` | Create a session branding name tag for a webinar. | |
| **Create Webinar Invite Links** | `create_webinar_invite_links` | Create one or more attendee join links for a webinar. | |
| **Create Webinar Poll** | `create_webinar_poll` | Create a poll for a webinar. | |
| **Create Webinar Template** | `create_webinar_template` | Create a webinar template from an existing webinar. | |
| **Delete Webinar** | `delete_webinar` | Delete a webinar. | |
| **Delete Webinar Branding Name Tags** | `delete_webinar_branding_name_tags` | Delete session branding name tags from a webinar. | |
| **Delete Webinar Branding Virtual Backgrounds** | `delete_webinar_branding_virtual_backgrounds` | Delete session branding virtual backgrounds from a webinar. | |
| **Delete Webinar Branding Wallpaper** | `delete_webinar_branding_wallpaper` | Delete a webinar's session branding wallpaper. | |
| **Delete Webinar Poll** | `delete_webinar_poll` | Delete a specific poll of a webinar. | |
| **Delete Webinar Registrant** | `delete_webinar_registrant` | Delete a webinar registrant. | |
| **Delete Webinar Survey** | `delete_webinar_survey` | Delete a webinar's survey. | |
| **Get Webinar** | `get_webinar` | Retrieve details of a webinar. | |
| **Get Webinar Absentees** | `get_webinar_absentees` | List registrants who did not attend a past webinar (absentees). | |
| **Get Webinar Branding** | `get_webinar_branding` | Get a webinar's session branding assets. | |
| **Get Webinar Live Stream** | `get_webinar_livestream` | Get a webinar's live stream configuration. | |
| **Get Webinar Live Streaming Token** | `get_webinar_live_streaming_token` | Get a join token to start a webinar's live streaming. | |
| **Get Webinar Local Recording Token** | `get_webinar_local_recording_token` | Get a join token for a webinar's local recording. | |
| **Get Webinar Poll** | `get_webinar_poll` | Get a specific poll of a webinar. | |
| **Get Webinar Registrant** | `get_webinar_registrant` | Get details of a specific webinar registrant. | |
| **Get Webinar Registration Questions** | `get_webinar_registration_questions` | Get the registration questions configured for a webinar. | |
| **Get Webinar Survey** | `get_webinar_survey` | Get a webinar's survey configuration. | |
| **List Past Webinar Instances** | `list_past_webinar_instances` | List past instances of a webinar. | |
| **List Past Webinar Participants** | `list_past_webinar_participants` | List participants of a past webinar instance. | |
| **List Past Webinar Polls** | `list_past_webinar_polls` | List poll results of a past webinar. | |
| **List Past Webinar Q\&A** | `list_past_webinar_qa` | List Q\&A results of a past webinar. | |
| **List Webinar Panelists** | `list_webinar_panelists` | List all panelists of a webinar. | |
| **List Webinar Polls** | `list_webinar_polls` | List all polls of a webinar. | |
| **List Webinar Registrants** | `list_webinar_registrants` | List registrants of a webinar. | |
| **List Webinar Templates** | `list_webinar_templates` | List a user's webinar templates. | |
| **List Webinar Tracking Sources** | `list_webinar_tracking_sources` | List tracking sources (registration/join counts) for a webinar. | |
| **List Webinars** | `list_webinars` | List webinars for a user (Webinar add-on required). | |
| **Remove All Webinar Panelists** | `remove_all_webinar_panelists` | Remove all panelists from a webinar. | |
| **Remove Webinar Panelist** | `remove_webinar_panelist` | Remove a single panelist from a webinar. | |
| **Update Webinar** | `update_webinar` | Update a webinar's settings. | |
| **Update Webinar Branding Name Tag** | `update_webinar_branding_name_tag` | Update a session branding name tag for a webinar. | |
| **Update Webinar Live Stream** | `update_webinar_livestream` | Update a webinar's live stream configuration. | |
| **Update Webinar Live Stream Status** | `update_webinar_livestream_status` | Start or stop a webinar's live stream. | |
| **Update Webinar Poll** | `update_webinar_poll` | Update a specific poll of a webinar. | |
| **Update Webinar Registrant Status** | `update_webinar_registrant_status` | Approve, deny, or cancel webinar registrants. | |
| **Update Webinar Registration Questions** | `update_webinar_registration_questions` | Update the registration questions for a webinar. | |
| **Update Webinar Status** | `update_webinar_status` | End a live webinar (update its status). | |
| **Update Webinar Survey** | `update_webinar_survey` | Update (create/replace) a webinar's survey. | |
| **Upload Webinar Branding Virtual Background** | `upload_webinar_branding_virtual_background` | Upload a session branding virtual background for a webinar. | |
| **Upload Webinar Branding Wallpaper** | `upload_webinar_branding_wallpaper` | Upload a session branding wallpaper for a webinar. | |
### Whiteboard
| Operation | ID | Description | Trigger |
| -------------------------------------- | ------------------------------------ | ------------------------------------------------------ | ------- |
| **Create Whiteboard** | `create_whiteboard` | Create a new whiteboard. | |
| **Create Whiteboard Export** | `create_whiteboard_export` | Create a whiteboard export task. | |
| **Create Whiteboard Project** | `create_whiteboard_project` | Create a new whiteboard project. | |
| **Delete Whiteboard** | `delete_whiteboard` | Delete a whiteboard. | |
| **Delete Whiteboard Project** | `delete_whiteboard_project` | Delete a whiteboard project. | |
| **Download Whiteboard Activity File** | `download_whiteboard_activity_file` | Download a whiteboard session activity file. | |
| **Download Whiteboard Export** | `download_whiteboard_export` | Download a completed whiteboard export. | |
| **Download Whiteboard File** | `download_whiteboard_file` | Download an imported whiteboard file. | |
| **Get Project Collaborators** | `get_project_collaborators` | Get collaborators of a whiteboard project. | |
| **Get Whiteboard** | `get_whiteboard` | Get a single whiteboard's details. | |
| **Get Whiteboard Collaborators** | `get_whiteboard_collaborators` | Get collaborators of a whiteboard. | |
| **Get Whiteboard Export Status** | `get_whiteboard_export_status` | Get the generation status of a whiteboard export task. | |
| **Get Whiteboard Import Status** | `get_whiteboard_import_status` | Get the status of a whiteboard import task. | |
| **Get Whiteboard Project** | `get_whiteboard_project` | Get a single whiteboard project. | |
| **Import Whiteboard** | `import_whiteboard` | Create a new whiteboard by importing an uploaded file. | |
| **List Whiteboard Projects** | `list_whiteboard_projects` | List all whiteboard projects. | |
| **List Whiteboard Session Activities** | `list_whiteboard_session_activities` | List activities for a whiteboard session. | |
| **List Whiteboard Sessions** | `list_whiteboard_sessions` | List whiteboard sessions within a date range. | |
| **List Whiteboard Subprojects** | `list_whiteboard_subprojects` | List subprojects of a whiteboard project. | |
| **List Whiteboards** | `list_whiteboards` | List all whiteboards owned by or shared with a user. | |
| **Move Whiteboards To Project** | `move_whiteboards_to_project` | Move whiteboards into a project. | |
| **Remove Project Collaborator** | `remove_project_collaborator` | Remove a collaborator from a whiteboard project. | |
| **Remove Whiteboard Collaborator** | `remove_whiteboard_collaborator` | Remove a collaborator from a whiteboard. | |
| **Remove Whiteboards From Project** | `remove_whiteboards_from_project` | Remove whiteboards from a project. | |
| **Share Whiteboard Project** | `share_whiteboard_project` | Share a whiteboard project with new users. | |
| **Update Project Collaborators** | `update_project_collaborators` | Update whiteboard project collaborators. | |
| **Update Whiteboard Collaborators** | `update_whiteboard_collaborators` | Update whiteboard collaborators' roles/access. | |
| **Update Whiteboard Project** | `update_whiteboard_project` | Update a whiteboard project's basic information. | |
| **Update Whiteboard Share Setting** | `update_whiteboard_share_setting` | Update a whiteboard's share settings. | |
### Zoom calendar
| Operation | ID | Description | Trigger |
| --------------------------------- | ------------------------------- | ------------------------------------------------------------------------- | ------- |
| **Create ACL Rule** | `calendar_insert_acl` | Create an access control rule on a calendar. | |
| **Create Calendar** | `calendar_create_calendar` | Create a secondary calendar. | |
| **Create Calendar Event** | `calendar_create_event` | Create an event on a Zoom calendar. | |
| **Delete ACL Rule** | `calendar_delete_acl` | Delete an access control rule from a calendar. | |
| **Delete Calendar** | `calendar_delete_calendar` | Delete a secondary calendar. | |
| **Delete Calendar Event** | `calendar_delete_event` | Delete an event from a Zoom calendar. | |
| **Delete Calendar List Entry** | `calendar_delete_calendar_list` | Remove a calendar from a user's calendar list. | |
| **Get ACL Rule** | `calendar_get_acl` | Get a single access control rule from a calendar. | |
| **Get Calendar** | `calendar_get_calendar` | Get a calendar's metadata. | |
| **Get Calendar Event** | `calendar_get_event` | Retrieve a single event from a Zoom calendar. | |
| **Get Calendar List Entry** | `calendar_get_calendar_list` | Get a single entry from a user's calendar list. | |
| **Get Colors** | `calendar_get_colors` | Get the color definitions for calendars and events. | |
| **Import Calendar Event** | `calendar_import_event` | Import an event into a Zoom calendar (private copy of an existing event). | |
| **Insert Calendar List Entry** | `calendar_insert_calendar_list` | Insert an existing calendar onto a user's calendar list. | |
| **List ACL Rules** | `calendar_list_acl` | List the access control rules for a calendar. | |
| **List Calendar Event Instances** | `calendar_list_event_instances` | List the instances of a recurring event. | |
| **List Calendar Events** | `calendar_list_events` | List events on the specified Zoom calendar. | |
| **List Calendar List** | `calendar_list_calendar_list` | List the calendars on a user's calendar list. | |
| **Move Calendar Event** | `calendar_move_event` | Move an event to another calendar (changes the organizer). | |
| **Patch Calendar Event** | `calendar_patch_event` | Partially update an event on a Zoom calendar. | |
| **Quick Add Calendar Event** | `calendar_quick_add_event` | Create an event from a simple text string. | |
| **Update ACL Rule** | `calendar_update_acl` | Update an access control rule on a calendar. | |
| **Update Calendar** | `calendar_update_calendar` | Update a calendar's metadata. | |
| **Update Calendar List Entry** | `calendar_update_calendar_list` | Update an entry on a user's calendar list. | |
### Zoom clips
| Operation | ID | Description | Trigger |
| ------------------------- | ----------------------------- | ---------------------------------------------- | ------- |
| **Add Collaborators** | `clips_add_collaborators` | Add collaborators to a Zoom Clip. | |
| **Create Chapters** | `clips_create_chapters` | Create or replace the chapters of a Zoom Clip. | |
| **Delete Clip** | `clips_delete_clip` | Delete a Zoom Clip. | |
| **Delete Comment** | `clips_delete_comment` | Delete a comment on a Zoom Clip. | |
| **Download Clip** | `clips_download_clip` | Get the download information for a Zoom Clip. | |
| **Duplicate Clip** | `clips_duplicate_clip` | Duplicate a Zoom Clip. | |
| **Get Chapters** | `clips_get_chapters` | Get the chapters of a Zoom Clip. | |
| **Get Clip** | `clips_get_clip` | Get details of a specific Zoom Clip. | |
| **List Clips** | `clips_list_clips` | List all Zoom Clips for a user. | |
| **List Collaborators** | `clips_list_collaborators` | List the collaborators of a Zoom Clip. | |
| **List Comments** | `clips_list_comments` | List the comments on a Zoom Clip. | |
| **Remove Collaborators** | `clips_remove_collaborators` | Remove collaborators from a Zoom Clip. | |
| **Update Clip** | `clips_update_clip` | Update the metadata of a Zoom Clip. | |
| **Update Share Settings** | `clips_update_share_settings` | Update the share settings of a Zoom Clip. | |
### Zoom events
| Operation | ID | Description | Trigger |
| --------------------------------------- | --------------------------------------------- | ---------------------------------------------------------------------- | ------- |
| **Cancel Event** | `zoom_events_cancel_event` | Cancel a published Zoom Event (host action). | |
| **Create Access Link** | `zoom_events_create_access_link` | Create an access link for an event. | |
| **Create Event** | `zoom_events_create_event` | Create a Zoom Events event within a hub. | |
| **Create Exhibitor** | `zoom_events_create_exhibitor` | Create an exhibitor/sponsor for an event. | |
| **Create Hub Host** | `zoom_events_create_hub_host` | Add one or more hosts to a Zoom Events hub. | |
| **Create Session** | `zoom_events_create_session` | Create a session in a Zoom Event (not for single-session events). | |
| **Create Session Reservation** | `zoom_events_create_session_reservation` | Reserve a session spot for a user by email. | |
| **Create Speaker** | `zoom_events_create_speaker` | Create a speaker for a Zoom Event. | |
| **Create Ticket Type** | `zoom_events_create_ticket_type` | Create a ticket type for a Zoom Event. | |
| **Create Tickets** | `zoom_events_create_tickets` | Issue tickets (register attendees) for an event. | |
| **Delete Access Link** | `zoom_events_delete_access_link` | Delete an event access link. | |
| **Delete Event** | `zoom_events_delete_event` | Delete a Zoom Events event. | |
| **Delete Exhibitor** | `zoom_events_delete_exhibitor` | Delete an exhibitor. | |
| **Delete Session** | `zoom_events_delete_session` | Delete a session from a Zoom Event. | |
| **Delete Session Reservation** | `zoom_events_delete_session_reservation` | Delete a session reservation for a user by email. | |
| **Delete Speaker** | `zoom_events_delete_speaker` | Delete a speaker from a Zoom Event. | |
| **Delete Ticket** | `zoom_events_delete_ticket` | Delete (cancel) a ticket for a Zoom Event. | |
| **Delete Ticket Type** | `zoom_events_delete_ticket_type` | Delete a ticket type from a Zoom Event. | |
| **Duplicate Event** | `zoom_events_duplicate_event` | Duplicate an existing Zoom Event (host action). | |
| **Event Action** | `zoom_events_event_action` | Run a lifecycle action on an event (publish, duplicate, cancel, etc.). | |
| **Get Access Link** | `zoom_events_get_access_link` | Retrieve a single event access link. | |
| **Get Event** | `zoom_events_get_event` | Retrieve a single Zoom Events event. | |
| **Get Exhibitor** | `zoom_events_get_exhibitor` | Retrieve a single exhibitor. | |
| **Get Session** | `zoom_events_get_session` | Get details of a session in a Zoom Event. | |
| **Get Session Join Token** | `zoom_events_get_session_join_token` | Get a ticket's session join token by event ID and session ID. | |
| **Get Session Livestream** | `zoom_events_get_session_livestream` | Get the livestream configuration for a session. | |
| **Get Speaker** | `zoom_events_get_speaker` | Get a single speaker. | |
| **Get Survey Report** | `zoom_events_get_survey_report` | Get the event survey report. | |
| **Get Ticket** | `zoom_events_get_ticket` | Get a single ticket's details. | |
| **List Access Links** | `zoom_events_list_access_links` | List an event's access links. | |
| **List Attendee Actions** | `zoom_events_list_attendee_actions` | List event-level attendee actions (e.g. check-in status). | |
| **List Co-Editors** | `zoom_events_list_coeditors` | List the co-editors of an event. | |
| **List Email Send Status** | `zoom_events_list_email_send_status` | List the send status of a given event email type. | |
| **List Email Types** | `zoom_events_list_email_types` | List the email types configured for an event. | |
| **List Event Attendee Actions** | `zoom_events_list_event_attendee_actions` | List event-level attendee actions (invitations / status). | |
| **List Event Registration Questions** | `zoom_events_list_event_questions` | List registration questions for a Zoom Event. | |
| **List Events** | `zoom_events_list_events` | List Zoom Events events, optionally scoped to a hub. | |
| **List Exhibitors** | `zoom_events_list_exhibitors` | List exhibitors/sponsors of an event. | |
| **List Hub Hosts** | `zoom_events_list_hub_hosts` | List the hosts belonging to a Zoom Events hub. | |
| **List Hub Videos** | `zoom_events_list_hub_videos` | List the videos and recording sessions stored on a Zoom Events hub. | |
| **List Hubs** | `zoom_events_list_hubs` | List the Zoom Events hubs the account can access. | |
| **List Registrants** | `zoom_events_list_registrants` | List registrants for a Zoom Event. | |
| **List Session Attendee Actions** | `zoom_events_list_session_attendee_actions` | List session-level attendee actions. | |
| **List Session Attendees** | `zoom_events_list_session_attendees` | List attendees of a specific Zoom Event session. | |
| **List Session Interpreters** | `zoom_events_list_session_interpreters` | List the interpreters for a session. | |
| **List Session Polls** | `zoom_events_list_session_polls` | List the polls for a session. | |
| **List Session Reservations** | `zoom_events_list_session_reservations` | List the reservations for a session. | |
| **List Sessions** | `zoom_events_list_sessions` | List the sessions in a Zoom Event. | |
| **List Speakers** | `zoom_events_list_speakers` | List speakers for a Zoom Event. | |
| **List Sponsor Tiers** | `zoom_events_list_sponsor_tiers` | List sponsor tiers for a Zoom Event. | |
| **List Ticket Type Questions** | `zoom_events_list_ticket_type_questions` | List registration questions for a specific ticket type. | |
| **List Ticket Types** | `zoom_events_list_ticket_types` | List the ticket types configured for an event. | |
| **List Tickets** | `zoom_events_list_tickets` | List tickets (registrations) for a Zoom Event. | |
| **Publish Event** | `zoom_events_publish_event` | Publish a Zoom Event (host action). | |
| **Remove Hub Host** | `zoom_events_remove_hub_host` | Remove a host from a Zoom Events hub. | |
| **Update Access Link** | `zoom_events_update_access_link` | Update an event access link. | |
| **Update Attendee Actions** | `zoom_events_update_attendee_actions` | Update event-level attendee actions (e.g. check attendees in). | |
| **Update Co-Editors** | `zoom_events_update_coeditors` | Add or remove co-editors on an event. | |
| **Update Event** | `zoom_events_update_event` | Update a Zoom Events event. | |
| **Update Event Attendee Actions** | `zoom_events_update_event_attendee_actions` | Perform event-level attendee actions (invite, approve, deny, etc.). | |
| **Update Event Registration Questions** | `zoom_events_update_event_questions` | Update registration questions for a Zoom Event. | |
| **Update Exhibitor** | `zoom_events_update_exhibitor` | Update an exhibitor. | |
| **Update Session** | `zoom_events_update_session` | Update a session in a Zoom Event. | |
| **Update Session Attendee Actions** | `zoom_events_update_session_attendee_actions` | Update session-level attendee actions. | |
| **Update Session Interpreters** | `zoom_events_update_session_interpreters` | Set/replace the interpreters for a session. | |
| **Update Session Livestream** | `zoom_events_update_session_livestream` | Update the livestream configuration for a session. | |
| **Update Session Polls** | `zoom_events_update_session_polls` | Set/replace the polls for a session. | |
| **Update Speaker** | `zoom_events_update_speaker` | Update a speaker for a Zoom Event. | |
| **Update Ticket** | `zoom_events_update_ticket` | Update a ticket for a Zoom Event. | |
| **Update Ticket Type** | `zoom_events_update_ticket_type` | Update a ticket type for a Zoom Event. | |
| **Update Ticket Type Questions** | `zoom_events_update_ticket_type_questions` | Update registration questions for a specific ticket type. | |
### Zoom mail
| Operation | ID | Description | Trigger |
| ------------------------------ | ---------------------------- | ------------------------------------------------------------------- | ------- |
| **Batch Delete Messages** | `mail_batch_delete_messages` | Permanently delete multiple Zoom Mail messages at once. | |
| **Batch Modify Messages** | `mail_batch_modify_messages` | Modify labels on multiple Zoom Mail messages at once. | |
| **Create Draft** | `mail_create_draft` | Create a new draft email in a Zoom Mail mailbox. | |
| **Delete Draft** | `mail_delete_draft` | Permanently delete a draft email from a Zoom Mail mailbox. | |
| **Delete Message** | `mail_delete_message` | Permanently delete a specific Zoom Mail message. | |
| **Delete Thread** | `mail_delete_thread` | Permanently delete a Zoom Mail thread and all its messages. | |
| **Get Attachment** | `mail_get_attachment` | Retrieve a message attachment from a Zoom Mail mailbox. | |
| **Get Draft** | `mail_get_draft` | Retrieve a specific draft email from a Zoom Mail mailbox. | |
| **Get Message** | `mail_get_message` | Retrieve a specific message from a Zoom Mail mailbox. | |
| **Get Thread** | `mail_get_thread` | Retrieve a specific email thread from a Zoom Mail mailbox. | |
| **Insert Message** | `mail_insert_message` | Directly insert a message into a Zoom Mail mailbox (does not send). | |
| **List Drafts** | `mail_list_drafts` | List the draft messages in a Zoom Mail mailbox. | |
| **List Messages** | `mail_list_messages` | List the messages in a Zoom Mail mailbox. | |
| **List Threads** | `mail_list_threads` | List the email threads in a Zoom Mail mailbox. | |
| **Mail: Create Label** | `mail_create_label` | Create a new label in a Zoom Mail mailbox. | |
| **Mail: Delete Label** | `mail_delete_label` | Delete a label from a Zoom Mail mailbox. | |
| **Mail: Get Label** | `mail_get_label` | Retrieve a specific label from a Zoom Mail mailbox. | |
| **Mail: Get Mailbox Profile** | `mail_get_mailbox_profile` | Get the profile of a Zoom Mail mailbox. | |
| **Mail: List Labels** | `mail_list_labels` | List all labels in a Zoom Mail mailbox. | |
| **Mail: List Mailbox History** | `mail_list_history` | List the history of changes to a Zoom Mail mailbox. | |
| **Mail: Patch Label** | `mail_patch_label` | Patch a label in a Zoom Mail mailbox (partial update). | |
| **Mail: Update Label** | `mail_update_label` | Update (replace) a label in a Zoom Mail mailbox. | |
| **Modify Message Labels** | `mail_modify_message` | Add or remove labels on a specific Zoom Mail message. | |
| **Modify Thread Labels** | `mail_modify_thread` | Add or remove labels on all messages in a Zoom Mail thread. | |
| **Send Draft** | `mail_send_draft` | Send an existing draft email from a Zoom Mail mailbox. | |
| **Send Message** | `mail_send_message` | Send an email message to recipients from a Zoom Mail mailbox. | |
| **Trash Message** | `mail_trash_message` | Move a Zoom Mail message to the TRASH folder. | |
| **Trash Thread** | `mail_trash_thread` | Move a Zoom Mail thread to the TRASH folder. | |
| **Untrash Message** | `mail_untrash_message` | Move a Zoom Mail message out of the TRASH folder. | |
| **Untrash Thread** | `mail_untrash_thread` | Move a Zoom Mail thread out of the TRASH folder. | |
| **Update Draft** | `mail_update_draft` | Replace the content of an existing draft email. | |
### Zoom phone
| Operation | ID | Description | Trigger |
| --------------------------------------------------------- | ------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ------- |
| **Activate Carrier Reseller Numbers** | `active_cr_phone_numbers` | Activate carrier reseller phone numbers. | |
| **Add Account Outbound Exception Rule** | `add_account_outbound_exception` | Add an account-level outbound calling exception rule. | |
| **Add Audio Item** | `add_audio_item` | Add a text-to-speech audio item (prompt) to a user's audio library. | |
| **Add Audio Items (Batch)** | `add_audio_items_batch` | Add multiple audio items (prompts) to a user's audio library in one request. | |
| **Add Auto Receptionist Setting** | `add_auto_receptionist_setting` | Add a sub-setting (e.g. holiday hours) to an auto receptionist. | |
| **Add BYOC Numbers** | `add_byoc_numbers` | Add BYOC (Bring Your Own Carrier) phone numbers to an account. | |
| **Add BYOC Phone Numbers** | `add_byoc_number` | Add BYOC (Bring Your Own Carrier) phone numbers. | |
| **Add Call Handling Setting** | `add_call_handling_setting` | Add a call handling setting for a Zoom Phone extension. | |
| **Add Call Queue Call Handling Setting** | `add_call_queue_call_handling` | Add a call handling setting to a call queue (e.g. holiday, custom\_hours). | |
| **Add Call Queue Custom Group Members** | `add_call_queue_custom_group_members` | Add members to a call queue custom group. | |
| **Add Call Queue Members** | `add_call_queue_members` | Add members (users or common area phones) to a call queue. | |
| **Add Call Queue Setting** | `add_call_queue_setting` | Add a setting to a call queue (e.g. opt-out reasons). | |
| **Add Common Area** | `add_common_area` | Create (provision) a new common area phone. | |
| **Add Common Area Outbound Calling Exception Rule** | `add_common_area_outbound_calling_exception_rule` | Add a common area's outbound calling exception rule. | |
| **Add Common Area Outbound Exception Rule** | `add_common_area_outbound_exception` | Add a common-area-level outbound calling exception rule. | |
| **Add Common Area Setting** | `add_common_area_setting` | Add a setting (e.g. desk phone, outbound caller id) to a common area. | |
| **Add Dial-by-Name Directory Users** | `add_dial_by_name_directory_users` | Add users (extensions) to the account-level dial-by-name directory of a site. | |
| **Add Emergency Address** | `add_emergency_address` | Add a new emergency address to the Zoom Phone account. | |
| **Add Emergency Service Location** | `add_emergency_service_location` | Add a new emergency service (nomadic) location. | |
| **Add Extension Inbound Block Rule** | `add_extension_inbound_block_rule` | Add an extension-level inbound blocked rule. | |
| **Add External Contact** | `add_external_contact` | Add an external contact. | |
| **Add Firmware Update Rule** | `add_firmware_update_rule` | Add a firmware update rule to keep devices on a specific firmware version. | |
| **Add Group Call Pickup Members** | `add_group_call_pickup_members` | Add members to a group call pickup object. | |
| **Add Inbound Block Rule** | `add_inbound_block_rule` | Add an account-level inbound blocked rule. | |
| **Add Monitoring Group Members** | `add_monitoring_group_members` | Add monitors or monitored members to a Zoom Phone monitoring group. | |
| **Add Number To Blocked List** | `add_blocked_list_number` | Add a phone number or prefix to the account blocked list. | |
| **Add Peering Numbers** | `add_peering_numbers` | Add peering phone numbers. | |
| **Add Phone Alert Setting** | `add_phone_alert_setting` | Add a Zoom Phone alert setting. | |
| **Add Phone Device** | `add_phone_device` | Add a desk phone/device to a Zoom Phone account. | |
| **Add Phone Role Members** | `add_phone_role_members` | Add members (users) to a Zoom Phone role. | |
| **Add Phone Site Setting** | `add_phone_site_setting` | Add a setting (e.g. outbound caller ID customized numbers) to a Zoom Phone site. | |
| **Add Phone User Setting** | `add_phone_user_setting` | Add a specific Zoom Phone user setting (e.g. delegation, shared access). | |
| **Add Phone Zoom Room** | `add_phone_zoom_room` | Add a Zoom Room to Zoom Phone (assign a Zoom Phone license). | |
| **Add Private Directory Members** | `add_private_directory_members` | Add members to the Zoom Phone private directory. | |
| **Add Provision Template** | `add_provision_template` | Add a provision template. | |
| **Add Routing Rule** | `add_routing_rule` | Add a directory backup routing rule. | |
| **Add Shared Line Group Members** | `add_slg_members` | Add members (users/common areas) to a shared line group. | |
| **Add Shared Line Group Policy** | `add_slg_policy` | Add a policy sub-setting to a shared line group. | |
| **Add Site Dial-by-Name Directory Users** | `add_site_dial_by_name_directory_users` | Add users (extensions) to the dial-by-name directory of a specific site. | |
| **Add Site Outbound Caller IDs** | `add_site_outbound_caller_ids` | Add customized outbound caller ID phone numbers to a Zoom Phone site. | |
| **Add Site Outbound Exception Rule** | `add_site_outbound_exception` | Add a site-level outbound calling exception rule. | |
| **Add User Customized Caller ID** | `add_phone_user_customized_caller_id` | Add customized outbound caller ID numbers for a Zoom Phone user. | |
| **Add User Outbound Exception Rule** | `add_user_outbound_exception` | Add a user-level outbound calling exception rule. | |
| **Assign Call Queue Phone Numbers** | `assign_call_queue_phone_numbers` | Assign phone numbers to a call queue. | |
| **Assign Calling Plan To Phone Zoom Room** | `assign_calling_plan_to_phone_zoom_room` | Assign calling plans to a Zoom Room. | |
| **Assign Calling Plans** | `assign_phone_calling_plans` | Assign calling plans to a Zoom Phone user. | |
| **Assign Common Area Calling Plans** | `assign_common_area_calling_plans` | Assign one or more calling plans to a common area. | |
| **Assign Common Area Phone Numbers** | `assign_common_area_phone_numbers` | Assign phone numbers to a common area. | |
| **Assign Entity To Phone Device** | `assign_phone_entity_to_device` | Assign an entity (extension) to a shared or common area Zoom Phone device. | |
| **Assign Phone Number To Phone Zoom Room** | `assign_phone_number_to_phone_zoom_room` | Assign phone numbers to a Zoom Room. | |
| **Assign Phone Numbers** | `assign_auto_receptionist_phone_numbers` | Assign phone numbers to an auto receptionist. | |
| **Assign Phone Numbers** | `assign_phone_numbers_to_user` | Assign phone numbers to a Zoom Phone user. | |
| **Assign Shared Line Group Phone Numbers** | `assign_slg_phone_numbers` | Assign phone numbers to a shared line group. | |
| **Assign SMS Campaign Phone Numbers** | `assign_sms_campaign_phone_numbers` | Assign one or more phone numbers to an SMS campaign. | |
| **Batch Add Emergency Service Locations** | `batch_add_emergency_service_locations` | Batch add multiple emergency service (nomadic) locations in one request. | |
| **Batch Update Phone Users** | `batch_update_phone_users` | Batch update multiple Zoom Phone users. | |
| **Create Auto Receptionist** | `create_auto_receptionist` | Add a new auto receptionist to a Zoom Phone site. | |
| **Create Call Queue** | `create_call_queue` | Create a new call queue. | |
| **Create Call Queue Custom Group** | `create_call_queue_custom_group` | Create a custom group in a call queue. | |
| **Create Carrier Reseller Numbers** | `create_cr_phone_numbers` | Create carrier reseller phone numbers. | |
| **Create Fax Document** | `create_fax_document` | Create a Zoom Phone fax document from previously uploaded file(s). | |
| **Create Group Call Pickup Object** | `create_group_call_pickup` | Create a group call pickup object. | |
| **Create Monitoring Group** | `create_monitoring_group` | Create a Zoom Phone monitoring group. | |
| **Create Phone Setting Template** | `create_phone_setting_template` | Create a Zoom Phone setting template. | |
| **Create Phone Site** | `create_phone_site` | Create a Zoom Phone site. | |
| **Create Shared Line Group** | `create_shared_line_group` | Create a shared line group. | |
| **Delete Account Outbound Exception Rule** | `delete_account_outbound_exception` | Delete an account-level outbound calling exception rule. | |
| **Delete Audio Item** | `delete_audio_item` | Delete an audio item (prompt) from the audio library. | |
| **Delete Auto Receptionist** | `delete_auto_receptionist` | Delete a non-primary auto receptionist. | |
| **Delete Auto Receptionist Setting** | `delete_auto_receptionist_setting` | Delete a sub-setting (e.g. a holiday) of an auto receptionist. | |
| **Delete Blocked List Entry** | `delete_blocked_list` | Delete a blocked-list entry. | |
| **Delete Call Handling Setting** | `delete_call_handling_setting` | Delete a call handling setting for a Zoom Phone extension. | |
| **Delete Call Queue** | `delete_call_queue` | Delete a call queue. | |
| **Delete Call Queue Call Handling Setting** | `delete_call_queue_call_handling` | Delete a call handling setting from a call queue (e.g. remove holiday/custom hours). | |
| **Delete Call Queue Custom Group** | `delete_call_queue_custom_group` | Delete a custom group from a call queue. | |
| **Delete Call Queue Setting** | `delete_call_queue_setting` | Delete a setting from a call queue (e.g. opt-out reasons). | |
| **Delete Carrier Reseller Number** | `delete_cr_phone_number` | Delete a carrier reseller phone number. | |
| **Delete Common Area** | `delete_common_area` | Delete a common area. | |
| **Delete Common Area Outbound Calling Exception Rule** | `delete_common_area_outbound_calling_exception_rule` | Delete a common area's outbound calling exception rule. | |
| **Delete Common Area Outbound Exception Rule** | `delete_common_area_outbound_exception` | Delete a common-area-level outbound calling exception rule. | |
| **Delete Common Area Setting** | `delete_common_area_setting` | Delete a setting of a common area. | |
| **Delete Dial-by-Name Directory Users** | `delete_dial_by_name_directory_users` | Delete users (extensions) from the account-level dial-by-name directory of a site. | |
| **Delete Emergency Address** | `delete_emergency_address` | Delete a specific emergency address by ID. | |
| **Delete Emergency Service Location** | `delete_emergency_service_location` | Delete a specific emergency service location by ID. | |
| **Delete Extension Inbound Block Rule** | `delete_extension_inbound_block_rule` | Delete an extension-level inbound blocked rule. | |
| **Delete External Contact** | `delete_external_contact` | Delete an external contact. | |
| **Delete Firmware Update Rule** | `delete_firmware_update_rule` | Delete a firmware update rule. | |
| **Delete Group Call Pickup Object** | `delete_group_call_pickup` | Delete a group call pickup object. | |
| **Delete Inbound Block Rule** | `delete_inbound_block_rule` | Delete an account-level inbound blocked rule. | |
| **Delete Inbound Block Statistic** | `delete_inbound_block_statistic` | Delete an account-level inbound blocked statistic. | |
| **Delete Monitoring Group** | `delete_monitoring_group` | Delete a Zoom Phone monitoring group. | |
| **Delete Peering Numbers** | `delete_peering_numbers` | Remove peering phone numbers. | |
| **Delete Phone Alert Setting** | `delete_phone_alert_setting` | Delete a Zoom Phone alert setting. | |
| **Delete Phone Device** | `delete_phone_device` | Remove a desk phone/device from the Zoom Phone account. | |
| **Delete Phone Role** | `delete_phone_role` | Delete a Zoom Phone role. | |
| **Delete Phone Role Members** | `delete_phone_role_members` | Remove members from a Zoom Phone role. | |
| **Delete Phone Site** | `delete_phone_site` | Delete a Zoom Phone site, transferring its assets to another site. | |
| **Delete Phone Site Setting** | `delete_phone_site_setting` | Delete a specific setting from a Zoom Phone site. | |
| **Delete Phone User Setting** | `delete_phone_user_setting` | Delete a specific Zoom Phone user setting. | |
| **Delete Private Directory Member** | `delete_private_directory_member` | Remove a member from the Zoom Phone private directory. | |
| **Delete Provision Template** | `delete_provision_template` | Delete a provision template. | |
| **Delete Routing Rule** | `delete_routing_rule` | Delete a directory backup routing rule. | |
| **Delete Shared Line Group** | `delete_shared_line_group` | Delete a shared line group. | |
| **Delete Site Dial-by-Name Directory Users** | `delete_site_dial_by_name_directory_users` | Delete users (extensions) from the dial-by-name directory of a specific site. | |
| **Delete Site Outbound Caller IDs** | `delete_site_outbound_caller_ids` | Remove customized outbound caller ID phone numbers from a Zoom Phone site. | |
| **Delete Site Outbound Exception Rule** | `delete_site_outbound_exception` | Delete a site-level outbound calling exception rule. | |
| **Delete User Call History** | `delete_user_call_history` | Delete a single call history record for a specific user. | |
| **Delete User Call Log** | `delete_phone_user_call_log` | Delete a specific call log for a Zoom Phone user. | |
| **Delete User Call Log** | `delete_user_call_log` | Delete a single call log record for a specific user (legacy Call Logs API). | |
| **Delete User Customized Caller ID** | `delete_phone_user_customized_caller_id` | Delete customized outbound caller ID numbers from a Zoom Phone user. | |
| **Delete User Outbound Exception Rule** | `delete_user_outbound_exception` | Delete a user-level outbound calling exception rule. | |
| **Delete Voicemail** | `delete_voicemail` | Delete a voicemail from the Zoom Phone account. | |
| **Download Phone Recording Transcript** | `download_phone_recording_transcript` | Download the transcript of a Zoom Phone recording. | |
| **Duplicate Phone Role** | `duplicate_phone_role` | Duplicate an existing Zoom Phone role to create a new one. | |
| **Get Account Call History** | `get_account_call_history` | Get the account's call history (Call History API, replaces legacy call logs). | |
| **Get Account Outbound Calling Countries** | `get_account_outbound_calling` | Get the account-level outbound calling countries/regions. | |
| **Get Audio Item** | `get_audio_item` | Get details of an audio item (prompt) by its ID. | |
| **Get Auto Receptionist** | `get_auto_receptionist` | Get details of a specific auto receptionist. | |
| **Get Auto Receptionist Call Handling** | `get_auto_receptionist_call_handling` | Get the call handling settings (business/closed/holiday hours) of an auto receptionist. | |
| **Get Auto Receptionist IVR** | `get_auto_receptionist_ivr` | Get the IVR (interactive voice response) configuration for an auto receptionist. | |
| **Get Auto Receptionist Policy** | `get_auto_receptionist_policy` | Get the policy settings for an auto receptionist. | |
| **Get Auto Receptionist Settings** | `get_auto_receptionist_settings` | Get the settings of an auto receptionist. | |
| **Get Blocked List Entry** | `get_blocked_list` | Get the details of a single blocked-list entry. | |
| **Get Call Handling Settings** | `get_call_handling_settings` | Get an extension's Zoom Phone call handling settings. | |
| **Get Call History Detail** | `get_call_history_detail` | Get the call path (detailed history) of a single call history record. | |
| **Get Call Log Detail** | `get_call_log_detail` | Get the details of a single account call log (legacy Call Logs API). | |
| **Get Call Log Metrics Details** | `get_call_log_metrics_details` | Get the metrics details of a single Zoom Phone call log. | |
| **Get Call QoS** | `get_call_qos` | Get the Quality of Service (QoS) details for a Zoom Phone call. | |
| **Get Call Queue** | `get_call_queue` | Get details of a specific call queue. | |
| **Get Call Queue Call Handling** | `get_call_queue_call_handling` | Get the call handling settings of a call queue (business/closed/holiday hours, routing). | |
| **Get Call Queue Custom Group** | `get_call_queue_custom_group` | Get a specific custom group of a call queue. | |
| **Get Call Queue Policy** | `get_call_queue_policy` | Get a call queue's policy (all sub-settings). | |
| **Get Call Queue Recordings** | `get_call_queue_recordings` | Get the recordings of a call queue. | |
| **Get Call Queue Settings** | `get_call_queue_settings` | Get the settings of a call queue. | |
| **Get Common Area** | `get_common_area` | Get details of a specific common area. | |
| **Get Common Area Outbound Calling Countries** | `get_common_area_outbound_calling` | Get a common area's outbound calling countries/regions. | |
| **Get Common Area Outbound Calling Countries/Regions** | `get_common_area_outbound_calling_countries_regions` | List a common area's outbound calling countries and regions. | |
| **Get Common Area Settings** | `get_common_area_settings` | Get the settings of a common area. | |
| **Get Emergency Address** | `get_emergency_address` | Get the details of a specific emergency address by ID. | |
| **Get Emergency Service Location** | `get_emergency_service_location` | Get the details of a specific emergency service location by ID. | |
| **Get External Contact** | `get_external_contact` | Get external contact details. | |
| **Get Fax Log** | `get_fax_log` | Get the details of a single Zoom Phone fax log. | |
| **Get Fax Log File** | `get_fax_log_file` | Get (download link for) a file attached to a Zoom Phone fax log. | |
| **Get Firmware Update Rule** | `get_firmware_update_rule` | Get details of a firmware update rule. | |
| **Get Group Call Pickup Object** | `get_group_call_pickup` | Get details of a group call pickup object. | |
| **Get Monitoring Group** | `get_monitoring_group` | Get details of a specific Zoom Phone monitoring group. | |
| **Get Phone Account Settings** | `get_phone_account_settings` | Get an account's Zoom Phone settings. | |
| **Get Phone Alert Setting** | `get_phone_alert_setting` | Get details of a Zoom Phone alert setting. | |
| **Get Phone Call Recordings** | `get_phone_call_recordings` | Get the recordings of a Zoom Phone call by its call log ID. | |
| **Get Phone Device** | `get_phone_device` | Get information about a specific Zoom Phone device. | |
| **Get Phone Device Line Keys** | `get_phone_device_line_keys` | Get the line key position and configuration for a Zoom Phone device. | |
| **Get Phone Extension Line Keys** | `get_phone_user_line_keys` | Get the line key position and settings of a Zoom Phone extension. | |
| **Get Phone Number Details** | `get_phone_number_details` | Get details about a specific Zoom Phone number. | |
| **Get Phone Operation Logs Report** | `get_phone_operation_logs_report` | Get the Zoom Phone operation logs report. | |
| **Get Phone Role** | `get_phone_role` | Get information about a specific Zoom Phone role. | |
| **Get Phone Setting Template** | `get_phone_setting_template` | Get details of a Zoom Phone setting template. | |
| **Get Phone Site** | `get_phone_site` | Get details of a specific Zoom Phone site. | |
| **Get Phone Site Setting** | `get_phone_site_setting` | Get a specific setting type for a Zoom Phone site. | |
| **Get Phone User** | `get_phone_user` | Get a Zoom Phone user's profile. | |
| **Get Phone User Settings** | `get_phone_user_settings` | Get a Zoom Phone user's settings. | |
| **Get Phone Zoom Room** | `get_phone_zoom_room` | Get a Zoom Room under a Zoom Phone license. | |
| **Get Port Order Details** | `get_port_order_details` | Get the details of a specific port order (ported numbers). | |
| **Get Provision Template** | `get_provision_template` | Get a provision template. | |
| **Get Routing Rule** | `get_routing_rule` | Get a directory backup routing rule. | |
| **Get Shared Line Group** | `get_shared_line_group` | Get details of a shared line group. | |
| **Get Shared Line Group Policies** | `get_slg_policies` | Get all policies of a shared line group. | |
| **Get Site Outbound Calling Countries** | `get_site_outbound_calling` | Get a site's outbound calling countries/regions. | |
| **Get SMS By Message ID** | `get_sms_by_message_id` | Get a single SMS/MMS message by its message ID within a session. | |
| **Get SMS Campaign** | `get_sms_campaign` | Get the details of a specific SMS campaign. | |
| **Get SMS Session Details** | `get_sms_session_details` | Get the message-level details of an SMS session. | |
| **Get User Call History** | `get_phone_user_call_history` | Get a Zoom Phone user's call history. | |
| **Get User Call History** | `get_user_call_history` | Get a specific user's call history (Call History API). | |
| **Get User Call Logs** | `get_phone_user_call_logs` | Get a Zoom Phone user's call logs. | |
| **Get User Call Logs** | `get_user_call_logs` | Get a specific user's call logs (legacy Call Logs API). | |
| **Get User Outbound Calling Countries** | `get_user_outbound_calling` | Get a user's outbound calling countries/regions. | |
| **Get User Recordings** | `get_phone_user_recordings` | Get a Zoom Phone user's call recordings. | |
| **Get User Voicemails** | `get_phone_user_voicemails` | Get a Zoom Phone user's voicemails. | |
| **Get Voicemail** | `get_voicemail` | Get a voicemail's details, including its download URL and transcription. | |
| **List Account Outbound Exception Rules** | `list_account_outbound_exceptions` | List account-level outbound calling exception rules. | |
| **List Account Voicemails** | `list_account_voicemails` | List all voicemails across the Zoom Phone account. | |
| **List Audio Items** | `list_audio_items` | List audio items (prompts) in a user's Zoom Phone audio library. | |
| **List Auto Receptionists** | `list_auto_receptionists` | List all auto receptionists on the Zoom Phone account. | |
| **List Available Phone Numbers** | `list_available_phone_numbers` | List phone numbers that are available (unassigned) in an account. | |
| **List Blocked List** | `list_blocked_list` | List the account's Zoom Phone blocked-list entries. | |
| **List BYOC SIP Trunks** | `list_byoc_sip_trunks` | List BYOC SIP trunks. | |
| **List Call Logs Metrics** | `list_call_logs_metrics` | List Zoom Phone call logs metrics (QoS overview) for the account. | |
| **List Call Queue Custom Groups** | `list_call_queue_custom_groups` | List the custom groups of a call queue. | |
| **List Call Queue Members** | `list_call_queue_members` | List the members of a call queue. | |
| **List Call Queues** | `list_call_queues` | List all call queues in a Zoom Phone account. | |
| **List Carrier Peering Numbers** | `list_carrier_peering_numbers` | List carrier peering phone numbers. | |
| **List Carrier Reseller Numbers** | `list_cr_phone_numbers` | List carrier reseller phone numbers. | |
| **List Common Area Activation Codes** | `list_common_area_activation_codes` | List activation codes of common areas. | |
| **List Common Area Outbound Calling Exception Rules** | `list_common_area_outbound_calling_exception_rules` | List a common area's outbound calling exception rules. | |
| **List Common Area Outbound Exception Rules** | `list_common_area_outbound_exceptions` | List a common area's outbound calling exception rules. | |
| **List Common Areas** | `list_common_areas` | List all common areas in a Zoom Phone account. | |
| **List Dial-by-Name Directory Users** | `list_dial_by_name_directory_users` | List users (extensions) in the account-level dial-by-name directory for a site. | |
| **List Emergency Addresses** | `list_emergency_addresses` | List all emergency addresses for the Zoom Phone account. | |
| **List Emergency Service Locations** | `list_emergency_service_locations` | List all emergency service (nomadic) locations for the Zoom Phone account. | |
| **List Extension Fax Logs** | `list_extension_fax_logs` | List Zoom Phone fax logs for a specific extension. | |
| **List Extension Inbound Block Rules** | `list_extension_inbound_block_rules` | List extension-level inbound blocked rules. | |
| **List External Contacts** | `list_external_contacts` | List external contacts. | |
| **List Fax Logs** | `list_fax_logs` | List Zoom Phone fax logs across the account. | |
| **List Firmware Update Rules** | `list_firmware_update_rules` | List firmware update rules configured for the account or a site. | |
| **List Group Call Pickup Members** | `list_group_call_pickup_members` | List members of a group call pickup object. | |
| **List Group Call Pickup Objects** | `list_group_call_pickup` | List all group call pickup objects for the account. | |
| **List Inbound Block Rules** | `list_inbound_block_rules` | List account-level inbound blocked rules. | |
| **List Inbound Block Statistics** | `list_inbound_block_statistics` | List account-level inbound blocked statistics (numbers blocked by extensions). | |
| **List Location Tracking** | `list_location_tracking` | List Zoom Phone location tracking (network location) records. | |
| **List Monitoring Group Members** | `list_monitoring_group_members` | List the monitors or monitored members of a Zoom Phone monitoring group. | |
| **List Monitoring Groups** | `list_monitoring_groups` | List all monitoring groups on a Zoom Phone account. | |
| **List Past Calls** | `list_past_calls` | List Zoom Phone past calls of a phone number. | |
| **List Peering Numbers** | `list_peering_numbers` | List peering phone numbers. | |
| **List Phone Alert Settings** | `list_phone_alert_settings` | List Zoom Phone alert settings for the account. | |
| **List Phone Devices** | `list_phone_devices` | List all the desk phone devices configured for Zoom Phone in the account. | |
| **List Phone Numbers** | `list_phone_numbers` | List all Zoom Phone numbers in an account. | |
| **List Phone Plans** | `list_phone_plans` | List the Zoom Phone plan information for the account. | |
| **List Phone Recordings** | `list_phone_recordings` | List all Zoom Phone call recordings for the account. | |
| **List Phone Role Members** | `list_phone_role_members` | List the members assigned to a Zoom Phone role. | |
| **List Phone Roles** | `list_phone_roles` | List all Zoom Phone roles on the account. | |
| **List Phone Setting Templates** | `list_phone_setting_templates` | List setting templates for an account or a Zoom Phone site. | |
| **List Phone SIP Groups** | `list_phone_sip_groups` | List an account's Zoom Phone SIP groups. | |
| **List Phone SIP Trunks** | `list_phone_sip_trunks` | List the SIP trunks assigned to an account. | |
| **List Phone Sites** | `list_phone_sites` | List all Zoom Phone sites in the account. | |
| **List Phone User Recordings** | `list_phone_user_recordings` | List call recordings for a specific Zoom Phone user. | |
| **List Phone Users** | `list_phone_users` | List all of an account's Zoom Phone users. | |
| **List Phone Zoom Rooms** | `list_phone_zoom_rooms` | List Zoom Rooms under a Zoom Phone license. | |
| **List Ported Numbers** | `list_ported_numbers` | List the port orders (ported numbers) in an account. | |
| **List Private Directory Members** | `list_private_directory_members` | List members of the Zoom Phone private directory. | |
| **List Provision Templates** | `list_provision_templates` | List provision templates. | |
| **List Routing Rules** | `list_routing_rules` | List directory backup routing rules. | |
| **List Shared Line Groups** | `list_shared_line_groups` | List all shared line groups on the account. | |
| **List Site Dial-by-Name Directory Users** | `list_site_dial_by_name_directory_users` | List users (extensions) in the dial-by-name directory of a specific site. | |
| **List Site Outbound Caller IDs** | `list_site_outbound_caller_ids` | List the customized outbound caller ID phone numbers for a Zoom Phone site. | |
| **List Site Outbound Exception Rules** | `list_site_outbound_exceptions` | List a site's outbound calling exception rules. | |
| **List SMS Campaign Opt Status** | `list_sms_campaign_opt_status` | List the opt-in/opt-out status of members for an SMS campaign phone number. | |
| **List SMS Campaigns** | `list_sms_campaigns` | List the SMS campaigns for the account. | |
| **List SMS Sessions** | `list_sms_sessions` | List an account's SMS sessions within a date range. | |
| **List Unassigned Phone Numbers** | `list_unassigned_phone_numbers` | List phone numbers that are not assigned to any extension. | |
| **List Unassigned Phone Zoom Rooms** | `list_unassigned_phone_zoom_rooms` | List Zoom Rooms without a Zoom Phone assignment. | |
| **List Updatable Firmwares** | `list_updatable_firmwares` | List firmware versions available for update on provisioned devices. | |
| **List User Customized Caller ID** | `list_phone_user_customized_caller_id` | List a Zoom Phone user's customized outbound caller ID numbers. | |
| **List User Outbound Exception Rules** | `list_user_outbound_exceptions` | List a user's outbound calling exception rules. | |
| **List User SMS Sessions** | `list_user_sms_sessions` | List a specific user's SMS sessions within a date range. | |
| **List User Voicemails** | `list_user_voicemails` | List voicemails belonging to a specific Zoom Phone user. | |
| **Mark Number Blocked For All** | `mark_number_blocked_for_all` | Mark a phone number as blocked for all extensions. | |
| **Opt SMS Campaign Members** | `opt_sms_campaign_members` | Opt members (external phone numbers) in or out of an SMS campaign. | |
| **Reboot Phone Device** | `reboot_phone_device` | Reboot a desk phone that is assigned to a Zoom Phone user. | |
| **Remove All Call Queue Members** | `remove_all_call_queue_members` | Remove all members from a call queue. | |
| **Remove All Monitoring Group Members** | `remove_monitoring_group_members` | Remove all monitors or monitored members from a Zoom Phone monitoring group. | |
| **Remove All Shared Line Group Members** | `remove_all_slg_members` | Remove all members from a shared line group. | |
| **Remove Call Queue Custom Group Member** | `remove_call_queue_custom_group_member` | Remove a member from a call queue custom group. | |
| **Remove Call Queue Member** | `remove_call_queue_member` | Remove a single member from a call queue. | |
| **Remove Group Call Pickup Member** | `remove_group_call_pickup_member` | Remove a member from a group call pickup object. | |
| **Remove Monitoring Group Member** | `remove_monitoring_group_member` | Remove a single member (by extension ID) from a Zoom Phone monitoring group. | |
| **Remove Phone Zoom Room** | `remove_phone_zoom_room` | Remove a Zoom Room from a Zoom Phone account. | |
| **Remove Shared Line Group Member** | `remove_slg_member` | Remove a single member from a shared line group. | |
| **Remove Shared Line Group Policy** | `remove_slg_policy` | Remove a policy sub-setting from a shared line group. | |
| **Sync Phone Devices** | `sync_phone_devices` | Sync deskphones/devices under a Zoom Phone account. | |
| **Sync Session SMS** | `sync_sms_by_session` | Sync the messages of a specific SMS session (details sync view). | |
| **Unassign All Call Queue Phone Numbers** | `unassign_all_call_queue_phone_numbers` | Unassign all phone numbers from a call queue. | |
| **Unassign All Phone Numbers** | `unassign_all_auto_receptionist_phone_numbers` | Unassign all phone numbers from an auto receptionist. | |
| **Unassign All Shared Line Group Phone Numbers** | `unassign_all_slg_phone_numbers` | Unassign all phone numbers from a shared line group. | |
| **Unassign Call Queue Phone Number** | `unassign_call_queue_phone_number` | Unassign a specific phone number from a call queue. | |
| **Unassign Calling Plan** | `unassign_phone_calling_plan` | Unassign a calling plan from a Zoom Phone user. | |
| **Unassign Calling Plan From Phone Zoom Room** | `unassign_calling_plan_from_phone_zoom_room` | Remove a calling plan from a Zoom Room. | |
| **Unassign Common Area Calling Plan** | `unassign_common_area_calling_plan` | Unassign a calling plan from a common area by plan type. | |
| **Unassign Common Area Phone Number** | `unassign_common_area_phone_number` | Unassign a phone number from a common area. | |
| **Unassign Entity From Phone Device** | `unassign_phone_entity_from_device` | Unassign an entity (extension) from a shared or common area Zoom Phone device. | |
| **Unassign Phone Number** | `unassign_auto_receptionist_phone_number` | Unassign a specific phone number from an auto receptionist. | |
| **Unassign Phone Number** | `unassign_phone_number_from_user` | Unassign a phone number from a Zoom Phone user. | |
| **Unassign Phone Number From Phone Zoom Room** | `unassign_phone_number_from_phone_zoom_room` | Remove a phone number from a Zoom Room. | |
| **Unassign Shared Line Group Phone Number** | `unassign_slg_phone_number` | Unassign a single phone number from a shared line group. | |
| **Unassign SMS Campaign Phone Number** | `unassign_sms_campaign_phone_number` | Unassign a phone number from an SMS campaign. | |
| **Update Account Outbound Calling Countries** | `update_account_outbound_calling` | Update the account-level outbound calling countries/regions. | |
| **Update Account Outbound Exception Rule** | `update_account_outbound_exception` | Update an account-level outbound calling exception rule. | |
| **Update Audio Item** | `update_audio_item` | Update an audio item (prompt), e.g. rename it. | |
| **Update Auto Receptionist** | `update_auto_receptionist` | Update details of an auto receptionist. | |
| **Update Auto Receptionist Call Handling** | `update_auto_receptionist_call_handling` | Update a call handling setting (business/closed/holiday hours) of an auto receptionist. | |
| **Update Auto Receptionist IVR** | `update_auto_receptionist_ivr` | Update the IVR (interactive voice response) configuration for an auto receptionist. | |
| **Update Auto Receptionist Policy** | `update_auto_receptionist_policy` | Update the policy settings for an auto receptionist. | |
| **Update Auto Receptionist Setting** | `update_auto_receptionist_setting` | Update a sub-setting of an auto receptionist. | |
| **Update Blocked List Entry** | `update_blocked_list` | Update a blocked-list entry. | |
| **Update Call Handling Setting** | `update_call_handling_setting` | Update a call handling setting for a Zoom Phone extension. | |
| **Update Call Queue** | `update_call_queue` | Update the details of a call queue. | |
| **Update Call Queue Call Handling Setting** | `update_call_queue_call_handling` | Update a call handling setting of a call queue (business/closed/holiday hours, routing). | |
| **Update Call Queue Policy** | `update_call_queue_policy` | Update the policy sub-setting of a call queue (e.g. add/remove voicemail access members). | |
| **Update Call Queue Setting** | `update_call_queue_setting` | Update a setting of a call queue (e.g. opt-out reasons). | |
| **Update Common Area** | `update_common_area` | Update an existing common area. | |
| **Update Common Area Outbound Calling Countries** | `update_common_area_outbound_calling` | Update a common area's outbound calling countries/regions. | |
| **Update Common Area Outbound Calling Countries/Regions** | `update_common_area_outbound_calling_countries_regions` | Update a common area's outbound calling countries and regions. | |
| **Update Common Area Outbound Calling Exception Rule** | `update_common_area_outbound_calling_exception_rule` | Update a common area's outbound calling exception rule. | |
| **Update Common Area Outbound Exception Rule** | `update_common_area_outbound_exception` | Update a common-area-level outbound calling exception rule. | |
| **Update Common Area Setting** | `update_common_area_setting` | Update a setting of a common area. | |
| **Update Device Provision Template** | `update_device_provision_template` | Update the provision template assigned to a device. | |
| **Update Emergency Address** | `update_emergency_address` | Update the details of a specific emergency address. | |
| **Update Emergency Service Location** | `update_emergency_service_location` | Update the details of a specific emergency service location. | |
| **Update External Contact** | `update_external_contact` | Update an external contact. | |
| **Update Firmware Update Rule** | `update_firmware_update_rule` | Update an existing firmware update rule. | |
| **Update Group Call Pickup Object** | `update_group_call_pickup` | Update a group call pickup object. | |
| **Update Inbound Block Rule** | `update_inbound_block_rule` | Update an account-level inbound blocked rule. | |
| **Update Monitoring Group** | `update_monitoring_group` | Update a Zoom Phone monitoring group. | |
| **Update Peering Numbers** | `update_peering_numbers` | Update peering phone numbers. | |
| **Update Phone Alert Setting** | `update_phone_alert_setting` | Update a Zoom Phone alert setting. | |
| **Update Phone Device** | `update_phone_device` | Update information about a Zoom Phone desk phone device. | |
| **Update Phone Device Line Keys** | `update_phone_device_line_keys` | Update the line key position and configuration for a Zoom Phone device. | |
| **Update Phone Extension Line Keys** | `update_phone_user_line_keys` | Update (batch) the line key settings of a Zoom Phone extension. | |
| **Update Phone Number** | `update_phone_number` | Update a phone number (e.g. assign it to a site). | |
| **Update Phone Recording** | `update_phone_recording` | Update the auto-delete field of a Zoom Phone recording. | |
| **Update Phone Role** | `update_phone_role` | Update a Zoom Phone role's name, description, or privileges. | |
| **Update Phone Setting Template** | `update_phone_setting_template` | Update a Zoom Phone setting template. | |
| **Update Phone Site** | `update_phone_site` | Update details of a specific Zoom Phone site. | |
| **Update Phone Site Setting** | `update_phone_site_setting` | Update a specific setting type for a Zoom Phone site. | |
| **Update Phone User** | `update_phone_user` | Update a Zoom Phone user's profile (extension, site, template, etc.). | |
| **Update Phone User Setting** | `update_phone_user_setting` | Update a specific Zoom Phone user setting. | |
| **Update Phone User Settings** | `update_phone_user_settings` | Update a Zoom Phone user's settings. | |
| **Update Phone Zoom Room** | `update_phone_zoom_room` | Update a Zoom Room's Zoom Phone settings (extension, policy, site). | |
| **Update Private Directory Member** | `update_private_directory_member` | Update a member in the Zoom Phone private directory. | |
| **Update Provision Template** | `update_provision_template` | Update a provision template. | |
| **Update Routing Rule** | `update_routing_rule` | Update a directory backup routing rule. | |
| **Update Shared Line Group** | `update_shared_line_group` | Update a shared line group's basic settings. | |
| **Update Shared Line Group Policies** | `update_slg_policies` | Update policies of a shared line group. | |
| **Update Shared Line Group Policy** | `update_slg_policy` | Update a policy sub-setting of a shared line group. | |
| **Update Site Outbound Calling Countries** | `update_site_outbound_calling` | Update a site's outbound calling countries/regions. | |
| **Update Site Outbound Exception Rule** | `update_site_outbound_exception` | Update a site-level outbound calling exception rule. | |
| **Update Site's Unassigned Numbers** | `update_site_unassigned_numbers` | Update a site's unassigned Zoom Phone numbers (up to 20 per request). | |
| **Update User Outbound Calling Countries** | `update_user_outbound_calling` | Update a user's outbound calling countries/regions. | |
| **Update User Outbound Exception Rule** | `update_user_outbound_exception` | Update a user-level outbound calling exception rule. | |
| **Update Voicemail Read Status** | `update_voicemail_read_status` | Mark a voicemail as read or unread. | |
### Zoom rooms
| Operation | ID | Description | Trigger |
| ---------------------- | -------------------- | ------------------------------------------- | ------- |
| **Assign Room Tags** | `assign_room_tags` | Assign one or more tags to a Zoom Room. | |
| **Unassign Room Tags** | `unassign_room_tags` | Unassign one or more tags from a Zoom Room. | |
# Approvals
Source: https://docs.noclick.com/logic/approvals
Pause a run for human review with the Approval node, then resume down the approved or rejected path.
The Approval node adds a human checkpoint to a workflow. When the run reaches it, execution pauses and an approval request appears under **Needs you** on your [Dashboard](/getting-started/dashboard). Nothing downstream runs until someone decides.
## Configuration
| Field | What it does |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Title** | Short title shown on the approval card |
| **Form Fields** | Fields the reviewer sees. Each has a name, type (string, number, boolean, select, media), label, and a pre-filled value that can reference upstream data, e.g. `{{http-1.amount}}` |
## Reviewing requests
Pending requests live under **Needs you** on the **Dashboard** tab in the top navigation (shortcut `G` then `I`). A badge on the tab shows how many things are waiting.
Each card shows the form fields filled with their resolved values. The reviewer can edit the values, then click **Approve** or **Reject**. The run resumes down the matching output handle:
| Handle | When it runs |
| ------------ | ------------------------ |
| **Approved** | The request was approved |
| **Rejected** | The request was rejected |
Downstream nodes read the (possibly edited) field values as `{{approval-id.values.field_name}}`.
**Example:** an agent drafts a tweet, an Approval node shows it in a `tweet_text` field, and the **Approved** branch posts `{{approval-id.values.tweet_text}}` to X. The reviewer can tweak the wording right in the card before approving.
While a request is pending, the execution shows a waiting status in [Execution logs](/editor/execution-logs). The card also links back to the workflow and node that created it.
## Next steps
* [Branching](/logic/branching)
* [Running and testing](/editor/running-and-testing)
# Branching
Source: https://docs.noclick.com/logic/branching
Route a run down different paths with the Conditional (if/else) and Switch (multi-case) nodes.
Two nodes control which path a run takes. Nodes on branches that don't match are skipped, along with everything downstream of them.
## Conditional (if/else)
The Conditional node evaluates one condition and routes the run to its **true** or **false** output handle.
| Field | What it does |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Input Data** | Reference to the data to evaluate, e.g. `{{node-id.field}}` |
| **Field to Evaluate** | Optional path inside the input, e.g. `status` or `data.user.role`. Supports array indexes like `emails[0].subject`. Leave empty to evaluate the whole input. |
| **Operator** | How to compare (see below) |
| **Comparison Value** | The value to compare against. Not needed for the empty/true/false checks. |
| **Case Sensitive** | Whether string comparisons match case (default No) |
Operators: equals, not equals, contains, does not contain, starts with, ends with, greater than, greater than or equal, less than, less than or equal, is empty, is not empty, is true, is false, and regex match.
The node passes its input through as `data`, so downstream nodes can reference `{{conditional-id.data}}`.
**Example:** point **Input Data** at an HTTP response, set **Field to Evaluate** to `status_code`, **Operator** to less than, and **Comparison Value** to `400`. Wire a Slack alert to the **false** handle to get notified on failures.
## Switch (multiple cases)
The Switch node compares its input against a list of cases and routes to the matching output handle. Each case's **Match Value** doubles as the handle name, so a case `urgent` creates an `urgent` output.
| Field | What it does |
| ------------------ | ----------------------------------------------- |
| **Input Data** | Reference to the value to match |
| **Cases** | List of values, one output handle per case |
| **Default Output** | Case to route to when nothing matches |
| **Case Sensitive** | Whether matching is case sensitive (default No) |
**Example:** route a support ticket by `{{form.priority}}` with cases `low`, `medium`, and `urgent`, each wired to a different notification path.
## Next steps
* [Data references](/editor/data-references)
* [Loops](/logic/loops)
* [Error handling](/logic/error-handling)
# Code
Source: https://docs.noclick.com/logic/code
Run custom JavaScript or Python in a workflow with the Serverless Function node.
The Serverless Function node runs your own code. Pick a runtime, define named inputs that map data from upstream nodes, and write a function body. Whatever you `return` becomes the node's `result`, which downstream nodes reference as `{{code-id.result}}`.
For a one-off string or number transform, you may not need this node at all, write an [inline expression](/editor/data-references) directly in the field instead, e.g. `{{ $('form').email.split("@")[1] }}`.
## Inputs
**Function Inputs** is a list of name + value pairs. The value is usually a reference like `{{sheets-1.values}}`. Each input is then available in your code under its own name, so an input named `data` is just `data`. This works the same in both runtimes: Python passes it as a function argument, and JavaScript binds it as a variable, where it is also still on the `inputs` object as `inputs.data`.
Declaring your own `const data = ...` in JavaScript takes precedence over the input of the same name, so nothing breaks if the names collide.
To pull an upstream value straight into your code without declaring an input, wrap the reference in quotes: `const x = Number("{{ $('form').amount }}")`. The substitution is textual, so a bare `$('form')` outside the braces is an error at run time.
## JavaScript
Runs in QuickJS and starts in milliseconds, so it's the right choice for quick data transformations. Pure JavaScript only: no npm packages, no network access, and a 3 second execution limit. `console.log` output is captured as `stdout`.
```javascript theme={null}
// Input "data" mapped from {{sheets-1.values}}
const emails = data
.filter(row => row.status === 'active')
.map(row => row.email);
return { emails, count: emails.length };
```
## Python
Runs in a cloud sandbox with installable pip packages and optional GPUs. Use it for heavy computation, ML workloads, or anything that needs libraries. This sandbox is NoClick's compute, so a Python run costs credits based on the CPU, memory, and GPU you reserve and how long it runs, billed even if the run errors or times out. JavaScript runs in-process and is free. See [What costs credits](/billing/costs).
| Field | What it does |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| **Function Body** | Python code; `return` a JSON-serializable value |
| **Requirements** | pip packages to install, one per line |
| **Hardware** | **GPU Type** (CPU only, T4, L4, A10G, A100 40GB, A100 80GB, H100), **GPU Count** (1-8), **CPU Cores** (0.25-16), **Memory** (256 MB-64 GB) |
| **Timeout (seconds)** | Up to 3600, default 300 |
| **Region** | Auto (nearest), US East, US West, EU West, EU Central |
```python theme={null}
# Input "data" mapped from an upstream node
import pandas as pd # add "pandas" to Requirements
df = pd.DataFrame(data)
return {"mean": df["price"].mean(), "rows": len(df)}
```
Need values to persist between runs (counters, seen IDs)? Connect a [State Manager](/logic/variables-state) node to get a mutable `state` parameter that saves automatically.
## Next steps
* [Variables and state](/logic/variables-state)
* [HTTP request](/logic/http-request)
* [Webhooks](/triggers/webhooks), where a function's return value can shape the HTTP response the caller gets
# Delays
Source: https://docs.noclick.com/logic/delays
Pause a run for seconds to weeks with the Delay node.
The Delay node pauses the run before continuing to downstream nodes. Use it for rate limiting, polling intervals, waiting on slow external jobs, or multi-day drip sequences.
## Configuration
| Field | What it does |
| --------------------------- | ------------------------------------------------ |
| **Delay** | How long to wait, in the chosen unit (minimum 1) |
| **Unit** | Seconds, Minutes, Hours, Days, or Weeks |
| **Wait Message (optional)** | Text shown while the run is waiting |
## How long delays work
* **Up to 15 minutes:** the run waits in place and continues as soon as the time is up.
* **Longer than 15 minutes:** the run suspends and a wake-up is scheduled. The execution shows a waiting status in [Execution logs](/editor/execution-logs) and resumes automatically at the scheduled time. Suspended delays are durable: a delay of days or weeks survives backend restarts and deploys.
**Example:** a video generation node kicks off a render, a Delay node waits 2 minutes, then an HTTP request polls for the finished file. Or in an onboarding flow: send a welcome email, **Delay** 2 **Days**, then send the follow-up.
Delays pause the whole path, not just one node. Everything downstream of the Delay node waits until it completes.
## Agent scheduling: the Alarm node
The Delay node pauses a running workflow. If you instead want an AI agent to schedule its own future wake-ups (countdowns, specific times, or recurring cron schedules), wire an Alarm node into the agent. See [Agent scheduling](/agents/scheduling).
## Next steps
* [Approvals](/logic/approvals)
* [Execution logs](/editor/execution-logs)
# Error handling
Source: https://docs.noclick.com/logic/error-handling
Catch workflow failures with the On Error node and control per-node retry and failure behavior.
## The On Error node
The On Error node is a workflow-level error catcher. Add one per workflow and leave it disconnected from your main flow; the nodes you wire after it form a recovery path that is excluded from normal runs.
When any node fails and stops the run, the On Error node executes with the failure details as its output, and its downstream path runs. Use it for Slack alerts, error emails, or logging.
Its output carries:
| Field | What it is |
| ---------------- | ------------------------------------------- |
| `error` | The error message |
| `workflow_id` | The workflow that failed |
| `execution_id` | The failed run's ID |
| `nodes_executed` | How many nodes completed before the failure |
| `duration` | Run duration in seconds |
Reference these downstream, e.g. a Slack message with `Workflow failed: {{on-error-id.error}}`.
## Route failures to another workflow
You can also hand a workflow's failures to a separate workflow, so one recovery flow handles alerts for many. Open the canvas menu, choose **Settings**, and set **On error, run another workflow** to a workflow that has an On Error node.
When the first workflow fails, the chosen workflow's On Error node fires with the same failure details as its output. The target needs an On Error node, you need access to it, and routing is one hop, so a workflow reached this way does not chain on to a third.
## Per-node failure settings
Every node also has a **Settings** view in its config panel with failure controls:
| Setting | What it does |
| ----------------- | --------------------------------------------------------------------------------------------------- |
| **Retry on Fail** | Re-run the node on failure. **Max Tries** up to 5, with a configurable **Wait Between Tries (ms)**. |
| **On Error** | What happens after the final failed attempt (below) |
The **On Error** options:
* **Stop Workflow** (default): the run fails. The On Error node fires if present.
* **Continue (Regular Output)**: the node is treated as succeeded with an empty output and the run continues.
* **Continue (Error Output)**: the node outputs `{error, error_type}` and the run continues. If you wire an edge from the node's error handle, failures route down that path instead of the normal one.
**Example:** an HTTP request with **Retry on Fail** (3 tries) and **Continue (Error Output)**, whose error handle feeds a fallback notification while the success path continues unaffected.
## Next steps
* [Execution logs](/editor/execution-logs)
* [Branching](/logic/branching)
# Filter, split, and merge
Source: https://docs.noclick.com/logic/filter-merge
Shape lists with the Filter node, fan them out with Split Out, and combine branches with the Merge node.
## Filter
The Filter node transforms a list or object. Pick an operation; the config shows only the fields that operation needs. The result lands in the output's `filtered` field, with a `count`.
| Operation | What it does | Key fields |
| --------------------- | -------------------------------- | ----------------------------------------------------------------------------------------------- |
| **Filter Array** | Keep items matching a condition | **Field to Filter** (for arrays of objects), **Operator**, **Filter Value**, **Case Sensitive** |
| **Remove Duplicates** | Drop repeated items | **Deduplication Field** (optional, compares whole items if empty) |
| **Limit** | Keep the first N items | **Limit**, **Offset** (skip before limiting) |
| **Sort** | Order items | **Sort Field**, **Sort Order** (ascending/descending) |
| **Filter Object** | Keep or remove keys on an object | **Keys to Keep**, **Keys to Remove** (comma-separated) |
| **Group by Field** | Bucket items by a field value | **Group By Field** |
| **Split String** | Turn a string into a list | **Delimiter**, **Trim Whitespace** |
Filter Array operators include equals, contains, starts/ends with, greater/less than (and or-equal), is empty / not empty, regex match, and in list / not in list (comma-separated values).
**Example:** Filter Array on `{{rss-1.items}}` with **Field to Filter** `title`, **Operator** contains, **Filter Value** `AI`.
## Split Out
The Split Out node turns a list into one item per element, so a downstream loop or node can handle each entry on its own. It outputs the elements in `items`, with a `count`.
| Field | What it does |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Input Data** | The data to split: an array, or an object that holds the array field. Reference it like `{{node-id.items}}`. |
| **Fields To Split Out** | The field holding the array. Use dot notation for nested fields, and comma-separate to split several fields at once (they zip by index). Leave empty when **Input Data** is itself an array. |
| **Include** | Which of the input's other fields to keep on each output item: **No Other Fields**, **All Other Fields**, or **Selected Other Fields**. |
| **Fields To Include** | When **Include** is **Selected Other Fields**, the comma-separated field names to keep. |
| **Destination Field Name** | Rename the split field on each output item (single field only). |
**Example:** Split Out with **Input Data** `{{http-1.response.results}}` and **Fields To Split Out** empty turns a results array into one item per result, ready to feed a [loop](/logic/loops).
## Merge
The Merge node combines data from multiple input branches into one list. It waits for all connected branches, pulls the list out of each input (it looks for common fields like `data`, `items`, `filtered`, `collected_results`), and outputs the result as `merged`.
| Operation | What it does | Key fields |
| ----------------------- | ---------------------------------------------- | --------------------------------------------------------------------------- |
| **Append** | Concatenate all inputs into one list | none |
| **Combine by Position** | Zip inputs together by index | none |
| **Combine by Field** | Join inputs on a shared field, like a SQL join | **Match Field**, **Conflict Resolution** (prefer first, prefer last, merge) |
| **Keep Matches** | Keep only items present in every input | **Match Field** (optional) |
| **Remove Duplicates** | Union of all inputs, deduplicated | **Deduplication Field** (optional) |
**Example:** two API branches fetch users and subscriptions; Combine by Field on `email` joins them into one enriched list.
## Next steps
* [Loops](/logic/loops)
* [Branching](/logic/branching)
# HTTP request
Source: https://docs.noclick.com/logic/http-request
Call any API from a workflow with the HTTP Request node: methods, query params, headers, body, authentication, retries, and cURL import.
The HTTP Request node calls any URL. Pick the method as the node's operation: GET, POST, PUT, PATCH, or DELETE. A **URL** is required.
In a hurry? Click **Import cURL** at the top of the node and paste a `curl` command from any API's docs — the method, URL, query params, headers, and body are filled in for you.
## Configuration
| Field | What it does |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **URL** | The endpoint to call (required). References work here, e.g. `https://api.example.com/users/{{form.user_id}}` |
| **Query Parameters** | Key/value rows added to the URL's query string and URL-encoded for you. Values support references. |
| **Headers** | Key/value rows. Toggle a row off without deleting it. Values support references. |
| **Body** | Choose a **Body** type — None, JSON, Form URL-Encoded, or Raw — available on every method, so GET and DELETE can send a body too. JSON must be valid JSON (it fails loudly if not). Raw lets you set an explicit Content-Type (e.g. `application/xml`). |
### Options
| Option | Default | What it does |
| ---------------------------------------- | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Timeout (seconds)** | 30 | How long to wait before giving up. |
| **Max Retries** | 0 | Retry network errors and `429`/`5xx` responses with exponential backoff, honoring `Retry-After`. Retries can re-submit non-idempotent requests (POST/PATCH). |
| **Follow Redirects** / **Max Redirects** | Yes / 10 | Follow `3xx` redirects. `Authorization` is dropped on cross-origin redirects. |
| **Verify SSL Certificate** | Yes | Disable only for internal endpoints with self-signed certs. |
| **Response Format** | Auto-detect | Force how the body is read: Auto, JSON, Text, or Binary (base64). |
| **Include Full Response** | Status + headers + body | Switch to **Body only** to return just the response body. |
| **Continue on HTTP Error** | No (fail) | See the note below. |
## Authentication
Attach a credential to the node instead of pasting secrets into headers:
| Credential | What it sends |
| ------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| **Bearer Token** | `Authorization: Bearer ` |
| **Basic Auth** | Username and password as an `Authorization: Basic` header |
| **API Key** | The key in a header (any name, default `X-API-Key`) or in the query string — choose **Send In**. |
| **OAuth2 (client credentials)** | Mints a short-lived token from your token URL (client id/secret + scope) and sends it as `Authorization: Bearer`. |
## Output
The response becomes the node's output:
| Field | What it is |
| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `status_code` | HTTP status code |
| `status` | `success` for codes below 400 |
| `response` | Parsed JSON when possible, otherwise text. Binary content (images, PDFs, audio, video) is saved and returned as `{url, mime_type, name, size_bytes}` with `is_file: true` — pass `{{http-1.response.url}}` straight into an upload node (YouTube, Drive, Slack, …) or a media block |
| `response_headers` | Response headers |
| `elapsed_ms` | Request duration |
Downstream nodes reference fields directly, e.g. `{{http-1.response.items}}`. With **Include Full Response → Body only**, a JSON response is returned directly so you reference `{{http-1.field}}`.
By default a `4xx`/`5xx` response (or a network/timeout failure) **fails the node loudly** so the run stops with a clear error. To branch on errors instead, turn on **Continue on HTTP Error** — the node then returns the error response as data (with `status: "error"`), and you can add a [Conditional](/logic/branching) on `status_code`.
For security, requests to private, loopback, or link-local addresses (including the cloud metadata endpoint) are blocked, and responses larger than 25 MB are rejected.
## Next steps
* [Data references](/editor/data-references)
* [Webhook triggers](/triggers/webhooks)
# Loops
Source: https://docs.noclick.com/logic/loops
Run a chain of nodes once per item in a list with the Iteration node.
The Iteration node loops over a list. Everything connected to its **Loop Body** handle runs once per item, including nodes further down the chain, so you only connect the first node of the loop.
## Add a loop in one click
When a config field holds a reference to a list, like `{{sheets-1.values}}` or an indexed reference, a **Loop over each item** button appears under the field. Click it to drop an Iteration node already set to loop over that list and wired as the loop body, so you skip the manual setup.
The [Split Out](/logic/filter-merge) node comes ready to loop too: dropping it onto the canvas also adds a paired Iteration node wired to its output, so the list it produces fans out into per-item steps automatically.
## Configuration
| Field | What it does |
| ----------------------- | ------------------------------------------------------------------------------------------- |
| **Items** | Reference to the list to loop over, e.g. `{{sheets-1.values}}` |
| **First Row is Header** | Turns a 2D array (like spreadsheet rows) into objects keyed by the first row's column names |
| **Field Names** | Comma-separated names to map plain arrays to objects when there is no header row |
| **Concurrency** | How many items to process in parallel, 1 (sequential) to 10 |
## Output handles
| Handle | When it runs |
| -------------- | ------------------------------------ |
| **Loop Body** | Once per item |
| **After Loop** | Once, after every iteration finishes |
## Referencing the current item
Inside the loop body, these variables resolve per iteration without any node ID prefix:
* `{{item}}`: the current item (or `{{item.name}}` for a field)
* `{{index}}`: 0-based position
* `{{row_number}}`: 1-based row number, adjusted when a header row is used
* `{{items}}` and `{{total}}`: the full list and its length
**Example:** Google Sheets read, then Iteration with **First Row is Header** on, then an email node in the loop body using `{{item.email}}` and `{{item.name}}`.
## Collected results
After the loop, the iteration node's output includes `collected_results`, a flat list with one entry per iteration. Nodes on **After Loop** reference it as `{{iteration-id.collected_results}}`.
By default the results come from the last node in the loop body. To pick a different node, connect that node's output back into the iteration node's input.
A failed iteration doesn't stop the loop. Its slot in `collected_results` carries an `_iteration_error` entry instead. Running out of credits does stop it, including loops nested inside another loop, so the remaining items are not attempted.
## Next steps
* [Filter and merge](/logic/filter-merge)
* [Data references](/editor/data-references)
# Variables and state
Source: https://docs.noclick.com/logic/variables-state
Store named values with the Set Variable node and keep persistent state for code with the State Manager node.
Two different nodes, two different jobs: Set Variable names values for easy referencing anywhere in the workflow; State Manager gives a code node a persistent memory that survives across runs.
## Set Variable
The Set Variable node stores one or more name + value pairs. Each value can be a literal or a reference like `{{form.campaign_name}}`. After the node runs, every variable is available anywhere in the workflow as `{{vars.name}}`, with no node ID needed.
| Field | What it does |
| ------------- | ------------------------------------------------------------------ |
| **Variables** | List of assignments, each with a **Variable Name** and a **Value** |
The latest values are also saved with the workflow, so `{{vars.name}}` still resolves in later runs and in partial runs that don't re-execute the Set Variable node.
This node shares the `{{vars.}}` namespace with [workflow variables](/editor/workflow-variables), which are declared in the workflow's settings and give a name its starting value. A value written by a Set Variable node wins for that name. Declare a variable in settings when it is a setting of the workflow, and use this node when the value is worked out during a run.
**Example:** a setup form collects a spreadsheet URL once; a Set Variable node stores it as `sheet_url`, and every Sheets node in the workflow references `{{vars.sheet_url}}` instead of repeating the form reference.
## State Manager
The State Manager node holds a JSON state object scoped to that node within the workflow, persisted in the database across runs.
| Field | What it does |
| --------- | ---------------------------------------------------------------------------------------------------------------- |
| **State** | Default values, e.g. `{"counter": 0, "items": []}`. Persisted state from previous runs overrides these defaults. |
Connect the State Manager to a [Serverless Function node's](/logic/code) state handle. The current state is injected into your code as a `state` parameter; mutate it directly (`state.counter += 1`) and the changes are saved back automatically after the code runs. The next run, even days later, starts from the saved state.
**Example:** a scheduled scraper keeps `state.seen_ids` in a State Manager so each run only processes items it hasn't seen before.
Use Set Variable for values you reference across nodes in a run. Use State Manager when code needs memory that accumulates across runs.
## Next steps
* [Code](/logic/code)
* [Data references](/editor/data-references)
# Available MCP Tools
Source: https://docs.noclick.com/mcp/available-tools
All 47 tools exposed by the NoClick MCP server
When you connect the NoClick MCP server to an AI assistant, it gets 47 tools for building, running, and debugging workflows. Your assistant discovers how to use each tool automatically. Just describe what you want to build.
## Workflows
| Tool | Description |
| -------------------------- | --------------------------------------------------------------------------------------------- |
| `list_workflows` | List your workflows with id, name, description, and timestamps |
| `create_workflow` | Create a new empty workflow |
| `get_workflow` | Get full workflow details including all nodes, edges, and configs |
| `update_workflow_metadata` | Update a workflow's name and/or description |
| `delete_workflow` | Permanently delete a workflow (irreversible) |
| `save_template_draft` | Save a template title and description to iterate on before publishing to the template library |
| `get_current_workflow` | Get the workflow currently open in your browser |
| `open_workflow` | Open a workflow in your browser |
## Checkpoints
| Tool | Description |
| -------------------- | --------------------------------------------------------------------------------- |
| `create_checkpoint` | Snapshot the current workflow as a named checkpoint before a risky batch of edits |
| `list_checkpoints` | List a workflow's saved checkpoints, newest first |
| `restore_checkpoint` | Restore a workflow to a saved checkpoint (irreversible) |
## Nodes
| Tool | Description |
| -------------------------- | ------------------------------------------------------------------------------- |
| `get_available_node_types` | List all available node types, with optional search filtering |
| `search_operations` | Search operations across node types by intent, such as "post to Slack" |
| `get_node_operations` | Enumerate all operations of a known node type |
| `get_node_configs` | Get config schemas for node type and operation pairs |
| `update_workflow` | Add, configure, and connect nodes in one batch of XML mutations |
| `validate_workflow` | Check a workflow for build errors without running it |
| `autofill_node` | Auto-fill a node's operation and config using the internal builder engine |
| `get_node` | Get a single node's configuration and output without loading the whole workflow |
| `get_selected_node` | Get the node currently selected in your browser |
| `load_value` | Fetch a node's live computed field values that are not stored in its config |
## Execution
| Tool | Description |
| ------------------------- | --------------------------------------------------------------------------------- |
| `run_workflow` | Execute a workflow, returns an execution id |
| `run_nodes` | Run specific nodes for testing, with upstream nodes mocked from their last output |
| `get_execution_status` | Check the status of a workflow execution |
| `list_executions` | List recent runs of a workflow with status, trigger source, and timing |
| `get_node_output` | Get node outputs, the latest by default or a specific past run by execution id |
| `get_node_output_history` | Get the last outputs of a single node across executions |
| `get_node_statuses` | Get the latest status and error per node, the same chips shown on the canvas |
| `list_tool_calls` | List the agent tool calls made during a workflow execution |
## Credentials
| Tool | Description |
| -------------------------- | ------------------------------------------------------------------------------- |
| `search_credentials` | Search your saved credentials for configuring nodes that need authentication |
| `connect_credential` | Mint a link the user opens to connect a credential (OAuth or API key) |
| `list_credential_requests` | Poll the status of connect\_credential requests you've minted |
| `load_options` | Load dynamic dropdown options for a node field (spreadsheets, sheets, channels) |
## Workspace
| Tool | Description |
| ---------------------- | ---------------------------------------------------------------------- |
| `get_workflow_folders` | Get the folder tree for organizing workflows |
| `update_folders` | Batch folder mutations (create, rename, move, delete) via XML commands |
| `list_workspaces` | List your personal and organization workspaces and which is active |
| `switch_workspace` | Switch between personal and organization workspaces |
## Interface
| Tool | Description |
| -------------------- | ---------------------------------------------------------------------------------------------------- |
| `update_interface` | Position and arrange interface blocks on the 12-column grid layout |
| `eval_interface` | Evaluate a JavaScript expression inside an interface node's iframe to click, type, or read DOM state |
| `validate_interface` | Validate an interface node's JSX/React component headlessly |
## Skills
| Tool | Description |
| ------------- | --------------------------------------------------------------------------------- |
| `list_skills` | List the reusable building blocks (reference workflows and guidance) you can load |
| `load_skill` | Load a skill's full guidance and reference workflow |
## Debugging
| Tool | Description |
| ------------------ | -------------------------------------------------------------------------------- |
| `get_console_logs` | Get recent console output from interface node iframes |
| `get_sdk_logs` | Get recent SDK call logs from interface iframes (calls, results, errors, timing) |
| `get_health` | Self-test the MCP server's database and execution connectivity |
## Feedback
| Tool | Description |
| ----------------- | ------------------------------------------------------------- |
| `report_bug` | Report a bug encountered while building or running a workflow |
| `request_feature` | Request a missing capability or improvement |
`get_current_workflow`, `get_selected_node`, and `open_workflow` interact with your live browser session, so they need a NoClick tab open.
## Example usage
Here is how a typical build looks with the NoClick MCP server connected:
```text Build a workflow theme={null}
"Create a workflow that checks Hacker News RSS every hour,
filters for AI-related posts, and sends a Slack summary"
```
```text Configure nodes theme={null}
"Add a Perplexity node to search for today's news about
startups and connect it to the Gmail node"
```
```text Test and run theme={null}
"Run just the RSS node to see what data it returns,
then run the full workflow"
```
Your assistant handles the details: discovering node types, configuring operations, wiring credentials, and connecting nodes.
## Next steps
Connect these tools to Claude, ChatGPT, Cursor, and other clients.
Give these same tools to agents inside your workflows.
# Create Your Own MCP Server
Source: https://docs.noclick.com/mcp/hosted-servers
Turn a workflow into a hosted MCP server that Claude, ChatGPT, and Cursor can call
The MCP Server node can host its own MCP server. Wire integration nodes into it, pick the operations to expose, and NoClick mints a public URL that any MCP client can connect to. Calls run with the credentials connected in your workflow, so your assistant gets working Slack, Linear, or GitHub tools with zero setup on the client side.
## Build a hosted server
Add an **MCP Server** node to the canvas and leave its **Server URL** field empty. An empty URL puts the node in hosting mode.
Drag from an integration node's top handle into the MCP Server node's bottom handle. You can wire in multiple nodes, each with its own credential.
Click a wired node. Its config panel switches to an operation allowlist; pick the actions the server should expose. Each becomes a tool named `{provider}__{operation}` (for example `linear__create_issue`), plus an automatic `{provider}__lookup_options` tool for resolving IDs.
Select the MCP Server node and click **Connect externally** at the top of its config panel. The dialog mints your server URL and shows setup guides for each client:
```
https://mcp.noclick.app/s/{id}
```
Paste the URL into any MCP client that speaks Streamable HTTP. No authentication step is needed; the URL is the key.
## Client setup
**Claude** (claude.ai, the desktop app, and mobile): open **Customize > Connectors**, click **+**, choose **Add custom connector**, paste the server URL, and click **Add**. Then turn it on in a chat from **+ > Connectors**. On Team and Enterprise, an Owner adds it under **Organization settings > Connectors** first.
**ChatGPT**: turn on **Developer mode** under **Settings > Apps & Connectors > Advanced settings**, then click **Create**, paste the URL as the MCP Server URL, and set Authentication to **No Authentication**.
**Cursor**: add the server to `.cursor/mcp.json` in your project (or `~/.cursor/mcp.json` for all projects):
```json theme={null}
{
"mcpServers": {
"noclick-my-server": {
"url": "https://mcp.noclick.app/s/{id}"
}
}
}
```
The **Connect externally** dialog also has guides for Claude Code, Codex, VS Code, Windsurf, Zed, and a generic config for other clients.
## Check that it connected
The [Setup](/editor/setup) tab ends on a connect step for a workflow that hosts a server. It gives numbered instructions for one client at a time, with the command to run, and a status panel underneath that watches the server.
The panel answers two questions separately, so you can tell a link that is not serving from a client that has not started:
* **Link ready** with a tool count and a few tool names is the server side. NoClick reads it from your workflow graph, with no client involved. If it says no tools are wired yet, the allowlist is what to fix.
* **Waiting for your agent to connect** is the client side. It flips to **Connected** with the client's name, how many tools it was served, and which ones it can call. That is a real handshake reaching your server, so it tells you the link works rather than that the config looks right.
Under the waiting line is what makes that particular client connect. Most clients only write the config when you run their add command and open the connection when a session starts, so the usual fix is to start or restart the client. After 45 seconds the panel offers that client's own check command, for example `claude mcp list` or `opencode mcp list`. Those commands list the configured servers and connect at the same time, so running one turns the status green.
If NoClick cannot read handshakes at that moment, the panel says it cannot check rather than reporting that nothing has connected. Your link keeps serving either way.
The same status sits on the node itself. Once a client has been served, the **Connect externally** header on the MCP Server node reads **Connected** with the client's name and the tool count, so anyone who opens the workflow later sees it without running the Setup finale again.
Click **Using a different agent?** to see the instructions for the other clients.
## Tools resolve live
The tool list is read from your workflow graph on every request. Adding a node, changing an allowlist, or swapping a credential applies on the client's next tool listing, with no publish step. Draft workflows serve too.
## When a call fails
If an operation fails, the client is told it failed and gets the message the service returned, with the HTTP status when there is one. So a client that asks for a table that does not exist reads the "not found" back rather than treating an error as a working answer and guessing again.
## Ask the builder for the link
The AI builder knows the server's URL. Ask it for the address of your MCP server and it gives you the live link, minting one if the node does not have a link yet. Your agents can read the same URL when you ask them about the workflow.
## Security model
The link is the capability. Anyone who has the URL can call the exposed tools as you, with the credentials connected in the workflow. Share it like a secret.
* To revoke access, click **Rotate** next to the URL in the **Connect externally** dialog. The old link stops working immediately; update every client that used it.
* Every call is audited, so you can review what was invoked and whether it succeeded.
* Only the operations you allowlist are exposed. Keep the list minimal.
## External mode
The same node has a second, mutually exclusive mode: set **Server URL** to an external MCP server endpoint and the node proxies that server's tools to AI agents in your workflow instead. External mode supports Streamable HTTP and SSE transports, API key or OAuth authentication, a tool name prefix, and a tool filter.
One node cannot do both. If it has a Server URL and wired tool nodes at the same time, it returns an error instead of picking a side. Use two MCP Server nodes if you need both.
## Next steps
Wire the same integrations directly into an AI agent instead.
Give your agents tools from external MCP servers.
# NoClick Node
Source: https://docs.noclick.com/mcp/noclick-node
Give your AI agents NoClick MCP tools so they can build, edit, and run workflows themselves
The **NoClick** node gives an AI agent in your workflow NoClick's own MCP tools, the same tools external clients get through [the MCP server](/mcp/available-tools). There is nothing to configure on the auth side: you are already signed in, so the node issues a short-lived access token for your account on every run.
## Add it to an agent
Add a **NoClick** node and wire it into the AI agent's bottom handle, the same way you wire any tool provider. It works with every agent type, including the in-process LLM agent and the CLI agents (Claude Code, Codex, OpenCode).
The agent sees the tools with a `noclick_` prefix: `noclick_create_workflow`, `noclick_update_workflow`, `noclick_run_workflow`, and so on.
## Scope
The **Scope** field controls which workflows the agent can touch:
| Option | What the agent gets |
| ---------------------- | ------------------------------------------------------------------ |
| **All workflows** | The full tool set across your whole workspace |
| **This workflow only** | Tools scoped to the workflow the agent runs in |
| **Specific workflows** | Tools scoped to a list you pick in the **Allowed Workflows** field |
When scoped, workspace-level tools (creating, listing, and deleting workflows, folder and workspace management) are hidden, and `workflow_id` parameters are filled in automatically so the agent cannot wander outside its scope. Browser-session tools like `open_workflow` are never included.
## What an agent can do with it
* Create new workflows and wire up nodes with `noclick_update_workflow`
* Inspect and reconfigure nodes in existing workflows
* Run workflows or individual nodes and read their outputs
* Search your credentials to connect nodes that need authentication
## Example: an agent that builds workflows on demand
Wire a Telegram trigger into an AI agent and a NoClick node into the agent's bottom handle, with scope **All workflows**. Message it "build me a workflow that emails me a summary of my GitHub notifications every morning" and the agent creates the workflow, adds and configures the nodes, runs a test, and replies with the result. You get a workflow factory you can drive from chat.
The agent acts as you. With **All workflows** scope it can modify and delete any workflow in your workspace, so scope it down when the agent only needs to manage itself.
## Next steps
The full list of tools the agent can call.
All the ways to give agents tools.
# Setting Up NoClick MCP
Source: https://docs.noclick.com/mcp/setup
Connect NoClick to Claude, Claude Code, ChatGPT, Cursor, Windsurf, OpenAI Codex, or any MCP-compatible AI assistant
# Setting Up NoClick MCP
NoClick provides an MCP (Model Context Protocol) server that lets you interact with your workflows directly from AI coding assistants. Create, configure, and run workflows without leaving your editor.
## What is MCP?
MCP (Model Context Protocol) is an open standard that allows AI assistants to securely connect to external tools and data sources. With NoClick MCP, your AI assistant can:
* Create, edit, and delete workflows in real time
* Add and configure nodes with full progressive disclosure
* Execute workflows and inspect results
* Manage credentials and dynamic field options
NoClick uses **OAuth 2.1 with PKCE** for authentication. Your browser opens once to authorize, and the token is saved automatically.
***
## Claude Code
The recommended way to connect. Add NoClick to your project's `.mcp.json` file in the project root:
```json theme={null}
{
"mcpServers": {
"noclick": {
"type": "http",
"url": "https://api.noclick.io/mcp"
}
}
}
```
Or use the CLI:
```bash theme={null}
claude mcp add --transport http noclick https://api.noclick.io/mcp
```
Project-scoped config (`.mcp.json`) is recommended so your team can share the same setup via version control. You can also add it globally to `~/.claude.json` if you prefer.
### Authenticate
On first use, Claude Code will open your browser to authorize with your NoClick account. The token is saved automatically for future sessions.
Keep the Claude Code session running while you approve in the browser — it hosts a temporary local server that receives the authorization. Closing the terminal (or approving from an old tab) breaks the hand-off with a "localhost refused to connect" error; just re-run `/mcp` → **Authenticate** and approve promptly.
### Verify
Ask Claude Code to list your workflows:
```
> List my NoClick workflows
```
***
## Cursor
Add to `.cursor/mcp.json` in your project root (or globally at `~/.cursor/mcp.json`):
```json theme={null}
{
"mcpServers": {
"noclick": {
"url": "https://api.noclick.io/mcp"
}
}
}
```
Restart Cursor after saving. On first tool use, a browser window will open for OAuth authentication.
***
## Windsurf
Add to your Windsurf MCP config:
* **macOS/Linux**: `~/.codeium/windsurf/mcp_config.json`
* **Windows**: `%USERPROFILE%\.codeium\windsurf\mcp_config.json`
```json theme={null}
{
"mcpServers": {
"noclick": {
"serverUrl": "https://api.noclick.io/mcp"
}
}
}
```
Windsurf uses `serverUrl` (not `url`) for remote servers, which differs from other clients.
Restart Windsurf after saving.
***
## OpenAI Codex CLI
Add to `~/.codex/config.toml` (or `.codex/config.toml` in your project):
```toml theme={null}
[mcp_servers.noclick]
url = "https://api.noclick.io/mcp"
```
Or use the CLI:
```bash theme={null}
codex mcp add noclick --url https://api.noclick.io/mcp
```
***
## Claude (Web)
In Claude, go to **Settings > Connectors**, choose **Add custom connector**, and paste the URL:
```
https://api.noclick.io/mcp
```
This works on claude.ai and the Claude desktop app on all plans. Claude will open a browser window for OAuth authentication on first use.
***
## ChatGPT
Custom MCP connectors in ChatGPT require developer mode (Plus, Pro, Business, Enterprise, and Edu plans; on team plans an admin must allow it first).
1. Go to **Settings > Apps & Connectors** and toggle **Developer mode** on under **Advanced settings**.
2. Back in **Apps & Connectors**, click **Create**.
3. Enter a name and paste the URL as the MCP Server URL:
```
https://api.noclick.io/mcp
```
4. In a chat, enable the connector from the **+** / tools menu.
ChatGPT will prompt you to authorize with your NoClick account.
***
## Claude Desktop
The easiest path on Claude Desktop is the custom connector flow described under [Claude (Web)](#claude-web) above; it works in the desktop app too. If you prefer a config-file setup, Claude Desktop's config uses stdio-based servers, so connect to NoClick's remote server through the `mcp-remote` wrapper:
* **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
* **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
```json theme={null}
{
"mcpServers": {
"noclick": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://api.noclick.io/mcp"]
}
}
}
```
Fully quit and restart Claude Desktop after editing the config.
***
## Troubleshooting
* Make sure you have a NoClick account at [noclick.com](https://noclick.com)
* Check that pop-ups aren't blocked in your browser
* Try clearing your browser cookies for noclick.com and re-authenticating
Your browser is being handed back to the CLI's temporary local login server, and nothing is listening anymore. This happens when the terminal session that started the authentication was closed or timed out, or when you approved from a tab opened by an earlier attempt.
* Keep the CLI session open for the whole flow — don't close or interrupt it
* Re-run the authentication (in Claude Code: `/mcp` → select the server → **Authenticate**) and approve promptly in the tab it opens
* Don't reuse a link from a previous attempt — each attempt uses a fresh localhost port
* Running the CLI over SSH or in a container? `localhost` refers to that machine, not your browser's — forward the callback port (`ssh -L :localhost: …`) or open the callback URL from that machine
* Verify your internet connection
* Check if `https://api.noclick.io` is accessible from your network
* If using a corporate network, you may need to configure proxy settings
* Restart your AI assistant after adding the MCP configuration
* Verify the JSON/TOML syntax in your config file is valid
* In Claude Code, run `claude mcp list` to verify the server is registered
* In Cursor, check **Settings > Features > MCP Servers** for connection status
* Make sure you're using `serverUrl` (not `url`) in the config
* Windsurf has a limit of 100 total tools across all MCP servers
## Next Steps
* [See all available MCP tools](/mcp/available-tools)
* Want the reverse, serving YOUR workflow's tools to MCP clients? [Create your own MCP server](/mcp/hosted-servers)
* [Build your first workflow](/getting-started/quickstart)
# API keys
Source: https://docs.noclick.com/sdk/api-keys
Create, scope, and revoke API keys for the NoClick SDK and programmatic access.
API keys authenticate external apps that connect to NoClick through the [TypeScript](/sdk/typescript) or [Python](/sdk/python) SDK. A key acts on behalf of your account, limited by its permissions and workflow scope.
## Create a key
In the NoClick dashboard, go to **Settings** and open the **Developer** section.
Enter a **Key Name** that identifies where you'll use it, for example "My Dashboard App".
Leave the **Scope** dropdown on **All workflows**, or select a single workflow to restrict the key to it.
Click **Create**. The new key appears once in a banner. Copy it now; only a hash is stored, so it cannot be shown again.
## Key format
| Part | Example | Description |
| ------ | ----------------- | --------------------------- |
| Prefix | `nk_live_` | Identifies NoClick API keys |
| Secret | `a1b2c3d4e5f6...` | 64 hex characters |
The key list in Developer settings shows only the first 12 characters of each key for identification.
## Permissions
Every SDK call is checked against the key's permissions:
| Permission | Allows |
| ---------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `read` | List workflows, read node outputs and configs, read workflow state, list credentials, download resources, read dataset rows, list runs |
| `execute` | Run and stop workflows |
| `write` | Create, update, and delete workflows; set node configs; write workflow state; manage credentials; upload resources; modify datasets |
Keys created in Developer settings get all three permissions. To mint a key with fewer permissions, call the REST endpoint below with a narrower `permissions` list.
## Workflow scoping
A key scoped to one workflow rejects any request that targets a different workflow. Use scoped keys when an external app only needs one workflow, so a leaked key cannot touch the rest of your account.
Publishing an app mints its own workflow-scoped key automatically. These keys are managed by NoClick, hidden from your key list, and revoked when you unpublish.
## Use a key
```typescript theme={null}
import { init } from 'noclick';
await init({ apiKey: 'nk_live_...' });
```
```python theme={null}
import noclick
sdk = noclick.Client(api_key="nk_live_...")
await sdk.connect()
```
See [External apps](/sdk/external-apps) for the full connection guide.
## Manage keys over REST
Developer settings is backed by a small REST surface at `https://api.noclick.io` that you can call directly. These endpoints authenticate with your NoClick browser session cookie, not with an API key.
| Method | Path | Purpose |
| -------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `POST` | `/api/keys` | Create a key. Body: `name`, optional `workflow_id`, optional `permissions` (defaults to `["read", "execute", "write"]`). Returns `raw_key` once. |
| `GET` | `/api/keys` | List your keys with name, prefix, scope, permissions, created and last-used timestamps, and revocation status. |
| `DELETE` | `/api/keys/{key_id}` | Revoke a key. |
## Revoke a key
Click the trash icon next to a key in Developer settings. Revocation takes effect immediately; the next request with that key is rejected. Revoked keys stay visible under **Show revoked keys** for reference.
## Security
* Keys are hashed (SHA-256) at rest. The raw key is shown once at creation and never stored.
* Treat keys like passwords: keep them in environment variables, never in source control or client-side code.
* Scope keys to a single workflow whenever possible.
* Check the "Last used" date in the key list and revoke keys you no longer need.
## Next steps
Connect a TypeScript or Python app to NoClick over WebSocket.
Every SDK namespace and method.
# API Reference
Source: https://docs.noclick.com/sdk/api-reference
Complete reference for the @noclick/sdk API
# API Reference
All methods are available in both TypeScript and Python SDKs. TypeScript uses camelCase, Python uses snake\_case.
***
## Nodes
Read and write node data in the workflow.
### `nodes.getOutput(nodeId)`
Read a node's last execution output. Returns whatever exists, which may be from a cron run, manual execution, or webhook trigger.
```typescript TypeScript theme={null}
const output = await nodes.getOutput('node-id');
// Returns the node's output object, or null if never executed
```
```python Python theme={null}
output = await sdk.nodes.get_output("node-id")
```
### `nodes.getConfig(nodeId)`
Read a node's configuration fields.
```typescript TypeScript theme={null}
const config = await nodes.getConfig('node-id');
// { action: 'read', max_results: 20, ... }
```
```python Python theme={null}
config = await sdk.nodes.get_config("node-id")
```
### `nodes.setConfig(nodeId, config)`
Set configuration fields on a node (merges with existing config).
```typescript TypeScript theme={null}
await nodes.setConfig('http-node', { url: 'https://api.example.com' });
```
```python Python theme={null}
# Not yet supported in Python SDK (use nodes directly in workflow)
```
### `nodes.list()`
List all nodes in the workflow.
```typescript TypeScript theme={null}
const allNodes = await nodes.list();
// [{ id, type, label, hasOutput }, ...]
```
```python Python theme={null}
nodes = await sdk.nodes.list()
# [{"id": "...", "type": "...", "label": "...", "hasOutput": False}, ...]
```
***
## Execution
Run nodes and track results.
### `execution.runNodesAndGetOutput(runNodes, targetNodes)`
Run nodes and stream output as each target node completes.
**Parameters:**
* `runNodes`: nodes to execute. String IDs or `{ id, config }` objects with temporary config overrides.
* `targetNodes`: node IDs whose output to collect.
```typescript TypeScript theme={null}
const stream = execution.runNodesAndGetOutput(
['data-fetcher'], // run these
['chart-data', 'summary'] // collect output from these
);
stream.on('output', (nodeId, data) => { /* fires per target */ });
stream.on('error', (nodeId, error) => { /* target errored */ });
stream.on('done', () => { /* all targets completed */ });
// Or await all at once
const results = await stream.all();
// { 'chart-data': {...}, 'summary': {...} }
```
```python Python theme={null}
results = await sdk.execution.run_nodes_and_get_output(
["data-fetcher"],
["chart-data", "summary"],
timeout=30,
)
# {"chart-data": {...}, "summary": {...}}
```
With config overrides (temporary, doesn't save):
```typescript theme={null}
execution.runNodesAndGetOutput(
[{ id: 'http-node', config: { url: userInput } }],
['http-node']
);
```
### `execution.runNodesInBackground(runNodes)`
Fire-and-forget execution. Returns immediately.
```typescript TypeScript theme={null}
execution.runNodesInBackground(['data-fetcher']);
// With config overrides
execution.runNodesInBackground([
{ id: 'llm-node', config: { prompt: 'Summarize Q4 report' } }
]);
```
```python Python theme={null}
await sdk.execution.run_nodes_in_background(["data-fetcher"])
```
### `execution.stop()`
Stop the current workflow execution.
### `execution.onNodeState(nodeId, handler)`
Subscribe to a node's execution state changes. Works for any trigger (manual, cron, webhook).
```typescript theme={null}
const unsub = execution.onNodeState('node-id', (state) => {
// 'idle' | 'running' | 'completed' | 'error'
});
unsub(); // unsubscribe
```
### `execution.onNodeOutput(nodeId, handler)`
Subscribe to a node's output in real-time. Fires whenever the node produces output, from any source.
```typescript theme={null}
const unsub = execution.onNodeOutput('data-node', (output) => {
console.log('New data:', output);
});
```
***
## State
Persistent key-value storage via state-manager nodes. Requires a **State Manager** node in the workflow.
### `state.get(key)`
```typescript TypeScript theme={null}
const val = await state.get('counter');
// Returns the value, or undefined if not set
```
```python Python theme={null}
val = await sdk.state.get("counter")
```
### `state.set(key, value)`
```typescript TypeScript theme={null}
await state.set('counter', 42);
await state.set('user', { name: 'Alice', score: 95 });
```
```python Python theme={null}
await sdk.state.set("counter", 42)
```
### `state.del(key)`
Remove a key entirely.
```typescript TypeScript theme={null}
await state.del('counter');
```
```python Python theme={null}
await sdk.state.delete("counter")
```
### `state.update(key, updater)`
Read-modify-write with an updater function. The function runs locally (not on the server).
```typescript theme={null}
await state.update('counter', n => (n || 0) + 1);
await state.update('items', list => [...(list || []), newItem]);
await state.update('profile', p => ({ ...p, lastSeen: Date.now() }));
```
### `state.keys()`
List all available state keys.
```typescript TypeScript theme={null}
const keys = await state.keys(); // ['counter', 'items', ...]
```
```python Python theme={null}
keys = await sdk.state.keys()
```
### `state.onChange(key, handler)`
Subscribe to state changes. Fires on `set` and `del` from any source.
```typescript theme={null}
state.onChange('counter', (newVal) => {
console.log('Counter changed:', newVal);
});
```
***
## Auth
Credential management and OAuth flows.
### `auth.listCredentials()`
List all available credentials for the user.
```typescript TypeScript theme={null}
const creds = await auth.listCredentials();
// [{ id, type, name }, ...]
```
```python Python theme={null}
creds = await sdk.auth.list_credentials()
```
### `auth.hasCredential(credentialType)`
Check if a credential of the given type exists.
```typescript TypeScript theme={null}
const has = await auth.hasCredential('google_gmail_oauth'); // true/false
```
```python Python theme={null}
has = await sdk.auth.has_credential("google_gmail_oauth")
```
### `auth.requestCredential(credentialType)`
Only available in custom components (iframe context). Opens the NoClick OAuth popup.
Trigger an OAuth flow. Scopes are automatically resolved from node schemas.
```typescript theme={null}
const cred = await auth.requestCredential('google_gmail_oauth');
// { id, type, name } or null if user cancelled
```
### `auth.createCredential(credentialType, data, name?)`
Create a non-OAuth credential (API key, token, etc). The component provides its own input UI.
```typescript TypeScript theme={null}
const cred = await auth.createCredential('telegram_bot_token', {
token: apiKey
}, 'My Bot');
```
```python Python theme={null}
cred = await sdk.auth.create_credential("telegram_bot_token", {"token": key}, "My Bot")
```
***
## Resources
File and blob storage via R2. Scoped to the workflow.
### `resources.upload(name, mimeType, sizeBytes)`
Create a resource and get a presigned upload URL. PUT the file body to the URL.
```typescript TypeScript theme={null}
const { resourceId, uploadUrl } = await resources.upload('photo.jpg', 'image/jpeg', file.size);
await fetch(uploadUrl, { method: 'PUT', body: file });
```
```python Python theme={null}
result = await sdk.resources.upload("photo.jpg", "image/jpeg", file_size)
# PUT file to result["upload_url"]
```
### `resources.getUrl(resourceId)`
Get a fresh presigned download URL. Persist the resource ID, not this URL; a
self-hosted download URL expires after 15 minutes by default and should be
renewed immediately before use.
```typescript TypeScript theme={null}
const url = await resources.getUrl(resourceId);
```
```python Python theme={null}
url = await sdk.resources.get_url(resource_id)
```
### `resources.list(resourceType?)`
List resources in the workflow. Optionally filter by type (`'file'`, `'image'`, `'dataset'`, etc).
### `resources.remove(resourceId)`
Delete a resource and its stored data.
***
## Dataset
Tabular data with CRUD operations. Backed by PostgreSQL, scalable for large datasets. Rows are schemaless JSONB.
### `dataset.create(name)`
Create a new dataset. Returns the resource ID.
```typescript TypeScript theme={null}
const resourceId = await dataset.create('User Submissions');
```
```python Python theme={null}
resource_id = await sdk.dataset.create("User Submissions")
```
### `dataset.list()`
List all datasets in the workflow.
```typescript TypeScript theme={null}
const datasets = await dataset.list();
// [{ id, name, rowCount }, ...]
```
```python Python theme={null}
datasets = await sdk.dataset.list()
```
### `dataset.appendRows(resourceId, rows)`
Append rows to a dataset. Each row is an arbitrary JSON object.
```typescript TypeScript theme={null}
await dataset.appendRows(resourceId, [
{ name: 'Alice', score: 95 },
{ name: 'Bob', score: 87 },
]);
```
```python Python theme={null}
count = await sdk.dataset.append_rows(resource_id, [
{"name": "Alice", "score": 95},
{"name": "Bob", "score": 87},
])
```
### `dataset.getRows(resourceId, options?)`
Get paginated rows from a dataset.
```typescript TypeScript theme={null}
const page = await dataset.getRows(resourceId, { limit: 100, offset: 0 });
// { rows: [{ id, data, created_at, updated_at }], totalCount: 1000 }
```
```python Python theme={null}
page = await sdk.dataset.get_rows(resource_id, limit=100, offset=0)
# {"rows": [...], "total_count": 1000}
```
### `dataset.updateRow(resourceId, rowId, data)`
Update a single row's data.
### `dataset.deleteRows(resourceId, rowIds)`
Delete rows by their UUIDs.
***
## Workflow
### `workflow.getInfo()`
Get information about the current workflow.
```typescript TypeScript theme={null}
const info = await workflow.getInfo();
// { id, name, nodeCount }
```
```python Python theme={null}
info = await sdk.workflow.get_info()
```
### `workflow.nodeId` (TypeScript only)
The current component's node ID. Set automatically in iframe context.
```typescript theme={null}
import { workflow } from '@noclick/sdk';
console.log(workflow.nodeId);
```
# Custom Components
Source: https://docs.noclick.com/sdk/custom-components
Build interactive React/JSX components that render inside NoClick workflows
# Custom Components
Custom components are React applications that render inside the NoClick interface tab. They run in sandboxed iframes with access to the full `@noclick/sdk` API, Tailwind CSS, and any npm package.
## Creating a Component
### From the Canvas
1. Open the **Interface** tab in the workflow editor
2. Drag **Custom Component** from the UX panel onto the grid
3. Click the node on the canvas to open its config
4. Write JSX in the code editor
### From MCP (Claude Code, Cursor)
```xml theme={null}
import React from 'react';
import ReactDOM from 'react-dom/client';
function App() {
return
Hello from NoClick!
;
}
ReactDOM.createRoot(document.getElementById('root')).render();
```
## How It Works
1. You write JSX/TSX in the node's `jsx_source` config field
2. When the node executes, the backend transpiles it via [Sucrase](https://github.com/alangpierce/sucrase) (runs in QuickJS, \~15ms)
3. An import map is generated with React 19 from [esm.sh](https://esm.sh), Tailwind CSS CDN, and any npm packages you import
4. The `@noclick/sdk` is injected as a base64 data URI in the import map
5. Everything is assembled into an HTML document (`srcdoc`) and rendered in an iframe
## Using npm Packages
Just import them. The transpiler auto-detects imports and maps them to esm.sh:
```jsx theme={null}
import { BarChart, Bar, XAxis, YAxis } from 'recharts';
import { format } from 'date-fns';
import { motion } from 'framer-motion';
```
Packages are bundled with `&bundle` to avoid transitive dependency issues.
## Fullscreen Mode
Set `fullscreen="true"` in the node config to render the component as a full-viewport tab instead of a grid block:
```xml theme={null}
```
When multiple fullscreen components exist, tabs appear below the main tab bar. Tabs are:
* **Draggable**: reorder by dragging
* **Renamable**: click the active tab label to edit
* **Persistent**: tab order survives page reloads
## Styling
Tailwind CSS is included automatically. Use standard Tailwind classes:
```jsx theme={null}
Dashboard
```
## Using the SDK
Import any SDK namespace directly:
```jsx theme={null}
import { nodes, execution, state, auth, resources, dataset } from '@noclick/sdk';
```
### Read Node Output
```jsx theme={null}
const output = await nodes.getOutput('data-fetcher-node-id');
```
### Run a Node and Get Results
```jsx theme={null}
// Fire and forget
execution.runNodesInBackground(['node-id']);
// Run with temporary config overrides
execution.runNodesInBackground([
{ id: 'http-node', config: { url: userInput } }
]);
// Stream results as nodes complete
const stream = execution.runNodesAndGetOutput(['fetcher'], ['chart-data', 'summary']);
stream.on('output', (nodeId, data) => {
if (nodeId === 'chart-data') setChartData(data);
});
await stream.all();
```
### Persistent State
Requires a **State Manager** node in the workflow:
```jsx theme={null}
await state.set('counter', 42);
const val = await state.get('counter');
await state.update('items', list => [...(list || []), newItem]);
await state.del('counter');
// Subscribe to changes
state.onChange('counter', newVal => setCounter(newVal));
```
### OAuth and Credentials
```jsx theme={null}
// Check if Gmail is connected
const hasGmail = await auth.hasCredential('google_gmail_oauth');
// Trigger OAuth popup (scopes auto-resolved from node schemas)
if (!hasGmail) {
const cred = await auth.requestCredential('google_gmail_oauth');
}
// Create API key credential
const cred = await auth.createCredential('telegram_bot_token', { token: key });
```
### File Upload
```jsx theme={null}
const { resourceId, uploadUrl } = await resources.upload('photo.jpg', 'image/jpeg', file.size);
await fetch(uploadUrl, { method: 'PUT', body: file });
const downloadUrl = await resources.getUrl(resourceId);
```
### Dataset CRUD
```jsx theme={null}
const dsId = await dataset.create('User Submissions');
await dataset.appendRows(dsId, [{ name: 'Alice', score: 95 }]);
const page = await dataset.getRows(dsId, { limit: 100 });
await dataset.deleteRows(dsId, [rowId]);
```
## Caching
Compiled `srcdoc` is cached in IndexedDB (one slot per node). Components render instantly on tab switch and page reload without re-transpilation. The cache auto-invalidates when `jsx_source` changes. Copied/duplicated nodes share cache via source hash matching.
## Troubleshooting
| Issue | Solution |
| --------------------------- | ------------------------------------------------------------------------------------------ |
| Gray iframe on first load | esm.sh cold start (\~3-5s). Packages are cached after first load. |
| `<` in stored JSX | Use `field="jsx_source"` body syntax in MCP XML. Entity escaping is handled automatically. |
| `{{ }}` in JSX stripped | Fixed: unresolvable `{{ }}` patterns (like JSX inline styles) are preserved as-is. |
| Drag/resize stuck on canvas | Fixed: `pointer-events: none` on iframes during drag/resize via CSS. |
| SDK method hangs | All requests timeout after 30s with a descriptive error. |
# External Apps
Source: https://docs.noclick.com/sdk/external-apps
Connect TypeScript and Python applications to NoClick workflows via WebSocket
# External Apps
Build standalone applications that interact with NoClick workflows using the TypeScript or Python SDK. Authenticate with API keys and connect via WebSocket (Socket.IO).
Both SDKs intentionally default to the managed `https://api.noclick.io`
endpoint when `url` is omitted. For a self-hosted instance, pass its public
backend URL explicitly (`url` in TypeScript or `url=` in Python).
## Authentication
External apps authenticate with API keys. Keys are scoped to a user and optionally to a specific workflow.
### Creating an API Key
Create keys in the dashboard under **Settings** → **Developer**: name the key, optionally scope it to one workflow, and click **Create**. The key looks like `nk_live_a1b2c3d4...` and is shown once, so copy it immediately. See [API keys](/sdk/api-keys) for permissions, scoping, revocation, and the REST management endpoints.
### Key Format
| Part | Example | Description |
| ------ | ----------------- | ---------------------------- |
| Prefix | `nk_live_` | Identifies NoClick API keys |
| Secret | `a1b2c3d4e5f6...` | 64 hex characters (32 bytes) |
### Permissions
| Permission | Allows |
| ---------- | --------------------------------------------------------------------------------- |
| `read` | `nodes.getOutput`, `nodes.list`, `state.get`, `dataset.getRows`, `resources.list` |
| `execute` | `execution.runNodesAndGetOutput`, `execution.runNodesInBackground` |
| `write` | `nodes.setConfig`, `state.set`, `dataset.appendRows`, `resources.upload` |
***
## TypeScript SDK
### Installation
```bash theme={null}
npm install noclick socket.io-client
```
### Connection
```typescript theme={null}
import { init, nodes, execution, state } from 'noclick';
await init({
apiKey: 'nk_live_...',
workflowId: '...', // optional — scope operations to a workflow
});
```
### Reading Data
```typescript theme={null}
// List all nodes
const allNodes = await nodes.list();
// Read a node's last output
const output = await nodes.getOutput('gmail-node-id');
console.log(output.emails);
// Read a node's config
const config = await nodes.getConfig('http-node-id');
```
### Running Nodes
```typescript theme={null}
// Fire and forget
execution.runNodesInBackground(['data-fetcher']);
// With temporary config overrides (doesn't save to the node)
execution.runNodesInBackground([
{ id: 'http-node', config: { url: 'https://api.example.com/data' } }
]);
// Run and stream output
const stream = execution.runNodesAndGetOutput(
['data-fetcher'], // nodes to execute
['formatter', 'chart'] // nodes whose output we want
);
stream.on('output', (nodeId, data) => {
console.log(`${nodeId} completed:`, data);
});
stream.on('done', () => {
console.log('All targets completed');
});
// Or await all results at once
const results = await stream.all();
// { 'formatter': {...}, 'chart': {...} }
```
### State Management
```typescript theme={null}
await state.set('counter', 0);
const val = await state.get('counter'); // 0
await state.update('counter', n => (n || 0) + 1);
await state.del('counter');
const keys = await state.keys(); // ['counter', ...]
```
### Real-time Subscriptions
Subscribe to node output changes from any source (cron, webhooks, manual runs):
```typescript theme={null}
// React to new data from a cron-triggered node
execution.onNodeOutput('data-fetcher', (output) => {
console.log('New data:', output);
});
// Track execution state
execution.onNodeState('data-fetcher', (state) => {
console.log('State:', state); // 'running' | 'completed' | 'error'
});
```
***
## Python SDK
### Installation
```bash theme={null}
pip install noclick
```
Or install from source:
```bash theme={null}
cd sdk/python
pip install -e .
```
### Connection
```python theme={null}
import asyncio
import noclick
async def main():
sdk = noclick.Client(
api_key="nk_live_...",
workflow_id="...",
)
await sdk.connect()
# ... use the SDK ...
await sdk.disconnect()
asyncio.run(main())
```
### Reading Data
```python theme={null}
# List all nodes
nodes = await sdk.nodes.list()
for node in nodes:
print(f"{node['id']} ({node['type']}) — {node['label']}")
# Read a node's last output
output = await sdk.nodes.get_output("gmail-node-id")
for email in output.get("emails", []):
print(f"{email['subject']} — {email['from']}")
# Read a node's config
config = await sdk.nodes.get_config("http-node-id")
```
### Running Nodes
```python theme={null}
# Fire and forget
await sdk.execution.run_nodes_in_background(["data-fetcher"])
# Run and wait for specific output
results = await sdk.execution.run_nodes_and_get_output(
["data-fetcher"], # nodes to execute
["formatter", "chart"], # nodes whose output we want
timeout=30,
)
print(results["formatter"])
print(results["chart"])
```
### State Management
```python theme={null}
await sdk.state.set("counter", 0)
val = await sdk.state.get("counter") # 0
await sdk.state.update("counter", lambda n: (n or 0) + 1)
await sdk.state.delete("counter")
keys = await sdk.state.keys() # ["counter", ...]
```
### Credentials
```python theme={null}
# List credentials
creds = await sdk.auth.list_credentials()
for c in creds:
print(f"{c['name']} ({c['type']})")
# Check if a credential exists
has_gmail = await sdk.auth.has_credential("google_gmail_oauth")
# Create an API key credential
cred = await sdk.auth.create_credential(
"telegram_bot_token",
{"token": "..."},
name="My Bot"
)
```
### Resources (File Storage)
```python theme={null}
import aiohttp
# Upload a file
result = await sdk.resources.upload("report.pdf", "application/pdf", file_size)
async with aiohttp.ClientSession() as session:
with open("report.pdf", "rb") as f:
await session.put(result["upload_url"], data=f)
# Get download URL
url = await sdk.resources.get_url(result["resource_id"])
# List resources
files = await sdk.resources.list("file")
```
### Dataset CRUD
```python theme={null}
# Create a dataset
ds_id = await sdk.dataset.create("User Submissions")
# Append rows
count = await sdk.dataset.append_rows(ds_id, [
{"name": "Alice", "score": 95},
{"name": "Bob", "score": 87},
])
# Read rows (paginated)
page = await sdk.dataset.get_rows(ds_id, limit=100)
for row in page["rows"]:
print(f"{row['id']}: {row['data']}")
# Update a row
await sdk.dataset.update_row(ds_id, row_id, {"score": 98})
# Delete rows
await sdk.dataset.delete_rows(ds_id, [row_id])
# List datasets
datasets = await sdk.dataset.list()
```
### Real-time Subscriptions
```python theme={null}
# Subscribe to node output changes
def on_output(node_id, output):
print(f"New output from {node_id}")
sdk.execution.on_node_output("data-fetcher", on_output)
```
***
## Security
* **API keys are hashed** (SHA-256) in the database. Raw keys are never stored.
* **Workflow scoping**: keys can be limited to a single workflow.
* **Permission model**: `read`, `execute`, `write` permissions control what operations are allowed.
* **Key revocation**: keys can be revoked instantly.
* **Expiration**: keys can have an optional expiry date.
* **Socket.IO transport**: encrypted WebSocket connection. Same auth context as the browser frontend.
# SDK Overview
Source: https://docs.noclick.com/sdk/overview
Build custom interfaces and external apps that interact with NoClick workflows
# NoClick SDK
The NoClick SDK lets you build custom React components inside workflows and external applications that interact with NoClick's workflow engine. Read node outputs, trigger execution, manage state, handle credentials, and work with files and datasets, all through a clean API.
## Two Use Cases
React/JSX components that render inside the NoClick interface tab. Built with Tailwind CSS, any npm package, and the full SDK API. No build step needed: NoClick handles transpilation.
Standalone TypeScript or Python applications that connect to NoClick via WebSocket. Same API, different transport. Authenticate with API keys.
External apps authenticate with [API keys](/sdk/api-keys), created in the dashboard under **Settings** → **Developer**. Custom components run inside NoClick and need no key.
## SDK Namespaces
| Namespace | Purpose |
| ------------------------------------------- | ----------------------------------- |
| [`nodes`](/sdk/api-reference#nodes) | Read/write node outputs and configs |
| [`execution`](/sdk/api-reference#execution) | Run nodes and stream results |
| [`state`](/sdk/api-reference#state) | Persistent key-value storage |
| [`auth`](/sdk/api-reference#auth) | Credentials and OAuth |
| [`resources`](/sdk/api-reference#resources) | File/blob upload and download |
| [`dataset`](/sdk/api-reference#dataset) | Tabular data CRUD |
| [`workflow`](/sdk/api-reference#workflow) | Workflow info and context |
## Quick Example
A custom component that reads data from a Gmail node and displays it:
```jsx theme={null}
import React, { useState, useEffect } from 'react';
import ReactDOM from 'react-dom/client';
import { nodes } from '@noclick/sdk';
function App() {
const [emails, setEmails] = useState([]);
useEffect(() => {
nodes.getOutput('gmail-node-id').then(output => {
setEmails(output?.emails || []);
});
}, []);
return (
{emails.map(email => (
{email.subject}
{email.from}
))}
);
}
ReactDOM.createRoot(document.getElementById('root')).render();
```
The same logic in a Python external app:
```python theme={null}
import noclick
sdk = noclick.Client(api_key="nk_live_...", workflow_id="...")
await sdk.connect()
output = await sdk.nodes.get_output("gmail-node-id")
emails = output.get("emails", [])
for email in emails:
print(f"{email['subject']} — {email['from']}")
```
# Python SDK
Source: https://docs.noclick.com/sdk/python
Install and use the NoClick Python SDK to connect applications to workflows
# Python SDK
The Python SDK connects Python applications to NoClick workflows via WebSocket (Socket.IO). Use it for data pipelines, automation scripts, backend services, and CLI tools.
## Installation
```bash theme={null}
pip install noclick
```
Or install from source:
```bash theme={null}
cd sdk/python
pip install -e .
```
## Quick Start
```python theme={null}
import asyncio
import noclick
async def main():
sdk = noclick.Client(
api_key="nk_live_...",
workflow_id="...",
)
await sdk.connect()
# Read a node's output
output = await sdk.nodes.get_output("gmail-node-id")
for email in output.get("emails", []):
print(f"{email['subject']} — {email['from']}")
# Run a node and get results
results = await sdk.execution.run_nodes_and_get_output(
["data-fetcher"],
["data-fetcher"],
timeout=30,
)
await sdk.disconnect()
asyncio.run(main())
```
## Authentication
API keys are created in **Settings > Developer**. Keys have three permission levels:
| Permission | Allows |
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `read` | `nodes.get_output`, `nodes.list`, `nodes.get_config`, `state.get`, `state.keys`, `dataset.get_rows`, `resources.list`, `auth.list_credentials` |
| `execute` | `execution.run_nodes_and_get_output`, `execution.run_nodes_in_background` |
| `write` | `nodes.set_config`, `state.set`, `state.delete`, `dataset.append_rows`, `dataset.create`, `resources.upload`, `auth.create_credential` |
## Reading Data
```python theme={null}
# List all nodes
nodes = await sdk.nodes.list()
for node in nodes:
print(f"{node['id']} ({node['type']}) — {node['label']}")
# Read a node's last output
output = await sdk.nodes.get_output("gmail-node-id")
for email in output.get("emails", []):
print(f"{email['subject']} — {email['from']}")
# Read a node's config
config = await sdk.nodes.get_config("http-node-id")
print(config["url"])
```
## Running Nodes
```python theme={null}
# Fire and forget
await sdk.execution.run_nodes_in_background(["data-fetcher"])
# Run and wait for specific output
results = await sdk.execution.run_nodes_and_get_output(
["data-fetcher"], # nodes to execute
["formatter", "chart"], # nodes whose output we want
timeout=30,
)
print(results["formatter"])
print(results["chart"])
```
## State Management
Requires a **State Manager** node in the workflow.
```python theme={null}
await sdk.state.set("counter", 0)
val = await sdk.state.get("counter") # 0
await sdk.state.update("counter", lambda n: (n or 0) + 1)
await sdk.state.delete("counter")
keys = await sdk.state.keys() # ["counter", ...]
```
## Credentials
```python theme={null}
# List credentials
creds = await sdk.auth.list_credentials()
for c in creds:
print(f"{c['name']} ({c['type']})")
# Check if a credential exists
has_gmail = await sdk.auth.has_credential("google_gmail_oauth")
# Create an API key credential
cred = await sdk.auth.create_credential(
"telegram_bot_token",
{"token": "..."},
name="My Bot"
)
```
## Resources (File Storage)
```python theme={null}
import aiohttp
# Upload a file
result = await sdk.resources.upload("report.pdf", "application/pdf", file_size)
async with aiohttp.ClientSession() as session:
with open("report.pdf", "rb") as f:
await session.put(result["upload_url"], data=f)
# Get download URL
url = await sdk.resources.get_url(result["resource_id"])
# List resources
files = await sdk.resources.list("file")
```
## Dataset CRUD
```python theme={null}
# Create a dataset
ds_id = await sdk.dataset.create("User Submissions")
# Append rows
count = await sdk.dataset.append_rows(ds_id, [
{"name": "Alice", "score": 95},
{"name": "Bob", "score": 87},
])
# Read rows (paginated)
page = await sdk.dataset.get_rows(ds_id, limit=100)
for row in page["rows"]:
print(f"{row['id']}: {row['data']}")
# Update a row
await sdk.dataset.update_row(ds_id, row_id, {"score": 98})
# Delete rows
await sdk.dataset.delete_rows(ds_id, [row_id])
# List datasets
datasets = await sdk.dataset.list()
```
## Real-time Subscriptions
```python theme={null}
# Subscribe to node output changes
def on_output(node_id, output):
print(f"New output from {node_id}")
sdk.execution.on_node_output("data-fetcher", on_output)
```
## Full API Reference
See the [API Reference](/sdk/api-reference) for complete method signatures with TypeScript and Python examples side by side.
# TypeScript SDK
Source: https://docs.noclick.com/sdk/typescript
Install and use the NoClick TypeScript SDK in external apps and custom components
# TypeScript SDK
The TypeScript SDK connects external Node.js/browser applications to NoClick workflows via WebSocket (Socket.IO). It's also the SDK used inside [custom components](/sdk/custom-components).
## Installation
```bash theme={null}
npm install noclick socket.io-client
```
`socket.io-client` is required for external apps (WebSocket transport). Custom components don't need it, since the SDK uses postMessage in iframe context.
## Quick Start
```typescript theme={null}
import { init, nodes, execution, state } from 'noclick';
// Connect with your API key
await init({
apiKey: 'nk_live_...',
workflowId: '...', // optional — scope to a specific workflow
});
// Read a node's output
const output = await nodes.getOutput('gmail-node-id');
// Run a node and get results
const results = await execution.runNodesAndGetOutput(
['data-fetcher'],
['data-fetcher']
).all();
// Persistent state
await state.set('counter', 42);
const val = await state.get('counter'); // 42
```
## Authentication
External apps use API keys created in **Settings > Developer**. Keys have three permission levels:
| Permission | Allows |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `read` | `nodes.getOutput`, `nodes.list`, `nodes.getConfig`, `state.get`, `state.keys`, `dataset.getRows`, `resources.list`, `auth.listCredentials` |
| `execute` | `execution.runNodesAndGetOutput`, `execution.runNodesInBackground`, `execution.stop` |
| `write` | `nodes.setConfig`, `state.set`, `state.del`, `dataset.appendRows`, `dataset.create`, `resources.upload`, `auth.createCredential` |
## Reading Data
```typescript theme={null}
// List all nodes in the workflow
const allNodes = await nodes.list();
// [{ id, type, label, hasOutput }, ...]
// Read a node's last output
const output = await nodes.getOutput('gmail-node-id');
console.log(output.emails);
// Read a node's config
const config = await nodes.getConfig('http-node-id');
console.log(config.url);
```
## Running Nodes
```typescript theme={null}
// Fire and forget
execution.runNodesInBackground(['data-fetcher']);
// With temporary config overrides (doesn't persist to the node)
execution.runNodesInBackground([
{ id: 'http-node', config: { url: 'https://api.example.com/data' } }
]);
// Run and stream output as nodes complete
const stream = execution.runNodesAndGetOutput(
['data-fetcher'], // nodes to execute
['formatter', 'chart'] // nodes whose output we want
);
stream.on('output', (nodeId, data) => {
console.log(`${nodeId} completed:`, data);
});
stream.on('done', () => {
console.log('All targets completed');
});
// Or await all results at once
const results = await stream.all();
// { 'formatter': {...}, 'chart': {...} }
```
## State Management
Requires a **State Manager** node in the workflow.
```typescript theme={null}
await state.set('counter', 0);
const val = await state.get('counter'); // 0
await state.update('counter', n => (n || 0) + 1);
await state.del('counter');
const keys = await state.keys(); // ['counter', ...]
// Subscribe to changes (fires from any source — other clients, workflow execution)
state.onChange('counter', (newVal) => {
console.log('Counter changed:', newVal);
});
```
## Real-time Subscriptions
Subscribe to node changes from any trigger (cron, webhooks, manual runs, other SDK clients):
```typescript theme={null}
// React to new data from a cron-triggered node
execution.onNodeOutput('data-fetcher', (output) => {
console.log('New data:', output);
});
// Track execution state
execution.onNodeState('data-fetcher', (state) => {
console.log('State:', state); // 'running' | 'completed' | 'error'
});
```
## Credentials
```typescript theme={null}
// List all credentials
const creds = await auth.listCredentials();
// [{ id, type, name }, ...]
// Check if a credential type exists
const has = await auth.hasCredential('google_gmail_oauth'); // true/false
// Create an API key credential
const cred = await auth.createCredential('telegram_bot_token', {
token: apiKey
}, 'My Bot');
// { id, type, name }
```
`auth.requestCredential()` (OAuth popup flow) is only available in custom components, not external apps.
## Resources (File Storage)
```typescript theme={null}
// Upload a file
const { resourceId, uploadUrl } = await resources.upload('photo.jpg', 'image/jpeg', file.size);
await fetch(uploadUrl, { method: 'PUT', body: file });
// Get download URL
const url = await resources.getUrl(resourceId);
// List resources
const files = await resources.list('file');
// Delete
await resources.remove(resourceId);
```
## Dataset CRUD
```typescript theme={null}
// Create
const dsId = await dataset.create('User Submissions');
// Append rows
await dataset.appendRows(dsId, [
{ name: 'Alice', score: 95 },
{ name: 'Bob', score: 87 },
]);
// Read (paginated)
const page = await dataset.getRows(dsId, { limit: 100, offset: 0 });
// { rows: [{ id, data, created_at }], totalCount: 1000 }
// Update a row
await dataset.updateRow(dsId, rowId, { score: 98 });
// Delete rows
await dataset.deleteRows(dsId, [rowId]);
// List all datasets
const datasets = await dataset.list();
```
## Workflow Info
```typescript theme={null}
const info = await workflow.getInfo();
// { id, name, nodeCount }
```
## Full API Reference
See the [API Reference](/sdk/api-reference) for complete method signatures with TypeScript and Python examples side by side.
# Publishing templates
Source: https://docs.noclick.com/templates/publishing
Publish your workflow to the public template library from the Share dialog.
Publishing a workflow as a template lists it in the public gallery at [noclick.com/templates](https://noclick.com/templates), where anyone can view it, vote on it, and fork it into their own workspace.
## Publish a workflow
Open your workflow and click the **Share** button at the top right of the canvas. In the **Share Workflow** dialog, turn on the **Public access** toggle ("Anyone with the link can view").
With public access on, a **Publish to Template Library** button appears in the Share dialog. Click it to open the **Publish Template** dialog.
Fill in the **Title** and a **Description**. The description supports markdown, with **Write** and **Preview** tabs so you can check the formatting. Use **Save Draft** to keep your work without going live.
Click **Publish**. The dialog shows a **Live** badge and the template's public URL with a copy button. Your template now appears in the gallery and gets its own detail page.
## After publishing
* **Stats**: the gallery tracks view counts, fork counts, and votes for your template, shown on its card and detail page.
* **Workflow changes**: the template's preview and forks reflect your current workflow, so improvements you make carry through. Title and description are edited in the **Publish Template** dialog; click **Save** to apply changes.
* **Unpublish**: reopen the dialog and click **Unpublish** to remove the template from the library.
A published template exposes your workflow's structure and node configurations publicly. Credentials are never shared, but remove anything sensitive from node configs (API endpoints, internal IDs, prompt content) before publishing.
# Using templates
Source: https://docs.noclick.com/templates/using
Browse the template gallery and fork ready-made workflows into your workspace.
The **Agent Templates** gallery at [noclick.com/templates](https://noclick.com/templates) lists workflows published by the community. Browsing is public; you only need an account when you fork a template or vote on one.
## Browse the gallery
Search the catalog by job, outcome, app, or node. A search covers every published template, not just the ones on screen.
Narrow the results with the filters:
* **Category** chips above the results: **All templates**, **Sales**, **Support**, **Marketing**, **Operations**, or **Engineering**.
* **Apps & nodes** in the **Refine** rail, with its own search box for finding one. Pick as many as you need and only templates using all of them stay.
* **Trigger** in the same rail, to keep templates that start a certain way. **Any trigger** clears it.
**Clear** next to the search box drops every filter at once, and the count beside it tells you how many templates match. Sort the results by **Most popular**, **Recently updated**, or **Most used**.
Each card previews the template's real canvas and lists its title, category, description, the apps it uses, and how many nodes it contains. **Show more templates** loads the next batch, with the number still to come shown underneath.
## Template detail pages
Click a template to open its detail page. It leads with the author's opening line, how many people have it in use, the view count, and the thumbs up and thumbs down buttons, then a preview of the real canvas. **Set up this agent** below the preview takes a copy, and the same action sits on the preview itself as **Use this agent**.
The sections underneath set out what taking a copy involves, with jump links beside them on a wide screen:
* **Watch it work before it's live** shows the staged conversations the template ships, each rendered in the shape it would really arrive in. Click **Run this test** to watch the agent handle one on the page, with no account needed, and the page says clearly that the answers it gets are simulated. These are the same situations you can run yourself after forking.
* **Set up in minutes** lists what the guided setup asks for, in order: the services to connect, the questions taken from the template's [workflow variables](/editor/workflow-variables), which agent runs it, and a test run at the end. Variable values are never shown, only the questions.
* **About this agent** carries the rest of the author's description.
* **More ways to run it** links the coding agents this template has a page for, the apps it works with, and other agents like it. Each suggestion shows that workflow's real canvas.
## Fork a template
On the detail page, click **Set up this agent**, or the **Use this agent** pill on the canvas preview. If you're signed out, you'll be asked to sign in first; the fork continues automatically afterward.
The workflow is copied into your dashboard as your own workflow. You can rename, edit, and run it freely; changes never affect the original template.
Your copy opens straight into full screen [Setup](/editor/setup), which lists everything the workflow still needs: accounts to connect, the author's per-user questions to answer, and any action or field left open. Credentials are never included in a template, so connecting your own accounts is part of this step. See [Connecting credentials](/credentials/connecting).
Setup ends on a [Test Run](/agents/test-runs). The agent handles one of the template's staged events for real while every tool call is answered with made-up data, so you can see how it behaves before pointing it at anything of yours. Close setup with the ✕ at any point to go to the normal workspace.
## Voting
Use the thumbs up and thumbs down buttons on a template's detail page to rate it. Click the same button again to remove your vote. Voting requires a NoClick account and feeds the **Top Rated** sort.
Want to share your own workflow? See [Publishing templates](/templates/publishing).
# App events
Source: https://docs.noclick.com/triggers/app-events
Start workflow runs from native events in connected services like Slack, HubSpot, GitHub, and Google Drive.
Many integration nodes can act as triggers. Instead of performing an action, the node listens for an event in the connected service (a new Slack message, a HubSpot contact, a GitHub push) and starts a run each time one arrives.
## Select a trigger operation
Add the service's node (for example **Slack**) and connect your credential.
Open the node's operation picker. Trigger operations are grouped under **Triggers** at the top of the list. Select one, such as **On Channel Message**.
Fill in any event filters (for example, which channel or repository to watch) and connect the node to your downstream steps. NoClick registers the event subscription with the provider automatically, and the workflow runs on each matching event.
Registration happens as soon as the trigger is part of your workflow, whether you added the node yourself or the AI builder did. You do not have to open the node for it to start listening. Slack, HubSpot, Discord, and Instagram triggers show a **Status** field naming what they are listening to, and a registration that failed, or never happened, is repaired on its own within a day.
A trigger that still has required fields to fill in is not registered yet, whoever is filling them: registration waits until the configuration can run, and happens on the edit that completes it. Changing the node to a different operation, or to one that is not a trigger, removes the registration again.
## Registered is not the same as receiving
Some services will not deliver events even with the subscription in place. Slack sends channel messages, mentions, reactions, joins, and file shares only to apps that are members of the channel, so a trigger on a channel NoClick was never invited to is registered and still hears nothing.
Registration checks for that and puts the answer in the trigger's **Status** field. A trigger that will not be fed turns amber and names the reason, and where NoClick can fix it itself the field offers a button:
* **Public Slack channel**: the status offers **Join #channel**. Clicking it puts the app in the channel and re-checks, and the status goes back to naming what the trigger listens for.
* **Private Slack channel**: only a person can add an app, so the status names the `/invite` command to run in Slack instead, with the app's handle in it.
* **No channel filter**: the app has to be in at least one channel, otherwise Slack has nothing to send.
A trigger in that state is also marked incomplete on the canvas and listed on your [Dashboard](/getting-started/dashboard) under **Needs you**, where the row carries the same fix. It does not hold up a run you start yourself.
A check NoClick cannot complete, because the service is unreachable or answers with something unexpected, leaves the trigger as it is. A working trigger is never reported broken on a check that could not reach a verdict.
## Supported events
| Service | Trigger operations | Delivery |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
| Slack | On Channel Message, On App Mention, On Reaction Added, On Member Joined Channel, On Channel Created, On File Shared | Instant push |
| HubSpot | On Contact Created, On Contact Updated, On Contact Deleted, On Company Created, On Deal Created, On Deal Updated, On Ticket Created | Instant push |
| GitHub | On Push, On Issue Comment, and granular issue, pull request, release, and star events (On Issue Opened, On Issue Closed, On Pull Request Opened, On Pull Request Merged, On Release Published, On Star Created, and more) | Instant push |
| Jira | On Issue Created, On Issue Updated, On Issue Deleted, On Comment Added | Instant push |
| Linear | On Issue Created, On Issue Updated, On Issue Deleted, On Comment Created, On Comment Updated, On Comment Deleted, On Project Created, On Project Updated, On Project Deleted | Instant push |
| Discord | On Channel Message, On Bot Mention, On Slash Command, On Application Authorized, On Application Deauthorized, On Entitlement Create/Update/Delete | Instant push |
| Instagram | On Comment, On Message | Instant push |
| Shopify | On Order Created, On Order Paid, On Order Fulfilled, On Order Cancelled, On Product Created, On Product Updated, On Customer Created | Instant push |
| Google Drive | On Drive Change, On File Changed, On File Removed, On Folder Changed, On Folder Removed | Instant push |
| Google Calendar | On Calendar Event, On Event Created, On Event Updated, On Event Cancelled, On Event Tentative | Instant push |
| Google Sheets | On New Row | Scheduled poll |
| Google Forms | On Form Response | Scheduled poll |
| Gmail | Poll for New Emails | Scheduled poll |
| Notion | On Database Item | Scheduled poll |
| Typeform | On New Form Response | Instant push |
| Twilio | On Incoming SMS | Instant push |
| Telegram | Receive Webhook Messages | Instant push |
| WhatsApp | Receive Message, Receive Status Update | Instant push |
| Instantly | Receive Webhook Events | Instant push |
| Resend | Receive Webhook Events | Instant push |
**Instant push** events arrive via webhook subscriptions that NoClick creates for you. Google Drive, Google Calendar, and Jira subscriptions expire periodically and are renewed automatically. Discord is the exception: Discord does not send channel messages over a webhook, so **On Channel Message** and **On Bot Mention** are delivered over the connection NoClick holds open to Discord, and they need NoClick's bot to be in the server. Connecting Discord with the **Discord Bot Install** credential puts it there: you pick the server during the Discord sign-in. **Channel** on those two triggers also takes a category, which covers every channel under it and the threads opened in them; categories read as **Name (category)** in the picker, and the list is ordered the way Discord orders the sidebar. Instagram's **On Comment** and **On Message** need the **Login** connection, which a Facebook system user or Page token cannot stand in for. **Scheduled poll** triggers cover services without a usable push API: you pick a schedule on the node (default: every 5 minutes) and each poll fires the workflow only for items it has not seen before. A poll that finds no new items runs nothing downstream, so connected nodes and AI agents stay idle until there is something new. That applies to a run you start yourself as well, so use a node's [mocked output](/editor/running-and-testing) to test the steps after a trigger when there is no new data.
### What counts as new
A poll trigger takes its starting point the moment it is registered, so anything that arrives after you finish setting it up fires a run, including a test entry you submit right away. Everything already in the form, sheet, or mailbox at that point counts as history and is left alone.
Pointing the trigger at something else later, a different form or spreadsheet, takes a fresh starting point for the new resource rather than firing for its entire backlog. Edits that do not change what the trigger watches leave its history untouched.
Running the workflow yourself polls the same way a scheduled run does, and anything it finds is delivered to the nodes downstream, including an AI agent wired to the trigger.
Most subscriptions register automatically. Three exceptions show a webhook URL on the node to paste into the provider yourself: Resend (add it as an endpoint at resend.com/webhooks), WhatsApp Cloud API credentials (configure it in the Meta Developer Console; QR-paired WhatsApp registers automatically), and Facebook triggers, which also need the verify token and app secret of your own Meta app (see [Facebook](/integrations/facebook)).
## App events and AI agents
Wire the trigger node directly into an AI agent and each event is delivered as part of the agent's turn, as an account of what happened rather than the payload the provider sent: the service and the kind of event, who it came from and where, the content, and the IDs the agent needs to act on it. One node cannot both fire runs and provide agent tools: to build an agent that listens and replies in the same service, use two nodes, one with the trigger operation and one wired in as a tool provider. See [Channel agents](/agents/channel-agents).
# Email trigger
Source: https://docs.noclick.com/triggers/email
Start workflow runs from inbound email with a reserved name@noclick.app address.
The **Get Email** node starts a run whenever an email arrives at an address you reserve on `noclick.app`. The parsed message (sender, subject, body, attachments) becomes the trigger's output for downstream nodes.
## Reserve an address
Add the **Get Email** node and connect it to your first downstream node.
Type an inbox name in the **Email Address** field. Availability is checked live as you type; a free name is reserved automatically and shown as **Active** with the full `name@noclick.app` address and a copy button. Taken names show "That address is already taken".
**Allowed Senders** takes a comma-separated list of email addresses or `@domains`, for example `alice@example.com, @trusted.com`. Leave it empty to accept email from anyone. Mail from a sender not on the list is ignored and the workflow does not run.
## What the event contains
The trigger's output includes:
* `from` and `to`: sender and recipient addresses
* `subject`: the subject line
* `text` and `html`: plain-text and HTML bodies
* `attachments`: a list with `name`, `mime_type`, `size_bytes`, and a `download_url` for each file (stored as workflow resources, up to 256 MB per attachment)
* `headers`: the raw email headers, plus SPF and DKIM verification results
Reference any of it downstream, for example `{{node-id.subject}}` or `{{node-id.attachments[0].download_url}}`. See [Data references](/editor/data-references).
## Email into an AI agent
Wire the Get Email node directly into an AI agent and each inbound email is delivered as part of the agent's turn. The text inside small attached documents is pulled out and included with the email, so the agent can read an attached invoice or contract without a separate step. The agent also gains a locked `email__reply` tool: the recipient and threading are derived server-side from the triggering email, replies are capped at 5 per run, and each send costs 0.01 credits. Replies can include attachments too. See [Channel agents](/agents/channel-agents).
Releasing the address is automatic: deleting the node frees the name for others to reserve.
# Forms
Source: https://docs.noclick.com/triggers/forms
Collect structured inputs and start a run with the Form node.
The **Form** node is both an interface block and a workflow entry point. On the canvas and in the [Interface tab](/apps/overview) it renders as a live form you can fill and submit directly. It also gets a public **Form URL** — copy it from the config panel or the **Copy link** button on the block header: opening the URL renders a hosted form built from your field definitions, and submitting it runs the workflow with the entered values. No login is required to submit.
The same node is also the entry point for runs started from published apps and the [NoClick SDK](/sdk/overview), where `workflow.execute()` passes the inputs programmatically.
## Define the form
Add the **Form** block from the Interface tab (or the Form node on the canvas) and connect it to your first downstream node. Optionally set a **Form Title** and **Form Description**; both appear at the top of the hosted form.
Each field has a **name** (the identifier used in references), a type, an optional label and description, and a required flag. Supported types: `string`, `number`, `boolean`, `object`, `array`, `select` (with an options list), `credential`, and `file`.
Copy the **Form URL** — the **Copy link** button on the form block or the copy button in the config panel — and share it. Each submission starts one run, and the submitter sees a confirmation page.
## Reference the values downstream
Submitted values appear on the form node's output keyed by field name. Reference them as `{{node-id.fieldName}}`: a field named `email` on a node with ID `form-1` is `{{form-1.email}}`. Dragging from the node's output panel into a downstream config field builds the reference for you. See [Data references](/editor/data-references).
## Persistent values
The form is also a central value store: values you edit in the form block are saved with the workflow and output on **every** run — no submission needed — so a form doubles as a settings panel feeding downstream nodes. Field **default values** apply when nothing has been stored yet, and `schedule`/`list` field types are available for settings-style forms. The legacy `{{node-id.values.fieldName}}` reference style also resolves.
Runs started from the public form show the trigger source `Form` in the **Logs** tab. Disabling the node takes the form offline; visitors see a "currently disabled" message instead.
# Triggers overview
Source: https://docs.noclick.com/triggers/overview
How workflow runs start in NoClick: manual runs, schedules, webhooks, forms, inbound email, app events, and the API/SDK.
Every workflow run starts with a trigger. A trigger is the entry point of your workflow: when it fires, NoClick executes the nodes connected downstream of it. A workflow can hold more than one trigger, and each fires independently.
## Trigger types
| Trigger | Starts a run when... |
| ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| Manual | You click **Run** on the canvas. See [Running and testing](/editor/running-and-testing). |
| [Schedule](/triggers/schedules) | A recurring schedule fires (every N minutes, daily at 9:00 AM, weekly, monthly), optionally limited to set hours, days, or months. |
| [Webhook](/triggers/webhooks) | An HTTP request hits the node's unique URL on `noclick.run`. |
| [Form](/triggers/forms) | Someone submits the node's hosted form, or a published app passes inputs. |
| [Email](/triggers/email) | An email arrives at the node's reserved `name@noclick.app` address. |
| [App events](/triggers/app-events) | An event happens in a connected service, like a Slack message, a new HubSpot contact, or a GitHub push. |
| API / SDK | Your code calls `workflow.execute()` through the [NoClick SDK](/sdk/overview). |
## Where to see what triggered a run
Every run records its trigger source. Open the **Logs** tab in the canvas top bar: each row shows the source (Manual, Schedule, Webhook, Email, Form, or API) along with status, duration, and any error message. See [Execution logs](/editor/execution-logs).
To pause a trigger without deleting it, disable the trigger node. Incoming events are acknowledged but the workflow does not run until you re-enable it.
## Triggers and AI agents
A trigger wired directly into an AI agent delivers the fired event as part of the agent's turn, so the agent can read a Slack message or an email and act on it. See [Channel agents](/agents/channel-agents).
# Schedules
Source: https://docs.noclick.com/triggers/schedules
Run a workflow on a recurring schedule with the Schedule trigger node.
The **Schedule** node runs your workflow on a recurring schedule. No cron syntax required: you pick a frequency and time in a visual widget, and the node shows when it will fire next.
## Set up a schedule
Add the **Schedule** node to your canvas and connect its output to the first node you want to run.
The schedule picker reads as a sentence: "Every 30 minutes", "Every day at 9:00 AM", "Every week on Monday at 5:00 PM". Frequencies: seconds, minutes, hours, day, week, weeks, and month. Interval frequencies take a number; day, week, and month schedules take a time (15-minute increments) and, where relevant, a day. A summary line below the picker confirms the schedule in plain language.
The schedule reads as one sentence, and every part of it is editable in place: "Every 30 minutes · **all day** · **every day** · **all year**". Click any of those words to limit that dimension:
* **all day** → from `9:00 AM` to `6:00 PM` (inclusive: the 6:00 PM tick runs)
* **every day** → tap day chips, or the Weekdays/Weekends presets
* **all year** → pick a day-of-month range (`1st`–`15th`; `25th`–`5th` wraps month end) and/or months (`August`, or `March` through `October`; `November`–`February` wraps the new year)
Clearing is in place too (`All day`, `Every day`, `Any day`, `All year`). The words shown adapt to the frequency. Interval schedules (seconds, minutes, hours) take all three, daily schedules everything but the day window, weekly and monthly ones the months. Stacked limits must all match: "every 30 minutes, 9:00 AM to 6:00 PM, weekdays, 1st to 15th, March to October" is exactly that.
Choose your timezone in the searchable **Timezone** dropdown. Run times, time windows, and day boundaries are all interpreted in this timezone, including across daylight-saving changes.
The **Next Run** field shows when the schedule fires next. Each run appears in the **Logs** tab with the trigger source `Schedule`.
## Example schedules
| Goal | Configuration |
| ------------------------- | -------------------------------------------------------------------------- |
| Poll an API twice an hour | Every `30` minutes |
| Business-hours checks | Every `30` minutes, from `9:00 AM` to `6:00 PM`, on weekdays |
| Seasonal monitor | Every `10` seconds, from `9:00 AM` to `6:00 PM`, from `March` to `October` |
| Morning digest | Every day at `9:00 AM` |
| Weekly report | Every week on `Friday` at `5:00 PM` |
| Biweekly sync | Every `2` weeks on `Monday` at `10:00 AM` |
| Monthly invoice run | Every month on the `1st` at `9:00 AM` |
## Multiple schedules
One Schedule node can hold several schedules. Click **Add schedule** to add another entry; each fires independently. Removing every entry disables the trigger.
Schedules are evaluated directly in your configured timezone, so daylight-saving changes are handled automatically. A 9:00 AM schedule fires at 9:00 AM local time year-round.
## When a schedule keeps failing
A schedule whose runs keep dying the same way is paused, instead of producing another failed run on every tick. NoClick pauses it once the last five runs from that schedule have all failed with an identical error and those failures span at least 30 minutes, which a short provider outage does not reach.
Pausing switches the trigger node off and records why:
* You get one email naming the workflow, the paused trigger, the error, and when it was paused, and at most one per trigger per day. See [Email notifications](/billing/notifications).
* The trigger appears on your [Dashboard](/getting-started/dashboard) under **Needs you** and on the **Triggers** card, marked as paused with the same reason.
* On the canvas the trigger node is switched off, like any node you disable yourself.
Fix what the error names, then enable the trigger node again to resume the schedule. If the same failure comes back, the schedule pauses again on the first repeat.
Running out of credits never pauses a schedule. Topping up resumes the runs on its own. See [Credit top-ups](/billing/top-ups).
# Webhooks
Source: https://docs.noclick.com/triggers/webhooks
Start workflow runs from any HTTP request with the Webhook trigger node.
The **Webhook** node starts a run whenever an HTTP request hits its URL. Every Webhook node gets its own unique URL on `noclick.run`, created automatically when you add the node and shown in the config panel with a copy button.
## Send a request
Pick the **HTTP Method** the webhook accepts (GET, POST, PUT, PATCH, or DELETE; POST is the default), then send a request to the URL:
```bash theme={null}
curl -X POST "https://" \
-H "Content-Type: application/json" \
-d '{"customer": {"email": "ada@example.com"}, "amount": 42}'
```
Requests with a different method are rejected with a `405`.
## Use the payload downstream
The trigger node's output contains the request data:
* `payload`: the parsed JSON body (a non-JSON body lands in `payload.raw`)
* `headers`: the request headers
* `query_params`: URL query parameters
* `method`: the HTTP method
Reference any of it in downstream nodes with `{{node-id.path}}`, where `node-id` is the Webhook node's ID. For the request above, `{{webhook-1.payload.customer.email}}` resolves to `ada@example.com`. The easiest way to build a reference is to run the trigger once, then drag a field from its output panel into a downstream config field. See [Data references](/editor/data-references).
## Response behavior
The **Respond** field controls what the caller gets back:
* **Immediately** (default): the request returns a small JSON acknowledgment right away and the workflow runs in the background.
* **When Last Node Finishes**: the request stays open until the run completes, then returns the final node's output as JSON. If the run fails, the caller receives a `500` with the error.
### Shape the response yourself
With **When Last Node Finishes**, the last node can decide the whole HTTP response. Return an object with these keys and nothing else:
| Key | What it does |
| --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `status` | Required. The HTTP status code, 100 to 599. |
| `headers` | Optional. A map of response headers, for example a `Content-Type`. |
| `body` | Optional. A string is served as the body verbatim, and is treated as HTML unless your headers set another type. Any other value is sent as JSON. Leave it out for a bodyless response such as a redirect. |
A [Serverless Function](/logic/code) node that returns this shape serves a REST payload with the status you choose:
```javascript theme={null}
if (!email) {
return { status: 400, body: { error: 'email is required' } };
}
return { status: 200, body: { id, email } };
```
Returning a plain string from a Serverless Function node serves it as an HTML page with status `200`, so a workflow can answer a browser as well as an API client:
```javascript theme={null}
return `
Thanks, ${name}
`;
```
A last node that returns anything else keeps the default behavior and the caller gets the node's output as JSON.
## Securing the webhook
* **Secret**: set a secret to require an HMAC-SHA256 signature of the request body, sent in the `X-Hub-Signature-256` or `X-Webhook-Signature` header. Unsigned or mis-signed requests get a `401`.
* **Authentication**: require Basic Auth, a fixed header value, or an HS256-signed JWT before the workflow runs.
## Testing tips
* Send a sample request with `curl` and watch the run appear in the **Logs** tab with trigger source `Webhook`.
* Click the run in Logs to replay it and inspect the exact payload the trigger received.
* Disable the node to stop runs while keeping the URL live; requests are acknowledged but nothing executes.
# Common errors
Source: https://docs.noclick.com/troubleshooting/common-errors
Diagnose failed runs, credit errors, missing required fields, and provider rate limits.
## A run failed
Start in the **Logs** tab (`L`). Failed runs show an **Error** status with the error message in the row; the search box finds runs by error text.
Click the run row to replay it on the canvas: nodes carry success or error rings, so the failing step is visible at a glance. Click the failed node to see the exact inputs it received and the error it produced, then fix the config and run again. See [Execution logs](/editor/execution-logs).
## Insufficient credits
A run needs a minimum balance of 0.20 credits to start. Below that, runs fail with an "Insufficient credits" error that names your NoClick balance as the one that ran out, and its **Add credits** button opens the credits popup on the spot.
* Check your balance and recent spend in **Settings → Usage** ([Usage dashboard](/billing/usage-dashboard)).
* On the Free plan there's also a daily cap of 5 credits, so runs can stop for the day even with monthly credits left.
* Plan credits reset monthly; to keep going now, [buy a top-up](/billing/top-ups) or upgrade your [plan](/billing/plans).
* Organization workflows draw from the org owner's credit pool, so check the owner's balance, not the runner's.
* A turn on a CLI coding agent needs 1 credit to start, and its sandbox is stopped mid-turn if your credits run out while it works. Files the agent saved to its workspace are kept. See [What costs credits](/billing/costs).
Integration nodes running on your own connected accounts cost nothing. Credits cover NoClick-keyed AI usage, the AI builder, and a few metered APIs. See [What costs credits](/billing/costs).
## A model provider rejected an agent run
When an [agent](/agents/overview) runs on your own API key or AI subscription and the provider refuses the call, NoClick rewrites the provider's raw error into a sentence that names the cause, and adds a button where there is something to click. The provider's original text is kept underneath, after **Provider message**.
| What happened | What you see | The fix |
| --------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| The key was rejected | The provider rejected the API key on this agent's credential | **Open credentials** on the failing node, then re-check or replace the key |
| The provider account has no API credits | The account has no API credits, and your NoClick credits are unaffected | **Add credits** opens that provider's billing page |
| An AI subscription hit its cap | The subscription hit its usage limit, which resets on the provider's schedule | Retry later, or connect an API key instead |
| The provider account is disabled | The provider reports the account is disabled or deactivated | Resolve it in the provider's console |
| Rate limited | Too many requests in too short a window | Retry in a moment, or run the workflow less often |
| The provider's own upstream failed | A server-side outage on the provider's end | Retry, or switch models if it keeps happening |
The key in question is always the one matching the model you picked. A key connected on the same node for another provider is ignored rather than used, so it cannot be the one being rejected. See [The key has to match the model](/agents/models#the-key-has-to-match-the-model).
These messages say explicitly when the balance in question belongs to the provider rather than to NoClick, because a raw "credit balance is too low" from a model provider reads like NoClick credits running out. Failures nobody can act on, like a rate limit or an outage, carry no button.
Only agent failures are rewritten this way, and only agent failures get a button pointing at a provider. Every other node shows its service's error verbatim, so a bad Stripe or YouTube key reads exactly as that service reported it, and a service whose own wording happens to mention credits or an invalid key is not mistaken for a model provider.
## An agent turn was lost
A turn on a CLI coding agent can end without a reply, for example when its sandbox stops before the answer comes back. The chat shows an error in place of the reply saying the turn was lost and that the reply may not have been sent, and the composer unlocks so you can send the message again.
* Sending the message again is the fix. The conversation keeps its history, and files the agent saved to its workspace are still there.
* A lost turn is recorded as a failed run, so it appears in your run history with the same error. See [Running and testing](/editor/running-and-testing).
* A turn that produces no output for 30 minutes is treated as stalled and stopped, so a long command that prints nothing while it works can end this way. Splitting it into steps that print progress keeps the turn alive.
* Sandbox time stops being billed when the sandbox stops. See [What costs credits](/billing/costs).
## Required fields missing
A node with unfilled required fields can't run correctly. Three places surface this:
* Pressing **Run** opens a popup listing every step that still needs setup, and you fill them in there before the run starts. See [Before running](/editor/running-and-testing#before-running).
* In the node's config panel, unfilled **Required** fields carry an amber badge, and an amber banner at the top lists what is still missing. Click a field name in the banner to jump to that field.
* An amber pill at the bottom left of the canvas counts the nodes that are still incomplete, whether that is a missing field or a missing credential. Its arrows move you from one to the next.
A node with no action selected counts as incomplete too, since none of its fields exist until you pick one.
A node with no credential attached shows a warning in its **Credentials** tab; connect an account there ([Connecting accounts](/credentials/connecting)).
## A required field is empty
A field filled with a [reference](/editor/data-references) can come back with no value, because the referenced step's output has no key by that name or that key holds null. When the field is required, the step fails with an error that starts `Required field 'name' is empty` and then names the reference, what the referenced step's output really holds, and its top-level keys.
* Compare the keys in the error with the reference you wrote. Usually one of the listed keys is the value you meant, for example an incoming chat id that arrives under `payload.from` rather than `chat_id`.
* Open the referenced step's **Output** panel and drag the value into the field. A dragged reference always matches the real shape.
* If the error says a trigger has no live event in this run, that is a manual run reading a trigger that waits for events. Fire the workflow the way it runs in production, by sending the message or calling the webhook, to test that path.
Optional fields are not affected: a reference that resolves to nothing there leaves the field at its default and the run goes on.
## A scraping step failed
The Instagram, LinkedIn, and Reddit scraping steps run on NoClick's infrastructure. When that scrape does not complete, or comes back with records the node cannot read, the step fails and the error names what went wrong instead of passing an empty result down the flow. A step that used to look successful with nothing in it now stops the run, so a later step never works from an empty list.
Rerun the step first, since most of these are one-off failures at the provider. If it keeps failing, narrow what you asked for: fewer results, one profile or subreddit at a time, or a public account rather than a private one. The work the provider already did is still metered, so repeated retries use credits ([What costs credits](/billing/costs)).
## Rate limits from providers
Third-party APIs throttle heavy use. When a provider rejects a call for rate limiting, the provider's error appears as the node's error in Logs. Usually waiting and rerunning is enough. If it keeps happening:
* Space out [scheduled runs](/triggers/schedules) or process fewer items per run.
* On providers that support it, [bring your own OAuth app](/credentials/custom-oauth) or API key so you get your own quota.
* Route failures down a dedicated branch with [error handling](/logic/error-handling) so one throttled call doesn't sink the whole run.
# Credential problems
Source: https://docs.noclick.com/troubleshooting/credentials
What to do when an OAuth connection expires or is revoked, or an API key stops working.
## Symptoms
* Runs fail with authorization errors (the provider rejecting the call) in the **Logs** tab.
* Dropdown fields that load options from the account (channels, spreadsheets, boards) stop loading.
* The node's **Credentials** tab shows an error panel with a **Reconnect** button.
## Why it happens
OAuth tokens normally [refresh automatically](/credentials/security), so day-to-day expiry never needs your attention. A credential genuinely breaks when the provider revokes access: you changed your password, removed the app from the account's authorized apps, the account lost the required permissions, or a provider with rotating tokens invalidated the chain after a long disconnection. In those cases only a fresh sign-in fixes it.
## Reconnect an OAuth credential
Select any node that uses the credential and open its **Credentials** tab (`K`).
If an error panel is showing, click **Reconnect**. Otherwise click **Connect Another Account** and complete the provider sign-in with the same account.
Make sure the node has the right credential selected, then run the node. Dropdown fields loading again is a quick health check.
## A step fails on a permission, not on sign-in
A connection carries the permissions you approved on the day you made it, and nothing more. When NoClick starts requesting a permission an operation needs, existing connections do not pick it up on their own, so a step can fail on a permission while the credential itself is healthy. Reconnect the credential with the steps above and approve the new consent screen.
Each integration's page lists the permissions NoClick requests for that service, so you can check what a fresh connection would grant. A few operations need more than a connection can carry, and those are marked in the operation picker: see [Configuring nodes](/editor/configuring-nodes).
## Microsoft says "Need admin approval"
Some organizations don't let people approve apps for themselves, so a work or school account sees **Need admin approval** instead of Microsoft's consent screen, and NoClick reports that an admin has to approve it first. An admin in that organization fixes it once for everyone: under the **Connect** button on any Microsoft node (Excel, Outlook, OneDrive, Word, Teams, To Do), click **approve NoClick for your organization**. Microsoft's admin-consent page grants the permissions for the whole directory and then continues into the admin's own sign-in. Afterwards anyone in the organization connects normally. Personal Microsoft accounts never need this.
## Connected, but the API is not open to you yet
Some providers hand out a working sign-in while still refusing the API behind it. Google Business Profile is the case NoClick checks for: right after you connect, it calls the Business Profile API with your new credential and, if your Google Cloud project has no access, shows the error panel with an **Apply for API access** link next to **Reconnect**. Google grants that access to verified businesses on request, and the API also has to be enabled in the project itself. Until it is, the credential is fine and every call fails.
Google DV360 behaves the same way. A Google account that is not linked to a Display & Video 360 user profile signs in normally, then every step fails on authentication. NoClick adds a note to those errors saying the account may not be linked to a DV360 user profile or may lack the role a step needs. A DV360 administrator adds the account under Admin → Users with access to the partner or advertiser you are working with. See [Google DV360](/integrations/dv360).
## A WhatsApp QR connection shows as disconnected
WhatsApp connects by pairing with your phone, and unlinking NoClick from the linked devices on the phone ends that pairing. NoClick checks the pairing when it lists your credentials and marks one that is no longer linked with an amber **Disconnected** label in the picker. Disconnected credentials sort below the working ones, and NoClick skips them when it picks a credential for a node on its own.
Reconnect the credential you already have rather than making a second one. Select it on the node, and the **Credentials** tab shows a QR code for it. Scanning repairs that credential in place, so the workflows and triggers already using it keep working and you are not charged the monthly connection fee twice.
Scanning a fresh code for a number that already has a credential does the same thing: NoClick reconnects the credential you have instead of adding a second one for the same phone. That matters because every extra scan adds another linked device on the phone, and WhatsApp can log all of them out at once.
## A Discord connection shows as disconnected
A **Discord Bot Install** connection is a server that NoClick's bot was added to, and a server admin can remove the bot at any time. NoClick asks Discord about the server when it lists your credentials, and marks the connection as disconnected once Discord says the bot is no longer there. Message triggers and Discord tools on that connection stop working until you connect Discord again and pick the same server. Discord failing to answer at all is not treated as a removal, so an outage does not mark your connection dead.
## Replace an API key
If a pasted key was revoked or rotated, select the credential on a node, click **Edit credential**, and enter the new key. Stored values are never displayed back, so you re-enter the field.
## On a shared workflow
A credential tagged "Owned by \[someone]" belongs to the workflow owner, and only they can reconnect or edit it. Ask the owner to refresh the connection, or attach your own credential to the node instead.
Dead credentials you no longer need can be deleted from **Settings → Credentials**. Nodes that were using a deleted credential need a new one selected before they can run.
# Webhook not firing
Source: https://docs.noclick.com/troubleshooting/webhooks
A checklist for webhook requests that don't start runs, with the response codes to look for.
When a webhook request doesn't start a run, the response code tells you most of the story. Work through this checklist.
Open **Logs** (`L`) and filter by trigger source **Webhook**. If a run row exists, the request arrived; the problem is in the run itself (click the row to replay it and inspect the payload). If there's no row, the request never got through, so check the response your caller received.
A disabled Webhook node still answers `200` but with the message "Webhook received but trigger is disabled", and no run starts. Re-enable the node.
A `404` ("Webhook not found") means the URL doesn't match any live webhook. Copy the current URL from the node's config panel; URLs are unique per node, so a node from a deleted workflow or an old copy of the URL won't work. A `410` ("Webhook is disabled") means the URL exists but its registration is no longer active; re-copy the URL from the node.
The node accepts only its configured **HTTP Method** (POST by default). Anything else returns `405` with a message like "Webhook only accepts POST".
Any mismatch returns `401`. If a **Secret** is set, requests with a body must include a valid HMAC-SHA256 signature in `X-Hub-Signature-256` or `X-Webhook-Signature`; a missing or wrong signature is rejected. If **Authentication** is set, the Basic credentials, header value, or JWT must match exactly what's configured on the node. See [Webhooks](/triggers/webhooks) for how each scheme works.
## Response codes at a glance
| Code | Meaning |
| ----- | ----------------------------------------------------------------------------------------------------- |
| `200` | Accepted. "Webhook received and workflow triggered", or a note that the trigger is disabled (no run). |
| `401` | Signature or authentication failed. |
| `404` | No webhook at that URL. |
| `405` | HTTP method doesn't match the node's setting. |
| `409` | Last-node response mode only: the run paused (for example at an approval) before it could respond. |
| `410` | The webhook registration is disabled. |
| `500` | Last-node response mode only: the run failed; the body carries the error. |
## A 200 doesn't mean the run succeeded
With **Respond** set to **Immediately** (the default), the caller gets the `200` acknowledgment before the workflow runs, so a failing workflow still returns `200`. Check Logs for the run's real outcome. If the caller needs to know the result, switch the node to respond when the last node finishes.