Compare commits

...

158 Commits

Author SHA1 Message Date
Waleed
8c32ad4c0d v0.5.13: polling fixes, generic agent search tool, status page, smtp, sendgrid, linkedin, more tools (#2148)
* feat(tools): added smtp, sendgrid, mailgun, linkedin, fixed permissions in context menu (#2133)

* feat(tools): added twilio sendgrid integration

* feat(tools): added smtp, sendgrid, mailgun, fixed permissions in context menu

* added top level mocks for sporadically failing tests

* incr type safety

* fix(team-plans): track departed member usage so value not lost (#2118)

* fix(team-plans): track departed member usage so value not lost

* reset usage to 0 when they leave team

* prep merge with stagig

* regen migrations

* fix org invite + ws selection'

---------

Co-authored-by: Waleed <walif6@gmail.com>

* feat(i18n): update translations (#2134)

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>

* feat(creators): add verification for creators (#2135)

* feat(tools): added apify block/tools  (#2136)

* feat(tools): added apify

* cleanup

* feat(i18n): update translations (#2137)

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>

* feat(env): added more optional env var examples (#2138)

* feat(statuspage): added statuspage, updated list of tools in footer, renamed routes (#2139)

* feat(statuspage): added statuspage, updated list of tools in footer, renamed routes

* ack PR comments

* feat(tools): add generic search tool (#2140)

* feat(i18n): update translations (#2141)

* fix(sdks): bump sdk versions (#2142)

* fix(webhooks): count test webhooks towards usage limit (#2143)

* fix(bill): add requestId to webhook processing (#2144)

* improvement(subflow): remove all associated edges when moving a block into a subflow (#2145)

* improvement(subflow): remove all associated edges when moving a block into a subflow

* ack PR comments

* fix(polling): mark webhook failed on webhook trigger errors (#2146)

* fix(deps): declare core transient deps explicitly (#2147)

* fix(deps): declare core transient deps explicitly

* ack PR comments

---------

Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com>
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-12-01 10:15:36 -08:00
Waleed
1e080e98e8 fix(deps): declare core transient deps explicitly (#2147)
* fix(deps): declare core transient deps explicitly

* ack PR comments
2025-12-01 09:51:00 -08:00
Waleed
b069034d9c fix(polling): mark webhook failed on webhook trigger errors (#2146) 2025-12-01 08:18:41 -08:00
Waleed
3a4f130f69 improvement(subflow): remove all associated edges when moving a block into a subflow (#2145)
* improvement(subflow): remove all associated edges when moving a block into a subflow

* ack PR comments
2025-11-30 23:20:51 -08:00
Waleed
e80feee51f fix(bill): add requestId to webhook processing (#2144) 2025-11-30 21:21:54 -08:00
Waleed
7f62467f84 fix(webhooks): count test webhooks towards usage limit (#2143) 2025-11-30 20:28:36 -08:00
Waleed
7b2792122d fix(sdks): bump sdk versions (#2142) 2025-11-30 19:47:58 -08:00
Waleed
4e9cab39c3 feat(i18n): update translations (#2141) 2025-11-30 14:23:27 -08:00
Waleed
e3a57d30e8 feat(tools): add generic search tool (#2140) 2025-11-30 14:13:46 -08:00
Waleed
f25db707d7 feat(statuspage): added statuspage, updated list of tools in footer, renamed routes (#2139)
* feat(statuspage): added statuspage, updated list of tools in footer, renamed routes

* ack PR comments
2025-11-30 10:46:18 -08:00
Waleed
08d57b4f8b feat(env): added more optional env var examples (#2138) 2025-11-30 09:13:39 -08:00
Waleed
f56d85bda6 feat(i18n): update translations (#2137)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-30 09:07:35 -08:00
Waleed
d7a650a355 feat(tools): added apify block/tools (#2136)
* feat(tools): added apify

* cleanup
2025-11-29 23:42:43 -08:00
Waleed
a8f87f7e3a feat(creators): add verification for creators (#2135) 2025-11-29 20:58:18 -08:00
Waleed
9330940658 feat(i18n): update translations (#2134)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-29 20:30:56 -08:00
Vikhyath Mondreti
fc5f815c7a fix(team-plans): track departed member usage so value not lost (#2118)
* fix(team-plans): track departed member usage so value not lost

* reset usage to 0 when they leave team

* prep merge with stagig

* regen migrations

* fix org invite + ws selection'

---------

Co-authored-by: Waleed <walif6@gmail.com>
2025-11-29 18:27:12 -08:00
Waleed
7bf9251db1 feat(tools): added smtp, sendgrid, mailgun, linkedin, fixed permissions in context menu (#2133)
* feat(tools): added twilio sendgrid integration

* feat(tools): added smtp, sendgrid, mailgun, fixed permissions in context menu

* added top level mocks for sporadically failing tests

* incr type safety
2025-11-29 17:58:42 -08:00
Waleed
1d08796853 v0.5.12: memory optimizations, sentry, incidentio, posthog, zendesk, pylon, intercom, mailchimp, loading optimizations (#2132)
* fix(memory-util): fixed unbounded array of gmail/outlook pollers causing high memory util, added missing db indexes/removed unused ones, auto-disable schedules/webhooks after 10 consecutive failures (#2115)

* fix(memory-util): fixed unbounded array of gmail/outlook pollers causing high memory util, added missing db indexes/removed unused ones, auto-disable schedules/webhooks after 10 consecutive failures

* ack PR comments

* ack

* improvement(teams-plan): seats increase simplification + not triggering checkout session (#2117)

* improvement(teams-plan): seats increase simplification + not triggering checkout session

* cleanup via helper

* feat(tools): added sentry, incidentio, and posthog tools (#2116)

* feat(tools): added sentry, incidentio, and posthog tools

* update docs

* fixed docs to use native fumadocs for llms.txt and copy markdown, fixed tool issues

* cleanup

* enhance error extractor, fixed posthog tools

* docs enhancements, cleanup

* added more incident io ops, remove zustand/shallow in favor of zustand/react/shallow

* fix type errors

* remove unnecessary comments

* added vllm to docs

* feat(i18n): update translations (#2120)

* feat(i18n): update translations

* fix build

---------

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>

* improvement(workflow-execution): perf improvements to passing workflow state + decrypted env vars (#2119)

* improvement(execution): load workflow state once instead of 2-3 times

* decrypt only in get helper

* remove comments

* remove comments

* feat(models): host google gemini models (#2122)

* feat(models): host google gemini models

* remove unused primary key

* feat(i18n): update translations (#2123)

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>

* feat(tools): added zendesk, pylon, intercom, & mailchimp (#2126)

* feat(tools): added zendesk, pylon, intercom, & mailchimp

* finish zendesk and pylon

* updated docs

* feat(i18n): update translations (#2129)

* feat(i18n): update translations

* fixed build

---------

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>

* fix(permissions): add client-side permissions validation to prevent unauthorized actions, upgraded custom tool modal (#2130)

* fix(permissions): add client-side permissions validation to prevent unauthorized actions, upgraded custom tool modal

* fix failing test

* fix test

* cleanup

* fix(custom-tools): add composite index on custom tool names & workspace id (#2131)

---------

Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com>
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-28 16:08:06 -08:00
Waleed
21a640af50 fix(custom-tools): add composite index on custom tool names & workspace id (#2131) 2025-11-28 15:33:08 -08:00
Waleed
a10e1a63af fix(permissions): add client-side permissions validation to prevent unauthorized actions, upgraded custom tool modal (#2130)
* fix(permissions): add client-side permissions validation to prevent unauthorized actions, upgraded custom tool modal

* fix failing test

* fix test

* cleanup
2025-11-28 12:24:22 -08:00
Waleed
be91cd3794 feat(i18n): update translations (#2129)
* feat(i18n): update translations

* fixed build

---------

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-27 18:35:31 -08:00
Waleed
1ee49ae611 feat(tools): added zendesk, pylon, intercom, & mailchimp (#2126)
* feat(tools): added zendesk, pylon, intercom, & mailchimp

* finish zendesk and pylon

* updated docs
2025-11-27 16:33:47 -08:00
Waleed
aab1b3f259 feat(i18n): update translations (#2123)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-26 12:53:17 -08:00
Waleed
8000394e98 feat(models): host google gemini models (#2122)
* feat(models): host google gemini models

* remove unused primary key
2025-11-26 12:30:20 -08:00
Vikhyath Mondreti
0830490d32 improvement(workflow-execution): perf improvements to passing workflow state + decrypted env vars (#2119)
* improvement(execution): load workflow state once instead of 2-3 times

* decrypt only in get helper

* remove comments

* remove comments
2025-11-26 12:02:55 -08:00
Waleed
93e1c513b2 feat(i18n): update translations (#2120)
* feat(i18n): update translations

* fix build

---------

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-25 21:35:15 -08:00
Waleed
ff79b78b5f feat(tools): added sentry, incidentio, and posthog tools (#2116)
* feat(tools): added sentry, incidentio, and posthog tools

* update docs

* fixed docs to use native fumadocs for llms.txt and copy markdown, fixed tool issues

* cleanup

* enhance error extractor, fixed posthog tools

* docs enhancements, cleanup

* added more incident io ops, remove zustand/shallow in favor of zustand/react/shallow

* fix type errors

* remove unnecessary comments

* added vllm to docs
2025-11-25 19:50:23 -08:00
Vikhyath Mondreti
3a3c946607 improvement(teams-plan): seats increase simplification + not triggering checkout session (#2117)
* improvement(teams-plan): seats increase simplification + not triggering checkout session

* cleanup via helper
2025-11-25 19:00:12 -08:00
Waleed
7b7586d093 fix(memory-util): fixed unbounded array of gmail/outlook pollers causing high memory util, added missing db indexes/removed unused ones, auto-disable schedules/webhooks after 10 consecutive failures (#2115)
* fix(memory-util): fixed unbounded array of gmail/outlook pollers causing high memory util, added missing db indexes/removed unused ones, auto-disable schedules/webhooks after 10 consecutive failures

* ack PR comments

* ack
2025-11-25 14:15:46 -08:00
Waleed
ebcd243942 v0.5.11: stt, videogen, vllm, billing fixes, new models 2025-11-25 01:14:12 -08:00
Siddharth Ganesan
d413bcdfb0 feat(copilot): add claude opus 4.5 and remove context usage indicator (#2113)
* Add claude opus 4.5 to copilot and remove context usage indicator

* Lint
2025-11-24 16:40:55 -08:00
Siddharth Ganesan
ff768ca410 fix(copilot): fix webhook triggers unsaving in new diff store (#2096)
* Fix copilot trigger unsave

* Fix for schedules

* fix lint

* hide schedule save subblock from preview

---------

Co-authored-by: Vikhyath Mondreti <vikhyath@simstudio.ai>
2025-11-24 16:06:11 -08:00
Vikhyath Mondreti
bbaf7e90f8 improvement(autolayout): simplify code to use fixed block widths, height + refactor (#2112)
* improvement(autolayout): simplify code to use fixed block widths, height + refactor

* change to aliased imports
2025-11-24 13:13:28 -08:00
Waleed
c80827f21b feat(agent): added workflow, kb, and function as a tool for agent block, fix keyboard nav in tool input (#2107)
* feat(agent): added workflow, kb, and function as a tool for agent block

* fix keyboard nav and keyboard selection in tool-inp

* ack PR comments

* remove custom tool changes

* fixed kb tools for agent

* cleanup
2025-11-24 12:16:02 -08:00
Waleed
a5b7897b34 feat(models): added claude opus 4.5 (#2111)
* feat(models): added claude opus 4.5

* add to copilot dropdown
2025-11-24 12:12:30 -08:00
Vikhyath Mondreti
c6482f2997 fix(billing): only check owners for billed overages (#2085) 2025-11-24 11:30:29 -08:00
Adam Gough
bf1719a294 added new scope (#2110) 2025-11-24 10:34:51 -08:00
Waleed
619cab162d feat(i18n): update translations (#2106)
Co-authored-by: aadamgough <aadamgough@users.noreply.github.com>
2025-11-22 21:25:53 -08:00
Adam Gough
72776f4402 improvement(docs): added docs content (#2105) 2025-11-22 17:52:56 -08:00
Waleed
6114c213d2 feature(models): added vllm provider (#2103)
* Add vLLM self-hosted provider

* updated vllm to have pull parity with openai, dynamically fetch models

---------

Co-authored-by: MagellaX <alphacr792@gmail.com>
2025-11-22 14:50:43 -08:00
Waleed
d1f0d21e7f improvement(logs): surface integration triggers in logs instead of catchall 'webhook' trigger type (#2102)
* improvement(logs): surface integration triggers in logs instead of  catchall

* optimized calculation, added new triggers to search

* cleanup

* fix console log
2025-11-22 14:18:42 -08:00
Waleed
33ac828d3d fix(settings): settings components and behavior consolidation (#2100)
* fix(settings): settings components and behavior consolidation

* ack PR comments
2025-11-21 19:49:32 -08:00
Adam Gough
29156e3b61 added missing mcp images (#2099) 2025-11-21 19:02:04 -08:00
Adam Gough
fa4b34fc46 removed broken scope (#2098) 2025-11-21 18:45:00 -08:00
Waleed
9fad5860bc feat(i18n): update translations (#2097)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-21 18:28:13 -08:00
Waleed
0a4244bcef feat(tools): added more tts providers, added stt and videogen models, fixed search modal keyboard nav (#2094)
* feat(tools): added more tts providers, added stt and videogen models, fixed search modal keyboard nav

* fixed icons

* cleaned up

* added falai

* improvement: icons

* fixed build

---------

Co-authored-by: Emir Karabeg <emirkarabeg@berkeley.edu>
2025-11-21 16:56:13 -08:00
Waleed
b7e814b721 v0.5.10: copilot upgrade, preprocessor, logs search, UI, code hygiene 2025-11-21 12:04:34 -08:00
Siddharth Ganesan
3be57aff8f improvement(copilot): add gpt5.1 and codex (#2092) 2025-11-21 11:39:27 -08:00
Siddharth Ganesan
ddd3219126 improvement(copilot): v0.2 (#2086)
* Edit workflow returns workflow

* Condense workflkow conosle

* Limit console results to 2

* mark checkoff v1

* Mark and checkoff todo

* Fixes

* Plan mode

* fix agent output

* broken

* Fixes

* Fix diff mode persist

* Fix diff coloring

* Undo/redo

* Checkpoint udno redo

* fix(templates): fix templates details page (#1942)

* Fix template details

* Fix deps

* fix(templates-details): restore approval feature, and keep details UI consistent, smoothen out creation of profile (#1943)

* fix(templates): view current ui

* update UI to be less cluttered

* make state management for creating user profile smoother

* fix autoselect logic

* fix lint

* fix(landing): need to propagate landing page copilot prompt (#1944)

* fix(wand): subblocks should not be overwritten after wand gen (#1946)

* fix(settings): fix broken api keys, help modal, logs, workflow renaming (#1945)

* fix(settings): fix broken api keys, help modal, logs, workflow renaming

* fix build

* cleanup

* use emcn

* fix(files): changed file input value sample from string -> object (#1947)

* improvement: usage-indicator UI (#1948)

* fix(deploy): fix button (#1949)

* fix(executor): consolidate execution hooks (#1950)

* fix(autoconnect): should check if triggermode is set from the toolbar drag event directly (#1951)

* improvement: templates styling (#1952)

* improvement: template use button (#1954)

* feat(newgifs): added new gifs (#1953)

* new gifs

* changed wording

* changed wording

* lowercase

* changed wording

* remove blog stuff

---------

Co-authored-by: aadamgough <adam@sim.ai>
Co-authored-by: waleed <walif6@gmail.com>

* feat(drizzle): added ods for analytics from drizzle (#1956)

* feat(drizzle): added ods for analytics from drizzle

* clean

* fix(sheets): file selector had incorrect provider (#1958)

* feat(docs): added docs analytics drizzle ods (#1957)

* feat(docs): added docs analytics drizzle ods

* fix build

* fix provider for docs selector (#1959)

* fix(custom-tools): updates to legacy + copilot generated custom tools  (#1960)

* fix(custom-tools): updates to existing tools

* don't reorder custom tools in modal based on edit time

* restructure custom tools to persist copilot generated tools

* fix tests

* fix(slack): remove update message incorrect canonical param (#1964)

* fix(slack): send message tool

* add logging

* add more logs

* add more logs

* fix canonical param

* improvement(templates): add share button, serve public templates routes for unauthenticated users and workspace one for authenticated users, improve settings style and organization (#1962)

* improvement(templates): add share button, serve public templates routes for unauthenticated users and workspace one for authenticated users, improve settings style and organization

* fix lint

---------

Co-authored-by: Vikhyath Mondreti <vikhyath@simstudio.ai>

* fix(onedrive): incorrect canonical param (#1966)

* fix(onedrive): incorrect canonical param

* fix download file

* fix

* fix

* Revert "fix"

This reverts commit f68ccd75fd.

* Revert "fix"

This reverts commit f3d8acee7d.

* fix(executor): streaming after tool calls (#1963)

* Provider changes

* Fix lint

* fix(code): readd wand to code subblock (#1969)

* fix(cmd-k): z-index + reoder tools, triggers (#1970)

* fix(cmd-k): z-index + reoder tools, triggers

* fix more z-index styling

* fix(executor): streaming response format (#1972)

* fix(workflow-block): fix redeploy header to not repeatedly show redeploy when redeploy is not necessary (#1973)

* fix(workflow-block): fix redeploy header to not repeatedly show redeploy when redeploy is not necessary

* cleanup

* improvement(platform): chat, emcn, terminal, usage-limit (#1974)

* improvement(usage-indicator): layout

* improvement: expand default terminal height

* fix: swap workflow block ports

* improvement: chat initial positioning

* improvement(chat): display; improvement(emcn): popover attributes

* fix lint

* feat(settings): added reactquery for settings, removed zustand stores, added apollo, added workflow block selector dropdown search, added add environment variable option to empty env var dropdown (#1971)

* feat(settings): added reactquery for settings, removed zustand stores, added apollo, added workflow block selector dropdown search, added add environment variable option to empty env var dropdown

* fix delete dialog for copilot keys

* simplify combobox

* fix more z indices

* consolidated duplicate hooks

---------

Co-authored-by: Vikhyath Mondreti <vikhyath@simstudio.ai>

* fix(copilot-subflows): copilot-added subflows id mismatch (#1977)

* feat(i18n): update translations (#1978)

* feat(i18n): update translations

* fix build

---------

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>

* fix(logs): show block inputs (#1979)

* Fix executor lgos block inputs

* Fix Comment

* fix(onedrive): parse array values correctly (#1981)

* fix(onedrive): parse array values correctly

* fix onedrive

* fix

* fix onedrive input parsing by reusing code subblock

* fix type

* feat(files): add presigned URL generation support for execution files (#1980)

* fix(popovers): billed account + async example command (#1982)

* fix(settings): update usage data in settings > subs to use reactquery hooks (#1983)

* fix(settings): update usage data in settings > subs to use reactquery hooks

* standardize usage pills calculation

* fix(output-selector): z-index in chat deploy modal (#1984)

* improvement(logs): improved logs search (#1985)

* improvement(logs): improved logs search

* more

* ack PR comments

* feat(slack): added slack full message object in response (#1987)

* feat(slack): add better error messages, reminder to add bot to app (#1990)

* feat(i18n): update translations (#1989)

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>

* fix(landing): hero stripe icon (#1988)

* Temp

* Update

* Update

* Update

* Progress

* Diff store fixes

* simplify sockets ops for diff store

* Search patterns tool

* Better tool calls

* Fix sanitizationg

* Context window display

* fix(variables): fix double stringification (#1991)

* improvement(variables): support dot notation for nested objects (#1992)

* improvement(tanstack): migrate multiple stores (#1994)

* improvement(tanstack): migrate folders, knowledge to tanstack

* fix types

* fix(folders): duplicate (#1996)

* fix(variables): fix variables block json resolution (#1997)

* Improvement(ui/ux): signup, command-list, cursors, search modal, workflow runs, usage indicator (#1998)

* improvement: signup loading, command-list, cursors, search modal ordering

* improvement: workflow runs, search modal

* improvement(usage-indicator): ui/ux

* test(pr): hackathon (#1999)

* test(pr): github trigger (#2000)

* fix(usage-indicator): conditional rendering, upgrade, and ui/ux (#2001)

* fix: usage-limit indicator and render conditonally on is billing enabled

* fix: upgrade render

* fix(notes): fix notes, tighten spacing, update deprecated zustand function, update use mention data to ignore block positon (#2002)

* fix(pdfs): use unpdf instead of pdf-parse (#2004)

* fix(modals): fix z-index for various modals and output selector and variables (#2005)

* fix(condition): treat condition input the same as the code subblock (#2006)

* feat(models): added gpt-5.1 (#2007)

* improvement: runpath edges, blocks, active (#2008)

* feat(i18n): update translations (#2009)

* fix(triggers): check triggermode and consolidate block type (#2011)

* fix(triggers): disabled trigger shouldn't be added to dag (#2012)

* Fix disabled blocks

* Comments

* Fix api/chat trigger not found message

* fix(tags): only show start block upstream if is ancestor (#2013)

* fix(variables): Fix resolution on double < (#2016)

* Fix variable <>

* Ling

* Clean

* feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect (#2015)

* feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect

* fix build

* ack PR comments

* feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI (#2017)

* feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI

* use useInfiniteQuery for logs fetching

* fix(copilot): run workflow supports input format and fix run id (#2018)

* fix(router): fix error edge in router block + fix source handle problem (#2019)

* Fix router block error port handling

* Remove comment

* Fix edge execution

* improvement: code subblock, action bar, connections (#2024)

* improvement: action bar, connections

* fix: code block draggable resize

* fix(response): fix response block http format (#2027)

* Fix response block

* Lint

* fix(notes): fix notes block spacing, additional logs for billing transfer route (#2029)

* fix(usage-data): refetch on usage limit update in settings (#2032)

* fix(overage): fix pill calculation in the usage indicator to be consistent across views (#2034)

* fix(workflows): fixed workflow loading in without start block, added templates RQ hook, cleaned up unused templates code (#2035)

* fix(triggers): dedup + not surfacing deployment status log (#2033)

* fix(triggers): dedup + not surfacing deployment status log

* fix ms teams

* change to microsoftteams

* Revert "change to microsoftteams"

This reverts commit 217f808641.

* fix

* fix

* fix provider name

* fix oauth for msteams

* improvement(undo-redo): expand undo-redo store to store 100 ops instead of 15 (#2036)

* improvement(undo-redo): expand undo-redo store to store 100 ops instead of 15

* prevent undo-redo from interfering with subblock browser text undo

* improvement(docs): remove copy page from mobile view on docs (#2037)

* improvement(docs): remove copy page from mobile view on docs

* bring title and pagenav lower on mobile

* added cursor pointer to clickable components in docs

* fix(workflow-block): clearing child workflow input format field must lazy cascade parent workflow state deletion (#2038)

* Error tools

* Ui tools

* Navigate ui tool

* Combine env vars and oauth tools

* Plan mode section

* Plan mode v1

* Plan mode v1

* Plan mode improvements

* Build plan button

* Make workflow plan editable

* Tool improvements

* Fix build plan button

* Lint

* Fix

* Fix lint

* Fix plan

* Remove migrations

* fix undo/redo settling of ops

* Add migratinos back

* Smoothen out diff store

* Hide plan mode

* Fix lint

* Edit run workflow params

* Fix lint

* Fix tests

* Fix typing

* Fix build errors and lint

* Fix build

* Fix tests

---------

Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com>
Co-authored-by: Waleed <walif6@gmail.com>
Co-authored-by: Emir Karabeg <78010029+emir-karabeg@users.noreply.github.com>
Co-authored-by: Adam Gough <77861281+aadamgough@users.noreply.github.com>
Co-authored-by: aadamgough <adam@sim.ai>
Co-authored-by: Vikhyath Mondreti <vikhyath@simstudio.ai>
Co-authored-by: Emir Karabeg <emirkarabeg@berkeley.edu>
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-21 10:22:08 -08:00
Waleed
67bd5bd8fa fix(integ): remove unused oauth providers from list of supported integrations (#2090) 2025-11-20 20:20:10 -08:00
Waleed
c52501616c feat(i18n): update translations (#2088)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-20 19:37:20 -08:00
Emir Karabeg
3dbf0f5679 feat: keyboard navigation; improvement: SEO/GEO; refactor: file structure, unused fonts; fix: chat streaming, notification stack (#2083)
* improvement: panel tabs handler on click

* fix: output break words

* feat: keyboard navigation; improvement: SEO/GEO; refactor: file structure, unused fonts; fix: chat streaming, notification stack

* feat: unresolved value handling on error; fix: layout refresh; refactor: delete old panel

* refactor: control bar delete; improvement: workflow constants; fix: clear notifications keyboard shortcut

* update developers count

* fixed relative imports

---------

Co-authored-by: waleed <walif6@gmail.com>
2025-11-20 19:37:09 -08:00
Emir Karabeg
6187561219 improvement(chat): ui (#2089) 2025-11-20 19:16:51 -08:00
Waleed
022b4f64a7 fix(linear): fix remaining ops (#2087) 2025-11-20 19:02:12 -08:00
Waleed
768cdec6ce fix(logs): fixed logs search (#2084) 2025-11-20 17:16:08 -08:00
Waleed
75f55c894a fix(logging): add preprocessing util shared by all execution paths (#2081)
* fix(logging): add preprocessing util shared by all execution paths

* DRY
2025-11-20 14:05:14 -08:00
Waleed
4a0450d1fc fix(embeddings): modified embeddings utils to only index english docs (#2078) 2025-11-20 14:03:49 -08:00
Waleed
00ae718692 improvement(runners): upgrade runners, remove trigger deploy action (#2082) 2025-11-20 13:49:17 -08:00
Vikhyath Mondreti
d7586cdd9f fix(undo-redo): eviction policy to not have unbounded undo-redo stacks (#2079)
* fix(undo-redo): eviction policy to not have unbounded undo-redo stacks

* fix zindex custom tools delete
2025-11-20 12:12:04 -08:00
Waleed
842ef27ed9 v0.5.9: add backwards compatibility for agent messages array 2025-11-20 11:19:42 -08:00
Waleed
f208ff9356 fix(agent): add backwards compat for agent messages array (#2076)
* fix(agent): add backwards compat for agent messages array

* add tests
2025-11-20 11:16:06 -08:00
Vikhyath Mondreti
31c34b2ea3 v0.5.8: notifications, billing, ui changes, store loading state machine 2025-11-20 01:32:32 -08:00
Vikhyath Mondreti
304cafe698 improvement(linear): cleanup linear checks (#2075) 2025-11-20 01:32:01 -08:00
Vikhyath Mondreti
472aff5dd7 fix(resolver): json/array field parsing (#2074)
* fix(resolver): json/array field parsing

* remove comment
2025-11-20 00:27:12 -08:00
Waleed
4d5c574363 fix(stt): add fallback for ffmpeg (#2073) 2025-11-19 21:49:12 -08:00
Waleed
e7d4afa46b feat(i18n): update translations (#2071)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-19 21:21:52 -08:00
Waleed
f570592ad7 fix(linear): update required fields (#2070) 2025-11-19 21:17:37 -08:00
Waleed
e64b1c9fcd feat(tools): added speech to text with openai whisper, elevenlabs, and deepgram (#2068)
* feat(tools): added speech to text with openai whisper, elevenlabs, and deepgram

* added new file icons, implemented ffmpeg

* updated docs

* revert environment
2025-11-19 21:03:54 -08:00
Waleed
7c5d625ca5 fix(blogs): update sitemap and fix loading strat on blogs to prevent mobile crash (#2067)
* fix(blogs): update sitemap and fix loading strat on blogs to prevent mobile crash

* updated sitemap
2025-11-19 19:58:26 -08:00
Vikhyath Mondreti
e5cb6e3d0f improvement(store-hydration): refactor loading state tracking for workflows (#2065)
* improvement(store-hydration): refactor loading state tracking for workflows

* fix type issue

* fix

* fix deploy modal reference

* sidebar

* new panel

* reset stores
2025-11-19 19:10:43 -08:00
Waleed
e4ccedc4ff fix(tools): added stricter aura host db validation check for neo4j tool (#2066) 2025-11-19 18:44:33 -08:00
Emir Karabeg
d9cb63ce5f feat(chat): add 'add inputs' button to chat window (#2057)
* improvement(ui): workflow-block border

* feat(chat): add inputs button

* added socket event, reused existing utils to persist chat inputs

---------

Co-authored-by: waleed <walif6@gmail.com>
2025-11-19 18:12:03 -08:00
Waleed
3468593f84 feat(i18n): update translations (#2064)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-19 18:01:52 -08:00
Waleed
95d5fd9c35 feat(i18n): update translations (#2062)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-19 17:44:42 -08:00
Waleed
becd19bc50 improvement(ux): added tab key navigation for agent messages, made variables styling match chat, added neo4j and calendly (#2056)
* improvement(ux): added tab key navigation for agent messages, made variables styling match chat

* added neo4j tools, added calendly tools and triggers

* more style improvements

* consolidate wand generation type

* more ui improvements

* fix calendly

* tested all neo4j tools

* added fuzzy search for search modal, tested and fixed calendly

* updated docs

* fix various broken docs links, neo4j param validation

* removed limit from neo4j block
2025-11-19 17:40:20 -08:00
Travis Johnson
c93f6620f6 improvement(tools): add eleven_v3 to elevenlabs block (#2053) 2025-11-19 17:39:17 -08:00
Adam Gough
3647a3e38c improvement(tools): added add worksheet to excel block (#2061)
Co-authored-by: aadamgough <adam@sim.ai>
2025-11-19 17:34:45 -08:00
Vikhyath Mondreti
f609b6ea4a fix(z-index): deployment versions rename + view active popover (#2059) 2025-11-19 16:42:09 -08:00
Vikhyath Mondreti
2be3007d69 fix(mcp-preview): server and tool name fetch to use tanstack (#2058)
* fix(mcp-preview): server and tool name fetch to use tanstack

* remove comments

* fix mcp tool interface

* change incorrect reference

* fix

* remove comments
2025-11-19 16:22:17 -08:00
Waleed
570b8d61f0 improvement(runners): added blacksmith optimizations to workflows and dockerfiles to enhance performance (#2055)
* added blacksmith optimizations to workflows and dockerfiles to enhance performance. please review before pushing to production

* remove cache from and cache to directives from docker based actions, per blacksmith docs

---------

Co-authored-by: Connor Mulholland <connormul@Connors-MacBook-Pro.local>
2025-11-19 13:07:03 -08:00
Waleed
7045c4a47b fix(dialogs): standardized delete modals (#2049)
* standardized delete modals

* fix

* fix(ui): live usage indicator, child trace spans, cancel subscription modal z-index (#2044)

* cleanup

* show trace spans for child blocks that error

* fix z index for cancel subscription popup

* rotating digit live usage indicator

* fix

* remove unused code

* fix type

* fix(billing): fix team upgrade

* fix

* fix tests

---------

Co-authored-by: waleed <walif6@gmail.com>

* remove unused barrel exports

* remove unused components

---------

Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com>
2025-11-18 21:17:06 -08:00
Vikhyath Mondreti
5e11e5df91 fix(ui): live usage indicator, child trace spans, cancel subscription modal z-index (#2044)
* cleanup

* show trace spans for child blocks that error

* fix z index for cancel subscription popup

* rotating digit live usage indicator

* fix

* remove unused code

* fix type

* fix(billing): fix team upgrade

* fix

* fix tests

---------

Co-authored-by: waleed <walif6@gmail.com>
2025-11-18 20:21:16 -08:00
Waleed
2608f2f12c fix(copiolot-ui): fix code markdown rendering in copilot & table (#2048) 2025-11-18 18:06:18 -08:00
Waleed
96207d85a7 fix(subflows): add loops/parallels to accessible list of blocks in the tag dropdown when contained withitn a subflow (#2047)
* fix(subflows): add loops/parallels to accessible list of blocks in the tag dropdown when contained withitn a subflow

* remove currentIteration in loop
2025-11-18 17:24:30 -08:00
Waleed
a7fe1d3aea fix(models): remove unrelease oai models, fix help modal (#2046) 2025-11-18 17:08:47 -08:00
Waleed
3faab2cb01 improvement(notifications): add option to disable error notifications, remove deprecated autoFillEnvVars field (#2045) 2025-11-18 16:28:59 -08:00
Emir Karabeg
02d9fedf0c feat(agent): messages array, memory (#2023)
* feat(agent): messages array, memory options

* feat(messages-input): re-order messages

* backend for new memory setup, backwards compatibility in loadWorkflowsFromNormalizedTable from old agent block to new format

* added memories all conversation sliding token window, standardized modals

* lint

* fix build

* reorder popover for output selector for chat

* add internal auth, finish memories

* fix rebase

* fix failing test

---------

Co-authored-by: waleed <walif6@gmail.com>
2025-11-18 15:58:10 -08:00
Waleed
a8a693f1ff fix(deploy): add sockets op for renaming blocks (#2043)
* fix(deploy): add sockets op for renaming blocks

* remove old unused helpers
2025-11-18 15:57:49 -08:00
Emir Karabeg
e0aade85a6 feat: notification store (#2025)
* feat: notification store

* feat: notification stack; improvement: chat output select
2025-11-18 10:43:24 -08:00
Vikhyath Mondreti
8f0ef58056 v0.5.7: combobox selectors, usage indicator, workflow loading race condition, other improvements 2025-11-17 21:25:51 -08:00
Vikhyath Mondreti
33ca1483aa Merge branch 'main' into staging 2025-11-17 21:21:30 -08:00
Vikhyath Mondreti
620ce97056 improvement(selectors): consolidate all integration selectors to use the combobox (#2020)
* improvement(selectors): consolidate all integration selectors to use the combobox

* improved credential selector and file-upload styling to use emcn combobox

* update mcp subblocks to use emcn components, delete unused mcp server modal

* fix filterOptions change

* fix project selector

* attempted jira fix

* fix gdrive inf calls

* rewrite credential selector

* fix docs

* fix onedrive folder

* fix

* fix

* fix excel cred fetch

* fix excel part 2

---------

Co-authored-by: waleed <walif6@gmail.com>
2025-11-17 21:06:52 -08:00
Vikhyath Mondreti
25ac91779b fix(workflow-block): clearing child workflow input format field must lazy cascade parent workflow state deletion (#2038) 2025-11-17 19:00:50 -08:00
Waleed
d51a756c1b improvement(docs): remove copy page from mobile view on docs (#2037)
* improvement(docs): remove copy page from mobile view on docs

* bring title and pagenav lower on mobile

* added cursor pointer to clickable components in docs
2025-11-17 18:10:52 -08:00
Waleed
3d1feab507 improvement(undo-redo): expand undo-redo store to store 100 ops instead of 15 (#2036)
* improvement(undo-redo): expand undo-redo store to store 100 ops instead of 15

* prevent undo-redo from interfering with subblock browser text undo
2025-11-17 18:00:12 -08:00
Vikhyath Mondreti
98908dbfb9 fix(triggers): dedup + not surfacing deployment status log (#2033)
* fix(triggers): dedup + not surfacing deployment status log

* fix ms teams

* change to microsoftteams

* Revert "change to microsoftteams"

This reverts commit 217f808641.

* fix

* fix

* fix provider name

* fix oauth for msteams
2025-11-17 17:48:22 -08:00
Waleed
00d9b45a22 fix(workflows): fixed workflow loading in without start block, added templates RQ hook, cleaned up unused templates code (#2035) 2025-11-17 17:31:01 -08:00
Waleed
b5b2855b40 fix(overage): fix pill calculation in the usage indicator to be consistent across views (#2034) 2025-11-17 16:22:24 -08:00
Waleed
a81f3847df fix(usage-data): refetch on usage limit update in settings (#2032) 2025-11-17 15:07:52 -08:00
Waleed
3058e35edf v0.5.6: executor fixes, UI improvements, run paths (#2028)
* test(pr): hackathon (#1999)

* test(pr): github trigger (#2000)

* fix(usage-indicator): conditional rendering, upgrade, and ui/ux (#2001)

* fix: usage-limit indicator and render conditonally on is billing enabled

* fix: upgrade render

* fix(notes): fix notes, tighten spacing, update deprecated zustand function, update use mention data to ignore block positon (#2002)

* fix(pdfs): use unpdf instead of pdf-parse (#2004)

* fix(modals): fix z-index for various modals and output selector and variables (#2005)

* fix(condition): treat condition input the same as the code subblock (#2006)

* feat(models): added gpt-5.1 (#2007)

* improvement: runpath edges, blocks, active (#2008)

* feat(i18n): update translations (#2009)

* fix(triggers): check triggermode and consolidate block type (#2011)

* fix(triggers): disabled trigger shouldn't be added to dag (#2012)

* Fix disabled blocks

* Comments

* Fix api/chat trigger not found message

* fix(tags): only show start block upstream if is ancestor (#2013)

* fix(variables): Fix resolution on double < (#2016)

* Fix variable <>

* Ling

* Clean

* feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect (#2015)

* feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect

* fix build

* ack PR comments

* feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI (#2017)

* feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI

* use useInfiniteQuery for logs fetching

* fix(copilot): run workflow supports input format and fix run id (#2018)

* fix(router): fix error edge in router block + fix source handle problem (#2019)

* Fix router block error port handling

* Remove comment

* Fix edge execution

* improvement: code subblock, action bar, connections (#2024)

* improvement: action bar, connections

* fix: code block draggable resize

* fix(response): fix response block http format (#2027)

* Fix response block

* Lint

* fix(notes): fix notes block spacing, additional logs for billing transfer route (#2029)

---------

Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com>
Co-authored-by: Emir Karabeg <78010029+emir-karabeg@users.noreply.github.com>
Co-authored-by: Siddharth Ganesan <33737564+Sg312@users.noreply.github.com>
2025-11-17 13:46:03 -08:00
Waleed
6f3dee867c fix(notes): fix notes block spacing, additional logs for billing transfer route (#2029) 2025-11-17 13:37:17 -08:00
Siddharth Ganesan
bfa7c919d8 fix(response): fix response block http format (#2027)
* Fix response block

* Lint
2025-11-17 11:50:33 -08:00
Emir Karabeg
e37b01b92c improvement: code subblock, action bar, connections (#2024)
* improvement: action bar, connections

* fix: code block draggable resize
2025-11-17 11:04:41 -08:00
Siddharth Ganesan
7e3e38a6f2 fix(router): fix error edge in router block + fix source handle problem (#2019)
* Fix router block error port handling

* Remove comment

* Fix edge execution
2025-11-15 18:32:14 -08:00
Siddharth Ganesan
1c85fe9a51 fix(copilot): run workflow supports input format and fix run id (#2018) 2025-11-15 18:11:09 -08:00
Waleed
5f446ad756 feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI (#2017)
* feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI

* use useInfiniteQuery for logs fetching
2025-11-15 16:41:35 -08:00
Waleed
d99d5fe39c feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect (#2015)
* feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect

* fix build

* ack PR comments
2025-11-15 16:09:58 -08:00
Siddharth Ganesan
949f9287cf fix(variables): Fix resolution on double < (#2016)
* Fix variable <>

* Ling

* Clean
2025-11-15 15:09:01 -08:00
Siddharth Ganesan
fca92a7499 fix(tags): only show start block upstream if is ancestor (#2013) 2025-11-15 12:27:34 -08:00
Siddharth Ganesan
c25ea5c677 fix(triggers): disabled trigger shouldn't be added to dag (#2012)
* Fix disabled blocks

* Comments

* Fix api/chat trigger not found message
2025-11-15 12:19:37 -08:00
Siddharth Ganesan
dccd9e9ce5 fix(triggers): check triggermode and consolidate block type (#2011) 2025-11-15 12:00:12 -08:00
Waleed
b5d9964c48 feat(i18n): update translations (#2009) 2025-11-14 23:33:13 -08:00
Emir Karabeg
4bd0f31f36 improvement: runpath edges, blocks, active (#2008) 2025-11-14 23:26:41 -08:00
Waleed
f8070f9029 feat(models): added gpt-5.1 (#2007) 2025-11-14 23:23:47 -08:00
Waleed
bc8947caa6 fix(condition): treat condition input the same as the code subblock (#2006) 2025-11-14 23:23:39 -08:00
Waleed
f1111ec16f fix(modals): fix z-index for various modals and output selector and variables (#2005) 2025-11-14 23:13:31 -08:00
Waleed
d0767507b2 fix(pdfs): use unpdf instead of pdf-parse (#2004) 2025-11-14 22:39:28 -08:00
Waleed
8bd75debc1 fix(notes): fix notes, tighten spacing, update deprecated zustand function, update use mention data to ignore block positon (#2002) 2025-11-14 22:12:01 -08:00
Emir Karabeg
ad2a375358 fix(usage-indicator): conditional rendering, upgrade, and ui/ux (#2001)
* fix: usage-limit indicator and render conditonally on is billing enabled

* fix: upgrade render
2025-11-14 21:26:40 -08:00
Vikhyath Mondreti
de91dc97a9 test(pr): github trigger (#2000) 2025-11-14 18:08:07 -08:00
Vikhyath Mondreti
31ed712378 test(pr): hackathon (#1999) 2025-11-14 18:02:00 -08:00
Waleed
aca4d2fc15 v0.5.5: slack tool updates, logs search, response block fixes, reactquery migrations 2025-11-14 16:20:10 -08:00
Emir Karabeg
96958104c0 Improvement(ui/ux): signup, command-list, cursors, search modal, workflow runs, usage indicator (#1998)
* improvement: signup loading, command-list, cursors, search modal ordering

* improvement: workflow runs, search modal

* improvement(usage-indicator): ui/ux
2025-11-14 16:13:23 -08:00
Siddharth Ganesan
6f29e2413c fix(variables): fix variables block json resolution (#1997) 2025-11-14 16:07:01 -08:00
Vikhyath Mondreti
c2ccd51b3e fix(folders): duplicate (#1996) 2025-11-14 15:50:00 -08:00
Vikhyath Mondreti
ec430abca2 improvement(tanstack): migrate multiple stores (#1994)
* improvement(tanstack): migrate folders, knowledge to tanstack

* fix types
2025-11-14 15:38:15 -08:00
Siddharth Ganesan
4b4060f63f improvement(variables): support dot notation for nested objects (#1992) 2025-11-14 14:47:16 -08:00
Siddharth Ganesan
72a048f37d fix(variables): fix double stringification (#1991) 2025-11-14 12:00:32 -08:00
Emir Karabeg
fa18bef65b fix(landing): hero stripe icon (#1988) 2025-11-14 02:20:32 -08:00
Waleed
a9eb91aed1 feat(i18n): update translations (#1989)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-14 02:18:32 -08:00
Waleed
16a4f37dac feat(slack): add better error messages, reminder to add bot to app (#1990) 2025-11-14 02:18:19 -08:00
Waleed
6c56d48e73 feat(slack): added slack full message object in response (#1987) 2025-11-14 01:55:01 -08:00
Waleed
1082e55871 improvement(logs): improved logs search (#1985)
* improvement(logs): improved logs search

* more

* ack PR comments
2025-11-14 01:14:20 -08:00
Vikhyath Mondreti
948b6575dc fix(output-selector): z-index in chat deploy modal (#1984) 2025-11-13 20:13:15 -08:00
Waleed
3ba33791f7 fix(settings): update usage data in settings > subs to use reactquery hooks (#1983)
* fix(settings): update usage data in settings > subs to use reactquery hooks

* standardize usage pills calculation
2025-11-13 19:57:48 -08:00
Vikhyath Mondreti
1e915d5427 fix(popovers): billed account + async example command (#1982) 2025-11-13 19:33:15 -08:00
Waleed
d86198ad5d feat(files): add presigned URL generation support for execution files (#1980) 2025-11-13 19:32:23 -08:00
Vikhyath Mondreti
785f847c48 fix(onedrive): parse array values correctly (#1981)
* fix(onedrive): parse array values correctly

* fix onedrive

* fix

* fix onedrive input parsing by reusing code subblock

* fix type
2025-11-13 19:24:33 -08:00
Siddharth Ganesan
dab70a8f1d fix(logs): show block inputs (#1979)
* Fix executor lgos block inputs

* Fix Comment
2025-11-13 19:07:53 -08:00
Waleed
d2c0147822 v0.5.4: streaming fixes, deployment bug fixes, resolve ui bugs, tanstack query for settings, copilot subflow edits fixes 2025-11-13 18:29:20 -08:00
Waleed
67d9343022 feat(i18n): update translations (#1978)
* feat(i18n): update translations

* fix build

---------

Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
2025-11-13 18:07:42 -08:00
Vikhyath Mondreti
b3caef1f31 fix(copilot-subflows): copilot-added subflows id mismatch (#1977) 2025-11-13 17:56:26 -08:00
Waleed
5457d4bc7b feat(settings): added reactquery for settings, removed zustand stores, added apollo, added workflow block selector dropdown search, added add environment variable option to empty env var dropdown (#1971)
* feat(settings): added reactquery for settings, removed zustand stores, added apollo, added workflow block selector dropdown search, added add environment variable option to empty env var dropdown

* fix delete dialog for copilot keys

* simplify combobox

* fix more z indices

* consolidated duplicate hooks

---------

Co-authored-by: Vikhyath Mondreti <vikhyath@simstudio.ai>
2025-11-13 17:33:05 -08:00
Emir Karabeg
32a2e09a14 fix lint 2025-11-13 16:31:30 -08:00
Emir Karabeg
80eaeb00c2 improvement(platform): chat, emcn, terminal, usage-limit (#1974)
* improvement(usage-indicator): layout

* improvement: expand default terminal height

* fix: swap workflow block ports

* improvement: chat initial positioning

* improvement(chat): display; improvement(emcn): popover attributes
2025-11-13 16:02:13 -08:00
Waleed
b67b4ff8fb fix(workflow-block): fix redeploy header to not repeatedly show redeploy when redeploy is not necessary (#1973)
* fix(workflow-block): fix redeploy header to not repeatedly show redeploy when redeploy is not necessary

* cleanup
2025-11-13 15:40:09 -08:00
Siddharth Ganesan
6f4f8cfad2 fix(executor): streaming response format (#1972) 2025-11-13 15:27:15 -08:00
Vikhyath Mondreti
3a8f01f3e4 fix(cmd-k): z-index + reoder tools, triggers (#1970)
* fix(cmd-k): z-index + reoder tools, triggers

* fix more z-index styling
2025-11-13 13:59:09 -08:00
Vikhyath Mondreti
383b6f05a6 fix(code): readd wand to code subblock (#1969) 2025-11-13 12:31:10 -08:00
Siddharth Ganesan
a70f2a6690 fix(executor): streaming after tool calls (#1963)
* Provider changes

* Fix lint
2025-11-13 12:24:26 -08:00
Vikhyath Mondreti
53150021e0 v0.5.3: docs, sheets, slack, custom tools fixes and templates contexts improvements 2025-11-12 22:17:06 -08:00
Vikhyath Mondreti
4e5b834433 fix(onedrive): incorrect canonical param (#1966)
* fix(onedrive): incorrect canonical param

* fix download file

* fix

* fix

* Revert "fix"

This reverts commit f68ccd75fd.

* Revert "fix"

This reverts commit f3d8acee7d.
2025-11-12 22:16:13 -08:00
Waleed
304fb28baf improvement(templates): add share button, serve public templates routes for unauthenticated users and workspace one for authenticated users, improve settings style and organization (#1962)
* improvement(templates): add share button, serve public templates routes for unauthenticated users and workspace one for authenticated users, improve settings style and organization

* fix lint

---------

Co-authored-by: Vikhyath Mondreti <vikhyath@simstudio.ai>
2025-11-12 21:46:26 -08:00
Vikhyath Mondreti
07e803cfdd fix(slack): remove update message incorrect canonical param (#1964)
* fix(slack): send message tool

* add logging

* add more logs

* add more logs

* fix canonical param
2025-11-12 21:46:00 -08:00
Vikhyath Mondreti
d50aefcc68 fix(custom-tools): updates to legacy + copilot generated custom tools (#1960)
* fix(custom-tools): updates to existing tools

* don't reorder custom tools in modal based on edit time

* restructure custom tools to persist copilot generated tools

* fix tests
2025-11-12 18:50:58 -08:00
Vikhyath Mondreti
6513cbb7c1 fix provider for docs selector (#1959) 2025-11-12 17:57:04 -08:00
Waleed
f9e822f6c8 feat(docs): added docs analytics drizzle ods (#1957)
* feat(docs): added docs analytics drizzle ods

* fix build
2025-11-12 17:51:58 -08:00
Vikhyath Mondreti
74202ce1fc fix(sheets): file selector had incorrect provider (#1958) 2025-11-12 17:36:28 -08:00
1703 changed files with 211869 additions and 49137 deletions

View File

@@ -374,7 +374,7 @@ In addition, you will need to update the registries:
Add your block to the blocks registry (`/apps/sim/blocks/registry.ts`):
```typescript:/apps/sim/blocks/registry.ts
import { PineconeBlock } from './blocks/pinecone'
import { PineconeBlock } from '@/blocks/blocks/pinecone'
// Registry of all available blocks
export const registry: Record<string, BlockConfig> = {

View File

@@ -21,7 +21,7 @@ jobs:
name: Build AMD64
needs: test-build
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging')
runs-on: blacksmith-4vcpu-ubuntu-2404
runs-on: blacksmith-8vcpu-ubuntu-2404
permissions:
contents: read
packages: write
@@ -162,7 +162,7 @@ jobs:
# Create GHCR multi-arch manifests (only for main, after both builds)
create-ghcr-manifests:
name: Create GHCR Manifests
runs-on: blacksmith-4vcpu-ubuntu-2404
runs-on: blacksmith-8vcpu-ubuntu-2404
needs: [build-amd64, build-ghcr-arm64]
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
permissions:
@@ -198,18 +198,30 @@ jobs:
"${IMAGE_BASE}:${{ github.sha }}-arm64"
docker manifest push "${IMAGE_BASE}:${{ github.sha }}"
# Deploy Trigger.dev (after ECR images are pushed, runs in parallel with process-docs)
trigger-deploy:
name: Deploy Trigger.dev
needs: build-amd64
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging')
uses: ./.github/workflows/trigger-deploy.yml
secrets: inherit
# Check if docs changed
check-docs-changes:
name: Check Docs Changes
runs-on: blacksmith-4vcpu-ubuntu-2404
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
outputs:
docs_changed: ${{ steps.filter.outputs.docs }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 2 # Need at least 2 commits to detect changes
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
docs:
- 'apps/docs/content/docs/en/**'
- 'apps/sim/scripts/process-docs.ts'
- 'apps/sim/lib/chunkers/**'
# Process docs embeddings (after ECR images are pushed, runs in parallel with trigger-deploy)
# Process docs embeddings (only when docs change, after ECR images are pushed)
process-docs:
name: Process Docs
needs: build-amd64
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging')
needs: [build-amd64, check-docs-changes]
if: needs.check-docs-changes.outputs.docs_changed == 'true'
uses: ./.github/workflows/docs-embeddings.yml
secrets: inherit

View File

@@ -7,8 +7,8 @@ on:
jobs:
process-docs-embeddings:
name: Process Documentation Embeddings
runs-on: blacksmith-4vcpu-ubuntu-2404
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/staging'
runs-on: blacksmith-8vcpu-ubuntu-2404
if: github.ref == 'refs/heads/main'
steps:
- name: Checkout code
@@ -24,12 +24,23 @@ jobs:
with:
node-version: latest
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Install dependencies
run: bun install
run: bun install --frozen-lockfile
- name: Process docs embeddings
working-directory: ./apps/sim
env:
DATABASE_URL: ${{ github.ref == 'refs/heads/main' && secrets.DATABASE_URL || secrets.STAGING_DATABASE_URL }}
DATABASE_URL: ${{ secrets.DATABASE_URL }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: bun run scripts/process-docs.ts --clear

View File

@@ -28,6 +28,17 @@ jobs:
with:
bun-version: 1.2.22
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Run Lingo.dev translations
env:
LINGODOTDEV_API_KEY: ${{ secrets.LINGODOTDEV_API_KEY }}
@@ -117,10 +128,21 @@ jobs:
with:
bun-version: 1.2.22
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Install dependencies
run: |
cd apps/docs
bun install
bun install --frozen-lockfile
- name: Build documentation to verify translations
run: |

View File

@@ -12,7 +12,7 @@ permissions:
jobs:
build-amd64:
name: Build AMD64
runs-on: blacksmith-4vcpu-ubuntu-2404
runs-on: blacksmith-8vcpu-ubuntu-2404
strategy:
fail-fast: false
matrix:
@@ -146,7 +146,7 @@ jobs:
create-ghcr-manifests:
name: Create GHCR Manifests
runs-on: blacksmith-4vcpu-ubuntu-2404
runs-on: blacksmith-8vcpu-ubuntu-2404
needs: [build-amd64, build-ghcr-arm64]
if: github.ref == 'refs/heads/main'
strategy:

View File

@@ -18,8 +18,19 @@ jobs:
with:
bun-version: 1.2.22
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Install dependencies
run: bun install
run: bun install --frozen-lockfile
- name: Apply migrations
working-directory: ./packages/db

View File

@@ -24,9 +24,20 @@ jobs:
node-version: '18'
registry-url: 'https://registry.npmjs.org/'
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Install dependencies
working-directory: packages/cli
run: bun install
run: bun install --frozen-lockfile
- name: Build package
working-directory: packages/cli

View File

@@ -24,8 +24,19 @@ jobs:
node-version: '22'
registry-url: 'https://registry.npmjs.org/'
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Install dependencies
run: bun install
run: bun install --frozen-lockfile
- name: Run tests
working-directory: packages/ts-sdk

View File

@@ -23,6 +23,17 @@ jobs:
with:
node-version: latest
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
path: |
~/.bun/install/cache
node_modules
**/node_modules
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Install dependencies
run: bun install --frozen-lockfile

View File

@@ -1,44 +0,0 @@
name: Trigger.dev Deploy
on:
workflow_call:
workflow_dispatch:
jobs:
deploy:
name: Deploy to Trigger.dev
runs-on: blacksmith-4vcpu-ubuntu-2404
concurrency:
group: trigger-deploy-${{ github.ref }}
cancel-in-progress: false
env:
TRIGGER_ACCESS_TOKEN: ${{ secrets.TRIGGER_ACCESS_TOKEN }}
TRIGGER_PROJECT_ID: ${{ secrets.TRIGGER_PROJECT_ID }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: latest
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: 1.2.22
- name: Install dependencies
run: bun install
- name: Deploy to Trigger.dev (Staging)
if: github.ref == 'refs/heads/staging'
working-directory: ./apps/sim
run: npx --yes trigger.dev@4.0.4 deploy -e staging
- name: Deploy to Trigger.dev (Production)
if: github.ref == 'refs/heads/main'
working-directory: ./apps/sim
run: npx --yes trigger.dev@4.0.4 deploy

View File

@@ -198,15 +198,11 @@ export default async function Page(props: { params: Promise<{ slug?: string[]; l
component: <CustomFooter />,
}}
>
<div className='relative'>
<div className='relative mt-6 sm:mt-0'>
<div className='absolute top-1 right-0 flex items-center gap-2'>
<CopyPageButton
content={`# ${page.data.title}
${page.data.description || ''}
${page.data.content || ''}`}
/>
<div className='hidden sm:flex'>
<CopyPageButton markdownUrl={`${page.url}.mdx`} />
</div>
<PageNavigationArrows previous={neighbours?.previous} next={neighbours?.next} />
</div>
<DocsTitle>{page.data.title}</DocsTitle>

View File

@@ -13,7 +13,6 @@ import { Navbar } from '@/components/navbar/navbar'
import { i18n } from '@/lib/i18n'
import { source } from '@/lib/source'
import '../global.css'
import { Analytics } from '@vercel/analytics/next'
const inter = Inter({
subsets: ['latin'],
@@ -94,6 +93,8 @@ export default async function Layout({ children, params }: LayoutProps) {
type='application/ld+json'
dangerouslySetInnerHTML={{ __html: JSON.stringify(structuredData) }}
/>
{/* OneDollarStats Analytics - CDN script handles everything automatically */}
<script defer src='https://assets.onedollarstats.com/stonks.js' />
</head>
<body className='flex min-h-screen flex-col font-sans'>
<RootProvider i18n={provider(lang)}>
@@ -132,7 +133,6 @@ export default async function Layout({ children, params }: LayoutProps) {
>
{children}
</DocsLayout>
<Analytics />
</RootProvider>
</body>
</html>

View File

@@ -10,7 +10,11 @@ export async function GET(_req: NextRequest, { params }: { params: Promise<{ slu
const page = source.getPage(slug)
if (!page) notFound()
return new NextResponse(await getLLMText(page))
return new NextResponse(await getLLMText(page), {
headers: {
'Content-Type': 'text/markdown',
},
})
}
export function generateStaticParams() {

11
apps/docs/cli.json Normal file
View File

@@ -0,0 +1,11 @@
{
"aliases": {
"uiDir": "./components/ui",
"componentsDir": "./components",
"blockDir": "./components",
"cssDir": "./styles",
"libDir": "./lib"
},
"baseDir": "",
"commands": {}
}

View File

@@ -69,7 +69,7 @@ export function SidebarFolder({
</Link>
<button
onClick={() => setOpen(!open)}
className='rounded p-1 transition-colors hover:bg-gray-100/60 dark:hover:bg-gray-800/40'
className='cursor-pointer rounded p-1 transition-colors hover:bg-gray-100/60 dark:hover:bg-gray-800/40'
aria-label={open ? 'Collapse' : 'Expand'}
>
<ChevronRight
@@ -84,7 +84,7 @@ export function SidebarFolder({
<button
onClick={() => setOpen(!open)}
className={cn(
'flex w-full items-center justify-between rounded-md px-2.5 py-1.5 text-left font-medium text-[13px] leading-tight transition-colors',
'flex w-full cursor-pointer items-center justify-between rounded-md px-2.5 py-1.5 text-left font-medium text-[13px] leading-tight transition-colors',
'hover:bg-gray-100/60 dark:hover:bg-gray-800/40',
'text-gray-800 dark:text-gray-200'
)}

File diff suppressed because one or more lines are too long

View File

@@ -1,7 +1,7 @@
'use client'
import type * as React from 'react'
import { blockTypeToIconMap } from './icon-mapping'
import { blockTypeToIconMap } from '@/components/ui/icon-mapping'
interface BlockInfoCardProps {
type: string

View File

@@ -0,0 +1,27 @@
import { cva, type VariantProps } from 'class-variance-authority'
const variants = {
primary: 'bg-fd-primary text-fd-primary-foreground hover:bg-fd-primary/80',
outline: 'border hover:bg-fd-accent hover:text-fd-accent-foreground',
ghost: 'hover:bg-fd-accent hover:text-fd-accent-foreground',
secondary:
'border bg-fd-secondary text-fd-secondary-foreground hover:bg-fd-accent hover:text-fd-accent-foreground',
} as const
export const buttonVariants = cva(
'inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring',
{
variants: {
variant: variants,
color: variants,
size: {
sm: 'gap-1 px-2 py-1.5 text-xs',
icon: 'p-1.5 [&_svg]:size-5',
'icon-sm': 'p-1.5 [&_svg]:size-4.5',
'icon-xs': 'p-1 [&_svg]:size-4',
},
},
}
)
export type ButtonProps = VariantProps<typeof buttonVariants>

View File

@@ -30,7 +30,7 @@ export function CodeBlock(props: React.ComponentProps<typeof FumadocsCodeBlock>)
if (pre) handleCopy(pre.textContent || '')
}}
className={cn(
'rounded-md p-2 transition-all',
'cursor-pointer rounded-md p-2 transition-all',
'border border-border bg-background/80 hover:bg-muted',
'backdrop-blur-sm'
)}

View File

@@ -3,27 +3,50 @@
import { useState } from 'react'
import { Check, Copy } from 'lucide-react'
const cache = new Map<string, string>()
interface CopyPageButtonProps {
content: string
markdownUrl: string
}
export function CopyPageButton({ content }: CopyPageButtonProps) {
export function CopyPageButton({ markdownUrl }: CopyPageButtonProps) {
const [copied, setCopied] = useState(false)
const [isLoading, setLoading] = useState(false)
const handleCopy = async () => {
const cached = cache.get(markdownUrl)
if (cached) {
await navigator.clipboard.writeText(cached)
setCopied(true)
setTimeout(() => setCopied(false), 2000)
return
}
setLoading(true)
try {
await navigator.clipboard.writeText(content)
await navigator.clipboard.write([
new ClipboardItem({
'text/plain': fetch(markdownUrl).then(async (res) => {
const content = await res.text()
cache.set(markdownUrl, content)
return content
}),
}),
])
setCopied(true)
setTimeout(() => setCopied(false), 2000)
} catch (err) {
console.error('Failed to copy:', err)
} finally {
setLoading(false)
}
}
return (
<button
disabled={isLoading}
onClick={handleCopy}
className='flex items-center gap-1.5 rounded-lg border border-border/40 bg-background px-2.5 py-2 text-muted-foreground/60 text-sm leading-none transition-all hover:border-border hover:bg-accent/50 hover:text-muted-foreground'
className='flex cursor-pointer items-center gap-1.5 rounded-lg border border-border/40 bg-background px-2.5 py-2 text-muted-foreground/60 text-sm leading-none transition-all hover:border-border hover:bg-accent/50 hover:text-muted-foreground'
aria-label={copied ? 'Copied to clipboard' : 'Copy page content'}
>
{copied ? (

View File

@@ -5,10 +5,13 @@
import type { ComponentType, SVGProps } from 'react'
import {
AirtableIcon,
ApifyIcon,
ApolloIcon,
ArxivIcon,
AsanaIcon,
BrainIcon,
BrowserUseIcon,
CalendlyIcon,
ClayIcon,
ConfluenceIcon,
DiscordIcon,
@@ -30,10 +33,15 @@ import {
HuggingFaceIcon,
HunterIOIcon,
ImageIcon,
IncidentioIcon,
IntercomIcon,
JinaAIIcon,
JiraIcon,
LinearIcon,
LinkedInIcon,
LinkupIcon,
MailchimpIcon,
MailgunIcon,
Mem0Icon,
MicrosoftExcelIcon,
MicrosoftOneDriveIcon,
@@ -43,6 +51,7 @@ import {
MistralIcon,
MongoDBIcon,
MySQLIcon,
Neo4jIcon,
NotionIcon,
OpenAIIcon,
OutlookIcon,
@@ -52,13 +61,20 @@ import {
PineconeIcon,
PipedriveIcon,
PostgresIcon,
PosthogIcon,
PylonIcon,
QdrantIcon,
RedditIcon,
ResendIcon,
S3Icon,
SalesforceIcon,
SearchIcon,
SendgridIcon,
SentryIcon,
SerperIcon,
SlackIcon,
SmtpIcon,
STTIcon,
StagehandIcon,
StripeIcon,
SupabaseIcon,
@@ -66,92 +82,114 @@ import {
TelegramIcon,
TranslateIcon,
TrelloIcon,
TTSIcon,
TwilioIcon,
TypeformIcon,
VideoIcon,
WealthboxIcon,
WebflowIcon,
WhatsAppIcon,
WikipediaIcon,
xIcon,
YouTubeIcon,
ZendeskIcon,
ZepIcon,
} from '@/components/icons'
type IconComponent = ComponentType<SVGProps<SVGSVGElement>>
export const blockTypeToIconMap: Record<string, IconComponent> = {
postgresql: PostgresIcon,
twilio_voice: TwilioIcon,
translate: TranslateIcon,
tavily: TavilyIcon,
stagehand_agent: StagehandIcon,
youtube: YouTubeIcon,
supabase: SupabaseIcon,
vision: EyeIcon,
confluence: ConfluenceIcon,
arxiv: ArxivIcon,
webflow: WebflowIcon,
pinecone: PineconeIcon,
whatsapp: WhatsAppIcon,
typeform: TypeformIcon,
qdrant: QdrantIcon,
asana: AsanaIcon,
memory: BrainIcon,
serper: SerperIcon,
linear: LinearIcon,
exa: ExaAIIcon,
telegram: TelegramIcon,
salesforce: SalesforceIcon,
hubspot: HubspotIcon,
hunter: HunterIOIcon,
linkup: LinkupIcon,
mongodb: MongoDBIcon,
airtable: AirtableIcon,
discord: DiscordIcon,
jina: JinaAIIcon,
google_docs: GoogleDocsIcon,
perplexity: PerplexityIcon,
google_search: GoogleIcon,
x: xIcon,
google_calendar: GoogleCalendarIcon,
zep: ZepIcon,
microsoft_planner: MicrosoftPlannerIcon,
thinking: BrainIcon,
pipedrive: PipedriveIcon,
stagehand: StagehandIcon,
google_forms: GoogleFormsIcon,
file: DocumentIcon,
mistral_parse: MistralIcon,
gmail: GmailIcon,
openai: OpenAIIcon,
outlook: OutlookIcon,
onedrive: MicrosoftOneDriveIcon,
resend: ResendIcon,
google_vault: GoogleVaultIcon,
sharepoint: MicrosoftSharepointIcon,
huggingface: HuggingFaceIcon,
clay: ClayIcon,
jira: JiraIcon,
wealthbox: WealthboxIcon,
notion: NotionIcon,
elevenlabs: ElevenLabsIcon,
microsoft_teams: MicrosoftTeamsIcon,
github: GithubIcon,
google_drive: GoogleDriveIcon,
reddit: RedditIcon,
parallel_ai: ParallelIcon,
stripe: StripeIcon,
s3: S3Icon,
trello: TrelloIcon,
mem0: Mem0Icon,
knowledge: PackageSearchIcon,
twilio_sms: TwilioIcon,
slack: SlackIcon,
microsoft_excel: MicrosoftExcelIcon,
image_generator: ImageIcon,
google_sheets: GoogleSheetsIcon,
zendesk: ZendeskIcon,
youtube: YouTubeIcon,
x: xIcon,
wikipedia: WikipediaIcon,
firecrawl: FirecrawlIcon,
whatsapp: WhatsAppIcon,
webflow: WebflowIcon,
wealthbox: WealthboxIcon,
vision: EyeIcon,
video_generator: VideoIcon,
typeform: TypeformIcon,
twilio_voice: TwilioIcon,
twilio_sms: TwilioIcon,
tts: TTSIcon,
trello: TrelloIcon,
translate: TranslateIcon,
thinking: BrainIcon,
telegram: TelegramIcon,
tavily: TavilyIcon,
supabase: SupabaseIcon,
stt: STTIcon,
stripe: StripeIcon,
stagehand_agent: StagehandIcon,
stagehand: StagehandIcon,
smtp: SmtpIcon,
slack: SlackIcon,
sharepoint: MicrosoftSharepointIcon,
serper: SerperIcon,
sentry: SentryIcon,
sendgrid: SendgridIcon,
search: SearchIcon,
salesforce: SalesforceIcon,
s3: S3Icon,
resend: ResendIcon,
reddit: RedditIcon,
qdrant: QdrantIcon,
pylon: PylonIcon,
posthog: PosthogIcon,
postgresql: PostgresIcon,
pipedrive: PipedriveIcon,
pinecone: PineconeIcon,
perplexity: PerplexityIcon,
parallel_ai: ParallelIcon,
outlook: OutlookIcon,
openai: OpenAIIcon,
onedrive: MicrosoftOneDriveIcon,
notion: NotionIcon,
neo4j: Neo4jIcon,
mysql: MySQLIcon,
mongodb: MongoDBIcon,
mistral_parse: MistralIcon,
microsoft_teams: MicrosoftTeamsIcon,
microsoft_planner: MicrosoftPlannerIcon,
microsoft_excel: MicrosoftExcelIcon,
memory: BrainIcon,
mem0: Mem0Icon,
mailgun: MailgunIcon,
mailchimp: MailchimpIcon,
linkup: LinkupIcon,
linkedin: LinkedInIcon,
linear: LinearIcon,
knowledge: PackageSearchIcon,
jira: JiraIcon,
jina: JinaAIIcon,
intercom: IntercomIcon,
incidentio: IncidentioIcon,
image_generator: ImageIcon,
hunter: HunterIOIcon,
huggingface: HuggingFaceIcon,
hubspot: HubspotIcon,
google_vault: GoogleVaultIcon,
google_sheets: GoogleSheetsIcon,
google_forms: GoogleFormsIcon,
google_drive: GoogleDriveIcon,
google_docs: GoogleDocsIcon,
google_calendar: GoogleCalendarIcon,
google_search: GoogleIcon,
gmail: GmailIcon,
github: GithubIcon,
firecrawl: FirecrawlIcon,
file: DocumentIcon,
exa: ExaAIIcon,
elevenlabs: ElevenLabsIcon,
discord: DiscordIcon,
confluence: ConfluenceIcon,
clay: ClayIcon,
calendly: CalendlyIcon,
browser_use: BrowserUseIcon,
asana: AsanaIcon,
arxiv: ArxivIcon,
apollo: ApolloIcon,
apify: ApifyIcon,
airtable: AirtableIcon,
}

View File

@@ -2,8 +2,8 @@
import { useState } from 'react'
import NextImage, { type ImageProps as NextImageProps } from 'next/image'
import { Lightbox } from '@/components/ui/lightbox'
import { cn } from '@/lib/utils'
import { Lightbox } from './lightbox'
interface ImageProps extends Omit<NextImageProps, 'className'> {
className?: string

View File

@@ -82,7 +82,7 @@ export function LanguageDropdown() {
aria-haspopup='listbox'
aria-expanded={isOpen}
aria-controls='language-menu'
className='flex items-center gap-1.5 rounded-xl px-3 py-2 font-normal text-[0.9375rem] text-foreground/60 leading-[1.4] transition-colors hover:bg-foreground/8 hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring'
className='flex cursor-pointer items-center gap-1.5 rounded-xl px-3 py-2 font-normal text-[0.9375rem] text-foreground/60 leading-[1.4] transition-colors hover:bg-foreground/8 hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring'
style={{
fontFamily:
'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',
@@ -110,7 +110,7 @@ export function LanguageDropdown() {
}}
role='option'
aria-selected={currentLang === code}
className={`flex w-full items-center gap-3 px-3 py-3 text-base transition-colors first:rounded-t-xl last:rounded-b-xl hover:bg-muted/80 focus:outline-none focus-visible:ring-2 focus-visible:ring-ring md:gap-2 md:px-2.5 md:py-2 md:text-sm ${
className={`flex w-full cursor-pointer items-center gap-3 px-3 py-3 text-base transition-colors first:rounded-t-xl last:rounded-b-xl hover:bg-muted/80 focus:outline-none focus-visible:ring-2 focus-visible:ring-ring md:gap-2 md:px-2.5 md:py-2 md:text-sm ${
currentLang === code ? 'bg-muted/60 font-medium text-primary' : 'text-foreground'
}`}
>

View File

@@ -15,7 +15,7 @@ export function SearchTrigger() {
return (
<button
type='button'
className='flex h-10 w-[460px] items-center gap-2 rounded-xl border border-border/50 px-3 py-2 text-sm backdrop-blur-xl transition-colors hover:border-border'
className='flex h-10 w-[460px] cursor-pointer items-center gap-2 rounded-xl border border-border/50 px-3 py-2 text-sm backdrop-blur-xl transition-colors hover:border-border'
style={{
backgroundColor: 'hsla(0, 0%, 5%, 0.85)',
backdropFilter: 'blur(33px) saturate(180%)',

View File

@@ -14,7 +14,7 @@ export function ThemeToggle() {
if (!mounted) {
return (
<button className='flex items-center justify-center rounded-md p-1 text-muted-foreground'>
<button className='flex cursor-pointer items-center justify-center rounded-md p-1 text-muted-foreground'>
<Moon className='h-4 w-4' />
</button>
)
@@ -23,7 +23,7 @@ export function ThemeToggle() {
return (
<button
onClick={() => setTheme(theme === 'dark' ? 'light' : 'dark')}
className='flex items-center justify-center rounded-md p-1 text-muted-foreground transition-colors hover:text-foreground'
className='flex cursor-pointer items-center justify-center rounded-md p-1 text-muted-foreground transition-colors hover:text-foreground'
aria-label='Toggle theme'
>
{theme === 'dark' ? <Moon className='h-4 w-4' /> : <Sun className='h-4 w-4' />}

View File

@@ -42,11 +42,11 @@ Der Benutzer-Prompt stellt die primären Eingabedaten für die Inferenzverarbeit
Der Agent-Block unterstützt mehrere LLM-Anbieter über eine einheitliche Inferenzschnittstelle. Verfügbare Modelle umfassen:
- **OpenAI**: GPT-5, GPT-4o, o1, o3, o4-mini, gpt-4.1
- **Anthropic**: Claude 3.7 Sonnet
- **OpenAI**: GPT-5.1, GPT-5, GPT-4o, o1, o3, o4-mini, gpt-4.1
- **Anthropic**: Claude 4.5 Sonnet, Claude Opus 4.1
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Andere Anbieter**: Groq, Cerebras, xAI, DeepSeek
- **Lokale Modelle**: Ollama-kompatible Modelle
- **Andere Anbieter**: Groq, Cerebras, xAI, Azure OpenAI, OpenRouter
- **Lokale Modelle**: Ollama oder VLLM-kompatible Modelle
### Temperatur

View File

@@ -52,7 +52,7 @@ Wählen Sie ein KI-Modell für die Durchführung der Bewertung:
- **Anthropic**: Claude 3.7 Sonnet
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Andere Anbieter**: Groq, Cerebras, xAI, DeepSeek
- **Lokale Modelle**: Ollama-kompatible Modelle
- **Lokale Modelle**: Ollama oder VLLM-kompatible Modelle
Verwenden Sie Modelle mit starken Argumentationsfähigkeiten wie GPT-4o oder Claude 3.7 Sonnet für beste Ergebnisse.

View File

@@ -63,10 +63,10 @@ Verwendet Retrieval-Augmented Generation (RAG) mit LLM-Bewertung, um zu erkennen
4. Validierung besteht, wenn der Wert ≥ Schwellenwert ist (Standard: 3)
**Konfiguration:**
- **Wissensdatenbank**: Auswahl aus Ihren vorhandenen Wissensdatenbanken
- **Modell**: Wahl des LLM für die Bewertung (erfordert starkes Reasoning - GPT-4o, Claude 3.7 Sonnet empfohlen)
- **API-Schlüssel**: Authentifizierung für den ausgewählten LLM-Anbieter (automatisch ausgeblendet für gehostete/Ollama-Modelle)
- **Konfidenz-Schwellenwert**: Mindestwert zum Bestehen (0-10, Standard: 3)
- **Wissensdatenbank**: Wählen Sie aus Ihren vorhandenen Wissensdatenbanken
- **Modell**: Wählen Sie LLM für die Bewertung (erfordert starkes Denkvermögen - GPT-4o, Claude 3.7 Sonnet empfohlen)
- **API-Schlüssel**: Authentifizierung für den ausgewählten LLM-Anbieter (automatisch ausgeblendet für gehostete/Ollama oder VLLM-kompatible Modelle)
- **Vertrauensschwelle**: Mindestpunktzahl zum Bestehen (0-10, Standard: 3)
- **Top K** (Erweitert): Anzahl der abzurufenden Wissensdatenbank-Chunks (Standard: 10)
**Ausgabe:**

View File

@@ -5,6 +5,7 @@ title: Human in the Loop
import { Callout } from 'fumadocs-ui/components/callout'
import { Tab, Tabs } from 'fumadocs-ui/components/tabs'
import { Image } from '@/components/ui/image'
import { Video } from '@/components/ui/video'
Der Human in the Loop Block pausiert die Workflow-Ausführung und wartet auf menschliches Eingreifen, bevor er fortfährt. Verwenden Sie ihn, um Genehmigungspunkte hinzuzufügen, Feedback zu sammeln oder zusätzliche Eingaben an kritischen Entscheidungspunkten einzuholen.
@@ -76,7 +77,7 @@ Definiert die Felder, die Genehmigende bei der Antwort ausfüllen. Diese Daten w
}
```
Greifen Sie in nachfolgenden Blöcken mit `<blockId.resumeInput.fieldName>` auf Fortsetzungsdaten zu.
Greifen Sie in nachgelagerten Blöcken auf Wiederaufnahmedaten mit `<blockId.resumeInput.fieldName>` zu.
## Genehmigungsmethoden
@@ -174,8 +175,14 @@ Zugriff über `<blockId.resumeInput.fieldName>`.
<approval1.resumeInput.approved> === true
```
Das Beispiel unten zeigt ein Genehmigungsportal, wie es von einem Genehmiger gesehen wird, nachdem der Workflow angehalten wurde. Genehmiger können die Daten überprüfen und Eingaben als Teil der Workflow-Wiederaufnahme bereitstellen. Auf das Genehmigungsportal kann direkt über die eindeutige URL, `<blockId.url>`, zugegriffen werden.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="hitl-resume.mp4" width={700} height={450} />
</div>
## Verwandte Blöcke
- **[Bedingung](/blocks/condition)** - Verzweigung basierend auf Genehmigungsentscheidungen
- **[Variablen](/blocks/variables)** - Speicherung von Genehmigungsverlauf und Metadaten
- **[Variablen](/blocks/variables)** - Speichern von Genehmigungsverlauf und Metadaten
- **[Antwort](/blocks/response)** - Rückgabe von Workflow-Ergebnissen an API-Aufrufer

View File

@@ -56,7 +56,7 @@ Wähle ein KI-Modell für die Weiterleitungsentscheidung:
- **Anthropic**: Claude 3.7 Sonnet
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Andere Anbieter**: Groq, Cerebras, xAI, DeepSeek
- **Lokale Modelle**: Ollama-kompatible Modelle
- **Lokale Modelle**: Ollama oder VLLM-kompatible Modelle
Verwende Modelle mit starken Argumentationsfähigkeiten wie GPT-4o oder Claude 3.7 Sonnet für beste Ergebnisse.

View File

@@ -4,6 +4,7 @@ title: Grundlagen
import { Callout } from 'fumadocs-ui/components/callout'
import { Step, Steps } from 'fumadocs-ui/components/steps'
import { Video } from '@/components/ui/video'
## Wie Verbindungen funktionieren
@@ -28,7 +29,11 @@ Verbindungen sind die Pfade, die den Datenfluss zwischen Blöcken in Ihrem Workf
</Step>
</Steps>
### Verbindungsfluss
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="connections-build.mp4" width={700} height={450} />
</div>
### Verbindungsablauf
Der Datenfluss durch Verbindungen folgt diesen Prinzipien:

View File

@@ -71,6 +71,16 @@ Diese kontextbezogenen Informationen helfen Copilot, genauere und relevantere Un
</Card>
</Cards>
<div className="flex justify-center">
<Image
src="/static/copilot/copilot-mode.png"
alt="Copilot-Modusauswahl-Oberfläche"
width={600}
height={400}
className="my-6"
/>
</div>
## Tiefenebenen
<Cards>
@@ -82,7 +92,7 @@ Diese kontextbezogenen Informationen helfen Copilot, genauere und relevantere Un
</span>
}
>
<div className="m-0 text-sm">Am schnellsten und günstigsten. Ideal für kleine Änderungen, einfache Workflows und geringfügige Anpassungen.</div>
<div className="m-0 text-sm">Am schnellsten und günstigsten. Ideal für kleine Änderungen, einfache Arbeitsabläufe und geringfügige Anpassungen.</div>
</Card>
<Card
title={
@@ -102,7 +112,7 @@ Diese kontextbezogenen Informationen helfen Copilot, genauere und relevantere Un
</span>
}
>
<div className="m-0 text-sm">Mehr Denkleistung für umfangreichere Workflows und komplexe Änderungen bei gleichzeitiger Leistungsfähigkeit.</div>
<div className="m-0 text-sm">Mehr Denkleistung für umfangreichere Arbeitsabläufe und komplexe Änderungen bei gleichzeitiger Leistungsfähigkeit.</div>
</Card>
<Card
title={
@@ -118,7 +128,7 @@ Diese kontextbezogenen Informationen helfen Copilot, genauere und relevantere Un
### Modusauswahl-Oberfläche
Du kannst einfach zwischen verschiedenen Denkmodi über den Modusauswähler in der Copilot-Oberfläche wechseln:
Du kannst einfach zwischen verschiedenen Denkmodi über die Modusauswahl in der Copilot-Oberfläche wechseln:
<Image
src="/static/copilot/copilot-models.png"
@@ -140,8 +150,8 @@ Wähle deinen Modus basierend auf der Komplexität deiner Aufgabe - verwende Sch
Die Copilot-Nutzung wird pro Token vom zugrundeliegenden LLM abgerechnet:
- **Eingabe-Tokens**: werden zum Basistarif des Anbieters berechnet (**zum Selbstkostenpreis**)
- **Ausgabe-Tokens**: werden mit dem **1,5-fachen** des Basisausgabepreises des Anbieters berechnet
- **Eingabe-Tokens**: werden zum Basispreis des Anbieters berechnet (**zum Selbstkostenpreis**)
- **Ausgabe-Tokens**: werden mit dem **1,5-fachen** des Basis-Ausgabepreises des Anbieters berechnet
```javascript
copilotCost = (inputTokens × inputPrice + outputTokens × (outputPrice × 1.5)) / 1,000,000
@@ -149,13 +159,13 @@ copilotCost = (inputTokens × inputPrice + outputTokens × (outputPrice × 1.5))
| Komponente | Angewendeter Tarif |
|------------|------------------------|
| Input | inputPrice |
| Output | outputPrice × 1,5 |
| Eingabe | inputPrice |
| Ausgabe | outputPrice × 1,5 |
<Callout type="warning">
Die angezeigten Preise spiegeln die Tarife vom 4. September 2025 wider. Überprüfen Sie die Anbieterdokumentation für aktuelle Preise.
Die angezeigten Preise spiegeln die Tarife vom 4. September 2025 wider. Überprüfen Sie die Anbieter-Dokumentation für aktuelle Preise.
</Callout>
<Callout type="info">
Modellpreise werden pro Million Token berechnet. Die Berechnung teilt durch 1.000.000, um die tatsächlichen Kosten zu ermitteln. Siehe <a href="/execution/costs">die Seite zur Kostenberechnung</a> für Hintergründe und Beispiele.
Modellpreise werden pro Million Tokens angegeben. Die Berechnung teilt durch 1.000.000, um die tatsächlichen Kosten zu ermitteln. Siehe <a href="/execution/costs">die Seite zur Kostenberechnung</a> für Hintergründe und Beispiele.
</Callout>

View File

@@ -47,55 +47,77 @@ Die Modellaufschlüsselung zeigt:
## Preisoptionen
<Tabs items={['Gehostete Modelle', 'Eigener API-Schlüssel']}>
<Tabs items={['Hosted Models', 'Bring Your Own API Key']}>
<Tab>
**Gehostete Modelle** - Sim stellt API-Schlüssel mit einem 2,5-fachen Preismultiplikator bereit:
**OpenAI**
| Modell | Basispreis (Eingabe/Ausgabe) | Gehosteter Preis (Eingabe/Ausgabe) |
|-------|---------------------------|----------------------------|
| GPT-4o | 2,50 $ / 10,00 $ | 6,25 $ / 25,00 $ |
| GPT-4.1 | 2,00 $ / 8,00 $ | 5,00 $ / 20,00 $ |
| o1 | 15,00 $ / 60,00 $ | 37,50 $ / 150,00 $ |
| o3 | 2,00 $ / 8,00 $ | 5,00 $ / 20,00 $ |
| Claude 3.5 Sonnet | 3,00 $ / 15,00 $ | 7,50 $ / 37,50 $ |
| Claude Opus 4.0 | 15,00 $ / 75,00 $ | 37,50 $ / 187,50 $ |
| GPT-5.1 | $1,25 / $10,00 | $3,13 / $25,00 |
| GPT-5 | $1,25 / $10,00 | $3,13 / $25,00 |
| GPT-5 Mini | $0,25 / $2,00 | $0,63 / $5,00 |
| GPT-5 Nano | $0,05 / $0,40 | $0,13 / $1,00 |
| GPT-4o | $2,50 / $10,00 | $6,25 / $25,00 |
| GPT-4.1 | $2,00 / $8,00 | $5,00 / $20,00 |
| GPT-4.1 Mini | $0,40 / $1,60 | $1,00 / $4,00 |
| GPT-4.1 Nano | $0,10 / $0,40 | $0,25 / $1,00 |
| o1 | $15,00 / $60,00 | $37,50 / $150,00 |
| o3 | $2,00 / $8,00 | $5,00 / $20,00 |
| o4 Mini | $1,10 / $4,40 | $2,75 / $11,00 |
**Anthropic**
| Modell | Basispreis (Eingabe/Ausgabe) | Gehosteter Preis (Eingabe/Ausgabe) |
|-------|---------------------------|----------------------------|
| Claude Opus 4.5 | $5,00 / $25,00 | $12,50 / $62,50 |
| Claude Opus 4.1 | $15,00 / $75,00 | $37,50 / $187,50 |
| Claude Sonnet 4.5 | $3,00 / $15,00 | $7,50 / $37,50 |
| Claude Sonnet 4.0 | $3,00 / $15,00 | $7,50 / $37,50 |
| Claude Haiku 4.5 | $1,00 / $5,00 | $2,50 / $12,50 |
**Google**
| Modell | Basispreis (Eingabe/Ausgabe) | Gehosteter Preis (Eingabe/Ausgabe) |
|-------|---------------------------|----------------------------|
| Gemini 3 Pro Preview | $2,00 / $12,00 | $5,00 / $30,00 |
| Gemini 2.5 Pro | $0,15 / $0,60 | $0,38 / $1,50 |
| Gemini 2.5 Flash | $0,15 / $0,60 | $0,38 / $1,50 |
*Der 2,5-fache Multiplikator deckt Infrastruktur- und API-Verwaltungskosten ab.*
</Tab>
<Tab>
**Ihre eigenen API-Schlüssel** - Nutzen Sie jedes Modell zum Basispreis:
| Anbieter | Modelle | Eingabe / Ausgabe |
|----------|---------|----------------|
| Google | Gemini 2.5 | 0,15 $ / 0,60 $ |
| Deepseek | V3, R1 | 0,75 $ / 1,00 $ |
| xAI | Grok 4, Grok 3 | 5,00 $ / 25,00 $ |
| Groq | Llama 4 Scout | 0,40 $ / 0,60 $ |
| Cerebras | Llama 3.3 70B | 0,94 $ / 0,94 $ |
**Eigene API-Schlüssel** - Nutzen Sie jedes Modell zum Basispreis:
| Anbieter | Beispielmodelle | Input / Output |
|----------|----------------|----------------|
| Deepseek | V3, R1 | $0,75 / $1,00 |
| xAI | Grok 4 Latest, Grok 3 | $3,00 / $15,00 |
| Groq | Llama 4 Scout, Llama 3.3 70B | $0,11 / $0,34 |
| Cerebras | Llama 4 Scout, Llama 3.3 70B | $0,11 / $0,34 |
| Ollama | Lokale Modelle | Kostenlos |
| VLLM | Lokale Modelle | Kostenlos |
*Bezahlen Sie Anbieter direkt ohne Aufschlag*
</Tab>
</Tabs>
<Callout type="warning">
Die angezeigten Preise spiegeln die Tarife vom 10. September 2025 wider. Überprüfen Sie die Anbieterdokumentation für aktuelle Preise.
Die angezeigten Preise entsprechen den Tarifen vom 10. September 2025. Überprüfen Sie die Dokumentation der Anbieter für aktuelle Preise.
</Callout>
## Kostenoptimierungsstrategien
## Strategien zur Kostenoptimierung
- **Modellauswahl**: Wähle Modelle basierend auf der Komplexität der Aufgabe. Einfache Aufgaben können mit GPT-4.1-nano erledigt werden, während komplexes Denken möglicherweise o1 oder Claude Opus erfordert.
- **Modellauswahl**: Wählen Sie Modelle basierend auf der Komplexität der Aufgabe. Einfache Aufgaben können GPT-4.1-nano verwenden, während komplexes Denken möglicherweise o1 oder Claude Opus erfordert.
- **Prompt-Engineering**: Gut strukturierte, präzise Prompts reduzieren den Token-Verbrauch ohne Qualitätseinbußen.
- **Lokale Modelle**: Nutze Ollama für unkritische Aufgaben, um API-Kosten vollständig zu eliminieren.
- **Caching und Wiederverwendung**: Speichere häufig verwendete Ergebnisse in Variablen oder Dateien, um wiederholte KI-Modellaufrufe zu vermeiden.
- **Batch-Verarbeitung**: Verarbeite mehrere Elemente in einer einzigen KI-Anfrage anstatt einzelne Aufrufe zu tätigen.
- **Lokale Modelle**: Verwenden Sie Ollama oder VLLM für unkritische Aufgaben, um API-Kosten vollständig zu eliminieren.
- **Caching und Wiederverwendung**: Speichern Sie häufig verwendete Ergebnisse in Variablen oder Dateien, um wiederholte KI-Modellaufrufe zu vermeiden.
- **Batch-Verarbeitung**: Verarbeiten Sie mehrere Elemente in einer einzigen KI-Anfrage anstatt einzelne Aufrufe zu tätigen.
## Nutzungsüberwachung
Überwachen Sie Ihre Nutzung und Abrechnung unter Einstellungen → Abonnement:
- **Aktuelle Nutzung**: Echtzeit-Nutzung und Kosten für den aktuellen Zeitraum
- **Aktuelle Nutzung**: Echtzeit-Nutzung und -Kosten für den aktuellen Zeitraum
- **Nutzungslimits**: Plangrenzen mit visuellen Fortschrittsanzeigen
- **Abrechnungsdetails**: Prognostizierte Gebühren und Mindestverpflichtungen
- **Planverwaltung**: Upgrade-Optionen und Abrechnungsverlauf
@@ -138,11 +160,11 @@ curl -X GET -H "X-API-Key: YOUR_API_KEY" -H "Content-Type: application/json" htt
```
**Antwortfelder:**
- `currentPeriodCost` spiegelt die Nutzung im aktuellen Abrechnungszeitraum wider
- `limit` wird aus individuellen Limits (Free/Pro) oder gepoolten Organisationslimits (Team/Enterprise) abgeleitet
- `currentPeriodCost` zeigt die Nutzung im aktuellen Abrechnungszeitraum
- `limit` wird aus individuellen Limits (Free/Pro) oder gebündelten Organisationslimits (Team/Enterprise) abgeleitet
- `plan` ist der aktive Plan mit der höchsten Priorität, der mit Ihrem Benutzer verknüpft ist
## Planlimits
## Plan-Limits
Verschiedene Abonnementpläne haben unterschiedliche Nutzungslimits:
@@ -150,55 +172,52 @@ Verschiedene Abonnementpläne haben unterschiedliche Nutzungslimits:
|------|-------------------|-------------------------|
| **Free** | $10 | 5 sync, 10 async |
| **Pro** | $100 | 10 sync, 50 async |
| **Team** | $500 (gepoolt) | 50 sync, 100 async |
| **Team** | $500 (gebündelt) | 50 sync, 100 async |
| **Enterprise** | Individuell | Individuell |
## Best Practices für Kostenmanagement
## Abrechnungsmodell
1. **Regelmäßig überwachen**: Prüfen Sie Ihr Nutzungs-Dashboard häufig, um Überraschungen zu vermeiden
2. **Budgets festlegen**: Nutzen Sie Planlimits als Leitplanken für Ihre Ausgaben
3. **Workflows optimieren**: Überprüfen Sie kostenintensive Ausführungen und optimieren Sie Prompts oder Modellauswahl
4. **Passende Modelle verwenden**: Stimmen Sie die Modellkomplexität auf die Aufgabenanforderungen ab
5. **Ähnliche Aufgaben bündeln**: Kombinieren Sie wenn möglich mehrere Anfragen, um den Overhead zu reduzieren
Sim verwendet ein **Basisabonnement + Überschreitung** Abrechnungsmodell:
## Nächste Schritte
### Wie es funktioniert
- Überprüfen Sie Ihre aktuelle Nutzung unter [Einstellungen → Abonnement](https://sim.ai/settings/subscription)
- Erfahren Sie mehr über [Logging](/execution/logging), um Ausführungsdetails zu verfolgen
- Erkunden Sie die [Externe API](/execution/api) für programmatische Kostenüberwachung
- Sehen Sie sich [Workflow-Optimierungstechniken](/blocks) an, um Kosten zu reduzieren
**Pro Plan ($20/Monat):**
- Monatliches Abonnement beinhaltet $20 Nutzung
- Nutzung unter $20 → Keine zusätzlichen Kosten
- Nutzung über $20 → Zahlung der Überschreitung am Monatsende
- Beispiel: $35 Nutzung = $20 (Abonnement) + $15 (Überschreitung)
**Team-Plan (40 $/Sitz/Monat):**
- Gemeinsame Nutzung für alle Teammitglieder
- Überschreitung wird anhand der Gesamtnutzung des Teams berechnet
**Team Plan ($40/Benutzer/Monat):**
- Gebündelte Nutzung für alle Teammitglieder
- Überschreitung wird aus der Gesamtnutzung des Teams berechnet
- Organisationsinhaber erhält eine Rechnung
**Enterprise-Pläne:**
**Enterprise Pläne:**
- Fester monatlicher Preis, keine Überschreitungen
- Benutzerdefinierte Nutzungslimits gemäß Vereinbarung
- Individuelle Nutzungslimits gemäß Vereinbarung
### Schwellenwertabrechnung
Wenn die nicht abgerechnete Überschreitung 50 $ erreicht, berechnet Sim automatisch den gesamten nicht abgerechneten Betrag.
Wenn die nicht abgerechnete Überschreitung $50 erreicht, berechnet Sim automatisch den gesamten nicht abgerechneten Betrag.
**Beispiel:**
- Tag 10: 70 $ Überschreitung → Sofortige Abrechnung von 70 $
- Tag 15: Zusätzliche Nutzung von 35 $ (insgesamt 105 $) → Bereits abgerechnet, keine Aktion
- Tag 20: Weitere Nutzung von 50 $ (insgesamt 155 $, 85 $ nicht abgerechnet) → Sofortige Abrechnung von 85 $
- Tag 10: $70 Überschreitung → Sofortige Abrechnung von $70
- Tag 15: Zusätzliche $35 Nutzung ($105 insgesamt) → Bereits abgerechnet, keine Aktion
- Tag 20: Weitere $50 Nutzung ($155 insgesamt, $85 nicht abgerechnet) → Sofortige Abrechnung von $85
Dies verteilt hohe Überschreitungsgebühren über den Monat, anstatt eine große Rechnung am Ende des Abrechnungszeitraums zu stellen.
Dies verteilt große Überziehungsgebühren über den Monat, anstatt eine große Rechnung am Ende des Abrechnungszeitraums zu erhalten.
## Best Practices für Kostenmanagement
1. **Regelmäßige Überwachung**: Überprüfen Sie Ihr Nutzungs-Dashboard häufig, um Überraschungen zu vermeiden
1. **Regelmäßig überwachen**: Überprüfen Sie Ihr Nutzungs-Dashboard häufig, um Überraschungen zu vermeiden
2. **Budgets festlegen**: Nutzen Sie Planlimits als Leitplanken für Ihre Ausgaben
3. **Workflows optimieren**: Überprüfen Sie kostenintensive Ausführungen und optimieren Sie Prompts oder Modellauswahl
4. **Geeignete Modelle verwenden**: Passen Sie die Modellkomplexität an die Aufgabenanforderungen an
4. **Passende Modelle verwenden**: Passen Sie die Modellkomplexität an die Aufgabenanforderungen an
5. **Ähnliche Aufgaben bündeln**: Kombinieren Sie wenn möglich mehrere Anfragen, um den Overhead zu reduzieren
## Nächste Schritte
- Überprüfen Sie Ihre aktuelle Nutzung unter [Einstellungen → Abonnement](https://sim.ai/settings/subscription)
- Erfahren Sie mehr über [Protokollierung](/execution/logging), um Ausführungsdetails zu verfolgen
- Erkunden Sie die [externe API](/execution/api) für programmatische Kostenüberwachung
- Sehen Sie sich [Workflow-Optimierungstechniken](/blocks) zur Kostenreduzierung an
- Erkunden Sie die [Externe API](/execution/api) für programmatische Kostenüberwachung
- Sehen Sie sich [Workflow-Optimierungstechniken](/blocks) an, um Kosten zu reduzieren

View File

@@ -5,6 +5,7 @@ title: Einführung
import { Card, Cards } from 'fumadocs-ui/components/card'
import { Callout } from 'fumadocs-ui/components/callout'
import { Image } from '@/components/ui/image'
import { Video } from '@/components/ui/video'
Sim ist ein Open-Source-Tool zur visuellen Workflow-Erstellung für die Entwicklung und Bereitstellung von KI-Agenten-Workflows. Entwerfen Sie intelligente Automatisierungssysteme mit einer No-Code-Oberfläche verbinden Sie KI-Modelle, Datenbanken, APIs und Business-Tools über eine intuitive Drag-and-Drop-Oberfläche. Ob Sie Chatbots entwickeln, Geschäftsprozesse automatisieren oder komplexe Datenpipelines orchestrieren Sim bietet die Werkzeuge, um Ihre KI-Workflows zum Leben zu erwecken.
@@ -32,32 +33,61 @@ Verwandeln Sie Rohdaten in umsetzbare Erkenntnisse. Extrahieren Sie Informatione
**API-Integrations-Workflows**
Orchestieren Sie komplexe Interaktionen zwischen mehreren Diensten. Erstellen Sie einheitliche API-Endpunkte, implementieren Sie anspruchsvolle Geschäftslogik und bauen Sie ereignisgesteuerte Automatisierungssysteme.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/chat-workflow.mp4" width={700} height={450} />
</div>
## Wie es funktioniert
**Visueller Workflow-Editor**
Entwerfen Sie Workflows mit einer intuitiven Drag-and-Drop-Oberfläche. Verbinden Sie KI-Modelle, Datenbanken, APIs und Drittanbieterdienste über eine visuelle No-Code-Schnittstelle, die komplexe Automatisierungslogik leicht verständlich und wartbar macht.
Entwerfen Sie Workflows mit einer intuitiven Drag-and-Drop-Oberfläche. Verbinden Sie KI-Modelle, Datenbanken, APIs und Dienste von Drittanbietern über eine visuelle No-Code-Schnittstelle, die komplexe Automatisierungslogik leicht verständlich und wartbar macht.
**Modulares Blocksystem**
Bauen Sie mit spezialisierten Komponenten: Verarbeitungsblöcke (KI-Agenten, API-Aufrufe, benutzerdefinierte Funktionen), Logikblöcke (bedingte Verzweigungen, Schleifen, Router) und Ausgabeblöcke (Antworten, Evaluatoren). Jeder Block übernimmt eine bestimmte Aufgabe in Ihrem Workflow.
**Flexible Ausführungsauslöser**
Starten Sie Workflows über verschiedene Kanäle, darunter Chat-Schnittstellen, REST-APIs, Webhooks, geplante Cron-Jobs oder externe Ereignisse von Plattformen wie Slack und GitHub.
Starten Sie Workflows über mehrere Kanäle, einschließlich Chat-Schnittstellen, REST-APIs, Webhooks, geplante Cron-Jobs oder externe Ereignisse von Plattformen wie Slack und GitHub.
**Echtzeit-Zusammenarbeit**
Ermöglichen Sie Ihrem Team die gemeinsame Entwicklung. Mehrere Benutzer können Workflows gleichzeitig bearbeiten, mit Live-Updates und granularen Berechtigungskontrollen.
Ermöglichen Sie Ihrem Team, gemeinsam zu arbeiten. Mehrere Benutzer können Workflows gleichzeitig bearbeiten, mit Live-Updates und detaillierten Berechtigungskontrollen.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/build-workflow.mp4" width={700} height={450} />
</div>
## Integrationen
Sim bietet native Integrationen mit über 80 Diensten in verschiedenen Kategorien:
- **KI-Modelle**: OpenAI, Anthropic, Google Gemini, Groq, Cerebras, lokale Modelle über Ollama
- **KI-Modelle**: OpenAI, Anthropic, Google Gemini, Groq, Cerebras, lokale Modelle über Ollama oder VLLM
- **Kommunikation**: Gmail, Slack, Microsoft Teams, Telegram, WhatsApp
- **Produktivität**: Notion, Google Workspace, Airtable, Monday.com
- **Entwicklung**: GitHub, Jira, Linear, automatisierte Browser-Tests
- **Suche & Daten**: Google Search, Perplexity, Firecrawl, Exa AI
- **Datenbanken**: PostgreSQL, MySQL, Supabase, Pinecone, Qdrant
Für benutzerdefinierte Integrationen nutzen Sie unsere [MCP (Model Context Protocol) Unterstützung](/mcp), um beliebige externe Dienste oder Tools anzubinden.
Für benutzerdefinierte Integrationen nutzen Sie unsere [MCP (Model Context Protocol)-Unterstützung](/mcp), um beliebige externe Dienste oder Tools anzubinden.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/integrations-sidebar.mp4" width={700} height={450} />
</div>
## KI-gesteuerter Copilot
**Fragen stellen & Anleitung erhalten**
Der Copilot beantwortet Fragen zu Sim, erklärt Ihre Workflows und gibt Verbesserungsvorschläge. Verwenden Sie das `@` Symbol, um auf Workflows, Blöcke, Dokumentation, Wissen und Protokolle für kontextbezogene Unterstützung zu verweisen.
**Workflows erstellen & bearbeiten**
Wechseln Sie in den Agent-Modus, damit der Copilot Änderungen direkt auf Ihrer Arbeitsfläche vorschlagen und anwenden kann. Fügen Sie Blöcke hinzu, konfigurieren Sie Einstellungen, verbinden Sie Variablen und strukturieren Sie Workflows mit natürlichsprachlichen Befehlen um.
**Adaptive Reasoning-Stufen**
Wählen Sie zwischen den Modi Schnell, Auto, Erweitert oder Behemoth, je nach Komplexität der Aufgabe. Beginnen Sie mit Schnell für einfache Fragen und steigern Sie sich bis zu Behemoth für komplexe architektonische Änderungen und tiefgehendes Debugging.
Erfahren Sie mehr über [Copilot-Funktionen](/copilot) und wie Sie die Produktivität mit KI-Unterstützung maximieren können.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/copilot-workflow.mp4" width={700} height={450} />
</div>
## Bereitstellungsoptionen
@@ -75,7 +105,7 @@ Bereit, Ihren ersten KI-Workflow zu erstellen?
<Card title="Erste Schritte" href="/getting-started">
Erstellen Sie Ihren ersten Workflow in 10 Minuten
</Card>
<Card title="Workflow-Bausteine" href="/blocks">
<Card title="Workflow-Blöcke" href="/blocks">
Erfahren Sie mehr über die Bausteine
</Card>
<Card title="Tools & Integrationen" href="/tools">

View File

@@ -0,0 +1,89 @@
---
title: Apify
description: Führe Apify-Akteure aus und rufe Ergebnisse ab
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="apify"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
[Apify](https://apify.com/) ist eine leistungsstarke Plattform zum Erstellen, Bereitstellen und Ausführen von Web-Automatisierung und Web-Scraping-Akteuren im großen Maßstab. Apify ermöglicht es dir, nützliche Daten von jeder Website zu extrahieren, Arbeitsabläufe zu automatisieren und deine Datenpipelines nahtlos zu verbinden.
Mit Apify kannst du:
- **Vorgefertigte oder benutzerdefinierte Akteure ausführen**: Integriere öffentliche Akteure oder entwickle deine eigenen, um eine breite Palette von Webdatenextraktions- und Browser-Aufgaben zu automatisieren.
- **Datensätze abrufen**: Greife auf strukturierte Datensätze zu, die von Akteuren in Echtzeit gesammelt wurden, und verwalte sie.
- **Web-Automatisierung skalieren**: Nutze Cloud-Infrastruktur, um Aufgaben zuverlässig, asynchron oder synchron mit robuster Fehlerbehandlung auszuführen.
In Sim ermöglicht die Apify-Integration deinen Agenten, grundlegende Apify-Operationen programmatisch durchzuführen:
- **Akteur ausführen (Synchron)**: Verwende `apify_run_actor_sync`, um einen Apify-Akteur zu starten und auf dessen Abschluss zu warten, wobei die Ergebnisse sofort nach Beendigung des Laufs abgerufen werden.
- **Akteur ausführen (Asynchron)**: Verwende `apify_run_actor_async`, um einen Akteur im Hintergrund zu starten und regelmäßig nach Ergebnissen zu fragen, was für längere oder komplexe Aufgaben geeignet ist.
Diese Operationen statten deine Agenten aus, um Datenerfassungs- oder Browser-Automatisierungsaufgaben direkt in Workflows zu automatisieren, zu scrapen und zu orchestrieren alles mit flexibler Konfiguration und Ergebnisverarbeitung, ohne dass manuelle Ausführungen oder externe Tools erforderlich sind. Integriere Apify als dynamische Automatisierungs- und Datenextraktions-Engine, die programmatisch die webbasierten Workflows deiner Agenten antreibt.
{/* MANUAL-CONTENT-END */}
## Gebrauchsanweisung
Integriere Apify in deinen Workflow. Führe jeden Apify-Akteur mit benutzerdefinierter Eingabe aus und rufe Ergebnisse ab. Unterstützt sowohl synchrone als auch asynchrone Ausführung mit automatischem Datensatz-Abruf.
## Tools
### `apify_run_actor_sync`
Führe einen APIFY-Aktor synchron aus und erhalte Ergebnisse (maximal 5 Minuten)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | APIFY API-Token von console.apify.com/account#/integrations |
| `actorId` | string | Ja | Aktor-ID oder Benutzername/Aktor-Name \(z.B. "janedoe/my-actor" oder Aktor-ID\) |
| `input` | string | Nein | Aktor-Eingabe als JSON-String. Siehe Aktor-Dokumentation für erforderliche Felder. |
| `timeout` | number | Nein | Timeout in Sekunden \(Standard: Aktor-Standard\) |
| `build` | string | Nein | Aktor-Build zum Ausführen \(z.B. "latest", "beta" oder Build-Tag/Nummer\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Aktor-Ausführung erfolgreich war |
| `runId` | string | APIFY-Ausführungs-ID |
| `status` | string | Ausführungsstatus \(SUCCEEDED, FAILED, usw.\) |
| `datasetId` | string | Dataset-ID mit Ergebnissen |
| `items` | array | Dataset-Elemente \(falls abgeschlossen\) |
### `apify_run_actor_async`
Führe einen APIFY-Aktor asynchron mit Polling für lang laufende Aufgaben aus
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | APIFY API-Token von console.apify.com/account#/integrations |
| `actorId` | string | Ja | Aktor-ID oder Benutzername/Aktor-Name \(z.B. "janedoe/my-actor" oder Aktor-ID\) |
| `input` | string | Nein | Aktor-Eingabe als JSON-String |
| `waitForFinish` | number | Nein | Anfängliche Wartezeit in Sekunden \(0-60\) bevor Polling beginnt |
| `itemLimit` | number | Nein | Maximale Anzahl an Dataset-Elementen zum Abrufen \(1-250000, Standard 100\) |
| `timeout` | number | Nein | Timeout in Sekunden \(Standard: Aktor-Standard\) |
| `build` | string | Nein | Aktor-Build zum Ausführen \(z.B. "latest", "beta" oder Build-Tag/Nummer\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob der Actor-Lauf erfolgreich war |
| `runId` | string | APIFY-Lauf-ID |
| `status` | string | Laufstatus \(SUCCEEDED, FAILED, usw.\) |
| `datasetId` | string | Dataset-ID mit Ergebnissen |
| `items` | array | Dataset-Elemente \(falls abgeschlossen\) |
## Hinweise
- Kategorie: `tools`
- Typ: `apify`

View File

@@ -0,0 +1,574 @@
---
title: Apollo
description: Suchen, anreichern und verwalten Sie Kontakte mit Apollo.io
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="apollo"
color="#EBF212"
/>
{/* MANUAL-CONTENT-START:intro */}
[Apollo.io](https://apollo.io/) ist eine führende Plattform für Vertriebsintelligenz und -engagement, die Benutzern ermöglicht, Kontakte und Unternehmen im großen Maßstab zu finden, anzureichern und zu kontaktieren. Apollo.io kombiniert eine umfangreiche Kontaktdatenbank mit robusten Anreicherungs- und Workflow-Automatisierungstools und unterstützt Vertriebs-, Marketing- und Recruiting-Teams bei der Beschleunigung des Wachstums.
Mit Apollo.io können Sie:
- **Millionen von Kontakten und Unternehmen durchsuchen**: Finden Sie präzise Leads mit erweiterten Filtern
- **Leads und Accounts anreichern**: Füllen Sie fehlende Details mit verifizierten Daten und aktuellen Informationen
- **CRM-Datensätze verwalten und organisieren**: Halten Sie Ihre Personen- und Unternehmensdaten genau und handlungsfähig
- **Outreach automatisieren**: Fügen Sie Kontakte zu Sequenzen hinzu und erstellen Sie Follow-up-Aufgaben direkt aus Apollo.io
In Sim ermöglicht die Apollo.io-Integration Ihren Agenten, zentrale Apollo-Operationen programmatisch durchzuführen:
- **Personen und Unternehmen suchen**: Verwenden Sie `apollo_people_search`, um neue Leads mit flexiblen Filtern zu entdecken.
- **Personendaten anreichern**: Verwenden Sie `apollo_people_enrich`, um Kontakte mit verifizierten Informationen zu ergänzen.
- **Personen in Masse anreichern**: Verwenden Sie `apollo_people_bulk_enrich` für die großflächige Anreicherung mehrerer Kontakte auf einmal.
- **Unternehmen suchen und anreichern**: Verwenden Sie `apollo_company_search` und `apollo_company_enrich`, um wichtige Unternehmensinformationen zu entdecken und zu aktualisieren.
Dies ermöglicht Ihren Agenten, leistungsstarke Workflows für Prospecting, CRM-Anreicherung und Automatisierung zu erstellen, ohne manuelle Dateneingabe oder Tabwechsel. Integrieren Sie Apollo.io als dynamische Datenquelle und CRM-Engine und befähigen Sie Ihre Agenten, Leads nahtlos als Teil ihrer täglichen Arbeit zu identifizieren, zu qualifizieren und zu kontaktieren.
{/* MANUAL-CONTENT-END */}
## Gebrauchsanweisung
Integriert Apollo.io in den Workflow. Suche nach Personen und Unternehmen, reichere Kontaktdaten an, verwalte deine CRM-Kontakte und Konten, füge Kontakte zu Sequenzen hinzu und erstelle Aufgaben.
## Tools
### `apollo_people_search`
Apollo durchsuchen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `person_titles` | array | Nein | Zu suchende Berufsbezeichnungen (z.B. ["CEO", "VP of Sales"]) |
| `person_locations` | array | Nein | Orte, in denen gesucht werden soll (z.B. ["San Francisco, CA", "New York, NY"]) |
| `person_seniorities` | array | Nein | Hierarchieebenen (z.B. ["senior", "executive", "manager"]) |
| `organization_names` | array | Nein | Unternehmensnamen, in denen gesucht werden soll |
| `q_keywords` | string | Nein | Zu suchende Schlüsselwörter |
| `page` | number | Nein | Seitennummer für Paginierung (Standard: 1) |
| `per_page` | number | Nein | Ergebnisse pro Seite (Standard: 25, max: 100) |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `people` | json | Array von Personen, die den Suchkriterien entsprechen |
| `metadata` | json | Paginierungsinformationen einschließlich page, per_page und total_entries |
### `apollo_people_enrich`
Daten für eine einzelne Person mit Apollo anreichern
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `first_name` | string | Nein | Vorname der Person |
| `last_name` | string | Nein | Nachname der Person |
| `email` | string | Nein | E-Mail-Adresse der Person |
| `organization_name` | string | Nein | Name des Unternehmens, in dem die Person arbeitet |
| `domain` | string | Nein | Unternehmensdomäne (z.B. apollo.io) |
| `linkedin_url` | string | Nein | LinkedIn-Profil-URL |
| `reveal_personal_emails` | boolean | Nein | Persönliche E-Mail-Adressen aufdecken (verbraucht Credits) |
| `reveal_phone_number` | boolean | Nein | Telefonnummern aufdecken (verbraucht Credits) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `person` | json | Angereicherte Personendaten von Apollo |
| `metadata` | json | Anreicherungsmetadaten einschließlich Anreicherungsstatus |
### `apollo_people_bulk_enrich`
Daten für bis zu 10 Personen gleichzeitig mit Apollo anreichern
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `people` | array | Ja | Array von Personen zur Anreicherung (max. 10) |
| `reveal_personal_emails` | boolean | Nein | Persönliche E-Mail-Adressen anzeigen (verbraucht Credits) |
| `reveal_phone_number` | boolean | Nein | Telefonnummern anzeigen (verbraucht Credits) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `people` | json | Array von angereicherten Personendaten |
| `metadata` | json | Metadaten zur Massenanreicherung einschließlich Gesamt- und angereicherter Anzahl |
### `apollo_organization_search`
Apollo durchsuchen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `organization_locations` | array | Nein | Zu durchsuchende Unternehmensstandorte |
| `organization_num_employees_ranges` | array | Nein | Bereiche der Mitarbeiterzahl (z.B. ["1-10", "11-50"]) |
| `q_organization_keyword_tags` | array | Nein | Branchen- oder Schlüsselwort-Tags |
| `q_organization_name` | string | Nein | Zu suchender Organisationsname |
| `page` | number | Nein | Seitennummer für Paginierung |
| `per_page` | number | Nein | Ergebnisse pro Seite (max: 100) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `organizations` | json | Array von Organisationen, die den Suchkriterien entsprechen |
| `metadata` | json | Paginierungsinformationen einschließlich page, per_page und total_entries |
### `apollo_organization_enrich`
Daten für eine einzelne Organisation mit Apollo anreichern
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `organization_name` | string | Nein | Name der Organisation \(mindestens einer von organization_name oder domain ist erforderlich\) |
| `domain` | string | Nein | Unternehmensdomäne \(z.B. apollo.io\) \(mindestens einer von domain oder organization_name ist erforderlich\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `organization` | json | Angereicherte Organisationsdaten von Apollo |
| `metadata` | json | Anreicherungsmetadaten einschließlich des Anreicherungsstatus |
### `apollo_organization_bulk_enrich`
Daten für bis zu 10 Organisationen gleichzeitig mit Apollo anreichern
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `organizations` | array | Ja | Array von zu anreichernden Organisationen \(max. 10\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `organizations` | json | Array von angereicherten Organisationsdaten |
| `metadata` | json | Metadaten zur Massenanreicherung einschließlich Gesamt- und angereicherte Anzahl |
### `apollo_contact_create`
Einen neuen Kontakt in Ihrer Apollo-Datenbank erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `first_name` | string | Ja | Vorname des Kontakts |
| `last_name` | string | Ja | Nachname des Kontakts |
| `email` | string | Nein | E-Mail-Adresse des Kontakts |
| `title` | string | Nein | Berufsbezeichnung |
| `account_id` | string | Nein | Apollo-Konto-ID für die Zuordnung |
| `owner_id` | string | Nein | Benutzer-ID des Kontaktinhabers |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `contact` | json | Erstellte Kontaktdaten von Apollo |
| `metadata` | json | Erstellungsmetadaten einschließlich Erstellungsstatus |
### `apollo_contact_update`
Einen bestehenden Kontakt in Ihrer Apollo-Datenbank aktualisieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `contact_id` | string | Ja | ID des zu aktualisierenden Kontakts |
| `first_name` | string | Nein | Vorname des Kontakts |
| `last_name` | string | Nein | Nachname des Kontakts |
| `email` | string | Nein | E-Mail-Adresse |
| `title` | string | Nein | Berufsbezeichnung |
| `account_id` | string | Nein | Apollo-Konto-ID |
| `owner_id` | string | Nein | Benutzer-ID des Kontaktinhabers |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `contact` | json | Aktualisierte Kontaktdaten von Apollo |
| `metadata` | json | Aktualisierte Metadaten einschließlich des aktualisierten Status |
### `apollo_contact_search`
Dein Team durchsuchen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `q_keywords` | string | Nein | Suchbegriffe |
| `contact_stage_ids` | array | Nein | Nach Kontaktphasen-IDs filtern |
| `page` | number | Nein | Seitennummer für Paginierung |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max: 100\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `contacts` | json | Array von Kontakten, die den Suchkriterien entsprechen |
| `metadata` | json | Paginierungsinformationen einschließlich page, per_page und total_entries |
### `apollo_contact_bulk_create`
Erstelle bis zu 100 Kontakte auf einmal in deiner Apollo-Datenbank. Unterstützt Deduplizierung, um das Erstellen von Duplikaten zu verhindern. Master-Schlüssel erforderlich.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel \(Master-Schlüssel erforderlich\) |
| `contacts` | array | Ja | Array von zu erstellenden Kontakten \(max. 100\). Jeder Kontakt sollte first_name, last_name und optional email, title, account_id, owner_id enthalten |
| `run_dedupe` | boolean | Nein | Aktiviere Deduplizierung, um das Erstellen von Duplikaten zu verhindern. Bei true werden bestehende Kontakte ohne Änderung zurückgegeben |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `created_contacts` | json | Array neu erstellter Kontakte |
| `existing_contacts` | json | Array bestehender Kontakte \(wenn Deduplizierung aktiviert ist\) |
| `metadata` | json | Metadaten zur Massenerstellung einschließlich Anzahl erstellter und bestehender Kontakte |
### `apollo_contact_bulk_update`
Aktualisieren Sie bis zu 100 bestehende Kontakte gleichzeitig in Ihrer Apollo-Datenbank. Jeder Kontakt muss ein ID-Feld enthalten. Master-Key erforderlich.
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel \(Master-Key erforderlich\) |
| `contacts` | array | Ja | Array zu aktualisierender Kontakte \(max. 100\). Jeder Kontakt muss ein ID-Feld enthalten und optional first_name, last_name, email, title, account_id, owner_id |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `updated_contacts` | json | Array erfolgreich aktualisierter Kontakte |
| `failed_contacts` | json | Array von Kontakten, deren Aktualisierung fehlgeschlagen ist |
| `metadata` | json | Metadaten zur Massenaktualisierung einschließlich Anzahl aktualisierter und fehlgeschlagener Kontakte |
### `apollo_account_create`
Erstellen Sie ein neues Konto (Unternehmen) in Ihrer Apollo-Datenbank
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `name` | string | Ja | Unternehmensname |
| `website_url` | string | Nein | Unternehmens-Website-URL |
| `phone` | string | Nein | Telefonnummer des Unternehmens |
| `owner_id` | string | Nein | Benutzer-ID des Kontoinhabers |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `account` | json | Erstellte Kontodaten von Apollo |
| `metadata` | json | Erstellungsmetadaten einschließlich Erstellungsstatus |
### `apollo_account_update`
Aktualisieren eines vorhandenen Kontos in Ihrer Apollo-Datenbank
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `account_id` | string | Ja | ID des zu aktualisierenden Kontos |
| `name` | string | Nein | Firmenname |
| `website_url` | string | Nein | Firmen-Website-URL |
| `phone` | string | Nein | Telefonnummer des Unternehmens |
| `owner_id` | string | Nein | Benutzer-ID des Kontoinhabers |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `account` | json | Aktualisierte Kontodaten von Apollo |
| `metadata` | json | Aktualisierungsmetadaten einschließlich Aktualisierungsstatus |
### `apollo_account_search`
Durchsuchen Ihres Teams
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel \(Hauptschlüssel erforderlich\) |
| `q_keywords` | string | Nein | Suchbegriffe für Kontodaten |
| `owner_id` | string | Nein | Filtern nach Benutzer-ID des Kontoinhabers |
| `account_stage_ids` | array | Nein | Filtern nach Kontophase-IDs |
| `page` | number | Nein | Seitennummer für Paginierung |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max: 100\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `accounts` | json | Array von Konten, die den Suchkriterien entsprechen |
| `metadata` | json | Paginierungsinformationen einschließlich page, per_page und total_entries |
### `apollo_account_bulk_create`
Erstellen Sie bis zu 100 Konten auf einmal in Ihrer Apollo-Datenbank. Hinweis: Apollo wendet keine Deduplizierung an - doppelte Konten können erstellt werden, wenn Einträge ähnliche Namen oder Domains haben. Master-Key erforderlich.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel \(Master-Key erforderlich\) |
| `accounts` | array | Ja | Array von zu erstellenden Konten \(max. 100\). Jedes Konto sollte einen Namen \(erforderlich\) und optional website_url, phone, owner_id enthalten |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `created_accounts` | json | Array neu erstellter Konten |
| `failed_accounts` | json | Array von Konten, deren Erstellung fehlgeschlagen ist |
| `metadata` | json | Metadaten zur Massenerstellung einschließlich Anzahl erstellter und fehlgeschlagener Konten |
### `apollo_account_bulk_update`
Aktualisieren Sie bis zu 1000 bestehende Konten auf einmal in Ihrer Apollo-Datenbank (höheres Limit als bei Kontakten!). Jedes Konto muss ein id-Feld enthalten. Master-Key erforderlich.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel \(Master-Key erforderlich\) |
| `accounts` | array | Ja | Array zu aktualisierender Konten \(max. 1000\). Jedes Konto muss ein id-Feld enthalten und optional name, website_url, phone, owner_id |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `updated_accounts` | json | Array der erfolgreich aktualisierten Konten |
| `failed_accounts` | json | Array der Konten, deren Aktualisierung fehlgeschlagen ist |
| `metadata` | json | Metadaten zur Massenaktualisierung, einschließlich der Anzahl aktualisierter und fehlgeschlagener Konten |
### `apollo_opportunity_create`
Erstellen Sie einen neuen Deal für ein Konto in Ihrer Apollo-Datenbank (Master-Key erforderlich)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel \(Master-Key erforderlich\) |
| `name` | string | Ja | Name der Opportunity/des Deals |
| `account_id` | string | Ja | ID des Kontos, zu dem diese Opportunity gehört |
| `amount` | number | Nein | Geldwert der Opportunity |
| `stage_id` | string | Nein | ID der Deal-Phase |
| `owner_id` | string | Nein | Benutzer-ID des Opportunity-Eigentümers |
| `close_date` | string | Nein | Erwartetes Abschlussdatum \(ISO 8601-Format\) |
| `description` | string | Nein | Beschreibung oder Notizen zur Opportunity |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `opportunity` | json | Erstellte Opportunity-Daten von Apollo |
| `metadata` | json | Erstellungsmetadaten einschließlich Erstellungsstatus |
### `apollo_opportunity_search`
Suchen und listen Sie alle Deals/Opportunities in Ihrem Team auf
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `q_keywords` | string | Nein | Suchbegriffe für die Suche in Opportunity-Namen |
| `account_ids` | array | Nein | Nach bestimmten Account-IDs filtern |
| `stage_ids` | array | Nein | Nach Deal-Phase-IDs filtern |
| `owner_ids` | array | Nein | Nach Opportunity-Besitzer-IDs filtern |
| `page` | number | Nein | Seitennummer für Paginierung |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max: 100\) |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `opportunities` | json | Array von Opportunities, die den Suchkriterien entsprechen |
| `metadata` | json | Paginierungsinformationen einschließlich page, per_page und total_entries |
### `apollo_opportunity_get`
Vollständige Details eines bestimmten Deals/Opportunity anhand der ID abrufen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `opportunity_id` | string | Ja | ID der abzurufenden Opportunity |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `opportunity` | json | Vollständige Opportunity-Daten von Apollo |
| `metadata` | json | Abruf-Metadaten einschließlich Gefunden-Status |
### `apollo_opportunity_update`
Einen bestehenden Deal/Opportunity in Ihrer Apollo-Datenbank aktualisieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel |
| `opportunity_id` | string | Ja | ID der zu aktualisierenden Opportunity |
| `name` | string | Nein | Name der Opportunity/des Deals |
| `amount` | number | Nein | Geldwert der Opportunity |
| `stage_id` | string | Nein | ID der Deal-Phase |
| `owner_id` | string | Nein | Benutzer-ID des Opportunity-Eigentümers |
| `close_date` | string | Nein | Erwartetes Abschlussdatum (ISO 8601-Format) |
| `description` | string | Nein | Beschreibung oder Notizen zur Opportunity |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `opportunity` | json | Aktualisierte Opportunity-Daten von Apollo |
| `metadata` | json | Aktualisierungsmetadaten einschließlich Aktualisierungsstatus |
### `apollo_sequence_search`
Suche nach Sequenzen/Kampagnen in deinem Team
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel (Master-Schlüssel erforderlich) |
| `q_name` | string | Nein | Sequenzen nach Namen durchsuchen |
| `active` | boolean | Nein | Nach Aktivitätsstatus filtern (true für aktive Sequenzen, false für inaktive) |
| `page` | number | Nein | Seitennummer für Paginierung |
| `per_page` | number | Nein | Ergebnisse pro Seite (max: 100) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `sequences` | json | Array von Sequenzen/Kampagnen, die den Suchkriterien entsprechen |
| `metadata` | json | Paginierungsinformationen einschließlich page, per_page und total_entries |
### `apollo_sequence_add_contacts`
Kontakte zu einer Apollo-Sequenz hinzufügen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel (Master-Schlüssel erforderlich) |
| `sequence_id` | string | Ja | ID der Sequenz, zu der Kontakte hinzugefügt werden sollen |
| `contact_ids` | array | Ja | Array von Kontakt-IDs, die zur Sequenz hinzugefügt werden sollen |
| `emailer_campaign_id` | string | Nein | Optionale E-Mail-Kampagnen-ID |
| `send_email_from_user_id` | string | Nein | Benutzer-ID, von der E-Mails gesendet werden sollen |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `contacts_added` | json | Array von Kontakt-IDs, die zur Sequenz hinzugefügt wurden |
| `metadata` | json | Sequenz-Metadaten einschließlich sequence_id und total_added Anzahl |
### `apollo_task_create`
Eine neue Aufgabe in Apollo erstellen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel (Master-Schlüssel erforderlich) |
| `note` | string | Ja | Aufgabennotiz/Beschreibung |
| `contact_id` | string | Nein | Zu verknüpfende Kontakt-ID |
| `account_id` | string | Nein | Zu verknüpfende Account-ID |
| `due_at` | string | Nein | Fälligkeitsdatum im ISO-Format |
| `priority` | string | Nein | Aufgabenpriorität |
| `type` | string | Nein | Aufgabentyp |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `task` | json | Erstellte Aufgabendaten von Apollo |
| `metadata` | json | Erstellungsmetadaten einschließlich des Erstellungsstatus |
### `apollo_task_search`
Suche nach Aufgaben in Apollo
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel (Master-Schlüssel erforderlich) |
| `contact_id` | string | Nein | Nach Kontakt-ID filtern |
| `account_id` | string | Nein | Nach Konto-ID filtern |
| `completed` | boolean | Nein | Nach Abschlussstatus filtern |
| `page` | number | Nein | Seitennummer für Paginierung |
| `per_page` | number | Nein | Ergebnisse pro Seite (max: 100) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `tasks` | json | Array von Aufgaben, die den Suchkriterien entsprechen |
| `metadata` | json | Paginierungsinformationen einschließlich Seite, pro_Seite und Gesamteinträge |
### `apollo_email_accounts`
Liste des Teams abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Apollo API-Schlüssel (Master-Schlüssel erforderlich) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `email_accounts` | json | Array von Team-E-Mail-Konten, die in Apollo verknüpft sind |
| `metadata` | json | Metadaten einschließlich der Gesamtanzahl von E-Mail-Konten |
## Notizen
- Kategorie: `tools`
- Typ: `apollo`

View File

@@ -0,0 +1,172 @@
---
title: Calendly
description: Verwalte Calendly-Terminplanung und Ereignisse
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="calendly"
color="#FFFFFF"
/>
{/* MANUAL-CONTENT-START:intro */}
[Calendly](https://calendly.com/) ist eine beliebte Plattform zur Terminplanungsautomatisierung, die Ihnen hilft, Meetings, Events und Termine mühelos zu buchen. Mit Calendly können Teams und Einzelpersonen die Terminplanung optimieren, den E-Mail-Austausch reduzieren und Aufgaben rund um Veranstaltungen automatisieren.
Mit der Sim Calendly-Integration können Ihre Agenten:
- **Informationen über Ihr Konto und geplante Ereignisse abrufen**: Verwenden Sie Tools, um Benutzerinformationen, Ereignistypen und geplante Ereignisse für Analysen oder Automatisierungen abzurufen.
- **Ereignistypen und Terminplanung verwalten**: Greifen Sie auf verfügbare Ereignistypen für Benutzer oder Organisationen zu und listen Sie diese auf, rufen Sie Details zu bestimmten Ereignistypen ab und überwachen Sie geplante Meetings und Teilnehmerdaten.
- **Automatisieren Sie Follow-ups und Workflows**: Wenn Benutzer Meetings planen, umplanen oder stornieren, können Sim-Agenten automatisch entsprechende Workflows auslösen wie das Senden von Erinnerungen, das Aktualisieren von CRMs oder das Benachrichtigen von Teilnehmern.
- **Einfache Integration über Webhooks**: Richten Sie Sim-Workflows ein, um auf Calendly-Webhook-Ereignisse in Echtzeit zu reagieren, einschließlich wenn Eingeladene Termine planen, stornieren oder mit Routing-Formularen interagieren.
Ob Sie die Meeting-Vorbereitung automatisieren, Einladungen verwalten oder benutzerdefinierte Workflows als Reaktion auf Planungsaktivitäten ausführen möchten die Calendly-Tools in Sim bieten Ihnen flexiblen und sicheren Zugriff. Erschließen Sie neue Automatisierungsmöglichkeiten, indem Sie sofort auf Planungsänderungen reagieren und optimieren Sie so die Abläufe und die Kommunikation Ihres Teams.
{/* MANUAL-CONTENT-END */}
## Nutzungsanweisungen
Integrieren Sie Calendly in Ihren Workflow. Verwalten Sie Ereignistypen, geplante Ereignisse, Eingeladene und Webhooks. Kann auch Workflows basierend auf Calendly-Webhook-Ereignissen auslösen (Eingeladener hat Termin vereinbart, Eingeladener hat storniert, Routing-Formular wurde eingereicht). Erfordert einen persönlichen Zugriffstoken.
## Tools
### `calendly_get_current_user`
Informationen über den aktuell authentifizierten Calendly-Benutzer abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Calendly persönlicher Zugriffstoken |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `resource` | object | Informationen zum aktuellen Benutzer |
### `calendly_list_event_types`
Eine Liste aller Ereignistypen für einen Benutzer oder eine Organisation abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Calendly persönliches Zugriffstoken |
| `user` | string | Nein | Nur Ereignistypen zurückgeben, die zu diesem Benutzer gehören \(URI-Format\) |
| `organization` | string | Nein | Nur Ereignistypen zurückgeben, die zu dieser Organisation gehören \(URI-Format\) |
| `count` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 20, max: 100\) |
| `pageToken` | string | Nein | Seitentoken für Paginierung |
| `sort` | string | Nein | Sortierreihenfolge für Ergebnisse \(z.B. "name:asc", "name:desc"\) |
| `active` | boolean | Nein | Bei true werden nur aktive Ereignistypen angezeigt. Bei false oder nicht ausgewählt werden alle Ereignistypen angezeigt \(sowohl aktive als auch inaktive\). |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `collection` | array | Array von Ereignistyp-Objekten |
### `calendly_get_event_type`
Detaillierte Informationen über einen bestimmten Ereignistyp abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Calendly persönliches Zugriffstoken |
| `eventTypeUuid` | string | Ja | Ereignistyp-UUID \(kann vollständige URI oder nur die UUID sein\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `resource` | object | Details zum Ereignistyp |
### `calendly_list_scheduled_events`
Eine Liste geplanter Ereignisse für einen Benutzer oder eine Organisation abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Calendly persönliches Zugriffstoken |
| `user` | string | Nein | Gibt Ereignisse zurück, die zu diesem Benutzer gehören \(URI-Format\). Entweder "user" oder "organization" muss angegeben werden. |
| `organization` | string | Nein | Gibt Ereignisse zurück, die zu dieser Organisation gehören \(URI-Format\). Entweder "user" oder "organization" muss angegeben werden. |
| `invitee_email` | string | Nein | Gibt Ereignisse zurück, bei denen der Eingeladene diese E-Mail hat |
| `count` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 20, max: 100\) |
| `max_start_time` | string | Nein | Gibt Ereignisse mit Startzeit vor diesem Zeitpunkt zurück \(ISO 8601-Format\) |
| `min_start_time` | string | Nein | Gibt Ereignisse mit Startzeit nach diesem Zeitpunkt zurück \(ISO 8601-Format\) |
| `pageToken` | string | Nein | Seitentoken für Paginierung |
| `sort` | string | Nein | Sortierreihenfolge für Ergebnisse \(z.B. "start_time:asc", "start_time:desc"\) |
| `status` | string | Nein | Nach Status filtern \("active" oder "canceled"\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `collection` | array | Array von geplanten Ereignisobjekten |
### `calendly_get_scheduled_event`
Detaillierte Informationen über ein bestimmtes geplantes Ereignis abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Calendly persönliches Zugriffstoken |
| `eventUuid` | string | Ja | UUID des geplanten Ereignisses \(kann vollständige URI oder nur die UUID sein\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `resource` | object | Details zum geplanten Ereignis |
### `calendly_list_event_invitees`
Eine Liste der Eingeladenen für ein geplantes Ereignis abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Calendly persönliches Zugriffstoken |
| `eventUuid` | string | Ja | UUID des geplanten Ereignisses \(kann vollständige URI oder nur die UUID sein\) |
| `count` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 20, max: 100\) |
| `email` | string | Nein | Eingeladene nach E-Mail-Adresse filtern |
| `pageToken` | string | Nein | Seitentoken für Paginierung |
| `sort` | string | Nein | Sortierreihenfolge für Ergebnisse \(z.B. "created_at:asc", "created_at:desc"\) |
| `status` | string | Nein | Nach Status filtern \("active" oder "canceled"\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `collection` | array | Array von Eingeladenen-Objekten |
### `calendly_cancel_event`
Ein geplantes Ereignis stornieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Calendly persönliches Zugriffstoken |
| `eventUuid` | string | Ja | UUID des zu stornierenden geplanten Ereignisses \(kann vollständige URI oder nur die UUID sein\) |
| `reason` | string | Nein | Grund für die Stornierung \(wird an Eingeladene gesendet\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `resource` | object | Stornierungsdetails |
## Hinweise
- Kategorie: `tools`
- Typ: `calendly`

View File

@@ -0,0 +1,841 @@
---
title: incidentio
description: Verwalte Vorfälle mit incident.io
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="incidentio"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
Verbessere dein Vorfallmanagement mit [incident.io](https://incident.io) der führenden Plattform für die Orchestrierung von Vorfällen, die Optimierung von Reaktionsprozessen und die Nachverfolgung von Maßnahmen an einem Ort. Integriere incident.io nahtlos in deine automatisierten Arbeitsabläufe, um die Kontrolle über die Erstellung von Vorfällen, Echtzeit-Zusammenarbeit, Nachverfolgungen, Terminplanung, Eskalationen und vieles mehr zu übernehmen.
Mit dem incident.io-Tool kannst du:
- **Vorfälle auflisten und durchsuchen**: Rufe schnell eine Liste laufender oder historischer Vorfälle ab, komplett mit Metadaten wie Schweregrad, Status und Zeitstempeln, mit `incidentio_incidents_list`.
- **Neue Vorfälle erstellen**: Löse die Erstellung neuer Vorfälle programmatisch über `incidentio_incidents_create` aus, wobei du Schweregrad, Name, Typ und benutzerdefinierte Details angeben kannst, um sicherzustellen, dass nichts deine Reaktion verlangsamt.
- **Automatisiere Vorfallnachverfolgungen**: Nutze die leistungsstarke Automatisierung von incident.io, um sicherzustellen, dass wichtige Maßnahmen und Erkenntnisse nicht übersehen werden, was Teams hilft, Probleme zu lösen und Prozesse zu verbessern.
- **Arbeitsabläufe anpassen**: Integriere maßgeschneiderte Vorfalltypen, Schweregrade und benutzerdefinierte Felder, die auf die Bedürfnisse deiner Organisation zugeschnitten sind.
- **Bewährte Praktiken mit Zeitplänen & Eskalationen durchsetzen**: Optimiere Bereitschaftsdienste und Vorfallmanagement durch automatische Zuweisung, Benachrichtigung und Eskalation, wenn sich Situationen entwickeln.
incident.io befähigt moderne Organisationen, schneller zu reagieren, Teams zu koordinieren und Erkenntnisse für kontinuierliche Verbesserung zu erfassen. Ob du SRE-, DevOps-, Sicherheits- oder IT-Vorfälle verwaltest, incident.io bringt zentralisierte, erstklassige Vorfallreaktion programmatisch in deine Agent-Workflows.
**Verfügbare Schlüsseloperationen**:
- `incidentio_incidents_list`: Liste, paginiere und filtere Vorfälle mit vollständigen Details.
- `incidentio_incidents_create`: Eröffne programmatisch neue Vorfälle mit benutzerdefinierten Attributen und Kontrolle über Duplizierung (Idempotenz).
- ...und mehr in Zukunft!
Verbessere deine Zuverlässigkeit, Verantwortlichkeit und betriebliche Exzellenz, indem du incident.io noch heute in deine Workflow-Automatisierungen integrierst.
{/* MANUAL-CONTENT-END */}
## Nutzungsanweisungen
Integrieren Sie incident.io in den Workflow. Verwalten Sie Vorfälle, Maßnahmen, Nachverfolgungen, Workflows, Zeitpläne, Eskalationen, benutzerdefinierte Felder und mehr.
## Tools
### `incidentio_incidents_list`
Listet Vorfälle von incident.io auf. Gibt eine Liste von Vorfällen mit ihren Details zurück, einschließlich Schweregrad, Status und Zeitstempeln.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `page_size` | number | Nein | Anzahl der Vorfälle, die pro Seite zurückgegeben werden sollen \(Standard: 25\) |
| `after` | string | Nein | Paginierungscursor zum Abrufen der nächsten Ergebnisseite |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `incidents` | array | Liste der Vorfälle |
### `incidentio_incidents_create`
Erstellt einen neuen Vorfall in incident.io. Erfordert idempotency_key, severity_id und visibility. Akzeptiert optional name, summary, type und status.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `idempotency_key` | string | Ja | Eindeutiger Identifikator zur Vermeidung doppelter Vorfallserstellung. Verwenden Sie eine UUID oder einen eindeutigen String. |
| `name` | string | Nein | Name des Vorfalls \(optional\) |
| `summary` | string | Nein | Kurze Zusammenfassung des Vorfalls |
| `severity_id` | string | Ja | ID des Schweregrads \(erforderlich\) |
| `incident_type_id` | string | Nein | ID des Vorfalltyps |
| `incident_status_id` | string | Nein | ID des anfänglichen Vorfallstatus |
| `visibility` | string | Ja | Sichtbarkeit des Vorfalls: "public" oder "private" \(erforderlich\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `incident` | object | Das erstellte Vorfall-Objekt |
### `incidentio_incidents_show`
Ruft detaillierte Informationen über einen bestimmten Vorfall von incident.io anhand seiner ID ab. Gibt vollständige Vorfalldetails zurück, einschließlich benutzerdefinierter Felder und Rollenzuweisungen.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | ID des abzurufenden Vorfalls |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `incident` | object | Detaillierte Vorfallsinformationen |
### `incidentio_incidents_update`
Aktualisiert einen bestehenden Vorfall in incident.io. Kann Name, Zusammenfassung, Schweregrad, Status oder Typ aktualisieren.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | ID des zu aktualisierenden Vorfalls |
| `name` | string | Nein | Aktualisierter Name des Vorfalls |
| `summary` | string | Nein | Aktualisierte Zusammenfassung des Vorfalls |
| `severity_id` | string | Nein | Aktualisierte Schweregrad-ID für den Vorfall |
| `incident_status_id` | string | Nein | Aktualisierte Status-ID für den Vorfall |
| `incident_type_id` | string | Nein | Aktualisierte Vorfalltyp-ID |
| `notify_incident_channel` | boolean | Ja | Ob der Vorfallkanal über diese Aktualisierung benachrichtigt werden soll |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `incident` | object | Das aktualisierte Vorfall-Objekt |
### `incidentio_actions_list`
Listet Aktionen von incident.io auf. Optional nach Vorfall-ID filtern.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `incident_id` | string | Nein | Aktionen nach Vorfall-ID filtern |
| `page_size` | number | Nein | Anzahl der Aktionen, die pro Seite zurückgegeben werden sollen |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `actions` | array | Liste der Aktionen |
### `incidentio_actions_show`
Ruft detaillierte Informationen über eine bestimmte Aktion von incident.io ab.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Aktions-ID |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `action` | object | Aktionsdetails |
### `incidentio_follow_ups_list`
Listet Follow-ups von incident.io auf. Optional nach Vorfall-ID filtern.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `incident_id` | string | Nein | Follow-ups nach Vorfall-ID filtern |
| `page_size` | number | Nein | Anzahl der Follow-ups, die pro Seite zurückgegeben werden sollen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `follow_ups` | array | Liste der Follow-ups |
### `incidentio_follow_ups_show`
Erhalte detaillierte Informationen über ein bestimmtes Follow-up von incident.io.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Follow-up ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `follow_up` | object | Follow-up Details |
### `incidentio_users_list`
Liste alle Benutzer in deinem Incident.io Workspace auf. Gibt Benutzerdetails zurück, einschließlich ID, Name, E-Mail und Rolle.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Incident.io API-Schlüssel |
| `page_size` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 25\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `users` | array | Liste der Benutzer im Workspace |
### `incidentio_users_show`
Erhalte detaillierte Informationen über einen bestimmten Benutzer in deinem Incident.io Workspace anhand seiner ID.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Incident.io API-Schlüssel |
| `id` | string | Ja | Die eindeutige Kennung des abzurufenden Benutzers |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `user` | object | Details des angeforderten Benutzers |
### `incidentio_workflows_list`
Liste alle Workflows in deinem incident.io Workspace auf.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `page_size` | number | Nein | Anzahl der Workflows, die pro Seite zurückgegeben werden sollen |
| `after` | string | Nein | Paginierungscursor zum Abrufen der nächsten Ergebnisseite |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `workflows` | array | Liste der Workflows |
### `incidentio_workflows_show`
Rufe Details eines bestimmten Workflows in incident.io ab.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des abzurufenden Workflows |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `workflow` | object | Die Workflow-Details |
### `incidentio_workflows_update`
Aktualisiere einen vorhandenen Workflow in incident.io.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des zu aktualisierenden Workflows |
| `name` | string | Nein | Neuer Name für den Workflow |
| `state` | string | Nein | Neuer Status für den Workflow \(active, draft oder disabled\) |
| `folder` | string | Nein | Neuer Ordner für den Workflow |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `workflow` | object | Der aktualisierte Workflow |
### `incidentio_workflows_delete`
Löscht einen Workflow in incident.io.
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des zu löschenden Workflows |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Erfolgsmeldung |
### `incidentio_schedules_list`
Listet alle Zeitpläne in incident.io auf
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `page_size` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 25\) |
| `after` | string | Nein | Paginierungscursor zum Abrufen der nächsten Ergebnisseite |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `schedules` | array | Liste der Zeitpläne |
### `incidentio_schedules_create`
Erstellt einen neuen Zeitplan in incident.io
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `name` | string | Ja | Name des Zeitplans |
| `timezone` | string | Ja | Zeitzone für den Zeitplan \(z.B. America/New_York\) |
| `config` | string | Ja | Zeitplankonfiguration als JSON-String mit Rotationen. Beispiel: \{"rotations": \[\{"name": "Primary", "users": \[\{"id": "user_id"\}\], "handover_start_at": "2024-01-01T09:00:00Z", "handovers": \[\{"interval": 1, "interval_type": "weekly"\}\]\}\]\} |
| `Example` | string | Nein | Keine Beschreibung |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `schedule` | object | Der erstellte Zeitplan |
### `incidentio_schedules_show`
Details zu einem bestimmten Zeitplan in incident.io abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des Zeitplans |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `schedule` | object | Die Zeitplandetails |
### `incidentio_schedules_update`
Einen bestehenden Zeitplan in incident.io aktualisieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des zu aktualisierenden Zeitplans |
| `name` | string | Nein | Neuer Name für den Zeitplan |
| `timezone` | string | Nein | Neue Zeitzone für den Zeitplan \(z.B. America/New_York\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `schedule` | object | Der aktualisierte Zeitplan |
### `incidentio_schedules_delete`
Einen Zeitplan in incident.io löschen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des zu löschenden Zeitplans |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Erfolgsmeldung |
### `incidentio_escalations_list`
Alle Eskalationsrichtlinien in incident.io auflisten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `page_size` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 25\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `escalations` | array | Liste der Eskalationsrichtlinien |
### `incidentio_escalations_create`
Eine neue Eskalationsrichtlinie in incident.io erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `idempotency_key` | string | Ja | Eindeutiger Identifikator zur Vermeidung doppelter Eskalationserstellung. Verwenden Sie eine UUID oder eindeutige Zeichenfolge. |
| `title` | string | Ja | Titel der Eskalation |
| `escalation_path_id` | string | Nein | ID des zu verwendenden Eskalationspfads \(erforderlich, wenn user_ids nicht angegeben wird\) |
| `user_ids` | string | Nein | Kommagetrennte Liste von Benutzer-IDs, die benachrichtigt werden sollen \(erforderlich, wenn escalation_path_id nicht angegeben wird\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `escalation` | object | Die erstellte Eskalationsrichtlinie |
### `incidentio_escalations_show`
Details zu einer bestimmten Eskalationsrichtlinie in incident.io abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID der Eskalationsrichtlinie |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `escalation` | object | Die Details der Eskalationsrichtlinie |
### `incidentio_custom_fields_list`
Listet alle benutzerdefinierten Felder von incident.io auf.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `custom_fields` | array | Liste der benutzerdefinierten Felder |
### `incidentio_custom_fields_create`
Erstellt ein neues benutzerdefiniertes Feld in incident.io.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `name` | string | Ja | Name des benutzerdefinierten Feldes |
| `description` | string | Ja | Beschreibung des benutzerdefinierten Feldes \(erforderlich\) |
| `field_type` | string | Ja | Typ des benutzerdefinierten Feldes \(z.B. text, single_select, multi_select, numeric, datetime, link, user, team\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `custom_field` | object | Erstelltes benutzerdefiniertes Feld |
### `incidentio_custom_fields_show`
Erhalten Sie detaillierte Informationen über ein bestimmtes benutzerdefiniertes Feld von incident.io.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Benutzerdefinierte Feld-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `custom_field` | object | Details des benutzerdefinierten Feldes |
### `incidentio_custom_fields_update`
Aktualisieren Sie ein bestehendes benutzerdefiniertes Feld in incident.io.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Benutzerdefinierte Feld-ID |
| `name` | string | Ja | Neuer Name für das benutzerdefinierte Feld \(erforderlich\) |
| `description` | string | Ja | Neue Beschreibung für das benutzerdefinierte Feld \(erforderlich\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `custom_field` | object | Aktualisiertes benutzerdefiniertes Feld |
### `incidentio_custom_fields_delete`
Löschen Sie ein benutzerdefiniertes Feld von incident.io.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Benutzerdefinierte Feld-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Erfolgsmeldung |
### `incidentio_severities_list`
Liste alle konfigurierten Schweregrade in deinem Incident.io Workspace auf. Gibt Schweregrad-Details zurück, einschließlich ID, Name, Beschreibung und Rang.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Incident.io API-Schlüssel |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `severities` | array | Liste der Schweregrade |
### `incidentio_incident_statuses_list`
Liste alle konfigurierten Vorfallstatus in deinem Incident.io Workspace auf. Gibt Status-Details zurück, einschließlich ID, Name, Beschreibung und Kategorie.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Incident.io API-Schlüssel |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `incident_statuses` | array | Liste der Vorfallstatus |
### `incidentio_incident_types_list`
Liste alle konfigurierten Vorfalltypen in deinem Incident.io Workspace auf. Gibt Typ-Details zurück, einschließlich ID, Name, Beschreibung und Standard-Flag.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Incident.io API-Schlüssel |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `incident_types` | array | Liste der Vorfalltypen |
### `incidentio_incident_roles_list`
Liste alle Vorfallrollen in incident.io auf
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `incident_roles` | array | Liste der Vorfallrollen |
### `incidentio_incident_roles_create`
Eine neue Vorfallrolle in incident.io erstellen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `name` | string | Ja | Name der Vorfallrolle |
| `description` | string | Ja | Beschreibung der Vorfallrolle |
| `instructions` | string | Ja | Anweisungen für die Vorfallrolle |
| `shortform` | string | Ja | Kurzform-Abkürzung für die Rolle |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `incident_role` | object | Die erstellte Vorfallrolle |
### `incidentio_incident_roles_show`
Details zu einer bestimmten Vorfallrolle in incident.io abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID der Vorfallrolle |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `incident_role` | object | Die Details der Vorfallrolle |
### `incidentio_incident_roles_update`
Eine bestehende Vorfallrolle in incident.io aktualisieren
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID der zu aktualisierenden Vorfallrolle |
| `name` | string | Ja | Name der Vorfallrolle |
| `description` | string | Ja | Beschreibung der Vorfallrolle |
| `instructions` | string | Ja | Anweisungen für die Vorfallrolle |
| `shortform` | string | Ja | Kurzform-Abkürzung für die Rolle |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `incident_role` | object | Die aktualisierte Vorfallrolle |
### `incidentio_incident_roles_delete`
Eine Vorfallrolle in incident.io löschen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID der zu löschenden Vorfallrolle |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Erfolgsmeldung |
### `incidentio_incident_timestamps_list`
Alle Vorfallzeitstempel-Definitionen in incident.io auflisten
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `incident_timestamps` | array | Liste der Vorfallzeitstempel-Definitionen |
### `incidentio_incident_timestamps_show`
Details einer bestimmten Vorfallzeitstempel-Definition in incident.io abrufen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des Vorfallzeitstempels |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `incident_timestamp` | object | Die Details des Vorfallzeitstempels |
### `incidentio_incident_updates_list`
Alle Updates für einen bestimmten Vorfall in incident.io auflisten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `incident_id` | string | Nein | Die ID des Vorfalls, für den Updates abgerufen werden sollen \(optional - wenn nicht angegeben, werden alle Updates zurückgegeben\) |
| `page_size` | number | Nein | Anzahl der Ergebnisse pro Seite |
| `after` | string | Nein | Cursor für Paginierung |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `incident_updates` | array | Liste der Vorfallaktualisierungen |
### `incidentio_schedule_entries_list`
Alle Einträge für einen bestimmten Zeitplan in incident.io auflisten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `schedule_id` | string | Ja | Die ID des Zeitplans, für den Einträge abgerufen werden sollen |
| `entry_window_start` | string | Nein | Startdatum/-zeit zur Filterung der Einträge \(ISO 8601-Format\) |
| `entry_window_end` | string | Nein | Enddatum/-zeit zur Filterung der Einträge \(ISO 8601-Format\) |
| `page_size` | number | Nein | Anzahl der Ergebnisse pro Seite |
| `after` | string | Nein | Cursor für Paginierung |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `schedule_entries` | array | Liste der Zeitplaneinträge |
### `incidentio_schedule_overrides_create`
Erstellen Sie eine neue Zeitplanüberschreibung in incident.io
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `rotation_id` | string | Ja | Die ID der zu überschreibenden Rotation |
| `schedule_id` | string | Ja | Die ID des Zeitplans |
| `user_id` | string | Nein | Die ID des zuzuweisenden Benutzers \(geben Sie eines an: user_id, user_email oder user_slack_id\) |
| `user_email` | string | Nein | Die E-Mail des zuzuweisenden Benutzers \(geben Sie eines an: user_id, user_email oder user_slack_id\) |
| `user_slack_id` | string | Nein | Die Slack-ID des zuzuweisenden Benutzers \(geben Sie eines an: user_id, user_email oder user_slack_id\) |
| `start_at` | string | Ja | Wann die Überschreibung beginnt \(ISO 8601-Format\) |
| `end_at` | string | Ja | Wann die Überschreibung endet \(ISO 8601-Format\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `override` | object | Die erstellte Zeitplanüberschreibung |
### `incidentio_escalation_paths_create`
Erstellen Sie einen neuen Eskalationspfad in incident.io
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `name` | string | Ja | Name des Eskalationspfads |
| `path` | json | Ja | Array von Eskalationsstufen mit Zielen und Bestätigungszeit in Sekunden. Jede Stufe sollte enthalten: targets \(Array von \{id, type, schedule_id?, user_id?, urgency\}\) und time_to_ack_seconds \(Zahl\) |
| `working_hours` | json | Nein | Optionale Konfiguration der Arbeitszeiten. Array von \{weekday, start_time, end_time\} |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `escalation_path` | object | Der erstellte Eskalationspfad |
### `incidentio_escalation_paths_show`
Details zu einem bestimmten Eskalationspfad in incident.io abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des Eskalationspfads |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `escalation_path` | object | Die Details des Eskalationspfads |
### `incidentio_escalation_paths_update`
Einen bestehenden Eskalationspfad in incident.io aktualisieren
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des zu aktualisierenden Eskalationspfads |
| `name` | string | Nein | Neuer Name für den Eskalationspfad |
| `path` | json | Nein | Neue Konfiguration des Eskalationspfads. Array von Eskalationsstufen mit Zielen und time_to_ack_seconds |
| `working_hours` | json | Nein | Neue Konfiguration der Arbeitszeiten. Array von \{weekday, start_time, end_time\} |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `escalation_path` | object | Der aktualisierte Eskalationspfad |
### `incidentio_escalation_paths_delete`
Einen Eskalationspfad in incident.io löschen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | incident.io API-Schlüssel |
| `id` | string | Ja | Die ID des zu löschenden Eskalationspfads |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Erfolgsmeldung |
## Hinweise
- Kategorie: `tools`
- Typ: `incidentio`

View File

@@ -0,0 +1,353 @@
---
title: Intercom
description: Verwalte Kontakte, Unternehmen, Gespräche, Tickets und Nachrichten in Intercom
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="intercom"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
[Intercom](https://www.intercom.com/) ist eine führende Kundenkommunikationsplattform, die es dir ermöglicht, deine Interaktionen mit Kontakten, Unternehmen, Gesprächen, Tickets und Nachrichten an einem Ort zu verwalten und zu automatisieren. Die Intercom-Integration in Sim ermöglicht es deinen Agenten, Kundenbeziehungen, Support-Anfragen und Gespräche direkt aus deinen automatisierten Workflows heraus programmatisch zu verwalten.
Mit den Intercom-Tools kannst du:
- **Kontaktverwaltung:** Erstellen, abrufen, aktualisieren, auflisten, suchen und löschen von Kontakten automatisiere deine CRM-Prozesse und halte deine Kundendaten aktuell.
- **Unternehmensverwaltung:** Erstelle neue Unternehmen, rufe Unternehmensdetails ab und liste alle Unternehmen auf, die mit deinen Nutzern oder Geschäftskunden verbunden sind.
- **Gesprächshandling:** Abrufen, auflisten, beantworten und durchsuchen von Gesprächen ermöglicht Agenten, laufende Support-Threads zu verfolgen, Antworten zu geben und Folgemaßnahmen zu automatisieren.
- **Ticket-Management:** Erstelle und rufe Tickets programmatisch ab, um Kundendienst, Tracking von Support-Problemen und Workflow-Eskalationen zu automatisieren.
- **Nachrichten senden:** Löse Nachrichten an Nutzer oder Leads für Onboarding, Support oder Marketing aus, alles innerhalb deiner Workflow-Automatisierung.
Durch die Integration von Intercom-Tools in Sim ermöglichst du deinen Workflows, direkt mit deinen Nutzern zu kommunizieren, Kundensupport-Prozesse zu automatisieren, Leads zu verwalten und die Kommunikation im großen Maßstab zu optimieren. Egal ob du neue Kontakte erstellen, Kundendaten synchronisieren, Support-Tickets verwalten oder personalisierte Engagement-Nachrichten senden musst die Intercom-Tools bieten eine umfassende Möglichkeit, Kundeninteraktionen als Teil deiner intelligenten Automatisierungen zu verwalten.
{/* MANUAL-CONTENT-END */}
## Nutzungsanweisungen
Integriere Intercom in den Workflow. Kann Kontakte erstellen, abrufen, aktualisieren, auflisten, suchen und löschen; Unternehmen erstellen, abrufen und auflisten; Gespräche abrufen, auflisten, beantworten und durchsuchen; Tickets erstellen und abrufen; sowie Nachrichten erstellen.
## Tools
### `intercom_create_contact`
Erstellen Sie einen neuen Kontakt in Intercom mit E-Mail, external_id oder Rolle
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Nein | Die E-Mail-Adresse des Kontakts |
| `external_id` | string | Nein | Eine eindeutige Kennung für den Kontakt, die vom Client bereitgestellt wird |
| `phone` | string | Nein | Die Telefonnummer des Kontakts |
| `name` | string | Nein | Der Name des Kontakts |
| `avatar` | string | Nein | Eine Avatar-Bild-URL für den Kontakt |
| `signed_up_at` | number | Nein | Der Zeitpunkt der Registrierung des Benutzers als Unix-Zeitstempel |
| `last_seen_at` | number | Nein | Der Zeitpunkt, zu dem der Benutzer zuletzt gesehen wurde, als Unix-Zeitstempel |
| `owner_id` | string | Nein | Die ID eines Administrators, dem die Kontoinhaberschaft des Kontakts zugewiesen wurde |
| `unsubscribed_from_emails` | boolean | Nein | Ob der Kontakt E-Mails abbestellt hat |
| `custom_attributes` | string | Nein | Benutzerdefinierte Attribute als JSON-Objekt \(z.B. \{"attribute_name": "value"\}\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Erstellte Kontaktdaten |
### `intercom_get_contact`
Einen einzelnen Kontakt anhand der ID von Intercom abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `contactId` | string | Ja | Kontakt-ID zum Abrufen |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Kontaktdaten |
### `intercom_update_contact`
Einen bestehenden Kontakt in Intercom aktualisieren
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `contactId` | string | Ja | Zu aktualisierende Kontakt-ID |
| `email` | string | Nein | Die E-Mail-Adresse des Kontakts |
| `phone` | string | Nein | Die Telefonnummer des Kontakts |
| `name` | string | Nein | Der Name des Kontakts |
| `avatar` | string | Nein | Eine Avatar-Bild-URL für den Kontakt |
| `signed_up_at` | number | Nein | Der Zeitpunkt der Registrierung des Benutzers als Unix-Timestamp |
| `last_seen_at` | number | Nein | Der Zeitpunkt, zu dem der Benutzer zuletzt gesehen wurde, als Unix-Timestamp |
| `owner_id` | string | Nein | Die ID eines Administrators, dem die Kontoeigentümerschaft des Kontakts zugewiesen wurde |
| `unsubscribed_from_emails` | boolean | Nein | Ob der Kontakt E-Mails abbestellt hat |
| `custom_attributes` | string | Nein | Benutzerdefinierte Attribute als JSON-Objekt \(z.B. \{"attribut_name": "wert"\}\) |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Aktualisierte Kontaktdaten |
### `intercom_list_contacts`
Alle Kontakte von Intercom mit Paginierungsunterstützung auflisten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite (max: 150) |
| `starting_after` | string | Nein | Cursor für Paginierung - ID, nach der begonnen werden soll |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Liste der Kontakte |
### `intercom_search_contacts`
Suche nach Kontakten in Intercom mit einer Abfrage
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `query` | string | Ja | Suchabfrage (z.B., \{"field":"email","operator":"=","value":"user@example.com"\}) |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite (max: 150) |
| `starting_after` | string | Nein | Cursor für Paginierung |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Suchergebnisse |
### `intercom_delete_contact`
Einen Kontakt aus Intercom nach ID löschen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `contactId` | string | Ja | Kontakt-ID zum Löschen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Löschergebnis |
### `intercom_create_company`
Ein Unternehmen in Intercom erstellen oder aktualisieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `company_id` | string | Ja | Ihre eindeutige Kennung für das Unternehmen |
| `name` | string | Nein | Der Name des Unternehmens |
| `website` | string | Nein | Die Unternehmenswebsite |
| `plan` | string | Nein | Der Unternehmensplan |
| `size` | number | Nein | Die Anzahl der Mitarbeiter im Unternehmen |
| `industry` | string | Nein | Die Branche, in der das Unternehmen tätig ist |
| `monthly_spend` | number | Nein | Wie viel Umsatz das Unternehmen für Ihr Geschäft generiert |
| `custom_attributes` | string | Nein | Benutzerdefinierte Attribute als JSON-Objekt |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Erstellte oder aktualisierte Unternehmensdaten |
### `intercom_get_company`
Ein einzelnes Unternehmen anhand der ID von Intercom abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `companyId` | string | Ja | Unternehmens-ID zum Abrufen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Unternehmensdaten |
### `intercom_list_companies`
Alle Unternehmen von Intercom mit Paginierungsunterstützung auflisten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite |
| `page` | number | Nein | Seitennummer |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Liste der Unternehmen |
### `intercom_get_conversation`
Eine einzelne Konversation anhand der ID von Intercom abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `conversationId` | string | Ja | Konversations-ID zum Abrufen |
| `display_as` | string | Nein | Auf "plaintext" setzen, um Nachrichten im Klartext abzurufen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Konversationsdaten |
### `intercom_list_conversations`
Alle Konversationen von Intercom mit Paginierungsunterstützung auflisten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite \(max: 150\) |
| `starting_after` | string | Nein | Cursor für Paginierung |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Liste der Konversationen |
### `intercom_reply_conversation`
Als Administrator auf eine Konversation in Intercom antworten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `conversationId` | string | Ja | Konversations-ID, auf die geantwortet werden soll |
| `message_type` | string | Ja | Nachrichtentyp: "comment" oder "note" |
| `body` | string | Ja | Der Textinhalt der Antwort |
| `admin_id` | string | Ja | Die ID des Administrators, der die Antwort verfasst |
| `attachment_urls` | string | Nein | Kommagetrennte Liste von Bild-URLs (max. 10) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Aktualisierte Konversation mit Antwort |
### `intercom_search_conversations`
Nach Konversationen in Intercom mit einer Abfrage suchen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `query` | string | Ja | Suchabfrage als JSON-Objekt |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite (max: 150) |
| `starting_after` | string | Nein | Cursor für Paginierung |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Suchergebnisse |
### `intercom_create_ticket`
Ein neues Ticket in Intercom erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `ticket_type_id` | string | Ja | Die ID des Ticket-Typs |
| `contacts` | string | Ja | JSON-Array von Kontakt-Identifikatoren (z.B. \{"id": "contact_id"\}) |
| `ticket_attributes` | string | Ja | JSON-Objekt mit Ticket-Attributen einschließlich _default_title_ und _default_description_ |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Erstellte Ticket-Daten |
### `intercom_get_ticket`
Ein einzelnes Ticket anhand der ID von Intercom abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `ticketId` | string | Ja | Ticket-ID zum Abrufen |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Ticket-Daten |
### `intercom_create_message`
Eine neue vom Administrator initiierte Nachricht in Intercom erstellen und senden
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `message_type` | string | Ja | Nachrichtentyp: "inapp" oder "email" |
| `subject` | string | Nein | Der Betreff der Nachricht \(für E-Mail-Typ\) |
| `body` | string | Ja | Der Inhalt der Nachricht |
| `from_type` | string | Ja | Absendertyp: "admin" |
| `from_id` | string | Ja | Die ID des Administrators, der die Nachricht sendet |
| `to_type` | string | Ja | Empfängertyp: "contact" |
| `to_id` | string | Ja | Die ID des Kontakts, der die Nachricht empfängt |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Erstellte Nachrichtendaten |
## Notizen
- Kategorie: `tools`
- Typ: `intercom`

View File

@@ -40,10 +40,14 @@ Suche nach ähnlichen Inhalten in einer Wissensdatenbank mittels Vektorähnlichk
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `knowledgeBaseId` | string | Ja | ID der Wissensdatenbank, in der gesucht werden soll |
| `knowledgeBaseId` | string | Ja | ID der zu durchsuchenden Wissensdatenbank |
| `query` | string | Nein | Suchanfragentext \(optional bei Verwendung von Tag-Filtern\) |
| `topK` | number | Nein | Anzahl der ähnlichsten Ergebnisse, die zurückgegeben werden sollen \(1-100\) |
| `tagFilters` | array | Nein | Array von Tag-Filtern mit tagName- und tagValue-Eigenschaften |
| `items` | object | Nein | Keine Beschreibung |
| `properties` | string | Nein | Keine Beschreibung |
| `tagName` | string | Nein | Keine Beschreibung |
| `tagValue` | string | Nein | Keine Beschreibung |
#### Ausgabe
@@ -88,6 +92,11 @@ Ein neues Dokument in einer Wissensdatenbank erstellen
| `tag6` | string | Nein | Tag 6-Wert für das Dokument |
| `tag7` | string | Nein | Tag 7-Wert für das Dokument |
| `documentTagsData` | array | Nein | Strukturierte Tag-Daten mit Namen, Typen und Werten |
| `items` | object | Nein | Keine Beschreibung |
| `properties` | string | Nein | Keine Beschreibung |
| `tagName` | string | Nein | Keine Beschreibung |
| `tagValue` | string | Nein | Keine Beschreibung |
| `tagType` | string | Nein | Keine Beschreibung |
#### Ausgabe

View File

@@ -39,14 +39,24 @@ Tickets von Linear abrufen und filtern
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `teamId` | string | Ja | Linear Team-ID |
| `projectId` | string | Ja | Linear Projekt-ID |
| `teamId` | string | Nein | Linear Team-ID zum Filtern |
| `projectId` | string | Nein | Linear Projekt-ID zum Filtern |
| `assigneeId` | string | Nein | Benutzer-ID zum Filtern nach Zugewiesenem |
| `stateId` | string | Nein | Workflow-Status-ID zum Filtern nach Status |
| `priority` | number | Nein | Priorität zum Filtern \(0=Keine Priorität, 1=Dringend, 2=Hoch, 3=Normal, 4=Niedrig\) |
| `labelIds` | array | Nein | Array von Label-IDs zum Filtern |
| `createdAfter` | string | Nein | Tickets filtern, die nach diesem Datum erstellt wurden \(ISO 8601 Format\) |
| `updatedAfter` | string | Nein | Tickets filtern, die nach diesem Datum aktualisiert wurden \(ISO 8601 Format\) |
| `includeArchived` | boolean | Nein | Archivierte Tickets einschließen \(Standard: false\) |
| `first` | number | Nein | Anzahl der zurückzugebenden Tickets \(Standard: 50, max: 250\) |
| `after` | string | Nein | Paginierungscursor für die nächste Seite |
| `orderBy` | string | Nein | Sortierreihenfolge: "createdAt" oder "updatedAt" \(Standard: "updatedAt"\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `issues` | array | Array von Tickets aus dem angegebenen Linear Team und Projekt, jedes enthält id, title, description, state, teamId und projectId |
| `issues` | array | Array von gefilterten Tickets aus Linear |
### `linear_get_issue`
@@ -73,15 +83,25 @@ Ein neues Ticket in Linear erstellen
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `teamId` | string | Ja | Linear Team-ID |
| `projectId` | string | Ja | Linear Projekt-ID |
| `projectId` | string | Nein | Linear Projekt-ID |
| `title` | string | Ja | Ticket-Titel |
| `description` | string | Nein | Ticket-Beschreibung |
| `stateId` | string | Nein | Workflow-Status-ID \(Status\) |
| `assigneeId` | string | Nein | Benutzer-ID, dem das Ticket zugewiesen werden soll |
| `priority` | number | Nein | Priorität \(0=Keine Priorität, 1=Dringend, 2=Hoch, 3=Normal, 4=Niedrig\) |
| `estimate` | number | Nein | Schätzung in Punkten |
| `labelIds` | array | Nein | Array von Label-IDs, die dem Ticket zugewiesen werden sollen |
| `cycleId` | string | Nein | Zyklus-ID, dem das Ticket zugewiesen werden soll |
| `parentId` | string | Nein | Übergeordnete Ticket-ID \(für die Erstellung von Untertickets\) |
| `dueDate` | string | Nein | Fälligkeitsdatum im ISO 8601-Format \(nur Datum: JJJJ-MM-TT\) |
| `subscriberIds` | array | Nein | Array von Benutzer-IDs, die das Ticket abonnieren sollen |
| `projectMilestoneId` | string | Nein | Projektmeilenstein-ID, die mit dem Ticket verknüpft werden soll |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `issue` | object | Das erstellte Ticket mit id, title, description, state, teamId und projectId |
| `issue` | object | Das erstellte Ticket mit allen seinen Eigenschaften |
### `linear_update_issue`
@@ -98,7 +118,13 @@ Ein bestehendes Ticket in Linear aktualisieren
| `assigneeId` | string | Nein | Benutzer-ID, dem das Ticket zugewiesen werden soll |
| `priority` | number | Nein | Priorität \(0=Keine Priorität, 1=Dringend, 2=Hoch, 3=Normal, 4=Niedrig\) |
| `estimate` | number | Nein | Schätzung in Punkten |
| `labelIds` | array | Nein | Array von Label-IDs, die dem Ticket zugewiesen werden sollen |
| `labelIds` | array | Nein | Array von Label-IDs, die für das Ticket gesetzt werden sollen \(ersetzt alle vorhandenen Labels\) |
| `projectId` | string | Nein | Projekt-ID, zu der das Ticket verschoben werden soll |
| `cycleId` | string | Nein | Zyklus-ID, dem das Ticket zugewiesen werden soll |
| `parentId` | string | Nein | Übergeordnete Ticket-ID \(um dieses zu einem Unterticket zu machen\) |
| `dueDate` | string | Nein | Fälligkeitsdatum im ISO 8601-Format \(nur Datum: JJJJ-MM-TT\) |
| `addedLabelIds` | array | Nein | Array von Label-IDs, die dem Ticket hinzugefügt werden sollen \(ohne vorhandene Labels zu ersetzen\) |
| `removedLabelIds` | array | Nein | Array von Label-IDs, die vom Ticket entfernt werden sollen |
#### Ausgabe
@@ -236,8 +262,8 @@ Einen Kommentar in Linear bearbeiten
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `commentId` | string | Ja | Kommentar-ID, die aktualisiert werden soll |
| `body` | string | Ja | Neuer Kommentartext \(unterstützt Markdown\) |
| `commentId` | string | Ja | Kommentar-ID zum Aktualisieren |
| `body` | string | Nein | Neuer Kommentartext \(unterstützt Markdown\) |
#### Ausgabe
@@ -344,14 +370,14 @@ Ein bestehendes Projekt in Linear aktualisieren
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `projectId` | string | Ja | Projekt-ID, die aktualisiert werden soll |
| `projectId` | string | Ja | Projekt-ID zum Aktualisieren |
| `name` | string | Nein | Neuer Projektname |
| `description` | string | Nein | Neue Projektbeschreibung |
| `state` | string | Nein | Projektstatus (geplant, gestartet, abgeschlossen, abgebrochen) |
| `state` | string | Nein | Projektstatus \(planned, started, completed, canceled\) |
| `leadId` | string | Nein | Benutzer-ID des Projektleiters |
| `startDate` | string | Nein | Projektstartdatum (ISO-Format) |
| `targetDate` | string | Nein | Projektzieldatum (ISO-Format) |
| `priority` | number | Nein | Projektpriorität (0-4) |
| `startDate` | string | Nein | Projektstartdatum \(ISO-Format: JJJJ-MM-TT\) |
| `targetDate` | string | Nein | Projektzieldatum \(ISO-Format: JJJJ-MM-TT\) |
| `priority` | number | Nein | Projektpriorität \(0=Keine Priorität, 1=Dringend, 2=Hoch, 3=Normal, 4=Niedrig\) |
#### Ausgabe
@@ -525,11 +551,11 @@ Einen neuen Workflow-Status in Linear erstellen
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `teamId` | string | Ja | Team-ID, in dem der Status erstellt werden soll |
| `name` | string | Ja | Name des Status \(z.B. "In Prüfung"\) |
| `color` | string | Ja | Farbe des Status \(Hex-Format\) |
| `teamId` | string | Ja | Team-ID, in der der Status erstellt werden soll |
| `name` | string | Ja | Statusname \(z.B. "In Prüfung"\) |
| `color` | string | Nein | Statusfarbe \(Hex-Format\) |
| `type` | string | Ja | Statustyp: "backlog", "unstarted", "started", "completed" oder "canceled" |
| `description` | string | Nein | Beschreibung des Status |
| `description` | string | Nein | Statusbeschreibung |
| `position` | number | Nein | Position im Workflow |
#### Ausgabe
@@ -635,9 +661,9 @@ Einen Anhang zu einem Ticket in Linear hinzufügen
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `issueId` | string | Ja | Ticket-ID, an die der Anhang angehängt werden soll |
| `issueId` | string | Ja | Ticket-ID, an die angehängt werden soll |
| `url` | string | Ja | URL des Anhangs |
| `title` | string | Nein | Titel des Anhangs |
| `title` | string | Ja | Titel des Anhangs |
| `subtitle` | string | Nein | Untertitel/Beschreibung des Anhangs |
#### Ausgabe
@@ -673,7 +699,7 @@ Metadaten eines Anhangs in Linear aktualisieren
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `attachmentId` | string | Ja | Anhang-ID zum Aktualisieren |
| `title` | string | Nein | Neuer Titel des Anhangs |
| `title` | string | Ja | Neuer Titel des Anhangs |
| `subtitle` | string | Nein | Neuer Untertitel des Anhangs |
#### Ausgabe
@@ -707,8 +733,8 @@ Zwei Tickets in Linear miteinander verknüpfen (blockiert, bezieht sich auf, dup
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `issueId` | string | Ja | Quell-Ticket-ID |
| `relatedIssueId` | string | Ja | Ziel-Ticket-ID für die Verknüpfung |
| `type` | string | Ja | Beziehungstyp: "blocks", "blocked", "duplicate", "related" |
| `relatedIssueId` | string | Ja | Ziel-Ticket-ID, mit der verknüpft werden soll |
| `type` | string | Ja | Beziehungstyp: "blocks", "duplicate" oder "related". Hinweis: Wenn "blocks" von A nach B erstellt wird, wird die umgekehrte Beziehung \(B blockiert durch A\) automatisch erstellt. |
#### Ausgabe
@@ -1217,7 +1243,8 @@ Ein neues Projekt-Label in Linear erstellen
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `name` | string | Ja | Projekt-Label-Name |
| `projectId` | string | Ja | Das Projekt für dieses Label |
| `name` | string | Ja | Projektlabel-Name |
| `color` | string | Nein | Label-Farbe \(Hex-Code\) |
| `description` | string | Nein | Label-Beschreibung |
| `isGroup` | boolean | Nein | Ob dies eine Label-Gruppe ist |
@@ -1394,6 +1421,7 @@ Einen neuen Projektstatus in Linear erstellen
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `projectId` | string | Ja | Das Projekt, für das der Status erstellt werden soll |
| `name` | string | Ja | Name des Projektstatus |
| `color` | string | Ja | Statusfarbe \(Hex-Code\) |
| `description` | string | Nein | Statusbeschreibung |

View File

@@ -0,0 +1,83 @@
---
title: LinkedIn
description: Teilen Sie Beiträge und verwalten Sie Ihre LinkedIn-Präsenz
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="linkedin"
color="#0072B1"
/>
{/* MANUAL-CONTENT-START:intro */}
[LinkedIn](https://www.linkedin.com) ist die weltweit größte professionelle Netzwerkplattform, die Nutzern ermöglicht, ihre Karriere aufzubauen, sich mit ihrem Netzwerk zu verbinden und berufliche Inhalte zu teilen. LinkedIn wird von Fachleuten aus verschiedenen Branchen für persönliches Branding, Recruiting, Jobsuche und Geschäftsentwicklung genutzt.
Mit LinkedIn können Sie ganz einfach Beiträge in Ihrem persönlichen Feed teilen, um mit Ihrem Netzwerk in Kontakt zu treten, und auf Informationen über Ihr Profil zugreifen, um Ihre beruflichen Erfolge hervorzuheben. Die automatisierte Integration mit Sim ermöglicht es Ihnen, LinkedIn-Funktionen programmatisch zu nutzen so können Agenten und Workflows Updates posten, über Ihre berufliche Präsenz berichten und Ihren Feed aktiv halten, ohne dass manuelle Arbeit erforderlich ist.
Zu den wichtigsten LinkedIn-Funktionen, die über diese Integration verfügbar sind, gehören:
- **Beiträge teilen:** Veröffentlichen Sie automatisch berufliche Updates, Artikel oder Ankündigungen in Ihrem persönlichen LinkedIn-Feed.
- **Profilinformationen:** Rufen Sie detaillierte Informationen über Ihr LinkedIn-Profil ab, um diese zu überwachen oder in nachgelagerten Aufgaben innerhalb Ihrer Workflows zu verwenden.
Diese Funktionen machen es einfach, Ihr LinkedIn-Netzwerk zu pflegen und Ihre berufliche Reichweite effizient zu erweitern als Teil Ihrer KI- oder Workflow-Automatisierungsstrategie.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Integrieren Sie LinkedIn in Workflows. Teilen Sie Beiträge in Ihrem persönlichen Feed und greifen Sie auf Ihre LinkedIn-Profilinformationen zu.
## Tools
### `linkedin_share_post`
Einen Beitrag in Ihrem persönlichen LinkedIn-Feed teilen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der Textinhalt Ihres LinkedIn-Beitrags |
| `visibility` | string | Nein | Wer diesen Beitrag sehen kann: "PUBLIC" oder "CONNECTIONS" \(Standard: "PUBLIC"\) |
| `request` | string | Nein | Keine Beschreibung |
| `output` | string | Nein | Keine Beschreibung |
| `output` | string | Nein | Keine Beschreibung |
| `specificContent` | string | Nein | Keine Beschreibung |
| `shareCommentary` | string | Nein | Keine Beschreibung |
| `visibility` | string | Nein | Keine Beschreibung |
| `headers` | string | Nein | Keine Beschreibung |
| `output` | string | Nein | Keine Beschreibung |
| `output` | string | Nein | Keine Beschreibung |
| `output` | string | Nein | Keine Beschreibung |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `postId` | string | Erstellte Beitrags-ID |
| `profile` | json | LinkedIn-Profilinformationen |
| `error` | string | Fehlermeldung bei fehlgeschlagener Operation |
### `linkedin_get_profile`
Rufen Sie Ihre LinkedIn-Profilinformationen ab
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `postId` | string | Erstellte Beitrags-ID |
| `profile` | json | LinkedIn-Profilinformationen |
| `error` | string | Fehlermeldung bei fehlgeschlagener Operation |
## Hinweise
- Kategorie: `tools`
- Typ: `linkedin`

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,216 @@
---
title: Mailgun
description: E-Mails versenden und Mailinglisten mit Mailgun verwalten
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="mailgun"
color="#F06248"
/>
{/* MANUAL-CONTENT-START:intro */}
[Mailgun](https://www.mailgun.com) ist ein leistungsstarker E-Mail-Zustelldienst, der für Entwickler und Unternehmen konzipiert wurde, um E-Mails mühelos zu versenden, zu empfangen und zu verfolgen. Mailgun ermöglicht es Ihnen, robuste APIs für zuverlässige Transaktions- und Marketing-E-Mails, flexible Mailinglisten-Verwaltung und fortschrittliches Event-Tracking zu nutzen.
Mit Mailguns umfassendem Funktionsumfang können Sie wichtige E-Mail-Operationen automatisieren und die Zustellbarkeit sowie das Engagement der Empfänger genau überwachen. Dies macht es zu einer idealen Lösung für Workflow-Automatisierung, bei der Kommunikation, Benachrichtigungen und Kampagnen-Mails zentrale Bestandteile Ihrer Prozesse sind.
Zu den wichtigsten Funktionen von Mailgun gehören:
- **Versand von Transaktions-E-Mails:** Zustellung von E-Mails mit hohem Volumen wie Kontobenachrichtigungen, Quittungen, Warnmeldungen und Passwort-Zurücksetzungen.
- **Reichhaltige E-Mail-Inhalte:** Versenden Sie sowohl Nur-Text- als auch HTML-E-Mails und verwenden Sie Tags zur Kategorisierung und Verfolgung Ihrer Nachrichten.
- **Mailinglisten-Verwaltung:** Erstellen, aktualisieren und verwalten Sie Mailinglisten und Mitglieder, um Gruppenkommunikation effizient zu versenden.
- **Domain-Informationen:** Rufen Sie Details zu Ihren Sende-Domains ab, um Konfiguration und Zustand zu überwachen.
- **Event-Tracking:** Analysieren Sie die Zustellbarkeit von E-Mails und das Engagement mit detaillierten Ereignisdaten zu gesendeten Nachrichten.
- **Nachrichtenabruf:** Greifen Sie auf gespeicherte Nachrichten für Compliance-, Analyse- oder Fehlerbehebungszwecke zu.
Durch die Integration von Mailgun in Sim können Ihre Agenten programmatisch E-Mails versenden, E-Mail-Listen verwalten, auf Domain-Informationen zugreifen und Ereignisse in Echtzeit überwachen als Teil automatisierter Workflows. Dies ermöglicht eine intelligente, datengesteuerte Interaktion mit Ihren Nutzern direkt aus Ihren KI-gestützten Prozessen heraus.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Integrieren Sie Mailgun in Ihren Workflow. Senden Sie Transaktions-E-Mails, verwalten Sie Mailinglisten und Mitglieder, sehen Sie Domain-Informationen ein und verfolgen Sie E-Mail-Ereignisse. Unterstützt Text- und HTML-E-Mails, Tags für Tracking und umfassende Listenverwaltung.
## Tools
### `mailgun_send_message`
E-Mail über die Mailgun API versenden
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
| `domain` | string | Ja | Mailgun-Domain \(z.B. mg.example.com\) |
| `from` | string | Ja | E-Mail-Adresse des Absenders |
| `to` | string | Ja | E-Mail-Adresse des Empfängers \(durch Komma getrennt für mehrere\) |
| `subject` | string | Ja | Betreff der E-Mail |
| `text` | string | Nein | Nur-Text-Inhalt der E-Mail |
| `html` | string | Nein | HTML-Inhalt der E-Mail |
| `cc` | string | Nein | CC-E-Mail-Adresse \(durch Komma getrennt für mehrere\) |
| `bcc` | string | Nein | BCC-E-Mail-Adresse \(durch Komma getrennt für mehrere\) |
| `tags` | string | Nein | Tags für die E-Mail \(durch Komma getrennt\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Nachricht erfolgreich gesendet wurde |
| `id` | string | Nachrichten-ID |
| `message` | string | Antwortnachricht von Mailgun |
### `mailgun_get_message`
Eine gespeicherte Nachricht anhand ihres Schlüssels abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
| `domain` | string | Ja | Mailgun-Domain |
| `messageKey` | string | Ja | Speicherschlüssel der Nachricht |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Anfrage erfolgreich war |
| `recipients` | string | Nachrichtenempfänger |
| `from` | string | Absender-E-Mail |
| `subject` | string | Nachrichtenbetreff |
| `bodyPlain` | string | Nur-Text-Inhalt |
| `strippedText` | string | Bereinigter Text |
| `strippedSignature` | string | Bereinigte Signatur |
| `bodyHtml` | string | HTML-Inhalt |
| `strippedHtml` | string | Bereinigtes HTML |
| `attachmentCount` | number | Anzahl der Anhänge |
| `timestamp` | number | Nachrichtenzeitstempel |
| `messageHeaders` | json | Nachrichtenheader |
| `contentIdMap` | json | Content-ID-Zuordnung |
### `mailgun_list_messages`
Ereignisse (Logs) für über Mailgun gesendete Nachrichten auflisten
#### Input
| Parameter | Type | Required | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
| `domain` | string | Ja | Mailgun-Domain |
| `event` | string | Nein | Nach Ereignistyp filtern \(accepted, delivered, failed, opened, clicked, usw.\) |
| `limit` | number | Nein | Maximale Anzahl der zurückzugebenden Ereignisse \(Standard: 100\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Anfrage erfolgreich war |
| `items` | json | Array von Ereigniselementen |
| `paging` | json | Paginierungsinformationen |
### `mailgun_create_mailing_list`
Eine neue Mailingliste erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
| `address` | string | Ja | Mailinglisten-Adresse \(z.B. liste@beispiel.com\) |
| `name` | string | Nein | Name der Mailingliste |
| `description` | string | Nein | Beschreibung der Mailingliste |
| `accessLevel` | string | Nein | Zugriffsebene: readonly, members oder everyone |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Liste erfolgreich erstellt wurde |
| `message` | string | Antwortnachricht |
| `list` | json | Details der erstellten Mailingliste |
### `mailgun_get_mailing_list`
Details einer Mailingliste abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
| `address` | string | Ja | Mailinglisten-Adresse |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Anfrage erfolgreich war |
| `list` | json | Details der Mailingliste |
### `mailgun_add_list_member`
Ein Mitglied zu einer Mailingliste hinzufügen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
| `listAddress` | string | Ja | Mailinglisten-Adresse |
| `address` | string | Ja | E-Mail-Adresse des Mitglieds |
| `name` | string | Nein | Name des Mitglieds |
| `vars` | string | Nein | JSON-String mit benutzerdefinierten Variablen |
| `subscribed` | boolean | Nein | Ob das Mitglied abonniert ist |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob das Mitglied erfolgreich hinzugefügt wurde |
| `message` | string | Antwortnachricht |
| `member` | json | Details des hinzugefügten Mitglieds |
### `mailgun_list_domains`
Alle Domains für Ihr Mailgun-Konto auflisten
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Anfrage erfolgreich war |
| `totalCount` | number | Gesamtanzahl der Domains |
| `items` | json | Array von Domain-Objekten |
### `mailgun_get_domain`
Details einer bestimmten Domain abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Mailgun API-Schlüssel |
| `domain` | string | Ja | Domainname |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die Anfrage erfolgreich war |
| `domain` | json | Domain-Details |
## Hinweise
- Kategorie: `tools`
- Typ: `mailgun`

View File

@@ -24,9 +24,11 @@ Füge eine neue Erinnerung zur Datenbank hinzu oder ergänze bestehende Erinneru
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `id` | string | Ja | Kennung für die Erinnerung. Wenn bereits eine Erinnerung mit dieser ID existiert, werden die neuen Daten hinzugefügt. |
| `role` | string | Ja | Rolle für Agent-Erinnerung \(user, assistant oder system\) |
| `conversationId` | string | Nein | Konversationskennung (z.B. user-123, session-abc). Wenn bereits eine Erinnerung mit dieser conversationId für diesen Block existiert, wird die neue Nachricht angehängt. |
| `id` | string | Nein | Legacy-Parameter für die Konversationskennung. Verwenden Sie stattdessen conversationId. Für Abwärtskompatibilität bereitgestellt. |
| `role` | string | Ja | Rolle für Agent-Erinnerung (user, assistant oder system) |
| `content` | string | Ja | Inhalt für Agent-Erinnerung |
| `blockId` | string | Nein | Optionale Block-ID. Wenn nicht angegeben, wird die aktuelle Block-ID aus dem Ausführungskontext verwendet oder standardmäßig "default" gesetzt. |
#### Ausgabe
@@ -38,22 +40,25 @@ Füge eine neue Erinnerung zur Datenbank hinzu oder ergänze bestehende Erinneru
### `memory_get`
Einen bestimmten Speicher anhand seiner ID abrufen
Erinnerungen nach conversationId, blockId, blockName oder einer Kombination abrufen. Gibt alle übereinstimmenden Erinnerungen zurück.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `id` | string | Ja | Kennung für den abzurufenden Speicher |
| `conversationId` | string | Nein | Konversationskennung (z.B. user-123, session-abc). Wenn allein angegeben, werden alle Erinnerungen für diese Konversation über alle Blöcke hinweg zurückgegeben. |
| `id` | string | Nein | Legacy-Parameter für die Konversationskennung. Verwenden Sie stattdessen conversationId. Für Abwärtskompatibilität bereitgestellt. |
| `blockId` | string | Nein | Block-Kennung. Wenn allein angegeben, werden alle Erinnerungen für diesen Block über alle Konversationen hinweg zurückgegeben. Wenn mit conversationId angegeben, werden Erinnerungen für diese spezifische Konversation in diesem Block zurückgegeben. |
| `blockName` | string | Nein | Blockname. Alternative zu blockId. Wenn allein angegeben, werden alle Erinnerungen für Blöcke mit diesem Namen zurückgegeben. Wenn mit conversationId angegeben, werden Erinnerungen für diese Konversation in Blöcken mit diesem Namen zurückgegeben. |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob der Speicher erfolgreich abgerufen wurde |
| `memories` | array | Array von Speicherdaten für die angeforderte ID |
| `success` | boolean | Ob die Erinnerung erfolgreich abgerufen wurde |
| `memories` | array | Array von Speicherobjekten mit conversationId, blockId, blockName und data-Feldern |
| `message` | string | Erfolgs- oder Fehlermeldung |
| `error` | string | Fehlermeldung, falls der Vorgang fehlgeschlagen ist |
| `error` | string | Fehlermeldung, wenn der Vorgang fehlgeschlagen ist |
### `memory_get_all`
@@ -68,20 +73,23 @@ Alle Speicher aus der Datenbank abrufen
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob alle Speicher erfolgreich abgerufen wurden |
| `memories` | array | Array aller Speicherobjekte mit Schlüsseln, Typen und Daten |
| `success` | boolean | Ob alle Erinnerungen erfolgreich abgerufen wurden |
| `memories` | array | Array aller Speicherobjekte mit key, conversationId, blockId, blockName und data-Feldern |
| `message` | string | Erfolgs- oder Fehlermeldung |
| `error` | string | Fehlermeldung, falls der Vorgang fehlgeschlagen ist |
| `error` | string | Fehlermeldung, wenn der Vorgang fehlgeschlagen ist |
### `memory_delete`
Eine bestimmte Erinnerung anhand ihrer ID löschen
Löschen von Erinnerungen nach conversationId, blockId, blockName oder einer Kombination davon. Unterstützt Massenlöschung.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `id` | string | Ja | Kennung für die zu löschende Erinnerung |
| `conversationId` | string | Nein | Konversationskennung (z.B. user-123, session-abc). Wenn allein angegeben, werden alle Erinnerungen für diese Konversation über alle Blöcke hinweg gelöscht. |
| `id` | string | Nein | Legacy-Parameter für die Konversationskennung. Verwenden Sie stattdessen conversationId. Für Abwärtskompatibilität bereitgestellt. |
| `blockId` | string | Nein | Block-Kennung. Wenn allein angegeben, werden alle Erinnerungen für diesen Block über alle Konversationen hinweg gelöscht. Wenn mit conversationId angegeben, werden Erinnerungen für diese spezifische Konversation in diesem Block gelöscht. |
| `blockName` | string | Nein | Blockname. Alternative zu blockId. Wenn allein angegeben, werden alle Erinnerungen für Blöcke mit diesem Namen gelöscht. Wenn mit conversationId angegeben, werden Erinnerungen für diese Konversation in Blöcken mit diesem Namen gelöscht. |
#### Ausgabe

View File

@@ -26,7 +26,7 @@ In Sim bietet die Microsoft Excel-Integration nahtlosen Zugriff auf Tabellenkalk
## Nutzungsanweisungen
Integrieren Sie Microsoft Excel in den Workflow. Kann Tabellen lesen, schreiben, aktualisieren und ergänzen. Erfordert OAuth.
Integrieren Sie Microsoft Excel in den Workflow. Kann lesen, schreiben, aktualisieren, zu Tabellen hinzufügen und neue Arbeitsblätter erstellen.
## Tools
@@ -91,6 +91,23 @@ Neue Zeilen zu einer Microsoft Excel-Tabelle hinzufügen
| `values` | array | Array von Zeilen, die zur Tabelle hinzugefügt wurden |
| `metadata` | object | Metadaten der Tabellenkalkulation |
### `microsoft_excel_worksheet_add`
Ein neues Arbeitsblatt (Tabellenblatt) in einer Microsoft Excel-Arbeitsmappe erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `spreadsheetId` | string | Ja | Die ID der Excel-Arbeitsmappe, zu der das Arbeitsblatt hinzugefügt werden soll |
| `worksheetName` | string | Ja | Der Name des neuen Arbeitsblatts. Muss innerhalb der Arbeitsmappe eindeutig sein und darf 31 Zeichen nicht überschreiten |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `worksheet` | object | Details des neu erstellten Arbeitsblatts |
## Hinweise
- Kategorie: `tools`

View File

@@ -0,0 +1,172 @@
---
title: Neo4j
description: Verbindung zur Neo4j-Graphdatenbank
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="neo4j"
color="#FFFFFF"
/>
## Nutzungsanleitung
Integrieren Sie die Neo4j-Graphdatenbank in den Workflow. Kann Knoten und Beziehungen abfragen, erstellen, zusammenführen, aktualisieren und löschen.
## Tools
### `neo4j_query`
Führen Sie MATCH-Abfragen aus, um Knoten und Beziehungen aus der Neo4j-Graphdatenbank zu lesen. Für beste Leistung und zur Vermeidung großer Ergebnismengen, fügen Sie LIMIT in Ihre Abfrage ein (z.B.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `host` | string | Ja | Neo4j-Server-Hostname oder IP-Adresse |
| `port` | number | Ja | Neo4j-Server-Port \(Standard: 7687 für Bolt-Protokoll\) |
| `database` | string | Ja | Datenbankname für die Verbindung |
| `username` | string | Ja | Neo4j-Benutzername |
| `password` | string | Ja | Neo4j-Passwort |
| `encryption` | string | Nein | Verbindungsverschlüsselungsmodus \(enabled, disabled\) |
| `cypherQuery` | string | Ja | Auszuführende Cypher-Abfrage \(typischerweise MATCH-Anweisungen\) |
| `parameters` | object | Nein | Parameter für die Cypher-Abfrage als JSON-Objekt. Verwenden Sie diese für dynamische Werte einschließlich LIMIT \(z.B. query: "MATCH \(n\) RETURN n LIMIT $limit", parameters: \{limit: 100\}\). |
| `parameters` | string | Nein | Keine Beschreibung |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Statusmeldung der Operation |
| `records` | array | Array von Datensätzen, die von der Abfrage zurückgegeben wurden |
| `recordCount` | number | Anzahl der zurückgegebenen Datensätze |
| `summary` | json | Zusammenfassung der Abfrageausführung mit Zeitangaben und Zählern |
### `neo4j_create`
Führe CREATE-Anweisungen aus, um neue Knoten und Beziehungen zur Neo4j-Graphdatenbank hinzuzufügen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `host` | string | Ja | Neo4j-Server-Hostname oder IP-Adresse |
| `port` | number | Ja | Neo4j-Server-Port \(Standard: 7687 für Bolt-Protokoll\) |
| `database` | string | Ja | Datenbankname, zu dem verbunden werden soll |
| `username` | string | Ja | Neo4j-Benutzername |
| `password` | string | Ja | Neo4j-Passwort |
| `encryption` | string | Nein | Verbindungsverschlüsselungsmodus \(enabled, disabled\) |
| `cypherQuery` | string | Ja | Auszuführende Cypher CREATE-Anweisung |
| `parameters` | object | Nein | Parameter für die Cypher-Abfrage als JSON-Objekt |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Statusmeldung der Operation |
| `summary` | json | Erstellungszusammenfassung mit Zählern für erstellte Knoten und Beziehungen |
### `neo4j_merge`
Führe MERGE-Anweisungen aus, um Knoten und Beziehungen in Neo4j zu finden oder zu erstellen (Upsert-Operation)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `host` | string | Ja | Neo4j-Server-Hostname oder IP-Adresse |
| `port` | number | Ja | Neo4j-Server-Port \(Standard: 7687 für Bolt-Protokoll\) |
| `database` | string | Ja | Datenbankname, zu dem verbunden werden soll |
| `username` | string | Ja | Neo4j-Benutzername |
| `password` | string | Ja | Neo4j-Passwort |
| `encryption` | string | Nein | Verbindungsverschlüsselungsmodus \(enabled, disabled\) |
| `cypherQuery` | string | Ja | Auszuführende Cypher MERGE-Anweisung |
| `parameters` | object | Nein | Parameter für die Cypher-Abfrage als JSON-Objekt |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Statusmeldung der Operation |
| `summary` | json | Zusammenfassung der Zusammenführung mit Zählern für erstellte oder zugeordnete Knoten/Beziehungen |
### `neo4j_update`
Führt SET-Anweisungen aus, um Eigenschaften vorhandener Knoten und Beziehungen in Neo4j zu aktualisieren
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j-Server-Hostname oder IP-Adresse |
| `port` | number | Yes | Neo4j-Server-Port \(Standard: 7687 für Bolt-Protokoll\) |
| `database` | string | Yes | Datenbankname, zu dem eine Verbindung hergestellt werden soll |
| `username` | string | Yes | Neo4j-Benutzername |
| `password` | string | Yes | Neo4j-Passwort |
| `encryption` | string | No | Verbindungsverschlüsselungsmodus \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher-Abfrage mit MATCH- und SET-Anweisungen zum Aktualisieren von Eigenschaften |
| `parameters` | object | No | Parameter für die Cypher-Abfrage als JSON-Objekt |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Statusmeldung der Operation |
| `summary` | json | Aktualisierungszusammenfassung mit Zählern für gesetzte Eigenschaften |
### `neo4j_delete`
Führt DELETE- oder DETACH DELETE-Anweisungen aus, um Knoten und Beziehungen aus Neo4j zu entfernen
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j-Server-Hostname oder IP-Adresse |
| `port` | number | Yes | Neo4j-Server-Port \(Standard: 7687 für Bolt-Protokoll\) |
| `database` | string | Yes | Datenbankname, zu dem eine Verbindung hergestellt werden soll |
| `username` | string | Yes | Neo4j-Benutzername |
| `password` | string | Yes | Neo4j-Passwort |
| `encryption` | string | No | Verbindungsverschlüsselungsmodus \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher-Abfrage mit MATCH- und DELETE/DETACH DELETE-Anweisungen |
| `parameters` | object | No | Parameter für die Cypher-Abfrage als JSON-Objekt |
| `detach` | boolean | No | Ob DETACH DELETE verwendet werden soll, um Beziehungen zu entfernen, bevor Knoten gelöscht werden |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Statusmeldung der Operation |
| `summary` | json | Löschzusammenfassung mit Zählern für gelöschte Knoten und Beziehungen |
### `neo4j_execute`
Führt beliebige Cypher-Abfragen auf der Neo4j-Graphdatenbank für komplexe Operationen aus
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `host` | string | Ja | Neo4j-Server-Hostname oder IP-Adresse |
| `port` | number | Ja | Neo4j-Server-Port (Standard: 7687 für Bolt-Protokoll) |
| `database` | string | Ja | Datenbankname für die Verbindung |
| `username` | string | Ja | Neo4j-Benutzername |
| `password` | string | Ja | Neo4j-Passwort |
| `encryption` | string | Nein | Verbindungsverschlüsselungsmodus (enabled, disabled) |
| `cypherQuery` | string | Ja | Auszuführende Cypher-Abfrage (jede gültige Cypher-Anweisung) |
| `parameters` | object | Nein | Parameter für die Cypher-Abfrage als JSON-Objekt |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Statusmeldung der Operation |
| `records` | array | Array von Datensätzen, die von der Abfrage zurückgegeben wurden |
| `recordCount` | number | Anzahl der zurückgegebenen Datensätze |
| `summary` | json | Ausführungszusammenfassung mit Zeiterfassung und Zählern |
## Hinweise
- Kategorie: `tools`
- Typ: `neo4j`

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,797 @@
---
title: Pylon
description: Verwalten Sie Kundensupport-Anfragen, Konten, Kontakte, Benutzer,
Teams und Tags in Pylon
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="pylon"
color="#E8F4FA"
/>
{/* MANUAL-CONTENT-START:intro */}
[Pylon](https://usepylon.com/) ist eine fortschrittliche Kundensupport- und Erfolgsplattform, die entwickelt wurde, um Ihnen bei der Verwaltung aller Aspekte Ihrer Kundenbeziehungen zu helfen von Support-Anfragen bis hin zu Konten, Kontakten, Benutzern, Teams und darüber hinaus. Pylon ermöglicht Support- und Erfolgsteams, effizient und programmatisch mit einer umfangreichen API und umfassenden Werkzeugen zu arbeiten.
Mit Pylon in Sim können Sie:
- **Support-Anfragen verwalten:**
- Support-Anfragen auflisten, erstellen, abrufen, aktualisieren und löschen für effizientes Falltracking.
- Anfragen durchsuchen und zurückstellen, um Agenten zu helfen, fokussiert und organisiert zu bleiben.
- Verwalten von Anfrage-Followern und externen Anfragen für nahtlose Zusammenarbeit mit internen und externen Stakeholdern.
- **Vollständige Kontoverwaltung:**
- Kundenkonten auflisten, erstellen, abrufen, aktualisieren und löschen.
- Massenaktualisierung von Konten programmatisch durchführen.
- Konten durchsuchen, um schnell kundenrelevante Informationen für Support oder Outreach zu finden.
- **Kontaktverwaltung:**
- Kontakte auflisten, erstellen, abrufen, aktualisieren, löschen und durchsuchen verwalten Sie alle Personen, die mit Ihren Konten verbunden sind.
- **Benutzer- und Team-Operationen:**
- Benutzer in Ihrem Pylon-Workspace auflisten, abrufen, aktualisieren und durchsuchen.
- Teams auflisten, erstellen, abrufen und aktualisieren, um Ihre Support-Organisation und Arbeitsabläufe zu strukturieren.
- **Tagging und Organisation:**
- Tags auflisten, abrufen, erstellen, aktualisieren und löschen zur Kategorisierung von Anfragen, Konten oder Kontakten.
- **Nachrichtenbearbeitung:**
- Sensible Nachrichteninhalte direkt aus Ihren Workflows redigieren für Datenschutz und Compliance.
Durch die Integration von Pylon-Tools in Sim können Ihre Agenten jeden Aspekt der Support-Operationen automatisieren:
- Automatisches Öffnen, Aktualisieren oder Priorisieren neuer Anfragen bei Kundenereignissen.
- Synchronisierte Konto- und Kontaktdaten über Ihren gesamten Tech-Stack hinweg pflegen.
- Gespräche weiterleiten, Eskalationen bearbeiten und Ihre Support-Daten mithilfe von Tags und Teams organisieren.
- Sicherstellen, dass sensible Daten ordnungsgemäß verwaltet werden, indem Nachrichten bei Bedarf redigiert werden.
Die Endpunkte von Pylon bieten granulare Kontrolle für das vollständige Lifecycle-Management von Kundenanliegen und -beziehungen. Ob beim Skalieren eines Support-Desks, bei der Unterstützung proaktiver Kundenbetreuung oder bei der Integration mit anderen Systemen Pylon in Sim ermöglicht erstklassige CRM-Automatisierung sicher, flexibel und skalierbar.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Integrieren Sie Pylon in den Workflow. Verwalten Sie Anliegen (auflisten, erstellen, abrufen, aktualisieren, löschen, suchen, zurückstellen, Follower, externe Anliegen), Konten (auflisten, erstellen, abrufen, aktualisieren, löschen, Massenaktualisierung, suchen), Kontakte (auflisten, erstellen, abrufen, aktualisieren, löschen, suchen), Benutzer (auflisten, abrufen, aktualisieren, suchen), Teams (auflisten, abrufen, erstellen, aktualisieren), Tags (auflisten, abrufen, erstellen, aktualisieren, löschen) und Nachrichten (redigieren).
## Tools
### `pylon_list_issues`
Eine Liste von Anliegen innerhalb eines bestimmten Zeitraums abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `startTime` | string | Ja | Startzeit im RFC3339-Format \(z.B. 2024-01-01T00:00:00Z\) |
| `endTime` | string | Ja | Endzeit im RFC3339-Format \(z.B. 2024-01-31T23:59:59Z\) |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Liste der Anliegen |
### `pylon_create_issue`
Ein neues Anliegen mit bestimmten Eigenschaften erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `title` | string | Ja | Titel des Anliegens |
| `bodyHtml` | string | Ja | Inhalt des Anliegens im HTML-Format |
| `accountId` | string | Nein | Konto-ID, die mit dem Anliegen verknüpft werden soll |
| `assigneeId` | string | Nein | Benutzer-ID, der das Anliegen zugewiesen werden soll |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Daten des erstellten Issues |
### `pylon_get_issue`
Ruft ein bestimmtes Issue anhand der ID ab
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Die ID des abzurufenden Issues |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Issue-Daten |
### `pylon_update_issue`
Aktualisiert ein bestehendes Issue
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Die ID des zu aktualisierenden Issues |
| `state` | string | Nein | Issue-Status |
| `assigneeId` | string | Nein | Benutzer-ID, der das Issue zugewiesen werden soll |
| `teamId` | string | Nein | Team-ID, dem das Issue zugewiesen werden soll |
| `tags` | string | Nein | Kommagetrennte Tag-IDs |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Daten des aktualisierten Issues |
### `pylon_delete_issue`
Problem nach ID entfernen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Die ID des zu löschenden Problems |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Löschergebnis |
### `pylon_search_issues`
Probleme mit Filtern abfragen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `filter` | string | Ja | Filterkriterien als JSON-String |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
| `limit` | number | Nein | Maximale Anzahl der zurückzugebenden Ergebnisse |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Suchergebnisse |
### `pylon_snooze_issue`
Problemsichtbarkeit bis zu einem bestimmten Zeitpunkt verschieben
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Die ID des zu schlummernden Problems |
| `snoozeUntil` | string | Ja | RFC3339-Zeitstempel, wann das Problem wieder erscheinen soll \(z.B. 2024-01-01T00:00:00Z\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Daten des zurückgestellten Problems |
### `pylon_list_issue_followers`
Liste der Follower für ein bestimmtes Problem abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Die ID des Problems |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Liste der Follower |
### `pylon_manage_issue_followers`
Follower zu einem Problem hinzufügen oder entfernen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Die ID des Problems |
| `userIds` | string | Nein | Durch Komma getrennte Benutzer-IDs zum Hinzufügen/Entfernen |
| `contactIds` | string | Nein | Durch Komma getrennte Kontakt-IDs zum Hinzufügen/Entfernen |
| `operation` | string | Nein | Auszuführende Operation: "add" oder "remove" \(Standard: "add"\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Aktualisierte Liste der Follower |
### `pylon_link_external_issue`
Issue mit einem externen System-Issue verknüpfen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Die ID des Pylon-Issues |
| `externalIssueId` | string | Ja | Die ID des externen Issues |
| `source` | string | Ja | Das Quellsystem \(z.B. "jira", "linear", "github"\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Daten des verknüpften externen Issues |
### `pylon_list_accounts`
Eine paginierte Liste von Konten abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `limit` | string | Nein | Anzahl der zurückzugebenden Konten \(1-1000, Standard 100\) |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Liste der Konten |
### `pylon_create_account`
Ein neues Konto mit bestimmten Eigenschaften erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `name` | string | Ja | Kontoname |
| `domains` | string | Nein | Kommagetrennte Liste von Domains |
| `primaryDomain` | string | Nein | Primäre Domain für das Konto |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt |
| `tags` | string | Nein | Kommagetrennte Tag-IDs |
| `channels` | string | Nein | Kommagetrennte Kanal-IDs |
| `externalIds` | string | Nein | Kommagetrennte externe IDs |
| `ownerId` | string | Nein | Besitzer-Benutzer-ID |
| `logoUrl` | string | Nein | URL zum Konto-Logo |
| `subaccountIds` | string | Nein | Kommagetrennte Unterkonto-IDs |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Erstellte Kontodaten |
### `pylon_get_account`
Ein einzelnes Konto anhand der ID abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `accountId` | string | Ja | Konto-ID zum Abrufen |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Kontodaten |
### `pylon_update_account`
Ein bestehendes Konto mit neuen Eigenschaften aktualisieren
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `accountId` | string | Ja | Konto-ID zum Aktualisieren |
| `name` | string | Nein | Kontoname |
| `domains` | string | Nein | Kommagetrennte Liste von Domains |
| `primaryDomain` | string | Nein | Primäre Domain für das Konto |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt |
| `tags` | string | Nein | Kommagetrennte Tag-IDs |
| `channels` | string | Nein | Kommagetrennte Kanal-IDs |
| `externalIds` | string | Nein | Kommagetrennte externe IDs |
| `ownerId` | string | Nein | Besitzer-Benutzer-ID |
| `logoUrl` | string | Nein | URL zum Konto-Logo |
| `subaccountIds` | string | Nein | Kommagetrennte Unterkonto-IDs |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Aktualisierte Kontodaten |
### `pylon_delete_account`
Ein Konto anhand der ID entfernen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `accountId` | string | Ja | Konto-ID, die gelöscht werden soll |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Löschbestätigung |
### `pylon_bulk_update_accounts`
Mehrere Konten auf einmal aktualisieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `accountIds` | string | Ja | Durch Komma getrennte Konto-IDs, die aktualisiert werden sollen |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt |
| `tags` | string | Nein | Durch Komma getrennte Tag-IDs |
| `ownerId` | string | Nein | Besitzer-Benutzer-ID |
| `tagsApplyMode` | string | Nein | Tag-Anwendungsmodus: append_only, remove_only oder replace |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Massenhaft aktualisierte Kontodaten |
### `pylon_search_accounts`
Konten mit benutzerdefinierten Filtern durchsuchen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `filter` | string | Ja | Filter als JSON-String mit Feld/Operator/Wert-Struktur |
| `limit` | string | Nein | Anzahl der zurückzugebenden Konten \(1-1000, Standard 100\) |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Suchergebnisse |
### `pylon_list_contacts`
Eine Liste von Kontakten abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
| `limit` | string | Nein | Maximale Anzahl der zurückzugebenden Kontakte |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Liste der Kontakte |
### `pylon_create_contact`
Einen neuen Kontakt mit bestimmten Eigenschaften erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `name` | string | Ja | Kontaktname |
| `email` | string | Nein | E-Mail-Adresse des Kontakts |
| `accountId` | string | Nein | Konto-ID, die mit dem Kontakt verknüpft werden soll |
| `accountExternalId` | string | Nein | Externe Konto-ID, die mit dem Kontakt verknüpft werden soll |
| `avatarUrl` | string | Nein | URL für das Kontakt-Avatarbild |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt |
| `portalRole` | string | Nein | Portal-Rolle für den Kontakt |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Erstellte Kontaktdaten |
### `pylon_get_contact`
Einen bestimmten Kontakt anhand der ID abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `contactId` | string | Ja | Kontakt-ID zum Abrufen |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
| `limit` | string | Nein | Maximale Anzahl der zurückzugebenden Elemente |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Kontaktdaten |
### `pylon_update_contact`
Einen vorhandenen Kontakt mit angegebenen Eigenschaften aktualisieren
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `contactId` | string | Ja | Kontakt-ID zum Aktualisieren |
| `name` | string | Nein | Kontaktname |
| `email` | string | Nein | E-Mail-Adresse des Kontakts |
| `accountId` | string | Nein | Konto-ID, die mit dem Kontakt verknüpft werden soll |
| `accountExternalId` | string | Nein | Externe Konto-ID, die mit dem Kontakt verknüpft werden soll |
| `avatarUrl` | string | Nein | URL für das Kontakt-Avatarbild |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt |
| `portalRole` | string | Nein | Portalrolle für den Kontakt |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Aktualisierte Kontaktdaten |
### `pylon_delete_contact`
Einen bestimmten Kontakt anhand der ID löschen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `contactId` | string | Ja | Zu löschende Kontakt-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Ergebnis des Löschvorgangs |
### `pylon_search_contacts`
Nach Kontakten mit einem Filter suchen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `filter` | string | Ja | Filter als JSON-Objekt |
| `limit` | string | Nein | Maximale Anzahl der zurückzugebenden Kontakte |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Suchergebnisse |
### `pylon_list_users`
Eine Liste von Benutzern abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Liste der Benutzer |
### `pylon_get_user`
Einen bestimmten Benutzer anhand der ID abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `userId` | string | Ja | Benutzer-ID zum Abrufen |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Benutzerdaten |
### `pylon_update_user`
Einen vorhandenen Benutzer mit angegebenen Eigenschaften aktualisieren
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `userId` | string | Ja | Benutzer-ID zum Aktualisieren |
| `roleId` | string | Nein | Rollen-ID, die dem Benutzer zugewiesen werden soll |
| `status` | string | Nein | Benutzerstatus |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Aktualisierte Benutzerdaten |
### `pylon_search_users`
Nach Benutzern mit einem Filter für das E-Mail-Feld suchen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `filter` | string | Ja | Filter als JSON-Objekt mit E-Mail-Feld |
| `cursor` | string | Nein | Paginierungscursor für die nächste Ergebnisseite |
| `limit` | string | Nein | Maximale Anzahl der zurückzugebenden Benutzer |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Suchergebnisse |
### `pylon_list_teams`
Eine Liste von Teams abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Liste der Teams |
### `pylon_get_team`
Ein bestimmtes Team anhand der ID abrufen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `teamId` | string | Ja | Team-ID zum Abrufen |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Team-Daten |
### `pylon_create_team`
Ein neues Team mit bestimmten Eigenschaften erstellen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `name` | string | Nein | Team-Name |
| `userIds` | string | Nein | Durch Kommas getrennte Benutzer-IDs, die als Teammitglieder hinzugefügt werden sollen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Erstellte Team-Daten |
### `pylon_update_team`
Aktualisieren eines vorhandenen Teams mit angegebenen Eigenschaften (userIds ersetzt die gesamte Mitgliedschaft)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `teamId` | string | Ja | Team-ID zum Aktualisieren |
| `name` | string | Nein | Team-Name |
| `userIds` | string | Nein | Kommagetrennte Benutzer-IDs \(ersetzt die gesamte Team-Mitgliedschaft\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Aktualisierte Team-Daten |
### `pylon_list_tags`
Abrufen einer Liste von Tags
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Liste der Tags |
### `pylon_get_tag`
Abrufen eines bestimmten Tags anhand der ID
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `tagId` | string | Ja | Tag-ID zum Abrufen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Tag-Daten |
### `pylon_create_tag`
Erstellt einen neuen Tag mit angegebenen Eigenschaften (objectType: account/issue/contact)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `objectType` | string | Ja | Objekttyp für Tag \(account, issue oder contact\) |
| `value` | string | Ja | Tag-Wert/Name |
| `hexColor` | string | Nein | Hex-Farbcode für Tag \(z.B. #FF5733\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Daten des erstellten Tags |
### `pylon_update_tag`
Aktualisiert einen vorhandenen Tag mit angegebenen Eigenschaften
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `tagId` | string | Ja | Zu aktualisierende Tag-ID |
| `hexColor` | string | Nein | Hex-Farbcode für Tag \(z.B. #FF5733\) |
| `value` | string | Nein | Tag-Wert/Name |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Daten des aktualisierten Tags |
### `pylon_delete_tag`
Löschen eines bestimmten Tags anhand der ID
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `tagId` | string | Ja | Tag-ID zum Löschen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Ergebnis der Löschoperation |
### `pylon_redact_message`
Redigieren einer bestimmten Nachricht innerhalb eines Issues
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Ja | Pylon API-Token |
| `issueId` | string | Ja | Issue-ID, die die Nachricht enthält |
| `messageId` | string | Ja | Nachrichten-ID zum Redigieren |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Ergebnis der Redigieroperation |
## Hinweise
- Kategorie: `tools`
- Typ: `pylon`

View File

@@ -0,0 +1,54 @@
---
title: Suche
description: Durchsuche das Web (0,01 $ pro Suche)
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="search"
color="#3B82F6"
/>
{/* MANUAL-CONTENT-START:intro */}
Das **Suche**-Tool ermöglicht es dir, das Web innerhalb deiner Sim-Workflows mit hochmodernen Suchmaschinen zu durchsuchen. Nutze es, um die neuesten Informationen, Nachrichten, Fakten und Webinhalte direkt in deine Agenten, Automatisierungen oder Gespräche einzubinden.
- **Allgemeine Websuche**: Finde aktuelle Informationen aus dem Internet, um deine Workflows zu ergänzen.
- **Automatisierte Abfragen**: Lass Agenten oder Programmlogik Suchanfragen stellen und die Ergebnisse automatisch verarbeiten.
- **Strukturierte Ergebnisse**: Liefert die relevantesten Webergebnisse, einschließlich Titel, Link, Textauszug und Datum für jedes Ergebnis.
> **Hinweis:** Jede Suche kostet **0,01 $** pro Anfrage.
Dieses Tool ist ideal für jeden Workflow, bei dem deine Agenten Zugriff auf aktuelle Webdaten benötigen oder auf aktuelle Ereignisse verweisen, Recherchen durchführen oder ergänzende Inhalte abrufen müssen.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Durchsuche das Web mit dem Suche-Tool. Jede Suche kostet 0,01 $ pro Anfrage.
## Tools
### `search_tool`
Durchsuche das Web. Liefert die relevantesten Webergebnisse, einschließlich Titel, Link, Textauszug und Datum für jedes Ergebnis.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `query` | string | Ja | Die Suchanfrage |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `results` | json | Suchergebnisse |
| `query` | string | Die Suchanfrage |
| `totalResults` | number | Gesamtzahl der Ergebnisse |
| `source` | string | Suchquelle \(exa\) |
| `cost` | json | Kosteninformationen \(0,01 $\) |
## Notizen
- Kategorie: `tools`
- Typ: `search`

View File

@@ -0,0 +1,391 @@
---
title: SendGrid
description: Senden Sie E-Mails und verwalten Sie Kontakte, Listen und Vorlagen mit SendGrid
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="sendgrid"
color="#1A82E2"
/>
{/* MANUAL-CONTENT-START:intro */}
[SendGrid](https://sendgrid.com) ist eine führende cloudbasierte E-Mail-Zustellplattform, der Entwickler und Unternehmen vertrauen, um zuverlässige Transaktions- und Marketing-E-Mails in großem Umfang zu versenden. Mit seinen robusten APIs und leistungsstarken Tools ermöglicht SendGrid die Verwaltung aller Aspekte Ihrer E-Mail-Kommunikation, vom Versenden von Benachrichtigungen und Quittungen bis hin zur Verwaltung komplexer Marketingkampagnen.
SendGrid bietet Benutzern eine vollständige Suite von E-Mail-Funktionen, mit denen Sie kritische E-Mail-Workflows automatisieren und Kontaktlisten, Vorlagen und Empfängerengagement genau verwalten können. Die nahtlose Integration mit Sim ermöglicht es Agenten und Workflows, gezielte Nachrichten zu versenden, dynamische Kontakt- und Empfängerlisten zu pflegen, personalisierte E-Mails über Vorlagen auszulösen und die Ergebnisse in Echtzeit zu verfolgen.
Zu den wichtigsten Funktionen von SendGrid gehören:
- **Transaktions-E-Mails:** Versenden Sie automatisierte und umfangreiche Transaktions-E-Mails (wie Benachrichtigungen, Quittungen und Passwort-Zurücksetzungen).
- **Dynamische Vorlagen:** Verwenden Sie umfangreiche HTML- oder Textvorlagen mit dynamischen Daten für hochpersonalisierte Kommunikation im großen Maßstab.
- **Kontaktverwaltung:** Fügen Sie Marketing-Kontakte hinzu und aktualisieren Sie diese, verwalten Sie Empfängerlisten und Zielsegmente für Kampagnen.
- **Unterstützung für Anhänge:** Fügen Sie Ihren E-Mails einen oder mehrere Dateianhänge hinzu.
- **Umfassende API-Abdeckung:** Verwalten Sie E-Mails, Kontakte, Listen, Vorlagen, Unterdrückungsgruppen und mehr programmatisch.
Durch die Verbindung von SendGrid mit Sim können Ihre Agenten:
- Sowohl einfache als auch fortgeschrittene (vorlagenbasierte oder an mehrere Empfänger gerichtete) E-Mails als Teil eines beliebigen Workflows versenden.
- Kontakte und Listen automatisch verwalten und segmentieren.
- Vorlagen für Konsistenz und dynamische Personalisierung nutzen.
- E-Mail-Engagement innerhalb Ihrer automatisierten Prozesse verfolgen und darauf reagieren.
Diese Integration ermöglicht es Ihnen, alle kritischen Kommunikationsabläufe zu automatisieren, sicherzustellen, dass Nachrichten die richtige Zielgruppe erreichen, und die Kontrolle über die E-Mail-Strategie Ihrer Organisation direkt aus Sim-Workflows zu behalten.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Integrieren Sie SendGrid in Ihren Workflow. Senden Sie transaktionale E-Mails, verwalten Sie Marketing-Kontakte und -Listen und arbeiten Sie mit E-Mail-Vorlagen. Unterstützt dynamische Vorlagen, Anhänge und umfassendes Kontaktmanagement.
## Tools
### `sendgrid_send_mail`
Eine E-Mail über die SendGrid API senden
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `from` | string | Ja | E-Mail-Adresse des Absenders \(muss in SendGrid verifiziert sein\) |
| `fromName` | string | Nein | Name des Absenders |
| `to` | string | Ja | E-Mail-Adresse des Empfängers |
| `toName` | string | Nein | Name des Empfängers |
| `subject` | string | Nein | E-Mail-Betreff \(erforderlich, es sei denn, es wird eine Vorlage mit vordefiniertem Betreff verwendet\) |
| `content` | string | Nein | E-Mail-Inhalt \(erforderlich, es sei denn, es wird eine Vorlage mit vordefiniertem Inhalt verwendet\) |
| `contentType` | string | Nein | Inhaltstyp \(text/plain oder text/html\) |
| `cc` | string | Nein | CC E-Mail-Adresse |
| `bcc` | string | Nein | BCC E-Mail-Adresse |
| `replyTo` | string | Nein | Antwort-an E-Mail-Adresse |
| `replyToName` | string | Nein | Antwort-an Name |
| `attachments` | file[] | Nein | Dateien, die der E-Mail angehängt werden sollen |
| `templateId` | string | Nein | Zu verwendende SendGrid-Vorlagen-ID |
| `dynamicTemplateData` | json | Nein | JSON-Objekt mit dynamischen Vorlagendaten |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die E-Mail erfolgreich gesendet wurde |
| `messageId` | string | SendGrid-Nachrichten-ID |
| `to` | string | E-Mail-Adresse des Empfängers |
| `subject` | string | E-Mail-Betreff |
### `sendgrid_add_contact`
Einen neuen Kontakt zu SendGrid hinzufügen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `email` | string | Ja | E-Mail-Adresse des Kontakts |
| `firstName` | string | Nein | Vorname des Kontakts |
| `lastName` | string | Nein | Nachname des Kontakts |
| `customFields` | json | Nein | JSON-Objekt mit benutzerdefinierten Feld-Schlüssel-Wert-Paaren \(verwende Feld-IDs wie e1_T, e2_N, e3_D, nicht Feldnamen\) |
| `listIds` | string | Nein | Kommagetrennte Listen-IDs, zu denen der Kontakt hinzugefügt werden soll |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `jobId` | string | Job-ID zur Verfolgung der asynchronen Kontakterstellung |
| `email` | string | E-Mail-Adresse des Kontakts |
| `firstName` | string | Vorname des Kontakts |
| `lastName` | string | Nachname des Kontakts |
| `message` | string | Statusmeldung |
### `sendgrid_get_contact`
Einen bestimmten Kontakt anhand der ID von SendGrid abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `contactId` | string | Ja | Kontakt-ID |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Kontakt-ID |
| `email` | string | E-Mail-Adresse des Kontakts |
| `firstName` | string | Vorname des Kontakts |
| `lastName` | string | Nachname des Kontakts |
| `createdAt` | string | Erstellungszeitstempel |
| `updatedAt` | string | Zeitstempel der letzten Aktualisierung |
| `listIds` | json | Array von Listen-IDs, zu denen der Kontakt gehört |
| `customFields` | json | Benutzerdefinierte Feldwerte |
### `sendgrid_search_contacts`
Suche nach Kontakten in SendGrid mit einer Abfrage
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `query` | string | Ja | Suchabfrage (z.B. "email LIKE '%example.com%' AND CONTAINS(list_ids, 'list-id')") |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `contacts` | json | Array übereinstimmender Kontakte |
| `contactCount` | number | Gesamtzahl der gefundenen Kontakte |
### `sendgrid_delete_contacts`
Einen oder mehrere Kontakte aus SendGrid löschen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `contactIds` | string | Ja | Kommagetrennte Kontakt-IDs zum Löschen |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `jobId` | string | Job-ID für die Löschanfrage |
### `sendgrid_create_list`
Erstellen einer neuen Kontaktliste in SendGrid
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `name` | string | Ja | Listenname |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Listen-ID |
| `name` | string | Listenname |
| `contactCount` | number | Anzahl der Kontakte in der Liste |
### `sendgrid_get_list`
Eine bestimmte Liste anhand der ID von SendGrid abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `listId` | string | Ja | Listen-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Listen-ID |
| `name` | string | Listenname |
| `contactCount` | number | Anzahl der Kontakte in der Liste |
### `sendgrid_list_all_lists`
Alle Kontaktlisten von SendGrid abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `pageSize` | number | Nein | Anzahl der Listen, die pro Seite zurückgegeben werden sollen (Standard: 100) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `lists` | json | Array von Listen |
### `sendgrid_delete_list`
Eine Kontaktliste von SendGrid löschen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `listId` | string | Ja | Listen-ID zum Löschen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | string | Erfolgsmeldung |
### `sendgrid_add_contacts_to_list`
Kontakte hinzufügen oder aktualisieren und einer Liste in SendGrid zuweisen (verwendet PUT /v3/marketing/contacts)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `listId` | string | Ja | Listen-ID, zu der Kontakte hinzugefügt werden sollen |
| `contacts` | json | Ja | JSON-Array von Kontaktobjekten. Jeder Kontakt muss mindestens Folgendes enthalten: E-Mail \(oder phone_number_id/external_id/anonymous_id\). Beispiel: \[\{"email": "user@example.com", "first_name": "John"\}\] |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `jobId` | string | Job-ID zur Verfolgung des asynchronen Vorgangs |
| `message` | string | Statusmeldung |
### `sendgrid_remove_contacts_from_list`
Kontakte aus einer bestimmten Liste in SendGrid entfernen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `listId` | string | Ja | Listen-ID |
| `contactIds` | string | Ja | Kommagetrennte Kontakt-IDs, die aus der Liste entfernt werden sollen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `jobId` | string | Job-ID für die Anfrage |
### `sendgrid_create_template`
Eine neue E-Mail-Vorlage in SendGrid erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `name` | string | Ja | Vorlagenname |
| `generation` | string | Nein | Vorlagenerstellungstyp \(legacy oder dynamic, standard: dynamic\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Vorlagen-ID |
| `name` | string | Vorlagenname |
| `generation` | string | Vorlagenerstellung |
| `updatedAt` | string | Zeitstempel der letzten Aktualisierung |
| `versions` | json | Array von Vorlagenversionen |
### `sendgrid_get_template`
Eine bestimmte Vorlage anhand der ID von SendGrid abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `templateId` | string | Ja | Vorlagen-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Vorlagen-ID |
| `name` | string | Vorlagenname |
| `generation` | string | Vorlagenerstellung |
| `updatedAt` | string | Zeitstempel der letzten Aktualisierung |
| `versions` | json | Array von Vorlagenversionen |
### `sendgrid_list_templates`
Alle E-Mail-Vorlagen von SendGrid abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `generations` | string | Nein | Nach Generation filtern (legacy, dynamic oder beides) |
| `pageSize` | number | Nein | Anzahl der Vorlagen pro Seite (Standard: 20) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `templates` | json | Array von Vorlagen |
### `sendgrid_delete_template`
Eine E-Mail-Vorlage von SendGrid löschen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `templateId` | string | Ja | Zu löschende Vorlagen-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `messageId` | string | E-Mail-Nachrichten-ID (send_mail) |
| `id` | string | Ressourcen-ID |
| `jobId` | string | Job-ID für asynchrone Operationen |
| `email` | string | E-Mail-Adresse |
| `firstName` | string | Vorname |
| `lastName` | string | Nachname |
| `contacts` | json | Array von Kontakten |
| `contactCount` | number | Anzahl der Kontakte |
| `lists` | json | Array von Listen |
| `templates` | json | Array von Vorlagen |
| `message` | string | Status- oder Erfolgsmeldung |
| `name` | string | Ressourcenname |
| `generation` | string | Vorlagengeneration |
### `sendgrid_create_template_version`
Eine neue Version einer E-Mail-Vorlage in SendGrid erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | SendGrid API-Schlüssel |
| `templateId` | string | Ja | Vorlagen-ID |
| `name` | string | Ja | Versionsname |
| `subject` | string | Ja | E-Mail-Betreffzeile |
| `htmlContent` | string | Nein | HTML-Inhalt der Vorlage |
| `plainContent` | string | Nein | Nur-Text-Inhalt der Vorlage |
| `active` | boolean | Nein | Ob diese Version aktiv ist \(Standard: true\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Versions-ID |
| `templateId` | string | Vorlagen-ID |
| `name` | string | Versionsname |
| `subject` | string | E-Mail-Betreff |
| `active` | boolean | Ob diese Version aktiv ist |
| `htmlContent` | string | HTML-Inhalt |
| `plainContent` | string | Nur-Text-Inhalt |
| `updatedAt` | string | Zeitstempel der letzten Aktualisierung |
## Hinweise
- Kategorie: `tools`
- Typ: `sendgrid`

View File

@@ -0,0 +1,305 @@
---
title: Sentry
description: Verwalte Sentry-Probleme, Projekte, Ereignisse und Releases
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="sentry"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
Verbessere deine Fehlerüberwachung und Anwendungszuverlässigkeit mit [Sentry](https://sentry.io/) — der branchenführenden Plattform für Echtzeit-Fehlerverfolgung, Leistungsüberwachung und Release-Management. Integriere Sentry nahtlos in deine automatisierten Agent-Workflows, um Probleme einfach zu überwachen, kritische Ereignisse zu verfolgen, Projekte zu verwalten und Releases über all deine Anwendungen und Dienste hinweg zu orchestrieren.
Mit dem Sentry-Tool kannst du:
- **Probleme überwachen und priorisieren**: Rufe umfassende Listen von Problemen mit der `sentry_issues_list` Operation ab und erhalte detaillierte Informationen zu einzelnen Fehlern und Bugs über `sentry_issues_get`. Greife sofort auf Metadaten, Tags, Stack-Traces und Statistiken zu, um die mittlere Zeit bis zur Lösung zu reduzieren.
- **Ereignisdaten verfolgen**: Analysiere spezifische Fehler- und Ereignisinstanzen mit `sentry_events_list` und `sentry_events_get`, die tiefe Einblicke in Fehlervorkommen und Benutzerauswirkungen bieten.
- **Projekte und Teams verwalten**: Nutze `sentry_projects_list` und `sentry_project_get`, um alle deine Sentry-Projekte aufzulisten und zu überprüfen, was eine reibungslose Teamzusammenarbeit und zentralisierte Konfiguration gewährleistet.
- **Releases koordinieren**: Automatisiere Versionsverfolgung, Deployment-Gesundheit und Änderungsmanagement in deinem Codebase mit Operationen wie `sentry_releases_list`, `sentry_release_get` und mehr.
- **Leistungsstarke Anwendungseinblicke gewinnen**: Nutze erweiterte Filter und Abfragen, um ungelöste oder hochprioritäre Probleme zu finden, Ereignisstatistiken im Zeitverlauf zu aggregieren und Regressionen zu verfolgen, während sich dein Codebase weiterentwickelt.
Die Sentry-Integration ermöglicht Engineering- und DevOps-Teams, Probleme frühzeitig zu erkennen, die wichtigsten Bugs zu priorisieren und die Anwendungsgesundheit über verschiedene Entwicklungsstacks hinweg kontinuierlich zu verbessern. Orchestriere programmatisch Workflow-Automatisierung für moderne Beobachtbarkeit, Vorfallreaktion und Release-Lifecycle-Management reduziere Ausfallzeiten und erhöhe die Benutzerzufriedenheit.
**Verfügbare Sentry-Operationen**:
- `sentry_issues_list`: Sentry-Probleme für Organisationen und Projekte auflisten, mit leistungsstarker Suche und Filterung.
- `sentry_issues_get`: Detaillierte Informationen zu einem bestimmten Sentry-Problem abrufen.
- `sentry_events_list`: Ereignisse für ein bestimmtes Problem zur Ursachenanalyse auflisten.
- `sentry_events_get`: Vollständige Details zu einem einzelnen Ereignis erhalten, einschließlich Stack-Traces, Kontext und Metadaten.
- `sentry_projects_list`: Alle Sentry-Projekte innerhalb Ihrer Organisation auflisten.
- `sentry_project_get`: Konfiguration und Details für ein bestimmtes Projekt abrufen.
- `sentry_releases_list`: Aktuelle Releases und deren Bereitstellungsstatus auflisten.
- `sentry_release_get`: Detaillierte Release-Informationen abrufen, einschließlich zugehöriger Commits und Probleme.
Ob Sie proaktiv die App-Gesundheit verwalten, Produktionsfehler beheben oder Release-Workflows automatisieren Sentry stattet Sie mit erstklassigem Monitoring, handlungsorientierten Warnungen und nahtloser DevOps-Integration aus. Verbessern Sie Ihre Softwarequalität und Suchsichtbarkeit, indem Sie Sentry für Fehlerverfolgung, Beobachtbarkeit und Release-Management nutzen alles in Ihren agentischen Workflows.
{/* MANUAL-CONTENT-END */}
## Nutzungsanweisungen
Integrieren Sie Sentry in den Workflow. Überwachen Sie Probleme, verwalten Sie Projekte, verfolgen Sie Ereignisse und koordinieren Sie Releases über Ihre Anwendungen hinweg.
## Tools
### `sentry_issues_list`
Listet Probleme von Sentry für eine bestimmte Organisation und optional ein bestimmtes Projekt auf. Gibt Problemdetails zurück, einschließlich Status, Fehlerzahlen und Zeitstempel der letzten Sichtung.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry-API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `projectSlug` | string | Nein | Filtert Probleme nach einem bestimmten Projekt-Slug \(optional\) |
| `query` | string | Nein | Suchanfrage zum Filtern von Problemen. Unterstützt Sentry-Suchsyntax \(z.B. "is:unresolved", "level:error"\) |
| `statsPeriod` | string | Nein | Zeitraum für Statistiken \(z.B. "24h", "7d", "30d"\). Standardmäßig 24h, wenn nicht angegeben. |
| `cursor` | string | Nein | Paginierungscursor zum Abrufen der nächsten Ergebnisseite |
| `limit` | number | Nein | Anzahl der Probleme, die pro Seite zurückgegeben werden sollen \(Standard: 25, max: 100\) |
| `status` | string | Nein | Nach Problemstatus filtern: unresolved, resolved, ignored oder muted |
| `sort` | string | Nein | Sortierreihenfolge: date, new, freq, priority oder user \(Standard: date\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `issues` | array | Liste der Sentry-Probleme |
### `sentry_issues_get`
Ruft detaillierte Informationen zu einem bestimmten Sentry-Problem anhand seiner ID ab. Gibt vollständige Problemdetails einschließlich Metadaten, Tags und Statistiken zurück.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry-API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `issueId` | string | Ja | Die eindeutige ID des abzurufenden Problems |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `issue` | object | Detaillierte Informationen zum Sentry-Problem |
### `sentry_issues_update`
Aktualisiert ein Sentry-Problem durch Ändern seines Status, seiner Zuweisung, seines Lesezeichen-Status oder anderer Eigenschaften. Gibt die aktualisierten Problemdetails zurück.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry-API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `issueId` | string | Ja | Die eindeutige ID des zu aktualisierenden Problems |
| `status` | string | Nein | Neuer Status für das Problem: resolved, unresolved, ignored oder resolvedInNextRelease |
| `assignedTo` | string | Nein | Benutzer-ID oder E-Mail, der das Problem zugewiesen werden soll. Leerer String zum Aufheben der Zuweisung. |
| `isBookmarked` | boolean | Nein | Ob das Problem als Lesezeichen gespeichert werden soll |
| `isSubscribed` | boolean | Nein | Ob Problemaktualisierungen abonniert werden sollen |
| `isPublic` | boolean | Nein | Ob das Problem öffentlich sichtbar sein soll |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `issue` | object | Das aktualisierte Sentry-Problem |
### `sentry_projects_list`
Listet alle Projekte in einer Sentry-Organisation auf. Gibt Projektdetails zurück, einschließlich Name, Plattform, Teams und Konfiguration.
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry-API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `cursor` | string | Nein | Paginierungscursor zum Abrufen der nächsten Ergebnisseite |
| `limit` | number | Nein | Anzahl der Projekte, die pro Seite zurückgegeben werden sollen \(Standard: 25, max: 100\) |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `projects` | array | Liste der Sentry-Projekte |
### `sentry_projects_get`
Ruft detaillierte Informationen über ein bestimmtes Sentry-Projekt anhand seines Slugs ab. Gibt vollständige Projektdetails zurück, einschließlich Teams, Funktionen und Konfiguration.
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry-API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `projectSlug` | string | Ja | Die ID oder der Slug des abzurufenden Projekts |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `project` | object | Detaillierte Informationen über das Sentry-Projekt |
### `sentry_projects_create`
Erstellt ein neues Sentry-Projekt in einer Organisation. Erfordert ein Team, dem das Projekt zugeordnet wird. Gibt die Details des erstellten Projekts zurück.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `name` | string | Ja | Der Name des Projekts |
| `teamSlug` | string | Ja | Der Slug des Teams, das dieses Projekt besitzen wird |
| `slug` | string | Nein | URL-freundliche Projektkennung \(wird automatisch aus dem Namen generiert, wenn nicht angegeben\) |
| `platform` | string | Nein | Plattform/Sprache für das Projekt \(z.B. javascript, python, node, react-native\). Wenn nicht angegeben, wird standardmäßig "other" verwendet |
| `defaultRules` | boolean | Nein | Ob Standardalarmregeln erstellt werden sollen \(Standard: true\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `project` | object | Das neu erstellte Sentry-Projekt |
### `sentry_projects_update`
Aktualisiert ein Sentry-Projekt durch Änderung des Namens, Slugs, der Plattform oder anderer Einstellungen. Gibt die aktualisierten Projektdetails zurück.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `projectSlug` | string | Ja | Der Slug des zu aktualisierenden Projekts |
| `name` | string | Nein | Neuer Name für das Projekt |
| `slug` | string | Nein | Neue URL-freundliche Projektkennung |
| `platform` | string | Nein | Neue Plattform/Sprache für das Projekt \(z.B. javascript, python, node\) |
| `isBookmarked` | boolean | Nein | Ob das Projekt als Lesezeichen gespeichert werden soll |
| `digestsMinDelay` | number | Nein | Minimale Verzögerung \(in Sekunden\) für Digest-Benachrichtigungen |
| `digestsMaxDelay` | number | Nein | Maximale Verzögerung \(in Sekunden\) für Digest-Benachrichtigungen |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `project` | object | Das aktualisierte Sentry-Projekt |
### `sentry_events_list`
Listet Ereignisse aus einem Sentry-Projekt auf. Kann nach Problem-ID, Abfrage oder Zeitraum gefiltert werden. Gibt Ereignisdetails einschließlich Kontext, Tags und Benutzerinformationen zurück.
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `projectSlug` | string | Ja | Der Slug des Projekts, aus dem Ereignisse aufgelistet werden sollen |
| `issueId` | string | Nein | Filtert Ereignisse nach einer bestimmten Problem-ID |
| `query` | string | Nein | Suchabfrage zum Filtern von Ereignissen. Unterstützt Sentry-Suchsyntax \(z.B. "user.email:*@example.com"\) |
| `cursor` | string | Nein | Paginierungscursor zum Abrufen der nächsten Ergebnisseite |
| `limit` | number | Nein | Anzahl der Ereignisse, die pro Seite zurückgegeben werden sollen \(Standard: 50, max: 100\) |
| `statsPeriod` | string | Nein | Abfragezeitraum \(z.B. "24h", "7d", "30d"\). Standardmäßig 90d, wenn nicht angegeben. |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `events` | array | Liste der Sentry-Ereignisse |
### `sentry_events_get`
Ruft detaillierte Informationen über ein bestimmtes Sentry-Ereignis anhand seiner ID ab. Gibt vollständige Ereignisdetails zurück, einschließlich Stack-Traces, Breadcrumbs, Kontext und Benutzerinformationen.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `projectSlug` | string | Ja | Der Slug des Projekts |
| `eventId` | string | Ja | Die eindeutige ID des abzurufenden Ereignisses |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `event` | object | Detaillierte Informationen über das Sentry-Ereignis |
### `sentry_releases_list`
Listet Releases für eine Sentry-Organisation oder ein Projekt auf. Gibt Release-Details zurück, einschließlich Version, Commits, Deploy-Informationen und zugehörige Projekte.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `projectSlug` | string | Nein | Filtert Releases nach einem bestimmten Projekt-Slug \(optional\) |
| `query` | string | Nein | Suchanfrage zum Filtern von Releases \(z.B. Versionsnamen-Muster\) |
| `cursor` | string | Nein | Paginierungscursor zum Abrufen der nächsten Ergebnisseite |
| `limit` | number | Nein | Anzahl der Releases, die pro Seite zurückgegeben werden sollen \(Standard: 25, max: 100\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `releases` | array | Liste der Sentry-Releases |
### `sentry_releases_create`
Erstelle ein neues Release in Sentry. Ein Release ist eine Version deines Codes, die in einer Umgebung bereitgestellt wird. Kann Commit-Informationen und zugehörige Projekte enthalten. Gibt die Details des erstellten Releases zurück.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `version` | string | Ja | Versionskennung für das Release \(z.B. "2.0.0", "my-app@1.0.0" oder ein Git-Commit-SHA\) |
| `projects` | string | Ja | Kommagetrennte Liste von Projekt-Slugs, die mit diesem Release verknüpft werden sollen |
| `ref` | string | Nein | Git-Referenz \(Commit-SHA, Tag oder Branch\) für dieses Release |
| `url` | string | Nein | URL, die auf das Release verweist \(z.B. GitHub-Release-Seite\) |
| `dateReleased` | string | Nein | ISO 8601-Zeitstempel für den Zeitpunkt der Bereitstellung des Releases \(standardmäßig aktuelle Zeit\) |
| `commits` | string | Nein | JSON-Array von Commit-Objekten mit id, repository \(optional\) und message \(optional\). Beispiel: \[\{"id":"abc123","message":"Fix bug"\}\] |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `release` | object | Das neu erstellte Sentry-Release |
### `sentry_releases_deploy`
Erstelle einen Deploy-Eintrag für ein Sentry-Release in einer bestimmten Umgebung. Deploys verfolgen, wann und wo Releases bereitgestellt werden. Gibt die Details des erstellten Deploys zurück.
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Ja | Sentry API-Authentifizierungstoken |
| `organizationSlug` | string | Ja | Der Slug der Organisation |
| `version` | string | Ja | Versionskennung des Releases, das bereitgestellt wird |
| `environment` | string | Ja | Name der Umgebung, in der das Release bereitgestellt wird (z.B. "production", "staging") |
| `name` | string | Nein | Optionaler Name für dieses Deployment (z.B. "Deploy v2.0 to Production") |
| `url` | string | Nein | URL, die auf das Deployment verweist (z.B. CI/CD-Pipeline-URL) |
| `dateStarted` | string | Nein | ISO 8601-Zeitstempel für den Beginn des Deployments (standardmäßig aktuelle Zeit) |
| `dateFinished` | string | Nein | ISO 8601-Zeitstempel für den Abschluss des Deployments |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `deploy` | object | Der neu erstellte Deployment-Datensatz |
## Hinweise
- Kategorie: `tools`
- Typ: `sentry`

View File

@@ -71,8 +71,10 @@ Senden Sie Nachrichten an Slack-Kanäle oder Benutzer über die Slack-API. Unter
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `ts` | string | Zeitstempel der Nachricht |
| `channel` | string | Kanal-ID, wohin die Nachricht gesendet wurde |
| `message` | object | Vollständiges Nachrichtenobjekt mit allen von Slack zurückgegebenen Eigenschaften |
| `ts` | string | Nachrichtenzeitstempel |
| `channel` | string | Kanal-ID, in dem die Nachricht gesendet wurde |
| `fileCount` | number | Anzahl der hochgeladenen Dateien \(wenn Dateien angehängt sind\) |
### `slack_canvas`
@@ -155,6 +157,7 @@ Eine zuvor vom Bot in Slack gesendete Nachricht aktualisieren
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `message` | object | Vollständiges aktualisiertes Nachrichtenobjekt mit allen von Slack zurückgegebenen Eigenschaften |
| `content` | string | Erfolgsmeldung |
| `metadata` | object | Metadaten der aktualisierten Nachricht |

View File

@@ -0,0 +1,73 @@
---
title: SMTP
description: E-Mails über jeden SMTP-Mailserver versenden
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="smtp"
color="#4A5568"
/>
{/* MANUAL-CONTENT-START:intro */}
[SMTP (Simple Mail Transfer Protocol)](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol) ist der grundlegende Standard für die E-Mail-Übertragung im Internet. Durch die Verbindung mit einem SMTP-kompatiblen Server wie Gmail, Outlook oder der eigenen Mail-Infrastruktur Ihrer Organisation können Sie E-Mails programmatisch versenden und Ihre ausgehende Kommunikation automatisieren.
Die SMTP-Integration ermöglicht es Ihnen, den E-Mail-Versand durch direkte Serververbindung vollständig anzupassen und unterstützt sowohl einfache als auch fortgeschrittene E-Mail-Anwendungsfälle. Mit SMTP können Sie jeden Aspekt der Nachrichtenzustellung, des Empfängermanagements und der Inhaltsformatierung kontrollieren, was es ideal für transaktionale Benachrichtigungen, Massenmailings und jeden automatisierten Workflow macht, der eine robuste ausgehende E-Mail-Zustellung erfordert.
**Zu den wichtigsten Funktionen der SMTP-Integration gehören:**
- **Universeller E-Mail-Versand:** Senden Sie E-Mails über jeden SMTP-Server durch Konfiguration standardmäßiger Serververbindungsparameter.
- **Anpassbare Absender und Empfänger:** Legen Sie Absenderadresse, Anzeigename, Hauptempfänger sowie CC- und BCC-Felder fest.
- **Unterstützung für umfangreiche Inhalte:** Senden Sie Nur-Text- oder reich formatierte HTML-E-Mails entsprechend Ihren Anforderungen.
- **Anhänge:** Fügen Sie ausgehenden E-Mails mehrere Dateien als Anhänge hinzu.
- **Flexible Sicherheit:** Verbinden Sie sich über TLS, SSL oder Standardprotokolle (unverschlüsselt), je nach Unterstützung Ihres SMTP-Anbieters.
- **Erweiterte Header:** Setzen Sie Antwort-an-Header und andere erweiterte E-Mail-Optionen, um komplexe Mailflows und Benutzerinteraktionen zu ermöglichen.
Durch die Integration von SMTP mit Sim können Agenten und Workflows programmatisch E-Mails als Teil jedes automatisierten Prozesses versenden von Benachrichtigungen und Bestätigungen bis hin zur Automatisierung externer Kommunikation, Berichterstattung und Dokumentenzustellung. Dies bietet einen hochflexiblen, anbieterunabhängigen Ansatz zur Verwaltung von E-Mails direkt innerhalb Ihrer KI-gesteuerten Prozesse.
{/* MANUAL-CONTENT-END */}
## Gebrauchsanweisung
Senden Sie E-Mails über jeden SMTP-Server (Gmail, Outlook, benutzerdefinierte Server usw.). Konfigurieren Sie SMTP-Verbindungseinstellungen und senden Sie E-Mails mit voller Kontrolle über Inhalt, Empfänger und Anhänge.
## Tools
### `smtp_send_mail`
E-Mails über SMTP-Server senden
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `smtpHost` | string | Ja | SMTP-Server-Hostname \(z.B. smtp.gmail.com\) |
| `smtpPort` | number | Ja | SMTP-Server-Port \(587 für TLS, 465 für SSL\) |
| `smtpUsername` | string | Ja | SMTP-Authentifizierungsbenutzername |
| `smtpPassword` | string | Ja | SMTP-Authentifizierungspasswort |
| `smtpSecure` | string | Ja | Sicherheitsprotokoll \(TLS, SSL oder None\) |
| `from` | string | Ja | Absender-E-Mail-Adresse |
| `to` | string | Ja | Empfänger-E-Mail-Adresse |
| `subject` | string | Ja | E-Mail-Betreff |
| `body` | string | Ja | E-Mail-Inhalt |
| `contentType` | string | Nein | Inhaltstyp \(text oder html\) |
| `fromName` | string | Nein | Anzeigename für Absender |
| `cc` | string | Nein | CC-Empfänger \(durch Komma getrennt\) |
| `bcc` | string | Nein | BCC-Empfänger \(durch Komma getrennt\) |
| `replyTo` | string | Nein | Antwort-an E-Mail-Adresse |
| `attachments` | file[] | Nein | Dateien, die der E-Mail angehängt werden sollen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Ob die E-Mail erfolgreich gesendet wurde |
| `messageId` | string | Nachrichten-ID vom SMTP-Server |
| `to` | string | Empfänger-E-Mail-Adresse |
| `subject` | string | E-Mail-Betreff |
| `error` | string | Fehlermeldung, wenn das Senden fehlgeschlagen ist |
## Notizen
- Kategorie: `tools`
- Typ: `smtp`

View File

@@ -0,0 +1,197 @@
---
title: Speech-to-Text
description: Konvertiere Sprache in Text mit KI
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="stt"
color="#181C1E"
/>
{/* MANUAL-CONTENT-START:intro */}
Transkribieren Sie Sprache zu Text mit den neuesten KI-Modellen von erstklassigen Anbietern. Die Speech-to-Text (STT)-Tools von Sim ermöglichen es Ihnen, Audio und Video in genaue, mit Zeitstempeln versehene und optional übersetzte Transkripte umzuwandeln mit Unterstützung für verschiedene Sprachen und erweitert durch fortschrittliche Funktionen wie Sprechertrennung und Sprecheridentifikation.
**Unterstützte Anbieter & Modelle:**
- **[OpenAI Whisper](https://platform.openai.com/docs/guides/speech-to-text/overview)** (OpenAI):
OpenAIs Whisper ist ein Open-Source-Deep-Learning-Modell, das für seine Robustheit in verschiedenen Sprachen und Audiobedingungen bekannt ist. Es unterstützt fortschrittliche Modelle wie `whisper-1` und zeichnet sich bei Transkription, Übersetzung und Aufgaben aus, die eine hohe Modellgeneralisierung erfordern. Unterstützt von OpenAI dem Unternehmen hinter ChatGPT und führender KI-Forschung wird Whisper häufig in der Forschung und als Basis für vergleichende Bewertungen eingesetzt.
- **[Deepgram](https://deepgram.com/)** (Deepgram Inc.):
Das in San Francisco ansässige Unternehmen Deepgram bietet skalierbare, produktionsreife Spracherkennungs-APIs für Entwickler und Unternehmen. Zu den Modellen von Deepgram gehören `nova-3`, `nova-2` und `whisper-large`. Sie bieten Echtzeit- und Batch-Transkription mit branchenführender Genauigkeit, Unterstützung mehrerer Sprachen, automatische Zeichensetzung, intelligente Sprechertrennung, Anrufanalysen und Funktionen für Anwendungsfälle von der Telefonie bis zur Medienproduktion.
- **[ElevenLabs](https://elevenlabs.io/)** (ElevenLabs):
Als führendes Unternehmen im Bereich Sprach-KI ist ElevenLabs besonders für hochwertige Sprachsynthese und -erkennung bekannt. Sein STT-Produkt bietet hochpräzises, natürliches Verständnis zahlreicher Sprachen, Dialekte und Akzente. Die neuesten STT-Modelle von ElevenLabs sind für Klarheit und Sprecherunterscheidung optimiert und eignen sich sowohl für kreative als auch für Barrierefreiheitsszenarien. ElevenLabs ist bekannt für bahnbrechende Fortschritte bei KI-gestützten Sprachtechnologien.
- **[AssemblyAI](https://www.assemblyai.com/)** (AssemblyAI Inc.):
AssemblyAI bietet API-gesteuerte, hochpräzise Spracherkennung mit Funktionen wie automatischer Kapitelbildung, Themenerkennung, Zusammenfassung, Stimmungsanalyse und Inhaltsmoderation neben der Transkription. Sein proprietäres Modell, einschließlich des gefeierten `Conformer-2`, unterstützt einige der größten Medien-, Call-Center- und Compliance-Anwendungen der Branche. AssemblyAI wird weltweit von Fortune-500-Unternehmen und führenden KI-Startups vertraut.
- **[Google Cloud Speech-to-Text](https://cloud.google.com/speech-to-text)** (Google Cloud):
Googles Speech-to-Text API für Unternehmen unterstützt über 125 Sprachen und Varianten und bietet hohe Genauigkeit sowie Funktionen wie Echtzeit-Streaming, Wort-für-Wort-Konfidenz, Sprechererkennung, automatische Zeichensetzung, benutzerdefiniertes Vokabular und domänenspezifische Anpassungen. Modelle wie `latest_long`, `video` und domänenoptimierte Modelle stehen zur Verfügung, basierend auf Googles jahrelanger Forschung und für globale Skalierbarkeit entwickelt.
- **[AWS Transcribe](https://aws.amazon.com/transcribe/)** (Amazon Web Services):
AWS Transcribe nutzt Amazons Cloud-Infrastruktur, um robuste Spracherkennung als API bereitzustellen. Es unterstützt mehrere Sprachen und Funktionen wie Sprecheridentifikation, benutzerdefiniertes Vokabular, Kanalidentifikation (für Call-Center-Audio) und medizinspezifische Transkription. Zu den beliebten Modellen gehören `standard` und domänenspezifische Varianten. AWS Transcribe ist ideal für Organisationen, die bereits Amazons Cloud nutzen.
**Wie man wählt:**
Wählen Sie den Anbieter und das Modell, das zu Ihrer Anwendung passt ob Sie schnelle, unternehmenstaugliche Transkription mit zusätzlicher Analytik benötigen (Deepgram, AssemblyAI, Google, AWS), hohe Vielseitigkeit und Open-Source-Zugang (OpenAI Whisper) oder fortschrittliches Sprecher-/Kontextverständnis (ElevenLabs). Berücksichtigen Sie die Preisgestaltung, Sprachabdeckung, Genauigkeit und alle speziellen Funktionen (wie Zusammenfassung, Kapitelunterteilung oder Stimmungsanalyse), die Sie möglicherweise benötigen.
Weitere Details zu Funktionen, Preisen, Funktionshighlights und Feinabstimmungsoptionen finden Sie in der offiziellen Dokumentation jedes Anbieters über die oben genannten Links.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Transkribieren Sie Audio- und Videodateien mit führenden KI-Anbietern in Text. Unterstützt mehrere Sprachen, Zeitstempel und Sprechererkennung.
## Tools
### `stt_whisper`
Transkribieren Sie Audio in Text mit OpenAI Whisper
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | STT-Anbieter \(whisper\) |
| `apiKey` | string | Ja | OpenAI API-Schlüssel |
| `model` | string | Nein | Zu verwendendes Whisper-Modell \(Standard: whisper-1\) |
| `audioFile` | file | Nein | Audio- oder Videodatei zur Transkription |
| `audioFileReference` | file | Nein | Referenz zu Audio-/Videodatei aus vorherigen Blöcken |
| `audioUrl` | string | Nein | URL zu Audio- oder Videodatei |
| `language` | string | Nein | Sprachcode \(z.B. "en", "es", "fr"\) oder "auto" für automatische Erkennung |
| `timestamps` | string | Nein | Zeitstempel-Granularität: none, sentence oder word |
| `translateToEnglish` | boolean | Nein | Audio ins Englische übersetzen |
| `prompt` | string | Nein | Optionaler Text, um den Stil des Modells zu leiten oder ein vorheriges Audiosegment fortzusetzen. Hilft bei Eigennamen und Kontext. |
| `temperature` | number | Nein | Sampling-Temperatur zwischen 0 und 1. Höhere Werte machen die Ausgabe zufälliger, niedrigere Werte fokussierter und deterministischer. |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `transcript` | string | Vollständiger transkribierter Text |
| `segments` | array | Segmente mit Zeitstempeln |
| `language` | string | Erkannte oder angegebene Sprache |
| `duration` | number | Audiodauer in Sekunden |
### `stt_deepgram`
Audio mit Deepgram in Text transkribieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | STT-Anbieter (deepgram) |
| `apiKey` | string | Ja | Deepgram API-Schlüssel |
| `model` | string | Nein | Zu verwendendes Deepgram-Modell (nova-3, nova-2, whisper-large, etc.) |
| `audioFile` | file | Nein | Zu transkribierendes Audio- oder Videodatei |
| `audioFileReference` | file | Nein | Referenz auf Audio-/Videodatei aus vorherigen Blöcken |
| `audioUrl` | string | Nein | URL zu Audio- oder Videodatei |
| `language` | string | Nein | Sprachcode (z.B. "en", "es", "fr") oder "auto" für automatische Erkennung |
| `timestamps` | string | Nein | Zeitstempel-Granularität: none, sentence oder word |
| `diarization` | boolean | Nein | Sprechererkennung aktivieren |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `transcript` | string | Vollständiger transkribierter Text |
| `segments` | array | Segmente mit Zeitstempeln und Sprecherkennungen |
| `language` | string | Erkannte oder angegebene Sprache |
| `duration` | number | Audiodauer in Sekunden |
| `confidence` | number | Gesamter Konfidenzwert |
### `stt_elevenlabs`
Audio mit ElevenLabs in Text transkribieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | STT-Anbieter \(elevenlabs\) |
| `apiKey` | string | Ja | ElevenLabs API-Schlüssel |
| `model` | string | Nein | Zu verwendendes ElevenLabs-Modell \(scribe_v1, scribe_v1_experimental\) |
| `audioFile` | file | Nein | Zu transkribierendes Audio- oder Videodatei |
| `audioFileReference` | file | Nein | Referenz auf Audio-/Videodatei aus vorherigen Blöcken |
| `audioUrl` | string | Nein | URL zu Audio- oder Videodatei |
| `language` | string | Nein | Sprachcode \(z.B. "en", "es", "fr"\) oder "auto" für automatische Erkennung |
| `timestamps` | string | Nein | Zeitstempel-Granularität: none, sentence oder word |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `transcript` | string | Vollständig transkribierter Text |
| `segments` | array | Segmente mit Zeitstempeln |
| `language` | string | Erkannte oder angegebene Sprache |
| `duration` | number | Audiodauer in Sekunden |
| `confidence` | number | Gesamter Konfidenzwert |
### `stt_assemblyai`
Audio mit AssemblyAI und erweiterten NLP-Funktionen in Text transkribieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | STT-Anbieter \(assemblyai\) |
| `apiKey` | string | Ja | AssemblyAI API-Schlüssel |
| `model` | string | Nein | Zu verwendendes AssemblyAI-Modell \(Standard: best\) |
| `audioFile` | file | Nein | Zu transkribierendes Audio- oder Videodatei |
| `audioFileReference` | file | Nein | Referenz auf Audio-/Videodatei aus vorherigen Blöcken |
| `audioUrl` | string | Nein | URL zu Audio- oder Videodatei |
| `language` | string | Nein | Sprachcode \(z.B. "en", "es", "fr"\) oder "auto" für automatische Erkennung |
| `timestamps` | string | Nein | Zeitstempel-Granularität: none, sentence oder word |
| `diarization` | boolean | Nein | Sprechererkennung aktivieren |
| `sentiment` | boolean | Nein | Stimmungsanalyse aktivieren |
| `entityDetection` | boolean | Nein | Entitätserkennung aktivieren |
| `piiRedaction` | boolean | Nein | PII-Schwärzung aktivieren |
| `summarization` | boolean | Nein | Automatische Zusammenfassung aktivieren |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `transcript` | string | Vollständig transkribierter Text |
| `segments` | array | Segmente mit Zeitstempeln und Sprecherkennungen |
| `language` | string | Erkannte oder angegebene Sprache |
| `duration` | number | Audiodauer in Sekunden |
| `confidence` | number | Gesamter Konfidenzwert |
| `sentiment` | array | Ergebnisse der Stimmungsanalyse |
| `entities` | array | Erkannte Entitäten |
| `summary` | string | Automatisch generierte Zusammenfassung |
### `stt_gemini`
Audio mit Google Gemini und multimodalen Fähigkeiten in Text transkribieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | STT-Anbieter \(gemini\) |
| `apiKey` | string | Ja | Google API-Schlüssel |
| `model` | string | Nein | Zu verwendendes Gemini-Modell \(Standard: gemini-2.5-flash\) |
| `audioFile` | file | Nein | Zu transkribierendes Audio- oder Videodatei |
| `audioFileReference` | file | Nein | Referenz auf Audio-/Videodatei aus vorherigen Blöcken |
| `audioUrl` | string | Nein | URL zu Audio- oder Videodatei |
| `language` | string | Nein | Sprachcode \(z.B. "en", "es", "fr"\) oder "auto" für automatische Erkennung |
| `timestamps` | string | Nein | Zeitstempel-Granularität: none, sentence oder word |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `transcript` | string | Vollständig transkribierter Text |
| `segments` | array | Segmente mit Zeitstempeln |
| `language` | string | Erkannte oder angegebene Sprache |
| `duration` | number | Audiodauer in Sekunden |
| `confidence` | number | Gesamter Konfidenzwert |
## Hinweise
- Kategorie: `tools`
- Typ: `stt`

View File

@@ -0,0 +1,256 @@
---
title: Text-zu-Sprache
description: Text mit KI-Stimmen in Sprache umwandeln
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="tts"
color="#181C1E"
/>
{/* MANUAL-CONTENT-START:intro */}
Wandeln Sie Text in natürlich klingende Sprache mit den neuesten KI-Stimmen um. Die Text-zu-Sprache (TTS)-Tools von Sim ermöglichen es Ihnen, Audio aus geschriebenem Text in Dutzenden von Sprachen zu generieren, mit einer Auswahl an ausdrucksstarken Stimmen, Formaten und erweiterten Steuerungsmöglichkeiten wie Geschwindigkeit, Stil, Emotion und mehr.
**Unterstützte Anbieter & Modelle:**
- **[OpenAI Text-to-Speech](https://platform.openai.com/docs/guides/text-to-speech/voice-options)** (OpenAI):
OpenAIs TTS-API bietet ultra-realistische Stimmen mit fortschrittlichen KI-Modellen wie `tts-1`, `tts-1-hd` und `gpt-4o-mini-tts`. Die Stimmen umfassen sowohl männliche als auch weibliche Optionen wie alloy, echo, fable, onyx, nova, shimmer, ash, ballad, coral, sage und verse. Unterstützt werden verschiedene Audioformate (mp3, opus, aac, flac, wav, pcm), einstellbare Geschwindigkeit und Streaming-Synthese.
- **[Deepgram Aura](https://deepgram.com/products/text-to-speech)** (Deepgram Inc.):
Deepgrams Aura bietet ausdrucksstarke englische und mehrsprachige KI-Stimmen, optimiert für Gesprächsklarheit, geringe Latenz und Anpassungsfähigkeit. Modelle wie `aura-asteria-en`, `aura-luna-en` und andere stehen zur Verfügung. Unterstützt werden verschiedene Kodierungsformate (linear16, mp3, opus, aac, flac) und Feinabstimmung bei Geschwindigkeit, Abtastrate und Stil.
- **[ElevenLabs Text-to-Speech](https://elevenlabs.io/text-to-speech)** (ElevenLabs):
ElevenLabs führt im Bereich lebensechter, emotional reicher TTS und bietet Dutzende von Stimmen in über 29 Sprachen sowie die Möglichkeit, benutzerdefinierte Stimmen zu klonen. Die Modelle unterstützen Stimmdesign, Sprachsynthese und direkten API-Zugriff mit erweiterten Steuerungsmöglichkeiten für Stil, Emotion, Stabilität und Ähnlichkeit. Geeignet für Hörbücher, Content-Erstellung, Barrierefreiheit und mehr.
- **[Cartesia TTS](https://docs.cartesia.ai/)** (Cartesia):
Cartesia bietet hochwertige, schnelle und sichere Text-zu-Sprache-Umwandlung mit Fokus auf Datenschutz und flexibler Bereitstellung. Es ermöglicht sofortiges Streaming, Echtzeit-Synthese und unterstützt mehrere internationale Stimmen und Akzente, zugänglich über eine einfache API.
- **[Google Cloud Text-to-Speech](https://cloud.google.com/text-to-speech)** (Google Cloud):
Google nutzt DeepMind WaveNet und Neural2-Modelle für hochwertige Stimmen in über 50 Sprachen und Varianten. Zu den Funktionen gehören Stimmauswahl, Tonhöhe, Sprechgeschwindigkeit, Lautstärkeregelung, SSML-Tags und Zugriff auf Standard- und Premium-Stimmen in Studioqualität. Wird häufig für Barrierefreiheit, IVR und Medien verwendet.
- **[Microsoft Azure Speech](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech)** (Microsoft Azure):
Azure bietet über 400 neuronale Stimmen in mehr als 140 Sprachen und Regionen mit einzigartiger Stimmanpassung, Stil, Emotion, Rolle und Echtzeit-Steuerung. Unterstützt SSML für Aussprache, Intonation und mehr. Ideal für globale, Unternehmens- oder kreative TTS-Anforderungen.
- **[PlayHT](https://play.ht/)** (PlayHT):
PlayHT spezialisiert sich auf realistische Sprachsynthese, Stimmklonen und sofortige Streaming-Wiedergabe mit über 800 Stimmen in mehr als 100 Sprachen. Zu den Funktionen gehören Emotions-, Tonhöhen- und Geschwindigkeitssteuerung, Mehrfachstimmen-Audio und benutzerdefinierte Stimmerstellung über die API oder das Online-Studio.
**Auswahlkriterien:**
Wählen Sie Ihren Anbieter und das Modell, indem Sie Sprachen, unterstützte Stimmtypen, gewünschte Formate (mp3, wav usw.), Steuerungsgranularität (Geschwindigkeit, Emotion usw.) und spezielle Funktionen (Stimmklonen, Akzent, Streaming) priorisieren. Stellen Sie für kreative, Barrierefreiheits- oder Entwickleranwendungsfälle die Kompatibilität mit den Anforderungen Ihrer Anwendung sicher und vergleichen Sie die Kosten.
Besuchen Sie die offizielle Website jedes Anbieters für aktuelle Informationen zu Funktionen, Preisen und Dokumentation!
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Erzeugen Sie natürlich klingende Sprache aus Text mit modernsten KI-Stimmen von OpenAI, Deepgram, ElevenLabs, Cartesia, Google Cloud, Azure und PlayHT. Unterstützt mehrere Stimmen, Sprachen und Audioformate.
## Tools
### `tts_openai`
Text in Sprache umwandeln mit OpenAI TTS-Modellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der in Sprache umzuwandelnde Text |
| `apiKey` | string | Ja | OpenAI API-Schlüssel |
| `model` | string | Nein | Zu verwendendes TTS-Modell \(tts-1, tts-1-hd oder gpt-4o-mini-tts\) |
| `voice` | string | Nein | Zu verwendende Stimme \(alloy, ash, ballad, cedar, coral, echo, marin, sage, shimmer, verse\) |
| `responseFormat` | string | Nein | Audioformat \(mp3, opus, aac, flac, wav, pcm\) |
| `speed` | number | Nein | Sprechgeschwindigkeit \(0,25 bis 4,0, Standard: 1,0\) |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL zur generierten Audiodatei |
| `audioFile` | file | Generiertes Audiodateiobjekt |
| `duration` | number | Audiodauer in Sekunden |
| `characterCount` | number | Anzahl der verarbeiteten Zeichen |
| `format` | string | Audioformat |
| `provider` | string | Verwendeter TTS-Anbieter |
### `tts_deepgram`
Text in Sprache umwandeln mit Deepgram Aura
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der in Sprache umzuwandelnde Text |
| `apiKey` | string | Ja | Deepgram API-Schlüssel |
| `model` | string | Nein | Deepgram Modell/Stimme \(z.B. aura-asteria-en, aura-luna-en\) |
| `voice` | string | Nein | Stimmenkennung \(Alternative zum Modellparameter\) |
| `encoding` | string | Nein | Audiokodierung \(linear16, mp3, opus, aac, flac\) |
| `sampleRate` | number | Nein | Abtastrate \(8000, 16000, 24000, 48000\) |
| `bitRate` | number | Nein | Bitrate für komprimierte Formate |
| `container` | string | Nein | Container-Format \(none, wav, ogg\) |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL zur generierten Audiodatei |
| `audioFile` | file | Generiertes Audiodateiobjekt |
| `duration` | number | Audiodauer in Sekunden |
| `characterCount` | number | Anzahl der verarbeiteten Zeichen |
| `format` | string | Audioformat |
| `provider` | string | Verwendeter TTS-Anbieter |
### `tts_elevenlabs`
Text in Sprache umwandeln mit ElevenLabs-Stimmen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der in Sprache umzuwandelnde Text |
| `voiceId` | string | Ja | Die ID der zu verwendenden Stimme |
| `apiKey` | string | Ja | ElevenLabs API-Schlüssel |
| `modelId` | string | Nein | Zu verwendendes Modell \(z.B. eleven_monolingual_v1, eleven_turbo_v2_5, eleven_flash_v2_5\) |
| `stability` | number | Nein | Stimmstabilität \(0.0 bis 1.0, Standard: 0.5\) |
| `similarityBoost` | number | Nein | Ähnlichkeitsverstärkung \(0.0 bis 1.0, Standard: 0.8\) |
| `style` | number | Nein | Stilübertreibung \(0.0 bis 1.0\) |
| `useSpeakerBoost` | boolean | Nein | Sprecherverstärkung verwenden \(Standard: true\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL zur generierten Audiodatei |
| `audioFile` | file | Generiertes Audiodateiobjekt |
| `duration` | number | Audiodauer in Sekunden |
| `characterCount` | number | Anzahl der verarbeiteten Zeichen |
| `format` | string | Audioformat |
| `provider` | string | Verwendeter TTS-Anbieter |
### `tts_cartesia`
Text in Sprache umwandeln mit Cartesia Sonic (extrem geringe Latenz)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der in Sprache umzuwandelnde Text |
| `apiKey` | string | Ja | Cartesia API-Schlüssel |
| `modelId` | string | Nein | Modell-ID \(sonic-english, sonic-multilingual\) |
| `voice` | string | Nein | Stimm-ID oder Embedding |
| `language` | string | Nein | Sprachcode \(en, es, fr, de, it, pt, usw.\) |
| `outputFormat` | json | Nein | Ausgabeformatkonfiguration \(Container, Kodierung, Abtastrate\) |
| `speed` | number | Nein | Geschwindigkeitsmultiplikator |
| `emotion` | array | Nein | Emotions-Tags für Sonic-3 \(z.B. \['positivity:high'\]\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL zur generierten Audiodatei |
| `audioFile` | file | Generiertes Audiodateiobjekt |
| `duration` | number | Audiodauer in Sekunden |
| `characterCount` | number | Anzahl der verarbeiteten Zeichen |
| `format` | string | Audioformat |
| `provider` | string | Verwendeter TTS-Anbieter |
### `tts_google`
Text in Sprache umwandeln mit Google Cloud Text-to-Speech
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der in Sprache umzuwandelnde Text |
| `apiKey` | string | Ja | Google Cloud API-Schlüssel |
| `voiceId` | string | Nein | Stimm-ID (z.B. en-US-Neural2-A, en-US-Wavenet-D) |
| `languageCode` | string | Ja | Sprachcode (z.B. en-US, es-ES, fr-FR) |
| `gender` | string | Nein | Stimmgeschlecht (MALE, FEMALE, NEUTRAL) |
| `audioEncoding` | string | Nein | Audiokodierung (LINEAR16, MP3, OGG_OPUS, MULAW, ALAW) |
| `speakingRate` | number | Nein | Sprechgeschwindigkeit (0,25 bis 2,0, Standard: 1,0) |
| `pitch` | number | Nein | Stimmhöhe (-20,0 bis 20,0, Standard: 0,0) |
| `volumeGainDb` | number | Nein | Lautstärkeverstärkung in dB (-96,0 bis 16,0) |
| `sampleRateHertz` | number | Nein | Abtastrate in Hz |
| `effectsProfileId` | array | Nein | Effektprofil (z.B. ['headphone-class-device']) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL zur generierten Audiodatei |
| `audioFile` | file | Generiertes Audiodateiobjekt |
| `duration` | number | Audiodauer in Sekunden |
| `characterCount` | number | Anzahl der verarbeiteten Zeichen |
| `format` | string | Audioformat |
| `provider` | string | Verwendeter TTS-Anbieter |
### `tts_azure`
Text in Sprache umwandeln mit Azure Cognitive Services
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der in Sprache umzuwandelnde Text |
| `apiKey` | string | Ja | Azure Speech Services API-Schlüssel |
| `voiceId` | string | Nein | Stimm-ID \(z.B. en-US-JennyNeural, en-US-GuyNeural\) |
| `region` | string | Nein | Azure-Region \(z.B. eastus, westus, westeurope\) |
| `outputFormat` | string | Nein | Ausgabe-Audioformat |
| `rate` | string | Nein | Sprechgeschwindigkeit \(z.B. +10%, -20%, 1.5\) |
| `pitch` | string | Nein | Stimmhöhe \(z.B. +5Hz, -2st, low\) |
| `style` | string | Nein | Sprechstil \(z.B. cheerful, sad, angry - nur für neurale Stimmen\) |
| `styleDegree` | number | Nein | Stilintensität \(0.01 bis 2.0\) |
| `role` | string | Nein | Rolle \(z.B. Girl, Boy, YoungAdultFemale\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL zur generierten Audiodatei |
| `audioFile` | file | Generiertes Audiodateiobjekt |
| `duration` | number | Audiodauer in Sekunden |
| `characterCount` | number | Anzahl der verarbeiteten Zeichen |
| `format` | string | Audioformat |
| `provider` | string | Verwendeter TTS-Anbieter |
### `tts_playht`
Text in Sprache umwandeln mit PlayHT (Stimmklonen)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `text` | string | Ja | Der in Sprache umzuwandelnde Text |
| `apiKey` | string | Ja | PlayHT API-Schlüssel \(AUTHORIZATION-Header\) |
| `userId` | string | Ja | PlayHT Benutzer-ID \(X-USER-ID-Header\) |
| `voice` | string | Nein | Stimm-ID oder Manifest-URL |
| `quality` | string | Nein | Qualitätsstufe \(draft, standard, premium\) |
| `outputFormat` | string | Nein | Ausgabeformat \(mp3, wav, ogg, flac, mulaw\) |
| `speed` | number | Nein | Geschwindigkeitsmultiplikator \(0,5 bis 2,0\) |
| `temperature` | number | Nein | Kreativität/Zufälligkeit \(0,0 bis 2,0\) |
| `voiceGuidance` | number | Nein | Stimmstabilität \(1,0 bis 6,0\) |
| `textGuidance` | number | Nein | Texttreue \(1,0 bis 6,0\) |
| `sampleRate` | number | Nein | Abtastrate \(8000, 16000, 22050, 24000, 44100, 48000\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL zur generierten Audiodatei |
| `audioFile` | file | Generiertes Audiodateiobjekt |
| `duration` | number | Audiodauer in Sekunden |
| `characterCount` | number | Anzahl der verarbeiteten Zeichen |
| `format` | string | Audioformat |
| `provider` | string | Verwendeter TTS-Anbieter |
## Notizen
- Kategorie: `tools`
- Typ: `tts`

View File

@@ -0,0 +1,192 @@
---
title: Video-Generator
description: Generiere Videos aus Text mit KI
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="video_generator"
color="#181C1E"
/>
{/* MANUAL-CONTENT-START:intro */}
Erstelle Videos aus Textaufforderungen mit modernsten KI-Modellen führender Anbieter. Sims Video-Generator bringt leistungsstarke, kreative Videosynthese-Funktionen in deinen Workflow mit Unterstützung für verschiedene Modelle, Seitenverhältnisse, Auflösungen, Kamerasteuerungen, nativen Ton und fortschrittliche Stil- und Konsistenzfunktionen.
**Unterstützte Anbieter & Modelle:**
- **[Runway Gen-4](https://research.runwayml.com/gen2/)** (Runway ML):
Runway ist ein Pionier in der Text-zu-Video-Generierung, bekannt für leistungsstarke Modelle wie Gen-2, Gen-3 und Gen-4. Das neueste [Gen-4](https://research.runwayml.com/gen2/) Modell (und Gen-4 Turbo für schnellere Ergebnisse) unterstützt realistischere Bewegungen, größere Weltkonsistenz und visuelle Referenzen für Charaktere, Objekte, Stil und Orte. Unterstützt 16:9, 9:16 und 1:1 Seitenverhältnisse, 5-10 Sekunden Dauer, bis zu 4K Auflösung, Stil-Voreinstellungen und direktes Hochladen von Referenzbildern für konsistente Generierungen. Runway bietet kreative Werkzeuge für Filmemacher, Studios und Content-Ersteller weltweit.
- **[Google Veo](https://deepmind.google/technologies/veo/)** (Google DeepMind):
[Veo](https://deepmind.google/technologies/veo/) ist Googles Video-Generationsmodell der nächsten Generation, das hochwertige Videos mit nativem Audio in bis zu 1080p und 16 Sekunden Länge bietet. Unterstützt fortschrittliche Bewegungen, filmische Effekte und nuanciertes Textverständnis. Veo kann Videos mit eingebautem Ton generieren sowohl mit nativem Audio als auch als stumme Clips. Optionen umfassen 16:9 Seitenverhältnis, variable Dauer, verschiedene Modelle (veo-3, veo-3.1) und promptbasierte Steuerungen. Ideal für Storytelling, Werbung, Forschung und Ideenfindung.
- **[Luma Dream Machine](https://lumalabs.ai/dream-machine)** (Luma AI):
[Dream Machine](https://lumalabs.ai/dream-machine) liefert atemberaubend realistische und flüssige Videos aus Text. Es integriert fortschrittliche Kamerasteuerung, Kinematografie-Prompts und unterstützt sowohl ray-1 als auch ray-2 Modelle. Dream Machine unterstützt präzise Seitenverhältnisse (16:9, 9:16, 1:1), variable Dauern und die Spezifikation von Kamerapfaden für komplexe visuelle Führung. Luma ist bekannt für bahnbrechende visuelle Wiedergabetreue und wird von führenden KI-Visions-Forschern unterstützt.
- **[MiniMax Hailuo-02](https://minimax.chat/)** (über [Fal.ai](https://fal.ai/)):
[MiniMax Hailuo-02](https://minimax.chat/) ist ein anspruchsvolles chinesisches generatives Videomodell, das weltweit über [Fal.ai](https://fal.ai/) verfügbar ist. Generiere Videos bis zu 16 Sekunden im Quer- oder Hochformat, mit Optionen zur Prompt-Optimierung für verbesserte Klarheit und Kreativität. Pro- und Standard-Endpunkte verfügbar, die hohe Auflösungen (bis zu 1920×1080) unterstützen. Gut geeignet für kreative Projekte, die Prompt-Übersetzung und -Optimierung benötigen, kommerzielle Storytelling und schnelle Prototypenerstellung visueller Ideen.
**Wie man wählt:**
Wähle deinen Anbieter und dein Modell basierend auf deinen Anforderungen an Qualität, Geschwindigkeit, Dauer, Audio, Kosten und einzigartigen Funktionen. Runway und Veo bieten weltweit führenden Realismus und filmische Fähigkeiten; Luma überzeugt durch flüssige Bewegungen und Kamerasteuerung; MiniMax ist ideal für chinesischsprachige Prompts und bietet schnellen, kostengünstigen Zugang. Berücksichtige Referenzunterstützung, Stilvoreinstellungen, Audioanforderungen und Preisgestaltung bei der Auswahl deines Tools.
Weitere Details zu Funktionen, Einschränkungen, Preisen und Modellfortschritten findest du in der offiziellen Dokumentation der jeweiligen Anbieter oben.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Generiere hochwertige Videos aus Textprompts mit führenden KI-Anbietern. Unterstützt mehrere Modelle, Seitenverhältnisse, Auflösungen und anbieterspezifische Funktionen wie Weltkonsistenz, Kamerasteuerung und Audiogenerierung.
## Tools
### `video_runway`
Generiere Videos mit Runway Gen-4 mit Weltkonsistenz und visuellen Referenzen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | Video-Anbieter \(runway\) |
| `apiKey` | string | Ja | Runway API-Schlüssel |
| `model` | string | Nein | Runway-Modell: gen-4 \(Standard, höhere Qualität\) oder gen-4-turbo \(schneller\) |
| `prompt` | string | Ja | Textprompt, der das zu generierende Video beschreibt |
| `duration` | number | Nein | Videodauer in Sekunden \(5 oder 10, Standard: 5\) |
| `aspectRatio` | string | Nein | Seitenverhältnis: 16:9 \(Querformat\), 9:16 \(Hochformat\) oder 1:1 \(quadratisch\) |
| `resolution` | string | Nein | Videoauflösung \(720p-Ausgabe\). Hinweis: Gen-4 Turbo gibt nativ in 720p aus |
| `visualReference` | json | Ja | Referenzbild ERFORDERLICH für Gen-4 \(UserFile-Objekt\). Gen-4 unterstützt nur Bild-zu-Video, keine reine Textgenerierung |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generierte Video-URL |
| `videoFile` | json | Video-Dateiobjekt mit Metadaten |
| `duration` | number | Videodauer in Sekunden |
| `width` | number | Videobreite in Pixeln |
| `height` | number | Videohöhe in Pixeln |
| `provider` | string | Verwendeter Anbieter \(runway\) |
| `model` | string | Verwendetes Modell |
| `jobId` | string | Runway-Job-ID |
### `video_veo`
Videos mit Google Veo 3/3.1 mit nativer Audiogenerierung erstellen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | Video-Anbieter \(veo\) |
| `apiKey` | string | Ja | Google Gemini API-Schlüssel |
| `model` | string | Nein | Veo-Modell: veo-3 \(Standard, höchste Qualität\), veo-3-fast \(schneller\) oder veo-3.1 \(neueste Version\) |
| `prompt` | string | Ja | Textaufforderung, die das zu generierende Video beschreibt |
| `duration` | number | Nein | Videodauer in Sekunden \(4, 6 oder 8, Standard: 8\) |
| `aspectRatio` | string | Nein | Seitenverhältnis: 16:9 \(Querformat\) oder 9:16 \(Hochformat\) |
| `resolution` | string | Nein | Videoauflösung: 720p oder 1080p \(Standard: 1080p\) |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generierte Video-URL |
| `videoFile` | json | Video-Dateiobjekt mit Metadaten |
| `duration` | number | Videodauer in Sekunden |
| `width` | number | Videobreite in Pixeln |
| `height` | number | Videohöhe in Pixeln |
| `provider` | string | Verwendeter Anbieter \(veo\) |
| `model` | string | Verwendetes Modell |
| `jobId` | string | Veo-Job-ID |
### `video_luma`
Generiere Videos mit Luma Dream Machine mit erweiterten Kamerasteuerungen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | Video-Anbieter \(luma\) |
| `apiKey` | string | Ja | Luma AI API-Schlüssel |
| `model` | string | Nein | Luma-Modell: ray-2 \(Standard\) |
| `prompt` | string | Ja | Textaufforderung, die das zu generierende Video beschreibt |
| `duration` | number | Nein | Videodauer in Sekunden \(5 oder 9, Standard: 5\) |
| `aspectRatio` | string | Nein | Seitenverhältnis: 16:9 \(Querformat\), 9:16 \(Hochformat\) oder 1:1 \(quadratisch\) |
| `resolution` | string | Nein | Videoauflösung: 540p, 720p oder 1080p \(Standard: 1080p\) |
| `cameraControl` | json | Nein | Kamerasteuerungen als Array von Konzeptobjekten. Format: \[\{ "key": "concept_name" \}\]. Gültige Schlüssel: truck_left, truck_right, pan_left, pan_right, tilt_up, tilt_down, zoom_in, zoom_out, push_in, pull_out, orbit_left, orbit_right, crane_up, crane_down, static, handheld und mehr als 20 weitere vordefinierte Optionen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generierte Video-URL |
| `videoFile` | json | Video-Dateiobjekt mit Metadaten |
| `duration` | number | Videodauer in Sekunden |
| `width` | number | Videobreite in Pixeln |
| `height` | number | Videohöhe in Pixeln |
| `provider` | string | Verwendeter Anbieter \(luma\) |
| `model` | string | Verwendetes Modell |
| `jobId` | string | Luma-Job-ID |
### `video_minimax`
Generiere Videos mit MiniMax Hailuo über die MiniMax Platform API mit fortschrittlichem Realismus und Prompt-Optimierung
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | Video-Anbieter \(minimax\) |
| `apiKey` | string | Ja | MiniMax API-Schlüssel von platform.minimax.io |
| `model` | string | Nein | MiniMax-Modell: hailuo-02 \(Standard\) |
| `prompt` | string | Ja | Textprompt, der das zu generierende Video beschreibt |
| `duration` | number | Nein | Videodauer in Sekunden \(6 oder 10, Standard: 6\) |
| `promptOptimizer` | boolean | Nein | Prompt-Optimierung für bessere Ergebnisse aktivieren \(Standard: true\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `videoUrl` | string | URL des generierten Videos |
| `videoFile` | json | Video-Dateiobjekt mit Metadaten |
| `duration` | number | Videodauer in Sekunden |
| `width` | number | Videobreite in Pixeln |
| `height` | number | Videohöhe in Pixeln |
| `provider` | string | Verwendeter Anbieter \(minimax\) |
| `model` | string | Verwendetes Modell |
| `jobId` | string | MiniMax Job-ID |
### `video_falai`
Generiere Videos mit der Fal.ai-Plattform mit Zugriff auf mehrere Modelle, darunter Veo 3.1, Sora 2, Kling 2.5, MiniMax Hailuo und mehr
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Ja | Video-Anbieter \(falai\) |
| `apiKey` | string | Ja | Fal.ai API-Schlüssel |
| `model` | string | Ja | Fal.ai-Modell: veo-3.1 \(Google Veo 3.1\), sora-2 \(OpenAI Sora 2\), kling-2.5-turbo-pro \(Kling 2.5 Turbo Pro\), kling-2.1-pro \(Kling 2.1 Master\), minimax-hailuo-2.3-pro \(MiniMax Hailuo Pro\), minimax-hailuo-2.3-standard \(MiniMax Hailuo Standard\), wan-2.1 \(WAN T2V\), ltxv-0.9.8 \(LTXV 13B\) |
| `prompt` | string | Ja | Textprompt, der das zu generierende Video beschreibt |
| `duration` | number | Nein | Videodauer in Sekunden \(variiert je nach Modell\) |
| `aspectRatio` | string | Nein | Seitenverhältnis \(variiert je nach Modell\): 16:9, 9:16, 1:1 |
| `resolution` | string | Nein | Videoauflösung \(variiert je nach Modell\): 540p, 720p, 1080p |
| `promptOptimizer` | boolean | Nein | Prompt-Optimierung für MiniMax-Modelle aktivieren \(Standard: true\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generierte Video-URL |
| `videoFile` | json | Video-Dateiobjekt mit Metadaten |
| `duration` | number | Videodauer in Sekunden |
| `width` | number | Videobreite in Pixeln |
| `height` | number | Videohöhe in Pixeln |
| `provider` | string | Verwendeter Anbieter \(falai\) |
| `model` | string | Verwendetes Modell |
| `jobId` | string | Job-ID |
## Hinweise
- Kategorie: `tools`
- Typ: `video_generator`

View File

@@ -0,0 +1,642 @@
---
title: Zendesk
description: Verwalte Support-Tickets, Benutzer und Organisationen in Zendesk
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="zendesk"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
[Zendesk](https://www.zendesk.com/) ist eine führende Kundenservice- und Support-Plattform, die Organisationen befähigt, Support-Tickets, Benutzer und Organisationen effizient durch eine robuste Reihe von Tools und APIs zu verwalten. Die Zendesk-Integration in Sim ermöglicht deinen Agenten, wichtige Support-Vorgänge zu automatisieren und deine Support-Daten mit dem Rest deines Workflows zu synchronisieren.
Mit Zendesk in Sim kannst du:
- **Tickets verwalten:**
- Listen von Support-Tickets mit erweiterten Filter- und Sortiermöglichkeiten abrufen.
- Detaillierte Informationen zu einem einzelnen Ticket für Nachverfolgung und Lösung erhalten.
- Neue Tickets einzeln oder in großen Mengen erstellen, um Kundenprobleme programmatisch zu erfassen.
- Tickets aktualisieren oder Massenaktualisierungen durchführen, um komplexe Workflows zu optimieren.
- Tickets löschen oder zusammenführen, wenn Fälle gelöst werden oder Duplikate auftreten.
- **Benutzerverwaltung:**
- Listen von Benutzern abrufen oder Benutzer nach Kriterien suchen, um deine Kunden- und Agenten-Verzeichnisse aktuell zu halten.
- Detaillierte Informationen zu einzelnen Benutzern oder zum aktuell angemeldeten Benutzer erhalten.
- Neue Benutzer erstellen oder sie in großen Mengen einrichten, um die Bereitstellung von Kunden und Agenten zu automatisieren.
- Benutzerdetails aktualisieren oder Massenaktualisierungen durchführen, um die Informationsgenauigkeit zu gewährleisten.
- Benutzer bei Bedarf für Datenschutz oder Kontoverwaltung löschen.
- **Organisationsverwaltung:**
- Organisationen auflisten, suchen und automatisch vervollständigen für optimiertes Support- und Kontomanagement.
- Organisationsdetails abrufen und deine Datenbank organisiert halten.
- Organisationen erstellen, aktualisieren oder löschen, um Änderungen in deiner Kundenbasis widerzuspiegeln.
- Massenorganisationserstellung für große Onboarding-Maßnahmen durchführen.
- **Erweiterte Suche & Analyse:**
- Nutzen Sie vielseitige Suchendpunkte, um Tickets, Benutzer oder Organisationen schnell nach beliebigen Feldern zu finden.
- Rufen Sie Zählungen von Suchergebnissen ab, um Berichte und Analysen zu erstellen.
Durch die Nutzung der Zendesk-Sim-Integration können Ihre automatisierten Workflows nahtlos die Ticket-Triage, Benutzer-Onboarding/Offboarding, Unternehmensverwaltung übernehmen und Ihre Support-Abläufe reibungslos am Laufen halten. Ob Sie Support mit Produkt-, CRM- oder Automatisierungssystemen integrieren - Zendesk-Tools in Sim bieten robuste, programmatische Kontrolle, um erstklassigen Support im großen Maßstab zu ermöglichen.
{/* MANUAL-CONTENT-END */}
## Nutzungsanleitung
Integrieren Sie Zendesk in den Workflow. Kann Tickets abrufen, Ticket abrufen, Ticket erstellen, Tickets in Masse erstellen, Ticket aktualisieren, Tickets in Masse aktualisieren, Ticket löschen, Tickets zusammenführen, Benutzer abrufen, Benutzer abrufen, aktuellen Benutzer abrufen, Benutzer suchen, Benutzer erstellen, Benutzer in Masse erstellen, Benutzer aktualisieren, Benutzer in Masse aktualisieren, Benutzer löschen, Organisationen abrufen, Organisation abrufen, Organisationen automatisch vervollständigen, Organisation erstellen, Organisationen in Masse erstellen, Organisation aktualisieren, Organisation löschen, suchen, Suchanzahl.
## Tools
### `zendesk_get_tickets`
Eine Liste von Tickets aus Zendesk mit optionaler Filterung abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain \(z.B. "mycompany" für mycompany.zendesk.com\) |
| `status` | string | Nein | Nach Status filtern \(new, open, pending, hold, solved, closed\) |
| `priority` | string | Nein | Nach Priorität filtern \(low, normal, high, urgent\) |
| `type` | string | Nein | Nach Typ filtern \(problem, incident, question, task\) |
| `assigneeId` | string | Nein | Nach Bearbeiter-Benutzer-ID filtern |
| `organizationId` | string | Nein | Nach Organisations-ID filtern |
| `sortBy` | string | Nein | Sortierfeld \(created_at, updated_at, priority, status\) |
| `sortOrder` | string | Nein | Sortierreihenfolge \(asc oder desc\) |
| `perPage` | string | Nein | Ergebnisse pro Seite \(Standard: 100, max: 100\) |
| `page` | string | Nein | Seitennummer |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Ticket-Daten und Metadaten |
### `zendesk_get_ticket`
Ein einzelnes Ticket anhand der ID von Zendesk abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `ticketId` | string | Ja | Ticket-ID zum Abrufen |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Ticket-Daten |
### `zendesk_create_ticket`
Ein neues Ticket in Zendesk erstellen mit Unterstützung für benutzerdefinierte Felder
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `subject` | string | Nein | Ticket-Betreff \(optional - wird automatisch generiert, wenn nicht angegeben\) |
| `description` | string | Ja | Ticket-Beschreibung \(erster Kommentar\) |
| `priority` | string | Nein | Priorität \(niedrig, normal, hoch, dringend\) |
| `status` | string | Nein | Status \(neu, offen, ausstehend, angehalten, gelöst, geschlossen\) |
| `type` | string | Nein | Typ \(problem, vorfall, frage, aufgabe\) |
| `tags` | string | Nein | Kommagetrennte Tags |
| `assigneeId` | string | Nein | Bearbeiter-Benutzer-ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Erstellte Ticket-Daten |
### `zendesk_create_tickets_bulk`
Erstellen Sie mehrere Tickets in Zendesk auf einmal (maximal 100)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Yes | Zendesk API-Token |
| `subdomain` | string | Yes | Ihre Zendesk-Subdomain |
| `tickets` | string | Yes | JSON-Array von Ticket-Objekten zum Erstellen \(maximal 100\). Jedes Ticket sollte Betreff- und Kommentareigenschaften haben. |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Status des Massenerstell-Jobs |
### `zendesk_update_ticket`
Aktualisieren Sie ein bestehendes Ticket in Zendesk mit Unterstützung für benutzerdefinierte Felder
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Yes | Zendesk API-Token |
| `subdomain` | string | Yes | Ihre Zendesk-Subdomain |
| `ticketId` | string | Yes | Zu aktualisierende Ticket-ID |
| `subject` | string | No | Neuer Ticket-Betreff |
| `comment` | string | No | Einen Kommentar zum Ticket hinzufügen |
| `priority` | string | No | Priorität \(low, normal, high, urgent\) |
| `status` | string | No | Status \(new, open, pending, hold, solved, closed\) |
| `type` | string | No | Typ \(problem, incident, question, task\) |
| `tags` | string | No | Kommagetrennte Tags |
| `assigneeId` | string | No | Bearbeiter-Benutzer-ID |
| `groupId` | string | No | Gruppen-ID |
| `customFields` | string | No | Benutzerdefinierte Felder als JSON-Objekt |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Aktualisierte Ticket-Daten |
### `zendesk_update_tickets_bulk`
Mehrere Tickets in Zendesk auf einmal aktualisieren (max. 100)
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `ticketIds` | string | Ja | Kommagetrennte Ticket-IDs zur Aktualisierung \(max. 100\) |
| `status` | string | Nein | Neuer Status für alle Tickets |
| `priority` | string | Nein | Neue Priorität für alle Tickets |
| `assigneeId` | string | Nein | Neue Bearbeiter-ID für alle Tickets |
| `groupId` | string | Nein | Neue Gruppen-ID für alle Tickets |
| `tags` | string | Nein | Kommagetrennte Tags, die allen Tickets hinzugefügt werden sollen |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Status des Massenaktualisierungsauftrags |
### `zendesk_delete_ticket`
Ein Ticket aus Zendesk löschen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `ticketId` | string | Ja | Zu löschende Ticket-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Löschbestätigung |
### `zendesk_merge_tickets`
Mehrere Tickets in ein Zielticket zusammenführen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `targetTicketId` | string | Ja | Zielticket-ID \(Tickets werden in dieses zusammengeführt\) |
| `sourceTicketIds` | string | Ja | Kommagetrennte Quellticket-IDs zum Zusammenführen |
| `targetComment` | string | Nein | Kommentar, der nach dem Zusammenführen zum Zielticket hinzugefügt wird |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Status des Zusammenführungsauftrags |
### `zendesk_get_users`
Eine Liste von Benutzern aus Zendesk mit optionaler Filterung abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain \(z.B. "mycompany" für mycompany.zendesk.com\) |
| `role` | string | Nein | Nach Rolle filtern \(end-user, agent, admin\) |
| `permissionSet` | string | Nein | Nach Berechtigungssatz-ID filtern |
| `perPage` | string | Nein | Ergebnisse pro Seite \(Standard: 100, max: 100\) |
| `page` | string | Nein | Seitennummer |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Benutzerdaten und Metadaten |
### `zendesk_get_user`
Einen einzelnen Benutzer anhand der ID von Zendesk abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `userId` | string | Ja | Zu abzurufende Benutzer-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Benutzerdaten |
### `zendesk_get_current_user`
Den aktuell authentifizierten Benutzer von Zendesk abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Daten des aktuellen Benutzers |
### `zendesk_search_users`
Nach Benutzern in Zendesk mit einer Abfragezeichenfolge suchen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `query` | string | Nein | Suchabfragestring |
| `externalId` | string | Nein | Externe ID für die Suche |
| `perPage` | string | Nein | Ergebnisse pro Seite \(Standard: 100, max: 100\) |
| `page` | string | Nein | Seitennummer |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Suchergebnisse für Benutzer |
### `zendesk_create_user`
Einen neuen Benutzer in Zendesk erstellen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `name` | string | Ja | Benutzername |
| `userEmail` | string | Nein | Benutzer-E-Mail |
| `role` | string | Nein | Benutzerrolle \(end-user, agent, admin\) |
| `phone` | string | Nein | Telefonnummer des Benutzers |
| `organizationId` | string | Nein | Organisations-ID |
| `verified` | string | Nein | Auf "true" setzen, um die E-Mail-Verifizierung zu überspringen |
| `tags` | string | Nein | Kommagetrennte Tags |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt \(z.B. \{"field_id": "value"\}\) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Erstellte Benutzerdaten |
### `zendesk_create_users_bulk`
Erstellen mehrerer Benutzer in Zendesk mittels Massenimport
#### Input
| Parameter | Type | Required | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Yes | Zendesk API-Token |
| `subdomain` | string | Yes | Ihre Zendesk-Subdomain |
| `users` | string | Yes | JSON-Array von Benutzerobjekten zum Erstellen |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Status des Massenimport-Jobs |
### `zendesk_update_user`
Aktualisieren eines vorhandenen Benutzers in Zendesk
#### Input
| Parameter | Type | Required | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Yes | Zendesk API-Token |
| `subdomain` | string | Yes | Ihre Zendesk-Subdomain |
| `userId` | string | Yes | Zu aktualisierende Benutzer-ID |
| `name` | string | No | Neuer Benutzername |
| `userEmail` | string | No | Neue Benutzer-E-Mail |
| `role` | string | No | Benutzerrolle \(end-user, agent, admin\) |
| `phone` | string | No | Telefonnummer des Benutzers |
| `organizationId` | string | No | Organisations-ID |
| `verified` | string | No | Auf "true" setzen, um Benutzer als verifiziert zu markieren |
| `tags` | string | No | Kommagetrennte Tags |
| `customFields` | string | No | Benutzerdefinierte Felder als JSON-Objekt |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Aktualisierte Benutzerdaten |
### `zendesk_update_users_bulk`
Mehrere Benutzer in Zendesk über Massenaktualisierung aktualisieren
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `users` | string | Ja | JSON-Array von Benutzerobjekten zur Aktualisierung \(muss das Feld id enthalten\) |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Status des Massenaktualisierungsauftrags |
### `zendesk_delete_user`
Einen Benutzer aus Zendesk löschen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `userId` | string | Ja | Zu löschende Benutzer-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Daten des gelöschten Benutzers |
### `zendesk_get_organizations`
Eine Liste von Organisationen von Zendesk abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain \(z.B. "mycompany" für mycompany.zendesk.com\) |
| `perPage` | string | Nein | Ergebnisse pro Seite \(Standard: 100, max: 100\) |
| `page` | string | Nein | Seitennummer |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Organisationsdaten und Metadaten |
### `zendesk_get_organization`
Eine einzelne Organisation anhand der ID von Zendesk abrufen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `organizationId` | string | Ja | Abzurufende Organisations-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Organisationsdaten |
### `zendesk_autocomplete_organizations`
Autovervollständigung von Organisationen in Zendesk nach Namenspräfix (für Namensabgleich/Autovervollständigung)
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `name` | string | Ja | Zu suchender Organisationsname |
| `perPage` | string | Nein | Ergebnisse pro Seite \(Standard: 100, max: 100\) |
| `page` | string | Nein | Seitennummer |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Suchergebnisse für Organisationen |
### `zendesk_create_organization`
Eine neue Organisation in Zendesk erstellen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `name` | string | Ja | Name der Organisation |
| `domainNames` | string | Nein | Kommagetrennte Domainnamen |
| `details` | string | Nein | Details zur Organisation |
| `notes` | string | Nein | Notizen zur Organisation |
| `tags` | string | Nein | Kommagetrennte Tags |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt (z.B. \{"field_id": "value"\}) |
#### Output
| Parameter | Type | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Daten der erstellten Organisation |
### `zendesk_create_organizations_bulk`
Mehrere Organisationen in Zendesk über Massenimport erstellen
#### Input
| Parameter | Type | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `organizations` | string | Ja | JSON-Array mit zu erstellenden Organisationsobjekten |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Status des Massenerfassungsauftrags |
### `zendesk_update_organization`
Eine bestehende Organisation in Zendesk aktualisieren
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `organizationId` | string | Ja | Zu aktualisierende Organisations-ID |
| `name` | string | Nein | Neuer Organisationsname |
| `domainNames` | string | Nein | Kommagetrennte Domainnamen |
| `details` | string | Nein | Organisationsdetails |
| `notes` | string | Nein | Organisationsnotizen |
| `tags` | string | Nein | Kommagetrennte Tags |
| `customFields` | string | Nein | Benutzerdefinierte Felder als JSON-Objekt |
#### Output
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Aktualisierte Organisationsdaten |
### `zendesk_delete_organization`
Eine Organisation aus Zendesk löschen
#### Input
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `organizationId` | string | Ja | Zu löschende Organisations-ID |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Gelöschte Organisationsdaten |
### `zendesk_search`
Einheitliche Suche über Tickets, Benutzer und Organisationen in Zendesk
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `query` | string | Ja | Suchabfragestring |
| `sortBy` | string | Nein | Sortierfeld \(relevance, created_at, updated_at, priority, status, ticket_type\) |
| `sortOrder` | string | Nein | Sortierreihenfolge \(asc oder desc\) |
| `perPage` | string | Nein | Ergebnisse pro Seite \(Standard: 100, max: 100\) |
| `page` | string | Nein | Seitennummer |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Status des Operationserfolgs |
| `output` | object | Suchergebnisse |
### `zendesk_search_count`
Zählen der Anzahl von Suchergebnissen, die einer Abfrage in Zendesk entsprechen
#### Eingabe
| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `email` | string | Ja | Ihre Zendesk-E-Mail-Adresse |
| `apiToken` | string | Ja | Zendesk-API-Token |
| `subdomain` | string | Ja | Ihre Zendesk-Subdomain |
| `query` | string | Ja | Suchabfragestring |
#### Ausgabe
| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `success` | boolean | Erfolgsstatus der Operation |
| `output` | object | Suchergebnis-Anzahl |
## Hinweise
- Kategorie: `tools`
- Typ: `zendesk`

View File

@@ -4,10 +4,21 @@ description: Trigger sind die grundlegenden Möglichkeiten, um Sim-Workflows zu
---
import { Card, Cards } from 'fumadocs-ui/components/card'
import { Image } from '@/components/ui/image'
## Kern-Auslöser
<div className="flex justify-center">
<Image
src="/static/blocks/triggers.png"
alt="Triggers-Übersicht"
width={500}
height={350}
className="my-6"
/>
</div>
Verwende den Start-Block für alles, was vom Editor, von Deploy-to-API oder von Deploy-to-Chat-Erfahrungen ausgeht. Andere Trigger bleiben für ereignisgesteuerte Workflows verfügbar:
## Kern-Trigger
Verwende den Start-Block für alles, was aus dem Editor, deploy-to-API oder deploy-to-chat Erfahrungen stammt. Andere Trigger bleiben für ereignisgesteuerte Workflows verfügbar:
<Cards>
<Card title="Start" href="/triggers/start">
@@ -23,30 +34,30 @@ Verwende den Start-Block für alles, was vom Editor, von Deploy-to-API oder von
## Schneller Vergleich
| Auslöser | Startbedingung |
| Trigger | Startbedingung |
|---------|-----------------|
| **Start** | Editor läuft, Deploy-to-API-Anfragen oder Chat-Nachrichten |
| **Schedule** | Timer, der im Zeitplanblock verwaltet wird |
| **Start** | Editor-Ausführungen, deploy-to-API Anfragen oder Chat-Nachrichten |
| **Schedule** | Timer, der im Schedule-Block verwaltet wird |
| **Webhook** | Bei eingehender HTTP-Anfrage |
> Der Start-Block stellt immer `input`, `conversationId` und `files`Felder bereit. Füge benutzerdefinierte Felder zum Eingabeformat für zusätzliche strukturierte Daten hinzu.
> Der Start-Block stellt immer `input`, `conversationId` und `files` Felder bereit. Füge benutzerdefinierte Felder zum Eingabeformat für zusätzliche strukturierte Daten hinzu.
## Verwendung von Triggern
1. Platziere den Start-Block im Startslot (oder einen alternativen Trigger wie Webhook/Schedule).
2. Konfiguriere alle erforderlichen Schema- oder Authentifizierungseinstellungen.
1. Platziere den Start-Block im Start-Slot (oder einen alternativen Trigger wie Webhook/Schedule).
2. Konfiguriere alle erforderlichen Schema- oder Auth-Einstellungen.
3. Verbinde den Block mit dem Rest des Workflows.
> Bereitstellungen unterstützen jeden Trigger. Aktualisiere den Workflow, stelle ihn erneut bereit, und alle Trigger-Einstiegspunkte übernehmen den neuen Snapshot. Erfahre mehr unter [Ausführung → Bereitstellungs-Snapshots](/execution).
> Bereitstellungen steuern jeden Trigger. Aktualisiere den Workflow, stelle ihn erneut bereit, und alle Trigger-Einstiegspunkte übernehmen den neuen Snapshot. Erfahre mehr unter [Ausführung → Bereitstellungs-Snapshots](/execution).
## Manuelle Ausführungspriorität
## Priorität bei manueller Ausführung
Wenn Sie im Editor auf **Ausführen** klicken, wählt Sim automatisch aus, welcher Auslöser basierend auf der folgenden Prioritätsreihenfolge ausgeführt wird:
Wenn du im Editor auf **Run** klickst, wählt Sim automatisch aus, welcher Trigger basierend auf der folgenden Prioritätsreihenfolge ausgeführt wird:
1. **Start-Block** (höchste Priorität)
2. **Zeitplan-Auslöser**
3. **Externe Auslöser** (Webhooks, Integrationen wie Slack, Gmail, Airtable usw.)
2. **Schedule-Trigger**
3. **Externe Trigger** (Webhooks, Integrationen wie Slack, Gmail, Airtable usw.)
Wenn Ihr Workflow mehrere Auslöser hat, wird der Auslöser mit der höchsten Priorität ausgeführt. Wenn Sie beispielsweise sowohl einen Start-Block als auch einen Webhook-Auslöser haben, wird durch Klicken auf Ausführen der Start-Block ausgeführt.
Wenn dein Workflow mehrere Trigger hat, wird der Trigger mit der höchsten Priorität ausgeführt. Wenn du beispielsweise sowohl einen Start-Block als auch einen Webhook-Trigger hast, wird beim Klicken auf Run der Start-Block ausgeführt.
**Externe Auslöser mit Mock-Payloads**: Wenn externe Auslöser (Webhooks und Integrationen) manuell ausgeführt werden, generiert Sim automatisch Mock-Payloads basierend auf der erwarteten Datenstruktur des Auslösers. Dies stellt sicher, dass nachgelagerte Blöcke während des Tests Variablen korrekt auflösen können.
**Externe Auslöser mit Mock-Payloads**: Wenn externe Auslöser (Webhooks und Integrationen) manuell ausgeführt werden, generiert Sim automatisch Mock-Payloads basierend auf der erwarteten Datenstruktur des Auslösers. Dies stellt sicher, dass nachgelagerte Blöcke während des Testens Variablen korrekt auflösen können.

View File

@@ -42,11 +42,11 @@ The user prompt represents the primary input data for inference processing. This
The Agent block supports multiple LLM providers through a unified inference interface. Available models include:
- **OpenAI**: GPT-5, GPT-4o, o1, o3, o4-mini, gpt-4.1
- **Anthropic**: Claude 3.7 Sonnet
- **OpenAI**: GPT-5.1, GPT-5, GPT-4o, o1, o3, o4-mini, gpt-4.1
- **Anthropic**: Claude 4.5 Sonnet, Claude Opus 4.1
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Other Providers**: Groq, Cerebras, xAI, DeepSeek
- **Local Models**: Ollama-compatible models
- **Other Providers**: Groq, Cerebras, xAI, Azure OpenAI, OpenRouter
- **Local Models**: Ollama or VLLM compatible models
### Temperature

View File

@@ -52,7 +52,7 @@ Choose an AI model to perform the evaluation:
- **Anthropic**: Claude 3.7 Sonnet
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Other Providers**: Groq, Cerebras, xAI, DeepSeek
- **Local Models**: Ollama-compatible models
- **Local Models**: Ollama or VLLM compatible models
Use models with strong reasoning capabilities like GPT-4o or Claude 3.7 Sonnet for best results.

View File

@@ -65,7 +65,7 @@ Uses Retrieval-Augmented Generation (RAG) with LLM scoring to detect when AI-gen
**Configuration:**
- **Knowledge Base**: Select from your existing knowledge bases
- **Model**: Choose LLM for scoring (requires strong reasoning - GPT-4o, Claude 3.7 Sonnet recommended)
- **API Key**: Authentication for selected LLM provider (auto-hidden for hosted/Ollama models)
- **API Key**: Authentication for selected LLM provider (auto-hidden for hosted/Ollama or VLLM compatible models)
- **Confidence Threshold**: Minimum score to pass (0-10, default: 3)
- **Top K** (Advanced): Number of knowledge base chunks to retrieve (default: 10)

View File

@@ -5,6 +5,7 @@ title: Human in the Loop
import { Callout } from 'fumadocs-ui/components/callout'
import { Tab, Tabs } from 'fumadocs-ui/components/tabs'
import { Image } from '@/components/ui/image'
import { Video } from '@/components/ui/video'
The Human in the Loop block pauses workflow execution and waits for human intervention before continuing. Use it to add approval gates, collect feedback, or gather additional input at critical decision points.
@@ -76,7 +77,7 @@ Defines the fields approvers fill in when responding. This data becomes availabl
}
```
Access resume data in downstream blocks using `<blockId.resumeInput.fieldName>`.
Access resume data in downstream blocks using `<blockId.resumeInput.fieldName>`.
## Approval Methods
@@ -164,6 +165,11 @@ Access using `<blockId.resumeInput.fieldName>`.
// Condition block
<approval1.resumeInput.approved> === true
```
The example below shows an approval portal as seen by an approver after the workflow is paused. Approvers can review the data and provide inputs as a part of the workflow resumption. The approval portal can be accessed directly via the unique URL, `<blockId.url>`.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="hitl-resume.mp4" width={700} height={450} />
</div>
## Related Blocks

View File

@@ -56,7 +56,7 @@ Choose an AI model to power the routing decision:
- **Anthropic**: Claude 3.7 Sonnet
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Other Providers**: Groq, Cerebras, xAI, DeepSeek
- **Local Models**: Ollama-compatible models
- **Local Models**: Ollama or VLLM compatible models
Use models with strong reasoning capabilities like GPT-4o or Claude 3.7 Sonnet for best results.

View File

@@ -4,6 +4,7 @@ title: Basics
import { Callout } from 'fumadocs-ui/components/callout'
import { Step, Steps } from 'fumadocs-ui/components/steps'
import { Video } from '@/components/ui/video'
## How Connections Work
@@ -29,6 +30,10 @@ Connections are the pathways that allow data to flow between blocks in your work
</Step>
</Steps>
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="connections-build.mp4" width={700} height={450} />
</div>
### Connection Flow
The flow of data through connections follows these principles:

View File

@@ -71,6 +71,16 @@ This contextual information helps Copilot provide more accurate and relevant ass
</Card>
</Cards>
<div className="flex justify-center">
<Image
src="/static/copilot/copilot-mode.png"
alt="Copilot mode selection interface"
width={600}
height={400}
className="my-6"
/>
</div>
## Depth Levels
<Cards>

View File

@@ -49,31 +49,53 @@ The model breakdown shows:
<Tabs items={['Hosted Models', 'Bring Your Own API Key']}>
<Tab>
**Hosted Models** - Sim provides API keys with a 2.5x pricing multiplier:
**OpenAI**
| Model | Base Price (Input/Output) | Hosted Price (Input/Output) |
|-------|---------------------------|----------------------------|
| GPT-5.1 | $1.25 / $10.00 | $3.13 / $25.00 |
| GPT-5 | $1.25 / $10.00 | $3.13 / $25.00 |
| GPT-5 Mini | $0.25 / $2.00 | $0.63 / $5.00 |
| GPT-5 Nano | $0.05 / $0.40 | $0.13 / $1.00 |
| GPT-4o | $2.50 / $10.00 | $6.25 / $25.00 |
| GPT-4.1 | $2.00 / $8.00 | $5.00 / $20.00 |
| GPT-4.1 Mini | $0.40 / $1.60 | $1.00 / $4.00 |
| GPT-4.1 Nano | $0.10 / $0.40 | $0.25 / $1.00 |
| o1 | $15.00 / $60.00 | $37.50 / $150.00 |
| o3 | $2.00 / $8.00 | $5.00 / $20.00 |
| Claude 3.5 Sonnet | $3.00 / $15.00 | $7.50 / $37.50 |
| Claude Opus 4.0 | $15.00 / $75.00 | $37.50 / $187.50 |
| o4 Mini | $1.10 / $4.40 | $2.75 / $11.00 |
**Anthropic**
| Model | Base Price (Input/Output) | Hosted Price (Input/Output) |
|-------|---------------------------|----------------------------|
| Claude Opus 4.5 | $5.00 / $25.00 | $12.50 / $62.50 |
| Claude Opus 4.1 | $15.00 / $75.00 | $37.50 / $187.50 |
| Claude Sonnet 4.5 | $3.00 / $15.00 | $7.50 / $37.50 |
| Claude Sonnet 4.0 | $3.00 / $15.00 | $7.50 / $37.50 |
| Claude Haiku 4.5 | $1.00 / $5.00 | $2.50 / $12.50 |
**Google**
| Model | Base Price (Input/Output) | Hosted Price (Input/Output) |
|-------|---------------------------|----------------------------|
| Gemini 3 Pro Preview | $2.00 / $12.00 | $5.00 / $30.00 |
| Gemini 2.5 Pro | $0.15 / $0.60 | $0.38 / $1.50 |
| Gemini 2.5 Flash | $0.15 / $0.60 | $0.38 / $1.50 |
*The 2.5x multiplier covers infrastructure and API management costs.*
</Tab>
<Tab>
**Your Own API Keys** - Use any model at base pricing:
| Provider | Models | Input / Output |
|----------|---------|----------------|
| Google | Gemini 2.5 | $0.15 / $0.60 |
| Provider | Example Models | Input / Output |
|----------|----------------|----------------|
| Deepseek | V3, R1 | $0.75 / $1.00 |
| xAI | Grok 4, Grok 3 | $5.00 / $25.00 |
| Groq | Llama 4 Scout | $0.40 / $0.60 |
| Cerebras | Llama 3.3 70B | $0.94 / $0.94 |
| xAI | Grok 4 Latest, Grok 3 | $3.00 / $15.00 |
| Groq | Llama 4 Scout, Llama 3.3 70B | $0.11 / $0.34 |
| Cerebras | Llama 4 Scout, Llama 3.3 70B | $0.11 / $0.34 |
| Ollama | Local models | Free |
| VLLM | Local models | Free |
*Pay providers directly with no markup*
</Tab>
</Tabs>
@@ -86,7 +108,7 @@ The model breakdown shows:
- **Model Selection**: Choose models based on task complexity. Simple tasks can use GPT-4.1-nano while complex reasoning might need o1 or Claude Opus.
- **Prompt Engineering**: Well-structured, concise prompts reduce token usage without sacrificing quality.
- **Local Models**: Use Ollama for non-critical tasks to eliminate API costs entirely.
- **Local Models**: Use Ollama or VLLM for non-critical tasks to eliminate API costs entirely.
- **Caching and Reuse**: Store frequently used results in variables or files to avoid repeated AI model calls.
- **Batch Processing**: Process multiple items in a single AI request rather than making individual calls.

View File

@@ -5,6 +5,7 @@ title: Introduction
import { Card, Cards } from 'fumadocs-ui/components/card'
import { Callout } from 'fumadocs-ui/components/callout'
import { Image } from '@/components/ui/image'
import { Video } from '@/components/ui/video'
Sim is an open-source visual workflow builder for building and deploying AI agent workflows. Design intelligent automation systems using a no-code interface—connect AI models, databases, APIs, and business tools through an intuitive drag-and-drop canvas. Whether you're building chatbots, automating business processes, or orchestrating complex data pipelines, Sim provides the tools to bring your AI workflows to life.
@@ -32,6 +33,10 @@ Transform raw data into actionable insights. Extract information from documents,
**API Integration Workflows**
Orchestrate complex multi-service interactions. Create unified API endpoints, implement sophisticated business logic, and build event-driven automation systems.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/chat-workflow.mp4" width={700} height={450} />
</div>
## How It Works
**Visual Workflow Editor**
@@ -46,11 +51,15 @@ Launch workflows through multiple channels including chat interfaces, REST APIs,
**Real-time Collaboration**
Enable your team to build together. Multiple users can edit workflows simultaneously with live updates and granular permission controls.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/build-workflow.mp4" width={700} height={450} />
</div>
## Integrations
Sim provides native integrations with 80+ services across multiple categories:
- **AI Models**: OpenAI, Anthropic, Google Gemini, Groq, Cerebras, local models via Ollama
- **AI Models**: OpenAI, Anthropic, Google Gemini, Groq, Cerebras, local models via Ollama or VLLM
- **Communication**: Gmail, Slack, Microsoft Teams, Telegram, WhatsApp
- **Productivity**: Notion, Google Workspace, Airtable, Monday.com
- **Development**: GitHub, Jira, Linear, automated browser testing
@@ -59,6 +68,27 @@ Sim provides native integrations with 80+ services across multiple categories:
For custom integrations, leverage our [MCP (Model Context Protocol) support](/mcp) to connect any external service or tool.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/integrations-sidebar.mp4" width={700} height={450} />
</div>
## AI-Powered Copilot
**Ask Questions & Get Guidance**
Copilot answers questions about Sim, explains your workflows, and provides suggestions for improvements. Use the `@` symbol to reference workflows, blocks, documentation, knowledge, and logs for contextual assistance.
**Build & Edit Workflows**
Switch to Agent mode to let Copilot propose and apply changes directly to your canvas. Add blocks, configure settings, wire variables, and restructure workflows with natural language commands.
**Adaptive Reasoning Levels**
Choose from Fast, Auto, Advanced, or Behemoth modes depending on task complexity. Start with Fast for simple questions, scale up to Behemoth for complex architectural changes and deep debugging.
Learn more about [Copilot capabilities](/copilot) and how to maximize productivity with AI assistance.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="introduction/copilot-workflow.mp4" width={700} height={450} />
</div>
## Deployment Options
**Cloud-Hosted**

View File

@@ -0,0 +1,94 @@
---
title: Apify
description: Run Apify actors and retrieve results
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="apify"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
[Apify](https://apify.com/) is a powerful platform for building, deploying, and running web automation and web scraping actors at scale. Apify enables you to extract useful data from any website, automate workflows, and connect your data pipelines seamlessly.
With Apify, you can:
- **Run ready-made or custom actors**: Integrate public actors or develop your own, automating a wide range of web data extraction and browser tasks.
- **Retrieve datasets**: Access and manage structured datasets collected by actors in real time.
- **Scale web automation**: Leverage cloud infrastructure to run tasks reliably, asynchronously or synchronously, with robust error handling.
In Sim, the Apify integration allows your agents to perform core Apify operations programmatically:
- **Run Actor (Sync)**: Use `apify_run_actor_sync` to launch an Apify actor and wait for its completion, retrieving the results as soon as the run finishes.
- **Run Actor (Async)**: Use `apify_run_actor_async` to start an actor in the background and periodically poll for results, suitable for longer or complex jobs.
These operations equip your agents to automate, scrape, and orchestrate data collection or browser automation tasks directly inside workflows — all with flexible configuration and result handling, without the need for manual runs or external tools. Integrate Apify as a dynamic automation and data-extraction engine that programmatically powers your agents' web-scale workflows.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate Apify into your workflow. Run any Apify actor with custom input and retrieve results. Supports both synchronous and asynchronous execution with automatic dataset fetching.
## Tools
### `apify_run_actor_sync`
Run an APIFY actor synchronously and get results (max 5 minutes)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | APIFY API token from console.apify.com/account#/integrations |
| `actorId` | string | Yes | Actor ID or username/actor-name \(e.g., "janedoe/my-actor" or actor ID\) |
| `input` | string | No | Actor input as JSON string. See actor documentation for required fields. |
| `timeout` | number | No | Timeout in seconds \(default: actor default\) |
| `build` | string | No | Actor build to run \(e.g., "latest", "beta", or build tag/number\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the actor run succeeded |
| `runId` | string | APIFY run ID |
| `status` | string | Run status \(SUCCEEDED, FAILED, etc.\) |
| `datasetId` | string | Dataset ID containing results |
| `items` | array | Dataset items \(if completed\) |
### `apify_run_actor_async`
Run an APIFY actor asynchronously with polling for long-running tasks
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | APIFY API token from console.apify.com/account#/integrations |
| `actorId` | string | Yes | Actor ID or username/actor-name \(e.g., "janedoe/my-actor" or actor ID\) |
| `input` | string | No | Actor input as JSON string |
| `waitForFinish` | number | No | Initial wait time in seconds \(0-60\) before polling starts |
| `itemLimit` | number | No | Max dataset items to fetch \(1-250000, default 100\) |
| `timeout` | number | No | Timeout in seconds \(default: actor default\) |
| `build` | string | No | Actor build to run \(e.g., "latest", "beta", or build tag/number\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the actor run succeeded |
| `runId` | string | APIFY run ID |
| `status` | string | Run status \(SUCCEEDED, FAILED, etc.\) |
| `datasetId` | string | Dataset ID containing results |
| `items` | array | Dataset items \(if completed\) |
## Notes
- Category: `tools`
- Type: `apify`

View File

@@ -0,0 +1,579 @@
---
title: Apollo
description: Search, enrich, and manage contacts with Apollo.io
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="apollo"
color="#EBF212"
/>
{/* MANUAL-CONTENT-START:intro */}
[Apollo.io](https://apollo.io/) is a leading sales intelligence and engagement platform that empowers users to find, enrich, and engage contacts and companies at scale. Apollo.io combines an extensive contact database with robust enrichment and workflow automation tools, assisting sales, marketing, and recruiting teams to accelerate growth.
With Apollo.io, you can:
- **Search millions of contacts and companies**: Find precise leads using advanced filters
- **Enrich leads and accounts**: Fill in missing details with verified data and up-to-date information
- **Manage and organize CRM records**: Keep your people and company data accurate and actionable
- **Automate outreach**: Add contacts to sequences and create follow-up tasks directly from Apollo.io
In Sim, the Apollo.io integration allows your agents to perform core Apollo operations programmatically:
- **Search people and companies**: Use `apollo_people_search` to discover new leads using flexible filters.
- **Enrich people data**: Use `apollo_people_enrich` to augment contacts with verified information.
- **Enrich people in bulk**: Use `apollo_people_bulk_enrich` for large-scale enrichment of multiple contacts at once.
- **Search and enrich companies**: Use `apollo_company_search` and `apollo_company_enrich` to discover and update key company information.
This enables your agents to build powerful workflows for prospecting, CRM enrichment, and automation without manual data entry or switching tabs. Integrate Apollo.io as a dynamic data source and CRM engine — empowering your agents to identify, qualify, and reach out to leads seamlessly as part of their daily operations.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrates Apollo.io into the workflow. Search for people and companies, enrich contact data, manage your CRM contacts and accounts, add contacts to sequences, and create tasks.
## Tools
### `apollo_people_search`
Search Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `person_titles` | array | No | Job titles to search for \(e.g., \["CEO", "VP of Sales"\]\) |
| `person_locations` | array | No | Locations to search in \(e.g., \["San Francisco, CA", "New York, NY"\]\) |
| `person_seniorities` | array | No | Seniority levels \(e.g., \["senior", "executive", "manager"\]\) |
| `organization_names` | array | No | Company names to search within |
| `q_keywords` | string | No | Keywords to search for |
| `page` | number | No | Page number for pagination \(default: 1\) |
| `per_page` | number | No | Results per page \(default: 25, max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `people` | json | Array of people matching the search criteria |
| `metadata` | json | Pagination information including page, per_page, and total_entries |
### `apollo_people_enrich`
Enrich data for a single person using Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `first_name` | string | No | First name of the person |
| `last_name` | string | No | Last name of the person |
| `email` | string | No | Email address of the person |
| `organization_name` | string | No | Company name where the person works |
| `domain` | string | No | Company domain \(e.g., apollo.io\) |
| `linkedin_url` | string | No | LinkedIn profile URL |
| `reveal_personal_emails` | boolean | No | Reveal personal email addresses \(uses credits\) |
| `reveal_phone_number` | boolean | No | Reveal phone numbers \(uses credits\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `person` | json | Enriched person data from Apollo |
| `metadata` | json | Enrichment metadata including enriched status |
### `apollo_people_bulk_enrich`
Enrich data for up to 10 people at once using Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `people` | array | Yes | Array of people to enrich \(max 10\) |
| `reveal_personal_emails` | boolean | No | Reveal personal email addresses \(uses credits\) |
| `reveal_phone_number` | boolean | No | Reveal phone numbers \(uses credits\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `people` | json | Array of enriched people data |
| `metadata` | json | Bulk enrichment metadata including total and enriched counts |
### `apollo_organization_search`
Search Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `organization_locations` | array | No | Company locations to search |
| `organization_num_employees_ranges` | array | No | Employee count ranges \(e.g., \["1-10", "11-50"\]\) |
| `q_organization_keyword_tags` | array | No | Industry or keyword tags |
| `q_organization_name` | string | No | Organization name to search for |
| `page` | number | No | Page number for pagination |
| `per_page` | number | No | Results per page \(max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `organizations` | json | Array of organizations matching the search criteria |
| `metadata` | json | Pagination information including page, per_page, and total_entries |
### `apollo_organization_enrich`
Enrich data for a single organization using Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `organization_name` | string | No | Name of the organization \(at least one of organization_name or domain is required\) |
| `domain` | string | No | Company domain \(e.g., apollo.io\) \(at least one of domain or organization_name is required\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `organization` | json | Enriched organization data from Apollo |
| `metadata` | json | Enrichment metadata including enriched status |
### `apollo_organization_bulk_enrich`
Enrich data for up to 10 organizations at once using Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `organizations` | array | Yes | Array of organizations to enrich \(max 10\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `organizations` | json | Array of enriched organization data |
| `metadata` | json | Bulk enrichment metadata including total and enriched counts |
### `apollo_contact_create`
Create a new contact in your Apollo database
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `first_name` | string | Yes | First name of the contact |
| `last_name` | string | Yes | Last name of the contact |
| `email` | string | No | Email address of the contact |
| `title` | string | No | Job title |
| `account_id` | string | No | Apollo account ID to associate with |
| `owner_id` | string | No | User ID of the contact owner |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `contact` | json | Created contact data from Apollo |
| `metadata` | json | Creation metadata including created status |
### `apollo_contact_update`
Update an existing contact in your Apollo database
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `contact_id` | string | Yes | ID of the contact to update |
| `first_name` | string | No | First name of the contact |
| `last_name` | string | No | Last name of the contact |
| `email` | string | No | Email address |
| `title` | string | No | Job title |
| `account_id` | string | No | Apollo account ID |
| `owner_id` | string | No | User ID of the contact owner |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `contact` | json | Updated contact data from Apollo |
| `metadata` | json | Update metadata including updated status |
### `apollo_contact_search`
Search your team
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `q_keywords` | string | No | Keywords to search for |
| `contact_stage_ids` | array | No | Filter by contact stage IDs |
| `page` | number | No | Page number for pagination |
| `per_page` | number | No | Results per page \(max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `contacts` | json | Array of contacts matching the search criteria |
| `metadata` | json | Pagination information including page, per_page, and total_entries |
### `apollo_contact_bulk_create`
Create up to 100 contacts at once in your Apollo database. Supports deduplication to prevent creating duplicate contacts. Master key required.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `contacts` | array | Yes | Array of contacts to create \(max 100\). Each contact should include first_name, last_name, and optionally email, title, account_id, owner_id |
| `run_dedupe` | boolean | No | Enable deduplication to prevent creating duplicate contacts. When true, existing contacts are returned without modification |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `created_contacts` | json | Array of newly created contacts |
| `existing_contacts` | json | Array of existing contacts \(when deduplication is enabled\) |
| `metadata` | json | Bulk creation metadata including counts of created and existing contacts |
### `apollo_contact_bulk_update`
Update up to 100 existing contacts at once in your Apollo database. Each contact must include an id field. Master key required.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `contacts` | array | Yes | Array of contacts to update \(max 100\). Each contact must include id field, and optionally first_name, last_name, email, title, account_id, owner_id |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `updated_contacts` | json | Array of successfully updated contacts |
| `failed_contacts` | json | Array of contacts that failed to update |
| `metadata` | json | Bulk update metadata including counts of updated and failed contacts |
### `apollo_account_create`
Create a new account (company) in your Apollo database
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `name` | string | Yes | Company name |
| `website_url` | string | No | Company website URL |
| `phone` | string | No | Company phone number |
| `owner_id` | string | No | User ID of the account owner |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `account` | json | Created account data from Apollo |
| `metadata` | json | Creation metadata including created status |
### `apollo_account_update`
Update an existing account in your Apollo database
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `account_id` | string | Yes | ID of the account to update |
| `name` | string | No | Company name |
| `website_url` | string | No | Company website URL |
| `phone` | string | No | Company phone number |
| `owner_id` | string | No | User ID of the account owner |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `account` | json | Updated account data from Apollo |
| `metadata` | json | Update metadata including updated status |
### `apollo_account_search`
Search your team
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `q_keywords` | string | No | Keywords to search for in account data |
| `owner_id` | string | No | Filter by account owner user ID |
| `account_stage_ids` | array | No | Filter by account stage IDs |
| `page` | number | No | Page number for pagination |
| `per_page` | number | No | Results per page \(max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `accounts` | json | Array of accounts matching the search criteria |
| `metadata` | json | Pagination information including page, per_page, and total_entries |
### `apollo_account_bulk_create`
Create up to 100 accounts at once in your Apollo database. Note: Apollo does not apply deduplication - duplicate accounts may be created if entries share similar names or domains. Master key required.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `accounts` | array | Yes | Array of accounts to create \(max 100\). Each account should include name \(required\), and optionally website_url, phone, owner_id |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `created_accounts` | json | Array of newly created accounts |
| `failed_accounts` | json | Array of accounts that failed to create |
| `metadata` | json | Bulk creation metadata including counts of created and failed accounts |
### `apollo_account_bulk_update`
Update up to 1000 existing accounts at once in your Apollo database (higher limit than contacts!). Each account must include an id field. Master key required.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `accounts` | array | Yes | Array of accounts to update \(max 1000\). Each account must include id field, and optionally name, website_url, phone, owner_id |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `updated_accounts` | json | Array of successfully updated accounts |
| `failed_accounts` | json | Array of accounts that failed to update |
| `metadata` | json | Bulk update metadata including counts of updated and failed accounts |
### `apollo_opportunity_create`
Create a new deal for an account in your Apollo database (master key required)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `name` | string | Yes | Name of the opportunity/deal |
| `account_id` | string | Yes | ID of the account this opportunity belongs to |
| `amount` | number | No | Monetary value of the opportunity |
| `stage_id` | string | No | ID of the deal stage |
| `owner_id` | string | No | User ID of the opportunity owner |
| `close_date` | string | No | Expected close date \(ISO 8601 format\) |
| `description` | string | No | Description or notes about the opportunity |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `opportunity` | json | Created opportunity data from Apollo |
| `metadata` | json | Creation metadata including created status |
### `apollo_opportunity_search`
Search and list all deals/opportunities in your team
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `q_keywords` | string | No | Keywords to search for in opportunity names |
| `account_ids` | array | No | Filter by specific account IDs |
| `stage_ids` | array | No | Filter by deal stage IDs |
| `owner_ids` | array | No | Filter by opportunity owner IDs |
| `page` | number | No | Page number for pagination |
| `per_page` | number | No | Results per page \(max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `opportunities` | json | Array of opportunities matching the search criteria |
| `metadata` | json | Pagination information including page, per_page, and total_entries |
### `apollo_opportunity_get`
Retrieve complete details of a specific deal/opportunity by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `opportunity_id` | string | Yes | ID of the opportunity to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `opportunity` | json | Complete opportunity data from Apollo |
| `metadata` | json | Retrieval metadata including found status |
### `apollo_opportunity_update`
Update an existing deal/opportunity in your Apollo database
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key |
| `opportunity_id` | string | Yes | ID of the opportunity to update |
| `name` | string | No | Name of the opportunity/deal |
| `amount` | number | No | Monetary value of the opportunity |
| `stage_id` | string | No | ID of the deal stage |
| `owner_id` | string | No | User ID of the opportunity owner |
| `close_date` | string | No | Expected close date \(ISO 8601 format\) |
| `description` | string | No | Description or notes about the opportunity |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `opportunity` | json | Updated opportunity data from Apollo |
| `metadata` | json | Update metadata including updated status |
### `apollo_sequence_search`
Search for sequences/campaigns in your team
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `q_name` | string | No | Search sequences by name |
| `active` | boolean | No | Filter by active status \(true for active sequences, false for inactive\) |
| `page` | number | No | Page number for pagination |
| `per_page` | number | No | Results per page \(max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `sequences` | json | Array of sequences/campaigns matching the search criteria |
| `metadata` | json | Pagination information including page, per_page, and total_entries |
### `apollo_sequence_add_contacts`
Add contacts to an Apollo sequence
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `sequence_id` | string | Yes | ID of the sequence to add contacts to |
| `contact_ids` | array | Yes | Array of contact IDs to add to the sequence |
| `emailer_campaign_id` | string | No | Optional emailer campaign ID |
| `send_email_from_user_id` | string | No | User ID to send emails from |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `contacts_added` | json | Array of contact IDs added to the sequence |
| `metadata` | json | Sequence metadata including sequence_id and total_added count |
### `apollo_task_create`
Create a new task in Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `note` | string | Yes | Task note/description |
| `contact_id` | string | No | Contact ID to associate with |
| `account_id` | string | No | Account ID to associate with |
| `due_at` | string | No | Due date in ISO format |
| `priority` | string | No | Task priority |
| `type` | string | No | Task type |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `task` | json | Created task data from Apollo |
| `metadata` | json | Creation metadata including created status |
### `apollo_task_search`
Search for tasks in Apollo
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
| `contact_id` | string | No | Filter by contact ID |
| `account_id` | string | No | Filter by account ID |
| `completed` | boolean | No | Filter by completion status |
| `page` | number | No | Page number for pagination |
| `per_page` | number | No | Results per page \(max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `tasks` | json | Array of tasks matching the search criteria |
| `metadata` | json | Pagination information including page, per_page, and total_entries |
### `apollo_email_accounts`
Get list of team
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Apollo API key \(master key required\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `email_accounts` | json | Array of team email accounts linked in Apollo |
| `metadata` | json | Metadata including total count of email accounts |
## Notes
- Category: `tools`
- Type: `apollo`

View File

@@ -0,0 +1,177 @@
---
title: Calendly
description: Manage Calendly scheduling and events
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="calendly"
color="#FFFFFF"
/>
{/* MANUAL-CONTENT-START:intro */}
[Calendly](https://calendly.com/) is a popular scheduling automation platform that helps you book meetings, events, and appointments with ease. With Calendly, teams and individuals can streamline scheduling, reduce back-and-forth emails, and automate tasks around events.
With the Sim Calendly integration, your agents can:
- **Retrieve information about your account and scheduled events**: Use tools to fetch user info, event types, and scheduled events for analysis or automation.
- **Manage event types and scheduling**: Access and list available event types for users or organizations, retrieve details about specific event types, and monitor scheduled meetings and invitee data.
- **Automate follow-ups and workflows**: When users schedule, reschedule, or cancel meetings, Sim agents can automatically trigger corresponding workflows—such as sending reminders, updating CRMs, or notifying participants.
- **Integrate easily using webhooks**: Set up Sim workflows to respond to real-time Calendly webhook events, including when invitees schedule, cancel, or interact with routing forms.
Whether you want to automate meeting prep, manage invites, or run custom workflows in response to scheduling activity, the Calendly tools in Sim give you flexible and secure access. Unlock new automation by reacting instantly to scheduling changes—streamlining your team's operations and communications.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate Calendly into your workflow. Manage event types, scheduled events, invitees, and webhooks. Can also trigger workflows based on Calendly webhook events (invitee scheduled, invitee canceled, routing form submitted). Requires Personal Access Token.
## Tools
### `calendly_get_current_user`
Get information about the currently authenticated Calendly user
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Calendly Personal Access Token |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `resource` | object | Current user information |
### `calendly_list_event_types`
Retrieve a list of all event types for a user or organization
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Calendly Personal Access Token |
| `user` | string | No | Return only event types that belong to this user \(URI format\) |
| `organization` | string | No | Return only event types that belong to this organization \(URI format\) |
| `count` | number | No | Number of results per page \(default: 20, max: 100\) |
| `pageToken` | string | No | Page token for pagination |
| `sort` | string | No | Sort order for results \(e.g., "name:asc", "name:desc"\) |
| `active` | boolean | No | When true, show only active event types. When false or unchecked, show all event types \(both active and inactive\). |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `collection` | array | Array of event type objects |
### `calendly_get_event_type`
Get detailed information about a specific event type
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Calendly Personal Access Token |
| `eventTypeUuid` | string | Yes | Event type UUID \(can be full URI or just the UUID\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `resource` | object | Event type details |
### `calendly_list_scheduled_events`
Retrieve a list of scheduled events for a user or organization
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Calendly Personal Access Token |
| `user` | string | No | Return events that belong to this user \(URI format\). Either "user" or "organization" must be provided. |
| `organization` | string | No | Return events that belong to this organization \(URI format\). Either "user" or "organization" must be provided. |
| `invitee_email` | string | No | Return events where invitee has this email |
| `count` | number | No | Number of results per page \(default: 20, max: 100\) |
| `max_start_time` | string | No | Return events with start time before this time \(ISO 8601 format\) |
| `min_start_time` | string | No | Return events with start time after this time \(ISO 8601 format\) |
| `pageToken` | string | No | Page token for pagination |
| `sort` | string | No | Sort order for results \(e.g., "start_time:asc", "start_time:desc"\) |
| `status` | string | No | Filter by status \("active" or "canceled"\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `collection` | array | Array of scheduled event objects |
### `calendly_get_scheduled_event`
Get detailed information about a specific scheduled event
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Calendly Personal Access Token |
| `eventUuid` | string | Yes | Scheduled event UUID \(can be full URI or just the UUID\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `resource` | object | Scheduled event details |
### `calendly_list_event_invitees`
Retrieve a list of invitees for a scheduled event
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Calendly Personal Access Token |
| `eventUuid` | string | Yes | Scheduled event UUID \(can be full URI or just the UUID\) |
| `count` | number | No | Number of results per page \(default: 20, max: 100\) |
| `email` | string | No | Filter invitees by email address |
| `pageToken` | string | No | Page token for pagination |
| `sort` | string | No | Sort order for results \(e.g., "created_at:asc", "created_at:desc"\) |
| `status` | string | No | Filter by status \("active" or "canceled"\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `collection` | array | Array of invitee objects |
### `calendly_cancel_event`
Cancel a scheduled event
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Calendly Personal Access Token |
| `eventUuid` | string | Yes | Scheduled event UUID to cancel \(can be full URI or just the UUID\) |
| `reason` | string | No | Reason for cancellation \(will be sent to invitees\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `resource` | object | Cancellation details |
## Notes
- Category: `tools`
- Type: `calendly`

View File

@@ -0,0 +1,846 @@
---
title: incidentio
description: Manage incidents with incident.io
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="incidentio"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
Supercharge your incident management with [incident.io](https://incident.io) the leading platform for orchestrating incidents, streamlining response processes, and tracking action items all in one place. Seamlessly integrate incident.io into your automated workflows to take command of incident creation, real-time collaboration, follow-ups, scheduling, escalations, and much more.
With the incident.io tool, you can:
- **List and search incidents**: Quickly retrieve a list of ongoing or historical incidents, complete with metadata such as severity, status, and timestamps, using `incidentio_incidents_list`.
- **Create new incidents**: Trigger new incident creation programmatically via `incidentio_incidents_create`, specifying severity, name, type, and custom details to ensure nothing slows your response down.
- **Automate incident follow-ups**: Leverage incident.ios powerful automation to ensure important action items and learnings aren't missed, helping teams resolve issues and improve processes.
- **Customize workflows**: Integrate bespoke incident types, severities, and custom fields tailored to your organizations needs.
- **Enforce best practices with schedules & escalations**: Streamline on-call and incident management by automatically assigning, notifying, and escalating as situations evolve.
incident.io empowers modern organizations to respond faster, coordinate teams, and capture learnings for continuous improvement. Whether you manage SRE, DevOps, Security, or IT incidents, incident.io brings centralized, best-in-class incident response programmatically to your agent workflows.
**Key operations available**:
- `incidentio_incidents_list`: List, paginate and filter incidents with full detail.
- `incidentio_incidents_create`: Programmatically open new incidents with custom attributes and control over duplication (idempotency).
- ...and more to come!
Enhance your reliability, accountability, and operational excellence by integrating incident.io with your workflow automations today.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate incident.io into the workflow. Manage incidents, actions, follow-ups, workflows, schedules, escalations, custom fields, and more.
## Tools
### `incidentio_incidents_list`
List incidents from incident.io. Returns a list of incidents with their details including severity, status, and timestamps.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `page_size` | number | No | Number of incidents to return per page \(default: 25\) |
| `after` | string | No | Pagination cursor to fetch the next page of results |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incidents` | array | List of incidents |
### `incidentio_incidents_create`
Create a new incident in incident.io. Requires idempotency_key, severity_id, and visibility. Optionally accepts name, summary, type, and status.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `idempotency_key` | string | Yes | Unique identifier to prevent duplicate incident creation. Use a UUID or unique string. |
| `name` | string | No | Name of the incident \(optional\) |
| `summary` | string | No | Brief summary of the incident |
| `severity_id` | string | Yes | ID of the severity level \(required\) |
| `incident_type_id` | string | No | ID of the incident type |
| `incident_status_id` | string | No | ID of the initial incident status |
| `visibility` | string | Yes | Visibility of the incident: "public" or "private" \(required\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident` | object | The created incident object |
### `incidentio_incidents_show`
Retrieve detailed information about a specific incident from incident.io by its ID. Returns full incident details including custom fields and role assignments.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | ID of the incident to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident` | object | Detailed incident information |
### `incidentio_incidents_update`
Update an existing incident in incident.io. Can update name, summary, severity, status, or type.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | ID of the incident to update |
| `name` | string | No | Updated name of the incident |
| `summary` | string | No | Updated summary of the incident |
| `severity_id` | string | No | Updated severity ID for the incident |
| `incident_status_id` | string | No | Updated status ID for the incident |
| `incident_type_id` | string | No | Updated incident type ID |
| `notify_incident_channel` | boolean | Yes | Whether to notify the incident channel about this update |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident` | object | The updated incident object |
### `incidentio_actions_list`
List actions from incident.io. Optionally filter by incident ID.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `incident_id` | string | No | Filter actions by incident ID |
| `page_size` | number | No | Number of actions to return per page |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `actions` | array | List of actions |
### `incidentio_actions_show`
Get detailed information about a specific action from incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | Action ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `action` | object | Action details |
### `incidentio_follow_ups_list`
List follow-ups from incident.io. Optionally filter by incident ID.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `incident_id` | string | No | Filter follow-ups by incident ID |
| `page_size` | number | No | Number of follow-ups to return per page |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `follow_ups` | array | List of follow-ups |
### `incidentio_follow_ups_show`
Get detailed information about a specific follow-up from incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | Follow-up ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `follow_up` | object | Follow-up details |
### `incidentio_users_list`
List all users in your Incident.io workspace. Returns user details including id, name, email, and role.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Incident.io API Key |
| `page_size` | number | No | Number of results to return per page \(default: 25\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `users` | array | List of users in the workspace |
### `incidentio_users_show`
Get detailed information about a specific user in your Incident.io workspace by their ID.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Incident.io API Key |
| `id` | string | Yes | The unique identifier of the user to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `user` | object | Details of the requested user |
### `incidentio_workflows_list`
List all workflows in your incident.io workspace.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `page_size` | number | No | Number of workflows to return per page |
| `after` | string | No | Pagination cursor to fetch the next page of results |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `workflows` | array | List of workflows |
### `incidentio_workflows_show`
Get details of a specific workflow in incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the workflow to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `workflow` | object | The workflow details |
### `incidentio_workflows_update`
Update an existing workflow in incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the workflow to update |
| `name` | string | No | New name for the workflow |
| `state` | string | No | New state for the workflow \(active, draft, or disabled\) |
| `folder` | string | No | New folder for the workflow |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `workflow` | object | The updated workflow |
### `incidentio_workflows_delete`
Delete a workflow in incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the workflow to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Success message |
### `incidentio_schedules_list`
List all schedules in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `page_size` | number | No | Number of results per page \(default: 25\) |
| `after` | string | No | Pagination cursor to fetch the next page of results |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `schedules` | array | List of schedules |
### `incidentio_schedules_create`
Create a new schedule in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `name` | string | Yes | Name of the schedule |
| `timezone` | string | Yes | Timezone for the schedule \(e.g., America/New_York\) |
| `config` | string | Yes | Schedule configuration as JSON string with rotations. Example: \{"rotations": \[\{"name": "Primary", "users": \[\{"id": "user_id"\}\], "handover_start_at": "2024-01-01T09:00:00Z", "handovers": \[\{"interval": 1, "interval_type": "weekly"\}\]\}\]\} |
| `Example` | string | No | No description |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `schedule` | object | The created schedule |
### `incidentio_schedules_show`
Get details of a specific schedule in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the schedule |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `schedule` | object | The schedule details |
### `incidentio_schedules_update`
Update an existing schedule in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the schedule to update |
| `name` | string | No | New name for the schedule |
| `timezone` | string | No | New timezone for the schedule \(e.g., America/New_York\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `schedule` | object | The updated schedule |
### `incidentio_schedules_delete`
Delete a schedule in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the schedule to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Success message |
### `incidentio_escalations_list`
List all escalation policies in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `page_size` | number | No | Number of results per page \(default: 25\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `escalations` | array | List of escalation policies |
### `incidentio_escalations_create`
Create a new escalation policy in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `idempotency_key` | string | Yes | Unique identifier to prevent duplicate escalation creation. Use a UUID or unique string. |
| `title` | string | Yes | Title of the escalation |
| `escalation_path_id` | string | No | ID of the escalation path to use \(required if user_ids not provided\) |
| `user_ids` | string | No | Comma-separated list of user IDs to notify \(required if escalation_path_id not provided\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `escalation` | object | The created escalation policy |
### `incidentio_escalations_show`
Get details of a specific escalation policy in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the escalation policy |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `escalation` | object | The escalation policy details |
### `incidentio_custom_fields_list`
List all custom fields from incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `custom_fields` | array | List of custom fields |
### `incidentio_custom_fields_create`
Create a new custom field in incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `name` | string | Yes | Name of the custom field |
| `description` | string | Yes | Description of the custom field \(required\) |
| `field_type` | string | Yes | Type of the custom field \(e.g., text, single_select, multi_select, numeric, datetime, link, user, team\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `custom_field` | object | Created custom field |
### `incidentio_custom_fields_show`
Get detailed information about a specific custom field from incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | Custom field ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `custom_field` | object | Custom field details |
### `incidentio_custom_fields_update`
Update an existing custom field in incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | Custom field ID |
| `name` | string | Yes | New name for the custom field \(required\) |
| `description` | string | Yes | New description for the custom field \(required\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `custom_field` | object | Updated custom field |
### `incidentio_custom_fields_delete`
Delete a custom field from incident.io.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | Custom field ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Success message |
### `incidentio_severities_list`
List all severity levels configured in your Incident.io workspace. Returns severity details including id, name, description, and rank.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Incident.io API Key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `severities` | array | List of severity levels |
### `incidentio_incident_statuses_list`
List all incident statuses configured in your Incident.io workspace. Returns status details including id, name, description, and category.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Incident.io API Key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_statuses` | array | List of incident statuses |
### `incidentio_incident_types_list`
List all incident types configured in your Incident.io workspace. Returns type details including id, name, description, and default flag.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Incident.io API Key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_types` | array | List of incident types |
### `incidentio_incident_roles_list`
List all incident roles in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_roles` | array | List of incident roles |
### `incidentio_incident_roles_create`
Create a new incident role in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `name` | string | Yes | Name of the incident role |
| `description` | string | Yes | Description of the incident role |
| `instructions` | string | Yes | Instructions for the incident role |
| `shortform` | string | Yes | Short form abbreviation for the role |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_role` | object | The created incident role |
### `incidentio_incident_roles_show`
Get details of a specific incident role in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the incident role |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_role` | object | The incident role details |
### `incidentio_incident_roles_update`
Update an existing incident role in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the incident role to update |
| `name` | string | Yes | Name of the incident role |
| `description` | string | Yes | Description of the incident role |
| `instructions` | string | Yes | Instructions for the incident role |
| `shortform` | string | Yes | Short form abbreviation for the role |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_role` | object | The updated incident role |
### `incidentio_incident_roles_delete`
Delete an incident role in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the incident role to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Success message |
### `incidentio_incident_timestamps_list`
List all incident timestamp definitions in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_timestamps` | array | List of incident timestamp definitions |
### `incidentio_incident_timestamps_show`
Get details of a specific incident timestamp definition in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the incident timestamp |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_timestamp` | object | The incident timestamp details |
### `incidentio_incident_updates_list`
List all updates for a specific incident in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `incident_id` | string | No | The ID of the incident to get updates for \(optional - if not provided, returns all updates\) |
| `page_size` | number | No | Number of results to return per page |
| `after` | string | No | Cursor for pagination |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `incident_updates` | array | List of incident updates |
### `incidentio_schedule_entries_list`
List all entries for a specific schedule in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `schedule_id` | string | Yes | The ID of the schedule to get entries for |
| `entry_window_start` | string | No | Start date/time to filter entries \(ISO 8601 format\) |
| `entry_window_end` | string | No | End date/time to filter entries \(ISO 8601 format\) |
| `page_size` | number | No | Number of results to return per page |
| `after` | string | No | Cursor for pagination |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `schedule_entries` | array | List of schedule entries |
### `incidentio_schedule_overrides_create`
Create a new schedule override in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `rotation_id` | string | Yes | The ID of the rotation to override |
| `schedule_id` | string | Yes | The ID of the schedule |
| `user_id` | string | No | The ID of the user to assign \(provide one of: user_id, user_email, or user_slack_id\) |
| `user_email` | string | No | The email of the user to assign \(provide one of: user_id, user_email, or user_slack_id\) |
| `user_slack_id` | string | No | The Slack ID of the user to assign \(provide one of: user_id, user_email, or user_slack_id\) |
| `start_at` | string | Yes | When the override starts \(ISO 8601 format\) |
| `end_at` | string | Yes | When the override ends \(ISO 8601 format\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `override` | object | The created schedule override |
### `incidentio_escalation_paths_create`
Create a new escalation path in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `name` | string | Yes | Name of the escalation path |
| `path` | json | Yes | Array of escalation levels with targets and time to acknowledge in seconds. Each level should have: targets \(array of \{id, type, schedule_id?, user_id?, urgency\}\) and time_to_ack_seconds \(number\) |
| `working_hours` | json | No | Optional working hours configuration. Array of \{weekday, start_time, end_time\} |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `escalation_path` | object | The created escalation path |
### `incidentio_escalation_paths_show`
Get details of a specific escalation path in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the escalation path |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `escalation_path` | object | The escalation path details |
### `incidentio_escalation_paths_update`
Update an existing escalation path in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the escalation path to update |
| `name` | string | No | New name for the escalation path |
| `path` | json | No | New escalation path configuration. Array of escalation levels with targets and time_to_ack_seconds |
| `working_hours` | json | No | New working hours configuration. Array of \{weekday, start_time, end_time\} |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `escalation_path` | object | The updated escalation path |
### `incidentio_escalation_paths_delete`
Delete an escalation path in incident.io
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | incident.io API Key |
| `id` | string | Yes | The ID of the escalation path to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Success message |
## Notes
- Category: `tools`
- Type: `incidentio`

View File

@@ -0,0 +1,358 @@
---
title: Intercom
description: Manage contacts, companies, conversations, tickets, and messages in Intercom
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="intercom"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
[Intercom](https://www.intercom.com/) is a leading customer communications platform that enables you to manage and automate your interactions with contacts, companies, conversations, tickets, and messages—all in one place. The Intercom integration in Sim lets your agents programmatically manage customer relationships, support requests, and conversations directly from your automated workflows.
With the Intercom tools, you can:
- **Contacts Management:** Create, get, update, list, search, and delete contacts—automate your CRM processes and keep your customer records up-to-date.
- **Company Management:** Create new companies, retrieve company details, and list all companies related to your users or business clients.
- **Conversation Handling:** Get, list, reply to, and search through conversations—allowing agents to track ongoing support threads, provide answers, and automate follow-up actions.
- **Ticket Management:** Create and retrieve tickets programmatically, helping you automate customer service, support issue tracking, and workflow escalations.
- **Send Messages:** Trigger messages to users or leads for onboarding, support, or marketing, all from within your workflow automation.
By integrating Intercom tools into Sim, you empower your workflows to communicate directly with your users, automate customer support processes, manage leads, and streamline communications at scale. Whether you need to create new contacts, keep customer data synchronized, manage support tickets, or send personalized engagement messages, the Intercom tools provide a comprehensive way to manage customer interactions as part of your intelligent automations.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate Intercom into the workflow. Can create, get, update, list, search, and delete contacts; create, get, and list companies; get, list, reply, and search conversations; create and get tickets; and create messages.
## Tools
### `intercom_create_contact`
Create a new contact in Intercom with email, external_id, or role
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | No | The contact's email address |
| `external_id` | string | No | A unique identifier for the contact provided by the client |
| `phone` | string | No | The contact's phone number |
| `name` | string | No | The contact's name |
| `avatar` | string | No | An avatar image URL for the contact |
| `signed_up_at` | number | No | The time the user signed up as a Unix timestamp |
| `last_seen_at` | number | No | The time the user was last seen as a Unix timestamp |
| `owner_id` | string | No | The id of an admin that has been assigned account ownership of the contact |
| `unsubscribed_from_emails` | boolean | No | Whether the contact is unsubscribed from emails |
| `custom_attributes` | string | No | Custom attributes as JSON object \(e.g., \{"attribute_name": "value"\}\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created contact data |
### `intercom_get_contact`
Get a single contact by ID from Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `contactId` | string | Yes | Contact ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Contact data |
### `intercom_update_contact`
Update an existing contact in Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `contactId` | string | Yes | Contact ID to update |
| `email` | string | No | The contact's email address |
| `phone` | string | No | The contact's phone number |
| `name` | string | No | The contact's name |
| `avatar` | string | No | An avatar image URL for the contact |
| `signed_up_at` | number | No | The time the user signed up as a Unix timestamp |
| `last_seen_at` | number | No | The time the user was last seen as a Unix timestamp |
| `owner_id` | string | No | The id of an admin that has been assigned account ownership of the contact |
| `unsubscribed_from_emails` | boolean | No | Whether the contact is unsubscribed from emails |
| `custom_attributes` | string | No | Custom attributes as JSON object \(e.g., \{"attribute_name": "value"\}\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated contact data |
### `intercom_list_contacts`
List all contacts from Intercom with pagination support
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `per_page` | number | No | Number of results per page \(max: 150\) |
| `starting_after` | string | No | Cursor for pagination - ID to start after |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of contacts |
### `intercom_search_contacts`
Search for contacts in Intercom using a query
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `query` | string | Yes | Search query \(e.g., \{"field":"email","operator":"=","value":"user@example.com"\}\) |
| `per_page` | number | No | Number of results per page \(max: 150\) |
| `starting_after` | string | No | Cursor for pagination |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search results |
### `intercom_delete_contact`
Delete a contact from Intercom by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `contactId` | string | Yes | Contact ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Deletion result |
### `intercom_create_company`
Create or update a company in Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `company_id` | string | Yes | Your unique identifier for the company |
| `name` | string | No | The name of the company |
| `website` | string | No | The company website |
| `plan` | string | No | The company plan name |
| `size` | number | No | The number of employees in the company |
| `industry` | string | No | The industry the company operates in |
| `monthly_spend` | number | No | How much revenue the company generates for your business |
| `custom_attributes` | string | No | Custom attributes as JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created or updated company data |
### `intercom_get_company`
Retrieve a single company by ID from Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `companyId` | string | Yes | Company ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Company data |
### `intercom_list_companies`
List all companies from Intercom with pagination support
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `per_page` | number | No | Number of results per page |
| `page` | number | No | Page number |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of companies |
### `intercom_get_conversation`
Retrieve a single conversation by ID from Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `conversationId` | string | Yes | Conversation ID to retrieve |
| `display_as` | string | No | Set to "plaintext" to retrieve messages in plain text |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Conversation data |
### `intercom_list_conversations`
List all conversations from Intercom with pagination support
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `per_page` | number | No | Number of results per page \(max: 150\) |
| `starting_after` | string | No | Cursor for pagination |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of conversations |
### `intercom_reply_conversation`
Reply to a conversation as an admin in Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `conversationId` | string | Yes | Conversation ID to reply to |
| `message_type` | string | Yes | Message type: "comment" or "note" |
| `body` | string | Yes | The text body of the reply |
| `admin_id` | string | Yes | The ID of the admin authoring the reply |
| `attachment_urls` | string | No | Comma-separated list of image URLs \(max 10\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated conversation with reply |
### `intercom_search_conversations`
Search for conversations in Intercom using a query
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `query` | string | Yes | Search query as JSON object |
| `per_page` | number | No | Number of results per page \(max: 150\) |
| `starting_after` | string | No | Cursor for pagination |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search results |
### `intercom_create_ticket`
Create a new ticket in Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `ticket_type_id` | string | Yes | The ID of the ticket type |
| `contacts` | string | Yes | JSON array of contact identifiers \(e.g., \[\{"id": "contact_id"\}\]\) |
| `ticket_attributes` | string | Yes | JSON object with ticket attributes including _default_title_ and _default_description_ |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created ticket data |
### `intercom_get_ticket`
Retrieve a single ticket by ID from Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `ticketId` | string | Yes | Ticket ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Ticket data |
### `intercom_create_message`
Create and send a new admin-initiated message in Intercom
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `message_type` | string | Yes | Message type: "inapp" or "email" |
| `subject` | string | No | The subject of the message \(for email type\) |
| `body` | string | Yes | The body of the message |
| `from_type` | string | Yes | Sender type: "admin" |
| `from_id` | string | Yes | The ID of the admin sending the message |
| `to_type` | string | Yes | Recipient type: "contact" |
| `to_id` | string | Yes | The ID of the contact receiving the message |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created message data |
## Notes
- Category: `tools`
- Type: `intercom`

View File

@@ -47,6 +47,10 @@ Search for similar content in a knowledge base using vector similarity
| `query` | string | No | Search query text \(optional when using tag filters\) |
| `topK` | number | No | Number of most similar results to return \(1-100\) |
| `tagFilters` | array | No | Array of tag filters with tagName and tagValue properties |
| `items` | object | No | No description |
| `properties` | string | No | No description |
| `tagName` | string | No | No description |
| `tagValue` | string | No | No description |
#### Output
@@ -91,6 +95,11 @@ Create a new document in a knowledge base
| `tag6` | string | No | Tag 6 value for the document |
| `tag7` | string | No | Tag 7 value for the document |
| `documentTagsData` | array | No | Structured tag data with names, types, and values |
| `items` | object | No | No description |
| `properties` | string | No | No description |
| `tagName` | string | No | No description |
| `tagValue` | string | No | No description |
| `tagType` | string | No | No description |
#### Output

View File

@@ -42,14 +42,24 @@ Fetch and filter issues from Linear
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `teamId` | string | Yes | Linear team ID |
| `projectId` | string | Yes | Linear project ID |
| `teamId` | string | No | Linear team ID to filter by |
| `projectId` | string | No | Linear project ID to filter by |
| `assigneeId` | string | No | User ID to filter by assignee |
| `stateId` | string | No | Workflow state ID to filter by status |
| `priority` | number | No | Priority to filter by \(0=No priority, 1=Urgent, 2=High, 3=Normal, 4=Low\) |
| `labelIds` | array | No | Array of label IDs to filter by |
| `createdAfter` | string | No | Filter issues created after this date \(ISO 8601 format\) |
| `updatedAfter` | string | No | Filter issues updated after this date \(ISO 8601 format\) |
| `includeArchived` | boolean | No | Include archived issues \(default: false\) |
| `first` | number | No | Number of issues to return \(default: 50, max: 250\) |
| `after` | string | No | Pagination cursor for next page |
| `orderBy` | string | No | Sort order: "createdAt" or "updatedAt" \(default: "updatedAt"\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `issues` | array | Array of issues from the specified Linear team and project, each containing id, title, description, state, teamId, and projectId |
| `issues` | array | Array of filtered issues from Linear |
### `linear_get_issue`
@@ -76,15 +86,25 @@ Create a new issue in Linear
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `teamId` | string | Yes | Linear team ID |
| `projectId` | string | Yes | Linear project ID |
| `projectId` | string | No | Linear project ID |
| `title` | string | Yes | Issue title |
| `description` | string | No | Issue description |
| `stateId` | string | No | Workflow state ID \(status\) |
| `assigneeId` | string | No | User ID to assign the issue to |
| `priority` | number | No | Priority \(0=No priority, 1=Urgent, 2=High, 3=Normal, 4=Low\) |
| `estimate` | number | No | Estimate in points |
| `labelIds` | array | No | Array of label IDs to set on the issue |
| `cycleId` | string | No | Cycle ID to assign the issue to |
| `parentId` | string | No | Parent issue ID \(for creating sub-issues\) |
| `dueDate` | string | No | Due date in ISO 8601 format \(date only: YYYY-MM-DD\) |
| `subscriberIds` | array | No | Array of user IDs to subscribe to the issue |
| `projectMilestoneId` | string | No | Project milestone ID to associate with the issue |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `issue` | object | The created issue containing id, title, description, state, teamId, and projectId |
| `issue` | object | The created issue with all its properties |
### `linear_update_issue`
@@ -101,7 +121,13 @@ Update an existing issue in Linear
| `assigneeId` | string | No | User ID to assign the issue to |
| `priority` | number | No | Priority \(0=No priority, 1=Urgent, 2=High, 3=Normal, 4=Low\) |
| `estimate` | number | No | Estimate in points |
| `labelIds` | array | No | Array of label IDs to set on the issue |
| `labelIds` | array | No | Array of label IDs to set on the issue \(replaces all existing labels\) |
| `projectId` | string | No | Project ID to move the issue to |
| `cycleId` | string | No | Cycle ID to assign the issue to |
| `parentId` | string | No | Parent issue ID \(for making this a sub-issue\) |
| `dueDate` | string | No | Due date in ISO 8601 format \(date only: YYYY-MM-DD\) |
| `addedLabelIds` | array | No | Array of label IDs to add to the issue \(without replacing existing labels\) |
| `removedLabelIds` | array | No | Array of label IDs to remove from the issue |
#### Output
@@ -240,7 +266,7 @@ Edit a comment in Linear
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `commentId` | string | Yes | Comment ID to update |
| `body` | string | Yes | New comment text \(supports Markdown\) |
| `body` | string | No | New comment text \(supports Markdown\) |
#### Output
@@ -352,9 +378,9 @@ Update an existing project in Linear
| `description` | string | No | New project description |
| `state` | string | No | Project state \(planned, started, completed, canceled\) |
| `leadId` | string | No | User ID of the project lead |
| `startDate` | string | No | Project start date \(ISO format\) |
| `targetDate` | string | No | Project target date \(ISO format\) |
| `priority` | number | No | Project priority \(0-4\) |
| `startDate` | string | No | Project start date \(ISO format: YYYY-MM-DD\) |
| `targetDate` | string | No | Project target date \(ISO format: YYYY-MM-DD\) |
| `priority` | number | No | Project priority \(0=No priority, 1=Urgent, 2=High, 3=Normal, 4=Low\) |
#### Output
@@ -530,7 +556,7 @@ Create a new workflow state (status) in Linear
| --------- | ---- | -------- | ----------- |
| `teamId` | string | Yes | Team ID to create the state in |
| `name` | string | Yes | State name \(e.g., "In Review"\) |
| `color` | string | Yes | State color \(hex format\) |
| `color` | string | No | State color \(hex format\) |
| `type` | string | Yes | State type: "backlog", "unstarted", "started", "completed", or "canceled" |
| `description` | string | No | State description |
| `position` | number | No | Position in the workflow |
@@ -640,7 +666,7 @@ Add an attachment to an issue in Linear
| --------- | ---- | -------- | ----------- |
| `issueId` | string | Yes | Issue ID to attach to |
| `url` | string | Yes | URL of the attachment |
| `title` | string | No | Attachment title |
| `title` | string | Yes | Attachment title |
| `subtitle` | string | No | Attachment subtitle/description |
#### Output
@@ -676,7 +702,7 @@ Update an attachment metadata in Linear
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `attachmentId` | string | Yes | Attachment ID to update |
| `title` | string | No | New attachment title |
| `title` | string | Yes | New attachment title |
| `subtitle` | string | No | New attachment subtitle |
#### Output
@@ -711,7 +737,7 @@ Link two issues together in Linear (blocks, relates to, duplicates)
| --------- | ---- | -------- | ----------- |
| `issueId` | string | Yes | Source issue ID |
| `relatedIssueId` | string | Yes | Target issue ID to link to |
| `type` | string | Yes | Relation type: "blocks", "blocked", "duplicate", "related" |
| `type` | string | Yes | Relation type: "blocks", "duplicate", or "related". Note: When creating "blocks" from A to B, the inverse relation \(B blocked by A\) is automatically created. |
#### Output
@@ -1220,6 +1246,7 @@ Create a new project label in Linear
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `projectId` | string | Yes | The project for this label |
| `name` | string | Yes | Project label name |
| `color` | string | No | Label color \(hex code\) |
| `description` | string | No | Label description |
@@ -1397,6 +1424,7 @@ Create a new project status in Linear
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `projectId` | string | Yes | The project to create the status for |
| `name` | string | Yes | Project status name |
| `color` | string | Yes | Status color \(hex code\) |
| `description` | string | No | Status description |

View File

@@ -0,0 +1,88 @@
---
title: LinkedIn
description: Share posts and manage your LinkedIn presence
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="linkedin"
color="#0072B1"
/>
{/* MANUAL-CONTENT-START:intro */}
[LinkedIn](https://www.linkedin.com) is the worlds largest professional networking platform, empowering users to build their careers, connect with their network, and share professional content. LinkedIn is widely used by professionals across industries for personal branding, recruiting, job search, and business development.
With LinkedIn, you can easily share posts to your personal feed to engage with your network, and access information about your profile to highlight your professional achievements. Automated integration with Sim allows you to leverage LinkedIn functionality programmatically—enabling agents and workflows to post updates, report on your professional presence, and keep your feed active without manual effort.
Key LinkedIn features available through this integration include:
- **Share Posts:** Automatically publish professional updates, articles, or announcements to your LinkedIn personal feed.
- **Profile Information:** Retrieve detailed information about your LinkedIn profile to monitor or use in downstream tasks within your workflows.
These capabilities make it easy to keep your LinkedIn network engaged and to extend your professional reach efficiently as part of your AI or workflow automation strategy.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate LinkedIn into workflows. Share posts to your personal feed and access your LinkedIn profile information.
## Tools
### `linkedin_share_post`
Share a post to your personal LinkedIn feed
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text content of your LinkedIn post |
| `visibility` | string | No | Who can see this post: "PUBLIC" or "CONNECTIONS" \(default: "PUBLIC"\) |
| `request` | string | No | No description |
| `output` | string | No | No description |
| `output` | string | No | No description |
| `specificContent` | string | No | No description |
| `shareCommentary` | string | No | No description |
| `visibility` | string | No | No description |
| `headers` | string | No | No description |
| `output` | string | No | No description |
| `output` | string | No | No description |
| `output` | string | No | No description |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `postId` | string | Created post ID |
| `profile` | json | LinkedIn profile information |
| `error` | string | Error message if operation failed |
### `linkedin_get_profile`
Retrieve your LinkedIn profile information
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `postId` | string | Created post ID |
| `profile` | json | LinkedIn profile information |
| `error` | string | Error message if operation failed |
## Notes
- Category: `tools`
- Type: `linkedin`

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,221 @@
---
title: Mailgun
description: Send emails and manage mailing lists with Mailgun
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="mailgun"
color="#F06248"
/>
{/* MANUAL-CONTENT-START:intro */}
[Mailgun](https://www.mailgun.com) is a powerful email delivery service designed for developers and businesses to send, receive, and track emails effortlessly. Mailgun enables you to leverage robust APIs for reliable transactional and marketing email, flexible mailing list management, and advanced event tracking.
With Mailgun's comprehensive feature set, you can automate key email operations and closely monitor deliverability and recipient engagement. This makes it an ideal solution for workflow automation where communications, notifications, and campaign mails are core parts of your processes.
Key features of Mailgun include:
- **Transactional Email Sending:** Deliver high-volume emails such as account notifications, receipts, alerts, and password resets.
- **Rich Email Content:** Send both plain text and HTML emails, and use tags for categorizing and tracking your messages.
- **Mailing List Management:** Create, update, and manage mailing lists and members to send grouped communications efficiently.
- **Domain Information:** Retrieve details about your sending domains to monitor configuration and health.
- **Event Tracking:** Analyze email deliverability and engagement with detailed event data on sent messages.
- **Message Retrieval:** Access stored messages for compliance, analysis, or troubleshooting needs.
By integrating Mailgun into Sim, your agents are empowered to programmatically send emails, manage email lists, access domain information, and monitor real-time events as part of automated workflows. This allows for intelligent, data-driven engagement with your users directly from your AI-powered processes.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate Mailgun into your workflow. Send transactional emails, manage mailing lists and members, view domain information, and track email events. Supports text and HTML emails, tags for tracking, and comprehensive list management.
## Tools
### `mailgun_send_message`
Send an email using Mailgun API
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
| `domain` | string | Yes | Mailgun domain \(e.g., mg.example.com\) |
| `from` | string | Yes | Sender email address |
| `to` | string | Yes | Recipient email address \(comma-separated for multiple\) |
| `subject` | string | Yes | Email subject |
| `text` | string | No | Plain text body of the email |
| `html` | string | No | HTML body of the email |
| `cc` | string | No | CC email address \(comma-separated for multiple\) |
| `bcc` | string | No | BCC email address \(comma-separated for multiple\) |
| `tags` | string | No | Tags for the email \(comma-separated\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the message was sent successfully |
| `id` | string | Message ID |
| `message` | string | Response message from Mailgun |
### `mailgun_get_message`
Retrieve a stored message by its key
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
| `domain` | string | Yes | Mailgun domain |
| `messageKey` | string | Yes | Message storage key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the request was successful |
| `recipients` | string | Message recipients |
| `from` | string | Sender email |
| `subject` | string | Message subject |
| `bodyPlain` | string | Plain text body |
| `strippedText` | string | Stripped text |
| `strippedSignature` | string | Stripped signature |
| `bodyHtml` | string | HTML body |
| `strippedHtml` | string | Stripped HTML |
| `attachmentCount` | number | Number of attachments |
| `timestamp` | number | Message timestamp |
| `messageHeaders` | json | Message headers |
| `contentIdMap` | json | Content ID map |
### `mailgun_list_messages`
List events (logs) for messages sent through Mailgun
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
| `domain` | string | Yes | Mailgun domain |
| `event` | string | No | Filter by event type \(accepted, delivered, failed, opened, clicked, etc.\) |
| `limit` | number | No | Maximum number of events to return \(default: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the request was successful |
| `items` | json | Array of event items |
| `paging` | json | Paging information |
### `mailgun_create_mailing_list`
Create a new mailing list
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
| `address` | string | Yes | Mailing list address \(e.g., list@example.com\) |
| `name` | string | No | Mailing list name |
| `description` | string | No | Mailing list description |
| `accessLevel` | string | No | Access level: readonly, members, or everyone |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the list was created successfully |
| `message` | string | Response message |
| `list` | json | Created mailing list details |
### `mailgun_get_mailing_list`
Get details of a mailing list
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
| `address` | string | Yes | Mailing list address |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the request was successful |
| `list` | json | Mailing list details |
### `mailgun_add_list_member`
Add a member to a mailing list
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
| `listAddress` | string | Yes | Mailing list address |
| `address` | string | Yes | Member email address |
| `name` | string | No | Member name |
| `vars` | string | No | JSON string of custom variables |
| `subscribed` | boolean | No | Whether the member is subscribed |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the member was added successfully |
| `message` | string | Response message |
| `member` | json | Added member details |
### `mailgun_list_domains`
List all domains for your Mailgun account
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the request was successful |
| `totalCount` | number | Total number of domains |
| `items` | json | Array of domain objects |
### `mailgun_get_domain`
Get details of a specific domain
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Mailgun API key |
| `domain` | string | Yes | Domain name |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the request was successful |
| `domain` | json | Domain details |
## Notes
- Category: `tools`
- Type: `mailgun`

View File

@@ -26,9 +26,11 @@ Add a new memory to the database or append to existing memory with the same ID.
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Identifier for the memory. If a memory with this ID already exists, the new data will be appended to it. |
| `conversationId` | string | No | Conversation identifier \(e.g., user-123, session-abc\). If a memory with this conversationId already exists for this block, the new message will be appended to it. |
| `id` | string | No | Legacy parameter for conversation identifier. Use conversationId instead. Provided for backwards compatibility. |
| `role` | string | Yes | Role for agent memory \(user, assistant, or system\) |
| `content` | string | Yes | Content for agent memory |
| `blockId` | string | No | Optional block ID. If not provided, uses the current block ID from execution context, or defaults to "default". |
#### Output
@@ -40,20 +42,23 @@ Add a new memory to the database or append to existing memory with the same ID.
### `memory_get`
Retrieve a specific memory by its ID
Retrieve memory by conversationId, blockId, blockName, or a combination. Returns all matching memories.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Identifier for the memory to retrieve |
| `conversationId` | string | No | Conversation identifier \(e.g., user-123, session-abc\). If provided alone, returns all memories for this conversation across all blocks. |
| `id` | string | No | Legacy parameter for conversation identifier. Use conversationId instead. Provided for backwards compatibility. |
| `blockId` | string | No | Block identifier. If provided alone, returns all memories for this block across all conversations. If provided with conversationId, returns memories for that specific conversation in this block. |
| `blockName` | string | No | Block name. Alternative to blockId. If provided alone, returns all memories for blocks with this name. If provided with conversationId, returns memories for that conversation in blocks with this name. |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the memory was retrieved successfully |
| `memories` | array | Array of memory data for the requested ID |
| `memories` | array | Array of memory objects with conversationId, blockId, blockName, and data fields |
| `message` | string | Success or error message |
| `error` | string | Error message if operation failed |
@@ -71,19 +76,22 @@ Retrieve all memories from the database
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether all memories were retrieved successfully |
| `memories` | array | Array of all memory objects with keys, types, and data |
| `memories` | array | Array of all memory objects with key, conversationId, blockId, blockName, and data fields |
| `message` | string | Success or error message |
| `error` | string | Error message if operation failed |
### `memory_delete`
Delete a specific memory by its ID
Delete memories by conversationId, blockId, blockName, or a combination. Supports bulk deletion.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | Yes | Identifier for the memory to delete |
| `conversationId` | string | No | Conversation identifier \(e.g., user-123, session-abc\). If provided alone, deletes all memories for this conversation across all blocks. |
| `id` | string | No | Legacy parameter for conversation identifier. Use conversationId instead. Provided for backwards compatibility. |
| `blockId` | string | No | Block identifier. If provided alone, deletes all memories for this block across all conversations. If provided with conversationId, deletes memories for that specific conversation in this block. |
| `blockName` | string | No | Block name. Alternative to blockId. If provided alone, deletes all memories for blocks with this name. If provided with conversationId, deletes memories for that conversation in blocks with this name. |
#### Output

View File

@@ -2,9 +2,12 @@
"pages": [
"index",
"airtable",
"apify",
"apollo",
"arxiv",
"asana",
"browser_use",
"calendly",
"clay",
"confluence",
"discord",
@@ -25,11 +28,16 @@
"huggingface",
"hunter",
"image_generator",
"incidentio",
"intercom",
"jina",
"jira",
"knowledge",
"linear",
"linkedin",
"linkup",
"mailchimp",
"mailgun",
"mem0",
"memory",
"microsoft_excel",
@@ -38,6 +46,7 @@
"mistral_parse",
"mongodb",
"mysql",
"neo4j",
"notion",
"onedrive",
"openai",
@@ -47,26 +56,35 @@
"pinecone",
"pipedrive",
"postgresql",
"posthog",
"pylon",
"qdrant",
"reddit",
"resend",
"s3",
"salesforce",
"search",
"sendgrid",
"sentry",
"serper",
"sharepoint",
"slack",
"smtp",
"stagehand",
"stagehand_agent",
"stripe",
"stt",
"supabase",
"tavily",
"telegram",
"thinking",
"translate",
"trello",
"tts",
"twilio_sms",
"twilio_voice",
"typeform",
"video_generator",
"vision",
"wealthbox",
"webflow",
@@ -74,6 +92,7 @@
"wikipedia",
"x",
"youtube",
"zendesk",
"zep"
]
}

View File

@@ -27,7 +27,7 @@ In Sim, the Microsoft Excel integration provides seamless access to spreadsheet
## Usage Instructions
Integrate Microsoft Excel into the workflow. Can read, write, update, and add to table.
Integrate Microsoft Excel into the workflow. Can read, write, update, add to table, and create new worksheets.
@@ -94,6 +94,23 @@ Add new rows to a Microsoft Excel table
| `values` | array | Array of rows that were added to the table |
| `metadata` | object | Spreadsheet metadata |
### `microsoft_excel_worksheet_add`
Create a new worksheet (sheet) in a Microsoft Excel workbook
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `spreadsheetId` | string | Yes | The ID of the Excel workbook to add the worksheet to |
| `worksheetName` | string | Yes | The name of the new worksheet. Must be unique within the workbook and cannot exceed 31 characters |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `worksheet` | object | Details of the newly created worksheet |
## Notes

View File

@@ -0,0 +1,176 @@
---
title: Neo4j
description: Connect to Neo4j graph database
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="neo4j"
color="#FFFFFF"
/>
## Usage Instructions
Integrate Neo4j graph database into the workflow. Can query, create, merge, update, and delete nodes and relationships.
## Tools
### `neo4j_query`
Execute MATCH queries to read nodes and relationships from Neo4j graph database. For best performance and to prevent large result sets, include LIMIT in your query (e.g.,
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j server hostname or IP address |
| `port` | number | Yes | Neo4j server port \(default: 7687 for Bolt protocol\) |
| `database` | string | Yes | Database name to connect to |
| `username` | string | Yes | Neo4j username |
| `password` | string | Yes | Neo4j password |
| `encryption` | string | No | Connection encryption mode \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher query to execute \(typically MATCH statements\) |
| `parameters` | object | No | Parameters for the Cypher query as a JSON object. Use for any dynamic values including LIMIT \(e.g., query: "MATCH \(n\) RETURN n LIMIT $limit", parameters: \{limit: 100\}\). |
| `parameters` | string | No | No description |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Operation status message |
| `records` | array | Array of records returned from the query |
| `recordCount` | number | Number of records returned |
| `summary` | json | Query execution summary with timing and counters |
### `neo4j_create`
Execute CREATE statements to add new nodes and relationships to Neo4j graph database
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j server hostname or IP address |
| `port` | number | Yes | Neo4j server port \(default: 7687 for Bolt protocol\) |
| `database` | string | Yes | Database name to connect to |
| `username` | string | Yes | Neo4j username |
| `password` | string | Yes | Neo4j password |
| `encryption` | string | No | Connection encryption mode \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher CREATE statement to execute |
| `parameters` | object | No | Parameters for the Cypher query as a JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Operation status message |
| `summary` | json | Creation summary with counters for nodes and relationships created |
### `neo4j_merge`
Execute MERGE statements to find or create nodes and relationships in Neo4j (upsert operation)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j server hostname or IP address |
| `port` | number | Yes | Neo4j server port \(default: 7687 for Bolt protocol\) |
| `database` | string | Yes | Database name to connect to |
| `username` | string | Yes | Neo4j username |
| `password` | string | Yes | Neo4j password |
| `encryption` | string | No | Connection encryption mode \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher MERGE statement to execute |
| `parameters` | object | No | Parameters for the Cypher query as a JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Operation status message |
| `summary` | json | Merge summary with counters for nodes/relationships created or matched |
### `neo4j_update`
Execute SET statements to update properties of existing nodes and relationships in Neo4j
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j server hostname or IP address |
| `port` | number | Yes | Neo4j server port \(default: 7687 for Bolt protocol\) |
| `database` | string | Yes | Database name to connect to |
| `username` | string | Yes | Neo4j username |
| `password` | string | Yes | Neo4j password |
| `encryption` | string | No | Connection encryption mode \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher query with MATCH and SET statements to update properties |
| `parameters` | object | No | Parameters for the Cypher query as a JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Operation status message |
| `summary` | json | Update summary with counters for properties set |
### `neo4j_delete`
Execute DELETE or DETACH DELETE statements to remove nodes and relationships from Neo4j
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j server hostname or IP address |
| `port` | number | Yes | Neo4j server port \(default: 7687 for Bolt protocol\) |
| `database` | string | Yes | Database name to connect to |
| `username` | string | Yes | Neo4j username |
| `password` | string | Yes | Neo4j password |
| `encryption` | string | No | Connection encryption mode \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher query with MATCH and DELETE/DETACH DELETE statements |
| `parameters` | object | No | Parameters for the Cypher query as a JSON object |
| `detach` | boolean | No | Whether to use DETACH DELETE to remove relationships before deleting nodes |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Operation status message |
| `summary` | json | Delete summary with counters for nodes and relationships deleted |
### `neo4j_execute`
Execute arbitrary Cypher queries on Neo4j graph database for complex operations
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `host` | string | Yes | Neo4j server hostname or IP address |
| `port` | number | Yes | Neo4j server port \(default: 7687 for Bolt protocol\) |
| `database` | string | Yes | Database name to connect to |
| `username` | string | Yes | Neo4j username |
| `password` | string | Yes | Neo4j password |
| `encryption` | string | No | Connection encryption mode \(enabled, disabled\) |
| `cypherQuery` | string | Yes | Cypher query to execute \(any valid Cypher statement\) |
| `parameters` | object | No | Parameters for the Cypher query as a JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Operation status message |
| `records` | array | Array of records returned from the query |
| `recordCount` | number | Number of records returned |
| `summary` | json | Execution summary with timing and counters |
## Notes
- Category: `tools`
- Type: `neo4j`

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,801 @@
---
title: Pylon
description: Manage customer support issues, accounts, contacts, users, teams, and tags in Pylon
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="pylon"
color="#E8F4FA"
/>
{/* MANUAL-CONTENT-START:intro */}
[Pylon](https://usepylon.com/) is an advanced customer support and success platform designed to help you manage every aspect of your customer relationships—from support issues to accounts, contacts, users, teams, and beyond. Pylon empowers support and success teams to operate efficiently and programmatically with a rich API and comprehensive toolset.
With Pylon in Sim, you can:
- **Manage Support Issues:**
- List, create, get, update, and delete support issues for efficient case tracking.
- Search and snooze issues to help agents stay focused and organized.
- Handle issue followers and external issues for seamless collaboration with internal and external stakeholders.
- **Full Account Management:**
- List, create, get, update, and delete customer accounts.
- Bulk update accounts programmatically.
- Search accounts to quickly find customer information relevant for support or outreach.
- **Contact Management:**
- List, create, get, update, delete, and search contacts—manage everyone connected to your accounts.
- **User and Team Operations:**
- List, get, update, and search users in your Pylon workspace.
- List, create, get, and update teams to structure your support organization and workflows.
- **Tagging and Organization:**
- List, get, create, update, and delete tags for categorizing issues, accounts, or contacts.
- **Message Handling:**
- Redact sensitive message content directly from your workflows for privacy and compliance.
By integrating Pylon tools into Sim, your agents can automate every aspect of support operations:
- Automatically open, update, or triage new issues when customer events occur.
- Maintain synchronized account and contact data across your tech stack.
- Route conversations, handle escalations, and organize your support data using tags and teams.
- Ensure sensitive data is properly managed by redacting messages as needed.
Pylon's endpoints provide granular control for full-lifecycle management of customer issues and relationships. Whether scaling a support desk, powering proactive customer success, or integrating with other systems, Pylon in Sim enables best-in-class CRM automation—securely, flexibly, and at scale.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate Pylon into the workflow. Manage issues (list, create, get, update, delete, search, snooze, followers, external issues), accounts (list, create, get, update, delete, bulk update, search), contacts (list, create, get, update, delete, search), users (list, get, update, search), teams (list, get, create, update), tags (list, get, create, update, delete), and messages (redact).
## Tools
### `pylon_list_issues`
Retrieve a list of issues within a specified time range
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `startTime` | string | Yes | Start time in RFC3339 format \(e.g., 2024-01-01T00:00:00Z\) |
| `endTime` | string | Yes | End time in RFC3339 format \(e.g., 2024-01-31T23:59:59Z\) |
| `cursor` | string | No | Pagination cursor for next page of results |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of issues |
### `pylon_create_issue`
Create a new issue with specified properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `title` | string | Yes | Issue title |
| `bodyHtml` | string | Yes | Issue body in HTML format |
| `accountId` | string | No | Account ID to associate with issue |
| `assigneeId` | string | No | User ID to assign issue to |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created issue data |
### `pylon_get_issue`
Fetch a specific issue by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | The ID of the issue to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Issue data |
### `pylon_update_issue`
Update an existing issue
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | The ID of the issue to update |
| `state` | string | No | Issue state |
| `assigneeId` | string | No | User ID to assign issue to |
| `teamId` | string | No | Team ID to assign issue to |
| `tags` | string | No | Comma-separated tag IDs |
| `customFields` | string | No | Custom fields as JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated issue data |
### `pylon_delete_issue`
Remove an issue by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | The ID of the issue to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Deletion result |
### `pylon_search_issues`
Query issues using filters
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `filter` | string | Yes | Filter criteria as JSON string |
| `cursor` | string | No | Pagination cursor for next page of results |
| `limit` | number | No | Maximum number of results to return |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search results |
### `pylon_snooze_issue`
Postpone issue visibility until specified time
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | The ID of the issue to snooze |
| `snoozeUntil` | string | Yes | RFC3339 timestamp when issue should reappear \(e.g., 2024-01-01T00:00:00Z\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Snoozed issue data |
### `pylon_list_issue_followers`
Get list of followers for a specific issue
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | The ID of the issue |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Followers list |
### `pylon_manage_issue_followers`
Add or remove followers from an issue
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | The ID of the issue |
| `userIds` | string | No | Comma-separated user IDs to add/remove |
| `contactIds` | string | No | Comma-separated contact IDs to add/remove |
| `operation` | string | No | Operation to perform: "add" or "remove" \(default: "add"\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated followers list |
### `pylon_link_external_issue`
Link an issue to an external system issue
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | The ID of the Pylon issue |
| `externalIssueId` | string | Yes | The ID of the external issue |
| `source` | string | Yes | The source system \(e.g., "jira", "linear", "github"\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Linked external issue data |
### `pylon_list_accounts`
Retrieve a paginated list of accounts
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `limit` | string | No | Number of accounts to return \(1-1000, default 100\) |
| `cursor` | string | No | Pagination cursor for next page of results |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of accounts |
### `pylon_create_account`
Create a new account with specified properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `name` | string | Yes | Account name |
| `domains` | string | No | Comma-separated list of domains |
| `primaryDomain` | string | No | Primary domain for the account |
| `customFields` | string | No | Custom fields as JSON object |
| `tags` | string | No | Comma-separated tag IDs |
| `channels` | string | No | Comma-separated channel IDs |
| `externalIds` | string | No | Comma-separated external IDs |
| `ownerId` | string | No | Owner user ID |
| `logoUrl` | string | No | URL to account logo |
| `subaccountIds` | string | No | Comma-separated subaccount IDs |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created account data |
### `pylon_get_account`
Retrieve a single account by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `accountId` | string | Yes | Account ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Account data |
### `pylon_update_account`
Update an existing account with new properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `accountId` | string | Yes | Account ID to update |
| `name` | string | No | Account name |
| `domains` | string | No | Comma-separated list of domains |
| `primaryDomain` | string | No | Primary domain for the account |
| `customFields` | string | No | Custom fields as JSON object |
| `tags` | string | No | Comma-separated tag IDs |
| `channels` | string | No | Comma-separated channel IDs |
| `externalIds` | string | No | Comma-separated external IDs |
| `ownerId` | string | No | Owner user ID |
| `logoUrl` | string | No | URL to account logo |
| `subaccountIds` | string | No | Comma-separated subaccount IDs |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated account data |
### `pylon_delete_account`
Remove an account by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `accountId` | string | Yes | Account ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Deletion confirmation |
### `pylon_bulk_update_accounts`
Update multiple accounts at once
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `accountIds` | string | Yes | Comma-separated account IDs to update |
| `customFields` | string | No | Custom fields as JSON object |
| `tags` | string | No | Comma-separated tag IDs |
| `ownerId` | string | No | Owner user ID |
| `tagsApplyMode` | string | No | Tag application mode: append_only, remove_only, or replace |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Bulk updated accounts data |
### `pylon_search_accounts`
Search accounts with custom filters
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `filter` | string | Yes | Filter as JSON string with field/operator/value structure |
| `limit` | string | No | Number of accounts to return \(1-1000, default 100\) |
| `cursor` | string | No | Pagination cursor for next page of results |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search results |
### `pylon_list_contacts`
Retrieve a list of contacts
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `cursor` | string | No | Pagination cursor for next page of results |
| `limit` | string | No | Maximum number of contacts to return |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of contacts |
### `pylon_create_contact`
Create a new contact with specified properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `name` | string | Yes | Contact name |
| `email` | string | No | Contact email address |
| `accountId` | string | No | Account ID to associate with contact |
| `accountExternalId` | string | No | External account ID to associate with contact |
| `avatarUrl` | string | No | URL for contact avatar image |
| `customFields` | string | No | Custom fields as JSON object |
| `portalRole` | string | No | Portal role for the contact |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created contact data |
### `pylon_get_contact`
Retrieve a specific contact by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `contactId` | string | Yes | Contact ID to retrieve |
| `cursor` | string | No | Pagination cursor for next page of results |
| `limit` | string | No | Maximum number of items to return |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Contact data |
### `pylon_update_contact`
Update an existing contact with specified properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `contactId` | string | Yes | Contact ID to update |
| `name` | string | No | Contact name |
| `email` | string | No | Contact email address |
| `accountId` | string | No | Account ID to associate with contact |
| `accountExternalId` | string | No | External account ID to associate with contact |
| `avatarUrl` | string | No | URL for contact avatar image |
| `customFields` | string | No | Custom fields as JSON object |
| `portalRole` | string | No | Portal role for the contact |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated contact data |
### `pylon_delete_contact`
Delete a specific contact by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `contactId` | string | Yes | Contact ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Delete operation result |
### `pylon_search_contacts`
Search for contacts using a filter
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `filter` | string | Yes | Filter as JSON object |
| `limit` | string | No | Maximum number of contacts to return |
| `cursor` | string | No | Pagination cursor for next page of results |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search results |
### `pylon_list_users`
Retrieve a list of users
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of users |
### `pylon_get_user`
Retrieve a specific user by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `userId` | string | Yes | User ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | User data |
### `pylon_update_user`
Update an existing user with specified properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `userId` | string | Yes | User ID to update |
| `roleId` | string | No | Role ID to assign to user |
| `status` | string | No | User status |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated user data |
### `pylon_search_users`
Search for users using a filter with email field
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `filter` | string | Yes | Filter as JSON object with email field |
| `cursor` | string | No | Pagination cursor for next page of results |
| `limit` | string | No | Maximum number of users to return |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search results |
### `pylon_list_teams`
Retrieve a list of teams
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of teams |
### `pylon_get_team`
Retrieve a specific team by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `teamId` | string | Yes | Team ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Team data |
### `pylon_create_team`
Create a new team with specified properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `name` | string | No | Team name |
| `userIds` | string | No | Comma-separated user IDs to add as team members |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created team data |
### `pylon_update_team`
Update an existing team with specified properties (userIds replaces entire membership)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `teamId` | string | Yes | Team ID to update |
| `name` | string | No | Team name |
| `userIds` | string | No | Comma-separated user IDs \(replaces entire team membership\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated team data |
### `pylon_list_tags`
Retrieve a list of tags
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | List of tags |
### `pylon_get_tag`
Retrieve a specific tag by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `tagId` | string | Yes | Tag ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Tag data |
### `pylon_create_tag`
Create a new tag with specified properties (objectType: account/issue/contact)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `objectType` | string | Yes | Object type for tag \(account, issue, or contact\) |
| `value` | string | Yes | Tag value/name |
| `hexColor` | string | No | Hex color code for tag \(e.g., #FF5733\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created tag data |
### `pylon_update_tag`
Update an existing tag with specified properties
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `tagId` | string | Yes | Tag ID to update |
| `hexColor` | string | No | Hex color code for tag \(e.g., #FF5733\) |
| `value` | string | No | Tag value/name |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated tag data |
### `pylon_delete_tag`
Delete a specific tag by ID
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `tagId` | string | Yes | Tag ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Delete operation result |
### `pylon_redact_message`
Redact a specific message within an issue
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiToken` | string | Yes | Pylon API token |
| `issueId` | string | Yes | Issue ID containing the message |
| `messageId` | string | Yes | Message ID to redact |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Redact operation result |
## Notes
- Category: `tools`
- Type: `pylon`

View File

@@ -0,0 +1,59 @@
---
title: Search
description: Search the web ($0.01 per search)
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="search"
color="#3B82F6"
/>
{/* MANUAL-CONTENT-START:intro */}
The **Search** tool lets you search the web from within your Sim workflows using state-of-the-art search engines. Use it to pull in the latest information, news, facts, and web content directly into your agents, automations, or conversations.
- **General web search**: Find up-to-date information from the internet to supplement your workflows.
- **Automated queries**: Let agents or program logic submit search queries and handle the results automatically.
- **Structured results**: Returns the most relevant web results, including title, link, snippet, and date for each result.
> **Note:** Each search costs **$0.01** per query.
This tool is ideal for any workflow where your agents need access to live web data or must reference current events, perform research, or fetch supplemental content.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Search the web using the Search tool. Each search costs $0.01 per query.
## Tools
### `search_tool`
Search the web. Returns the most relevant web results, including title, link, snippet, and date for each result.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `query` | string | Yes | The search query |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `results` | json | Search results |
| `query` | string | The search query |
| `totalResults` | number | Total number of results |
| `source` | string | Search source \(exa\) |
| `cost` | json | Cost information \($0.01\) |
## Notes
- Category: `tools`
- Type: `search`

View File

@@ -0,0 +1,396 @@
---
title: SendGrid
description: Send emails and manage contacts, lists, and templates with SendGrid
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="sendgrid"
color="#1A82E2"
/>
{/* MANUAL-CONTENT-START:intro */}
[SendGrid](https://sendgrid.com) is a leading cloud-based email delivery platform trusted by developers and businesses to send reliable transactional and marketing emails at scale. With its robust APIs and powerful tools, SendGrid enables you to manage all aspects of your email communication, from sending notifications and receipts to managing complex marketing campaigns.
SendGrid empowers users with a full suite of email operations, allowing you to automate critical email workflows and closely manage contact lists, templates, and recipient engagement. Its seamless integration with Sim enables agents and workflows to deliver targeted messages, maintain dynamic contact and recipient lists, trigger personalized emails through templates, and track the results in real time.
Key features of SendGrid include:
- **Transactional Email:** Send automated and high-volume transactional emails (like notifications, receipts, and password resets).
- **Dynamic Templates:** Use rich HTML or text templates with dynamic data for highly personalized communication at scale.
- **Contact Management:** Add and update marketing contacts, manage recipient lists, and target segments for campaigns.
- **Attachments Support:** Include one or more file attachments in your emails.
- **Comprehensive API Coverage:** Programmatically manage emails, contacts, lists, templates, suppression groups, and more.
By connecting SendGrid with Sim, your agents can:
- Send both simple and advanced (templated or multi-recipient) emails as part of any workflow.
- Manage and segment contacts and lists automatically.
- Leverage templates for consistency and dynamic personalization.
- Track and respond to email engagement within your automated processes.
This integration allows you to automate all critical communication flows, ensure messages reach the right audience, and maintain control over your organizations email strategy, directly from Sim workflows.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate SendGrid into your workflow. Send transactional emails, manage marketing contacts and lists, and work with email templates. Supports dynamic templates, attachments, and comprehensive contact management.
## Tools
### `sendgrid_send_mail`
Send an email using SendGrid API
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `from` | string | Yes | Sender email address \(must be verified in SendGrid\) |
| `fromName` | string | No | Sender name |
| `to` | string | Yes | Recipient email address |
| `toName` | string | No | Recipient name |
| `subject` | string | No | Email subject \(required unless using a template with pre-defined subject\) |
| `content` | string | No | Email body content \(required unless using a template with pre-defined content\) |
| `contentType` | string | No | Content type \(text/plain or text/html\) |
| `cc` | string | No | CC email address |
| `bcc` | string | No | BCC email address |
| `replyTo` | string | No | Reply-to email address |
| `replyToName` | string | No | Reply-to name |
| `attachments` | file[] | No | Files to attach to the email |
| `templateId` | string | No | SendGrid template ID to use |
| `dynamicTemplateData` | json | No | JSON object of dynamic template data |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the email was sent successfully |
| `messageId` | string | SendGrid message ID |
| `to` | string | Recipient email address |
| `subject` | string | Email subject |
### `sendgrid_add_contact`
Add a new contact to SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `email` | string | Yes | Contact email address |
| `firstName` | string | No | Contact first name |
| `lastName` | string | No | Contact last name |
| `customFields` | json | No | JSON object of custom field key-value pairs \(use field IDs like e1_T, e2_N, e3_D, not field names\) |
| `listIds` | string | No | Comma-separated list IDs to add the contact to |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `jobId` | string | Job ID for tracking the async contact creation |
| `email` | string | Contact email address |
| `firstName` | string | Contact first name |
| `lastName` | string | Contact last name |
| `message` | string | Status message |
### `sendgrid_get_contact`
Get a specific contact by ID from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `contactId` | string | Yes | Contact ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | Contact ID |
| `email` | string | Contact email address |
| `firstName` | string | Contact first name |
| `lastName` | string | Contact last name |
| `createdAt` | string | Creation timestamp |
| `updatedAt` | string | Last update timestamp |
| `listIds` | json | Array of list IDs the contact belongs to |
| `customFields` | json | Custom field values |
### `sendgrid_search_contacts`
Search for contacts in SendGrid using a query
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `query` | string | Yes | Search query \(e.g., \"email LIKE '%example.com%' AND CONTAINS\(list_ids, 'list-id'\)\"\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `contacts` | json | Array of matching contacts |
| `contactCount` | number | Total number of contacts found |
### `sendgrid_delete_contacts`
Delete one or more contacts from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `contactIds` | string | Yes | Comma-separated contact IDs to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `jobId` | string | Job ID for the deletion request |
### `sendgrid_create_list`
Create a new contact list in SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `name` | string | Yes | List name |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | List ID |
| `name` | string | List name |
| `contactCount` | number | Number of contacts in the list |
### `sendgrid_get_list`
Get a specific list by ID from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `listId` | string | Yes | List ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | List ID |
| `name` | string | List name |
| `contactCount` | number | Number of contacts in the list |
### `sendgrid_list_all_lists`
Get all contact lists from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `pageSize` | number | No | Number of lists to return per page \(default: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `lists` | json | Array of lists |
### `sendgrid_delete_list`
Delete a contact list from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `listId` | string | Yes | List ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | string | Success message |
### `sendgrid_add_contacts_to_list`
Add or update contacts and assign them to a list in SendGrid (uses PUT /v3/marketing/contacts)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `listId` | string | Yes | List ID to add contacts to |
| `contacts` | json | Yes | JSON array of contact objects. Each contact must have at least: email \(or phone_number_id/external_id/anonymous_id\). Example: \[\{"email": "user@example.com", "first_name": "John"\}\] |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `jobId` | string | Job ID for tracking the async operation |
| `message` | string | Status message |
### `sendgrid_remove_contacts_from_list`
Remove contacts from a specific list in SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `listId` | string | Yes | List ID |
| `contactIds` | string | Yes | Comma-separated contact IDs to remove from the list |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `jobId` | string | Job ID for the request |
### `sendgrid_create_template`
Create a new email template in SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `name` | string | Yes | Template name |
| `generation` | string | No | Template generation type \(legacy or dynamic, default: dynamic\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | Template ID |
| `name` | string | Template name |
| `generation` | string | Template generation |
| `updatedAt` | string | Last update timestamp |
| `versions` | json | Array of template versions |
### `sendgrid_get_template`
Get a specific template by ID from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `templateId` | string | Yes | Template ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | Template ID |
| `name` | string | Template name |
| `generation` | string | Template generation |
| `updatedAt` | string | Last update timestamp |
| `versions` | json | Array of template versions |
### `sendgrid_list_templates`
Get all email templates from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `generations` | string | No | Filter by generation \(legacy, dynamic, or both\) |
| `pageSize` | number | No | Number of templates to return per page \(default: 20\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `templates` | json | Array of templates |
### `sendgrid_delete_template`
Delete an email template from SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `templateId` | string | Yes | Template ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `messageId` | string | Email message ID \(send_mail\) |
| `id` | string | Resource ID |
| `jobId` | string | Job ID for async operations |
| `email` | string | Email address |
| `firstName` | string | First name |
| `lastName` | string | Last name |
| `contacts` | json | Array of contacts |
| `contactCount` | number | Number of contacts |
| `lists` | json | Array of lists |
| `templates` | json | Array of templates |
| `message` | string | Status or success message |
| `name` | string | Resource name |
| `generation` | string | Template generation |
### `sendgrid_create_template_version`
Create a new version of an email template in SendGrid
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | SendGrid API key |
| `templateId` | string | Yes | Template ID |
| `name` | string | Yes | Version name |
| `subject` | string | Yes | Email subject line |
| `htmlContent` | string | No | HTML content of the template |
| `plainContent` | string | No | Plain text content of the template |
| `active` | boolean | No | Whether this version is active \(default: true\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | Version ID |
| `templateId` | string | Template ID |
| `name` | string | Version name |
| `subject` | string | Email subject |
| `active` | boolean | Whether this version is active |
| `htmlContent` | string | HTML content |
| `plainContent` | string | Plain text content |
| `updatedAt` | string | Last update timestamp |
## Notes
- Category: `tools`
- Type: `sendgrid`

View File

@@ -0,0 +1,310 @@
---
title: Sentry
description: Manage Sentry issues, projects, events, and releases
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="sentry"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
Supercharge your error monitoring and application reliability with [Sentry](https://sentry.io/) — the industry-leading platform for real-time error tracking, performance monitoring, and release management. Seamlessly integrate Sentry into your automated agent workflows to easily monitor issues, track critical events, manage projects, and orchestrate releases across all your applications and services.
With the Sentry tool, you can:
- **Monitor and triage issues**: Fetch comprehensive lists of issues using the `sentry_issues_list` operation and retrieve detailed information on individual errors and bugs via `sentry_issues_get`. Instantly access metadata, tags, stack traces, and statistics to reduce mean time to resolution.
- **Track event data**: Analyze specific error and event instances with `sentry_events_list` and `sentry_events_get`, providing deep insight into error occurrences and user impact.
- **Manage projects and teams**: Use `sentry_projects_list` and `sentry_project_get` to enumerate and review all your Sentry projects, ensuring smooth team collaboration and centralized configuration.
- **Coordinate releases**: Automate version tracking, deployment health, and change management across your codebase with operations like `sentry_releases_list`, `sentry_release_get`, and more.
- **Gain powerful application insights**: Leverage advanced filters and queries to find unresolved or high-priority issues, aggregate event statistics over time, and track regressions as your codebase evolves.
Sentry's integration empowers engineering and DevOps teams to detect issues early, prioritize the most impactful bugs, and continuously improve application health across development stacks. Programmatically orchestrate workflow automation for modern observability, incident response, and release lifecycle management—reducing downtime and increasing user satisfaction.
**Key Sentry operations available**:
- `sentry_issues_list`: List Sentry issues for organizations and projects, with powerful search and filtering.
- `sentry_issues_get`: Retrieve detailed information for a specific Sentry issue.
- `sentry_events_list`: Enumerate the events for a particular issue for root-cause analysis.
- `sentry_events_get`: Get full detail on an individual event, including stack traces, context, and metadata.
- `sentry_projects_list`: List all Sentry projects within your organization.
- `sentry_project_get`: Retrieve configuration and details for a specific project.
- `sentry_releases_list`: List recent releases and their deployment status.
- `sentry_release_get`: Retrieve detailed release information, including associated commits and issues.
Whether you're proactively managing app health, troubleshooting production errors, or automating release workflows, Sentry equips you with world-class monitoring, actionable alerts, and seamless DevOps integration. Boost your software quality and search visibility by leveraging Sentry for error tracking, observability, and release management—all from your agentic workflows.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate Sentry into the workflow. Monitor issues, manage projects, track events, and coordinate releases across your applications.
## Tools
### `sentry_issues_list`
List issues from Sentry for a specific organization and optionally a specific project. Returns issue details including status, error counts, and last seen timestamps.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `projectSlug` | string | No | Filter issues by specific project slug \(optional\) |
| `query` | string | No | Search query to filter issues. Supports Sentry search syntax \(e.g., "is:unresolved", "level:error"\) |
| `statsPeriod` | string | No | Time period for stats \(e.g., "24h", "7d", "30d"\). Defaults to 24h if not specified. |
| `cursor` | string | No | Pagination cursor for retrieving next page of results |
| `limit` | number | No | Number of issues to return per page \(default: 25, max: 100\) |
| `status` | string | No | Filter by issue status: unresolved, resolved, ignored, or muted |
| `sort` | string | No | Sort order: date, new, freq, priority, or user \(default: date\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `issues` | array | List of Sentry issues |
### `sentry_issues_get`
Retrieve detailed information about a specific Sentry issue by its ID. Returns complete issue details including metadata, tags, and statistics.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `issueId` | string | Yes | The unique ID of the issue to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `issue` | object | Detailed information about the Sentry issue |
### `sentry_issues_update`
Update a Sentry issue by changing its status, assignment, bookmark state, or other properties. Returns the updated issue details.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `issueId` | string | Yes | The unique ID of the issue to update |
| `status` | string | No | New status for the issue: resolved, unresolved, ignored, or resolvedInNextRelease |
| `assignedTo` | string | No | User ID or email to assign the issue to. Use empty string to unassign. |
| `isBookmarked` | boolean | No | Whether to bookmark the issue |
| `isSubscribed` | boolean | No | Whether to subscribe to issue updates |
| `isPublic` | boolean | No | Whether the issue should be publicly visible |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `issue` | object | The updated Sentry issue |
### `sentry_projects_list`
List all projects in a Sentry organization. Returns project details including name, platform, teams, and configuration.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `cursor` | string | No | Pagination cursor for retrieving next page of results |
| `limit` | number | No | Number of projects to return per page \(default: 25, max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `projects` | array | List of Sentry projects |
### `sentry_projects_get`
Retrieve detailed information about a specific Sentry project by its slug. Returns complete project details including teams, features, and configuration.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `projectSlug` | string | Yes | The ID or slug of the project to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `project` | object | Detailed information about the Sentry project |
### `sentry_projects_create`
Create a new Sentry project in an organization. Requires a team to associate the project with. Returns the created project details.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `name` | string | Yes | The name of the project |
| `teamSlug` | string | Yes | The slug of the team that will own this project |
| `slug` | string | No | URL-friendly project identifier \(auto-generated from name if not provided\) |
| `platform` | string | No | Platform/language for the project \(e.g., javascript, python, node, react-native\). If not specified, defaults to "other" |
| `defaultRules` | boolean | No | Whether to create default alert rules \(default: true\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `project` | object | The newly created Sentry project |
### `sentry_projects_update`
Update a Sentry project by changing its name, slug, platform, or other settings. Returns the updated project details.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `projectSlug` | string | Yes | The slug of the project to update |
| `name` | string | No | New name for the project |
| `slug` | string | No | New URL-friendly project identifier |
| `platform` | string | No | New platform/language for the project \(e.g., javascript, python, node\) |
| `isBookmarked` | boolean | No | Whether to bookmark the project |
| `digestsMinDelay` | number | No | Minimum delay \(in seconds\) for digest notifications |
| `digestsMaxDelay` | number | No | Maximum delay \(in seconds\) for digest notifications |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `project` | object | The updated Sentry project |
### `sentry_events_list`
List events from a Sentry project. Can be filtered by issue ID, query, or time period. Returns event details including context, tags, and user information.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `projectSlug` | string | Yes | The slug of the project to list events from |
| `issueId` | string | No | Filter events by a specific issue ID |
| `query` | string | No | Search query to filter events. Supports Sentry search syntax \(e.g., "user.email:*@example.com"\) |
| `cursor` | string | No | Pagination cursor for retrieving next page of results |
| `limit` | number | No | Number of events to return per page \(default: 50, max: 100\) |
| `statsPeriod` | string | No | Time period to query \(e.g., "24h", "7d", "30d"\). Defaults to 90d if not specified. |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `events` | array | List of Sentry events |
### `sentry_events_get`
Retrieve detailed information about a specific Sentry event by its ID. Returns complete event details including stack traces, breadcrumbs, context, and user information.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `projectSlug` | string | Yes | The slug of the project |
| `eventId` | string | Yes | The unique ID of the event to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `event` | object | Detailed information about the Sentry event |
### `sentry_releases_list`
List releases for a Sentry organization or project. Returns release details including version, commits, deploy information, and associated projects.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `projectSlug` | string | No | Filter releases by specific project slug \(optional\) |
| `query` | string | No | Search query to filter releases \(e.g., version name pattern\) |
| `cursor` | string | No | Pagination cursor for retrieving next page of results |
| `limit` | number | No | Number of releases to return per page \(default: 25, max: 100\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `releases` | array | List of Sentry releases |
### `sentry_releases_create`
Create a new release in Sentry. A release is a version of your code deployed to an environment. Can include commit information and associated projects. Returns the created release details.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `version` | string | Yes | Version identifier for the release \(e.g., "2.0.0", "my-app@1.0.0", or a git commit SHA\) |
| `projects` | string | Yes | Comma-separated list of project slugs to associate with this release |
| `ref` | string | No | Git reference \(commit SHA, tag, or branch\) for this release |
| `url` | string | No | URL pointing to the release \(e.g., GitHub release page\) |
| `dateReleased` | string | No | ISO 8601 timestamp for when the release was deployed \(defaults to current time\) |
| `commits` | string | No | JSON array of commit objects with id, repository \(optional\), and message \(optional\). Example: \[\{"id":"abc123","message":"Fix bug"\}\] |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `release` | object | The newly created Sentry release |
### `sentry_releases_deploy`
Create a deploy record for a Sentry release in a specific environment. Deploys track when and where releases are deployed. Returns the created deploy details.
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `apiKey` | string | Yes | Sentry API authentication token |
| `organizationSlug` | string | Yes | The slug of the organization |
| `version` | string | Yes | Version identifier of the release being deployed |
| `environment` | string | Yes | Environment name where the release is being deployed \(e.g., "production", "staging"\) |
| `name` | string | No | Optional name for this deploy \(e.g., "Deploy v2.0 to Production"\) |
| `url` | string | No | URL pointing to the deploy \(e.g., CI/CD pipeline URL\) |
| `dateStarted` | string | No | ISO 8601 timestamp for when the deploy started \(defaults to current time\) |
| `dateFinished` | string | No | ISO 8601 timestamp for when the deploy finished |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `deploy` | object | The newly created deploy record |
## Notes
- Category: `tools`
- Type: `sentry`

View File

@@ -73,8 +73,10 @@ Send messages to Slack channels or users through the Slack API. Supports Slack m
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | object | Complete message object with all properties returned by Slack |
| `ts` | string | Message timestamp |
| `channel` | string | Channel ID where message was sent |
| `fileCount` | number | Number of files uploaded \(when files are attached\) |
### `slack_canvas`
@@ -157,6 +159,7 @@ Update a message previously sent by the bot in Slack
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `message` | object | Complete updated message object with all properties returned by Slack |
| `content` | string | Success message |
| `metadata` | object | Updated message metadata |

View File

@@ -0,0 +1,78 @@
---
title: SMTP
description: Send emails via any SMTP mail server
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="smtp"
color="#4A5568"
/>
{/* MANUAL-CONTENT-START:intro */}
[SMTP (Simple Mail Transfer Protocol)](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol) is the foundational standard for email transmission across the Internet. By connecting to any SMTP-compatible server—such as Gmail, Outlook, or your organization's own mail infrastructure—you can send emails programmatically and automate your outbound communications.
SMTP integration allows you to fully customize email sending through direct server connectivity, supporting both basic and advanced email use cases. With SMTP, you can control every aspect of message delivery, recipient management, and content formatting, making it suitable for transactional notifications, bulk mailings, and any automated workflow requiring robust outbound email delivery.
**Key features available via SMTP integration include:**
- **Universal Email Delivery:** Send emails using any SMTP server by configuring standard server connection parameters.
- **Customizable Sender and Recipients:** Specify sender address, display name, primary recipients, as well as CC and BCC fields.
- **Rich Content Support:** Send plain text or richly formatted HTML emails according to your requirements.
- **Attachments:** Include multiple files as attachments in outgoing emails.
- **Flexible Security:** Connect using TLS, SSL, or standard (unencrypted) protocols as supported by your SMTP provider.
- **Advanced Headers:** Set reply-to headers and other advanced email options to cater for complex mailflows and user interactions.
By integrating SMTP with Sim, agents and workflows can programmatically send emails as part of any automated process—ranging from sending notifications and confirmations, to automating external communications, reporting, and document delivery. This offers a highly flexible, provider-agnostic approach to managing email directly within your AI-driven processes.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Send emails using any SMTP server (Gmail, Outlook, custom servers, etc.). Configure SMTP connection settings and send emails with full control over content, recipients, and attachments.
## Tools
### `smtp_send_mail`
Send emails via SMTP server
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `smtpHost` | string | Yes | SMTP server hostname \(e.g., smtp.gmail.com\) |
| `smtpPort` | number | Yes | SMTP server port \(587 for TLS, 465 for SSL\) |
| `smtpUsername` | string | Yes | SMTP authentication username |
| `smtpPassword` | string | Yes | SMTP authentication password |
| `smtpSecure` | string | Yes | Security protocol \(TLS, SSL, or None\) |
| `from` | string | Yes | Sender email address |
| `to` | string | Yes | Recipient email address |
| `subject` | string | Yes | Email subject |
| `body` | string | Yes | Email body content |
| `contentType` | string | No | Content type \(text or html\) |
| `fromName` | string | No | Display name for sender |
| `cc` | string | No | CC recipients \(comma-separated\) |
| `bcc` | string | No | BCC recipients \(comma-separated\) |
| `replyTo` | string | No | Reply-to email address |
| `attachments` | file[] | No | Files to attach to the email |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Whether the email was sent successfully |
| `messageId` | string | Message ID from SMTP server |
| `to` | string | Recipient email address |
| `subject` | string | Email subject |
| `error` | string | Error message if sending failed |
## Notes
- Category: `tools`
- Type: `smtp`

View File

@@ -0,0 +1,202 @@
---
title: Speech-to-Text
description: Convert speech to text using AI
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="stt"
color="#181C1E"
/>
{/* MANUAL-CONTENT-START:intro */}
Transcribe speech to text using the latest AI models from world-class providers. Sim's Speech-to-Text (STT) tools empower you to turn audio and video into accurate, timestamped, and optionally translated transcripts—supporting a diversity of languages and enhanced with advanced features such as diarization and speaker identification.
**Supported Providers & Models:**
- **[OpenAI Whisper](https://platform.openai.com/docs/guides/speech-to-text/overview)** (OpenAI):
OpenAIs Whisper is an open-source deep learning model renowned for its robustness across languages and audio conditions. It supports advanced models such as `whisper-1`, excelling in transcription, translation, and tasks demanding high model generalization. Backed by OpenAI—the company known for ChatGPT and leading AI research—Whisper is widely used in research and as a baseline for comparative evaluation.
- **[Deepgram](https://deepgram.com/)** (Deepgram Inc.):
Based in San Francisco, Deepgram offers scalable, production-grade speech recognition APIs for developers and enterprises. Deepgrams models include `nova-3`, `nova-2`, and `whisper-large`, offering real-time and batch transcription with industry-leading accuracy, multi-language support, automatic punctuation, intelligent diarization, call analytics, and features for use cases ranging from telephony to media production.
- **[ElevenLabs](https://elevenlabs.io/)** (ElevenLabs):
A leader in voice AI, ElevenLabs is especially known for premium voice synthesis and recognition. Its STT product delivers high-accuracy, natural understanding of numerous languages, dialects, and accents. Recent ElevenLabs STT models are optimized for clarity, speaker distinction, and are suitable for both creative and accessibility scenarios. ElevenLabs is recognized for cutting-edge advancements in AI-powered speech technologies.
- **[AssemblyAI](https://www.assemblyai.com/)** (AssemblyAI Inc.):
AssemblyAI provides API-driven, highly accurate speech recognition, with features such as auto chaptering, topic detection, summarization, sentiment analysis, and content moderation alongside transcription. Its proprietary model, including the acclaimed `Conformer-2`, powers some of the largest media, call center, and compliance applications in the industry. AssemblyAI is trusted by Fortune 500s and leading AI startups globally.
- **[Google Cloud Speech-to-Text](https://cloud.google.com/speech-to-text)** (Google Cloud):
Googles enterprise-grade Speech-to-Text API supports over 125 languages and variants, offering high accuracy and features such as real-time streaming, word-level confidence, speaker diarization, automatic punctuation, custom vocabulary, and domain-specific tuning. Models such as `latest_long`, `video`, and domain-optimized models are available, powered by Googles years of research and deployed for global scalability.
- **[AWS Transcribe](https://aws.amazon.com/transcribe/)** (Amazon Web Services):
AWS Transcribe leverages Amazons cloud infrastructure to deliver robust speech recognition as an API. It supports multiple languages and features such as speaker identification, custom vocabulary, channel identification (for call center audio), and medical-specific transcription. Popular models include `standard` and domain-specific variations. AWS Transcribe is ideal for organizations already using Amazons cloud.
**How to Choose:**
Select the provider and model that fits your application—whether you need fast, enterprise-ready transcription with extra analytics (Deepgram, AssemblyAI, Google, AWS), high versatility and open-source access (OpenAI Whisper), or advanced speaker/contextual understanding (ElevenLabs). Consider the pricing, language coverage, accuracy, and any special features (like summarization, chaptering, or sentiment analysis) you might need.
For more details on capabilities, pricing, feature highlights, and fine-tuning options, refer to each providers official documentation via the links above.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Transcribe audio and video files to text using leading AI providers. Supports multiple languages, timestamps, and speaker diarization.
## Tools
### `stt_whisper`
Transcribe audio to text using OpenAI Whisper
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | STT provider \(whisper\) |
| `apiKey` | string | Yes | OpenAI API key |
| `model` | string | No | Whisper model to use \(default: whisper-1\) |
| `audioFile` | file | No | Audio or video file to transcribe |
| `audioFileReference` | file | No | Reference to audio/video file from previous blocks |
| `audioUrl` | string | No | URL to audio or video file |
| `language` | string | No | Language code \(e.g., "en", "es", "fr"\) or "auto" for auto-detection |
| `timestamps` | string | No | Timestamp granularity: none, sentence, or word |
| `translateToEnglish` | boolean | No | Translate audio to English |
| `prompt` | string | No | Optional text to guide the model's style or continue a previous audio segment. Helps with proper nouns and context. |
| `temperature` | number | No | Sampling temperature between 0 and 1. Higher values make output more random, lower values more focused and deterministic. |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `transcript` | string | Full transcribed text |
| `segments` | array | Timestamped segments |
| `language` | string | Detected or specified language |
| `duration` | number | Audio duration in seconds |
### `stt_deepgram`
Transcribe audio to text using Deepgram
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | STT provider \(deepgram\) |
| `apiKey` | string | Yes | Deepgram API key |
| `model` | string | No | Deepgram model to use \(nova-3, nova-2, whisper-large, etc.\) |
| `audioFile` | file | No | Audio or video file to transcribe |
| `audioFileReference` | file | No | Reference to audio/video file from previous blocks |
| `audioUrl` | string | No | URL to audio or video file |
| `language` | string | No | Language code \(e.g., "en", "es", "fr"\) or "auto" for auto-detection |
| `timestamps` | string | No | Timestamp granularity: none, sentence, or word |
| `diarization` | boolean | No | Enable speaker diarization |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `transcript` | string | Full transcribed text |
| `segments` | array | Timestamped segments with speaker labels |
| `language` | string | Detected or specified language |
| `duration` | number | Audio duration in seconds |
| `confidence` | number | Overall confidence score |
### `stt_elevenlabs`
Transcribe audio to text using ElevenLabs
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | STT provider \(elevenlabs\) |
| `apiKey` | string | Yes | ElevenLabs API key |
| `model` | string | No | ElevenLabs model to use \(scribe_v1, scribe_v1_experimental\) |
| `audioFile` | file | No | Audio or video file to transcribe |
| `audioFileReference` | file | No | Reference to audio/video file from previous blocks |
| `audioUrl` | string | No | URL to audio or video file |
| `language` | string | No | Language code \(e.g., "en", "es", "fr"\) or "auto" for auto-detection |
| `timestamps` | string | No | Timestamp granularity: none, sentence, or word |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `transcript` | string | Full transcribed text |
| `segments` | array | Timestamped segments |
| `language` | string | Detected or specified language |
| `duration` | number | Audio duration in seconds |
| `confidence` | number | Overall confidence score |
### `stt_assemblyai`
Transcribe audio to text using AssemblyAI with advanced NLP features
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | STT provider \(assemblyai\) |
| `apiKey` | string | Yes | AssemblyAI API key |
| `model` | string | No | AssemblyAI model to use \(default: best\) |
| `audioFile` | file | No | Audio or video file to transcribe |
| `audioFileReference` | file | No | Reference to audio/video file from previous blocks |
| `audioUrl` | string | No | URL to audio or video file |
| `language` | string | No | Language code \(e.g., "en", "es", "fr"\) or "auto" for auto-detection |
| `timestamps` | string | No | Timestamp granularity: none, sentence, or word |
| `diarization` | boolean | No | Enable speaker diarization |
| `sentiment` | boolean | No | Enable sentiment analysis |
| `entityDetection` | boolean | No | Enable entity detection |
| `piiRedaction` | boolean | No | Enable PII redaction |
| `summarization` | boolean | No | Enable automatic summarization |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `transcript` | string | Full transcribed text |
| `segments` | array | Timestamped segments with speaker labels |
| `language` | string | Detected or specified language |
| `duration` | number | Audio duration in seconds |
| `confidence` | number | Overall confidence score |
| `sentiment` | array | Sentiment analysis results |
| `entities` | array | Detected entities |
| `summary` | string | Auto-generated summary |
### `stt_gemini`
Transcribe audio to text using Google Gemini with multimodal capabilities
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | STT provider \(gemini\) |
| `apiKey` | string | Yes | Google API key |
| `model` | string | No | Gemini model to use \(default: gemini-2.5-flash\) |
| `audioFile` | file | No | Audio or video file to transcribe |
| `audioFileReference` | file | No | Reference to audio/video file from previous blocks |
| `audioUrl` | string | No | URL to audio or video file |
| `language` | string | No | Language code \(e.g., "en", "es", "fr"\) or "auto" for auto-detection |
| `timestamps` | string | No | Timestamp granularity: none, sentence, or word |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `transcript` | string | Full transcribed text |
| `segments` | array | Timestamped segments |
| `language` | string | Detected or specified language |
| `duration` | number | Audio duration in seconds |
| `confidence` | number | Overall confidence score |
## Notes
- Category: `tools`
- Type: `stt`

View File

@@ -0,0 +1,261 @@
---
title: Text-to-Speech
description: Convert text to speech using AI voices
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="tts"
color="#181C1E"
/>
{/* MANUAL-CONTENT-START:intro */}
Convert text to natural-sounding speech using the latest AI voices. Sim's Text-to-Speech (TTS) tools let you generate audio from written text in dozens of languages, with a choice of expressive voices, formats, and advanced controls like speed, style, emotion, and more.
**Supported Providers & Models:**
- **[OpenAI Text-to-Speech](https://platform.openai.com/docs/guides/text-to-speech/voice-options)** (OpenAI):
OpenAI's TTS API offers ultra-realistic voices using advanced AI models like `tts-1`, `tts-1-hd`, and `gpt-4o-mini-tts`. Voices include both male and female, with options such as alloy, echo, fable, onyx, nova, shimmer, ash, ballad, coral, sage, and verse. Supports multiple audio formats (mp3, opus, aac, flac, wav, pcm), adjustable speed and streaming synthesis.
- **[Deepgram Aura](https://deepgram.com/products/text-to-speech)** (Deepgram Inc.):
Deepgrams Aura provides expressive English and multilingual AI voices, optimized for conversational clarity, low latency, and customization. Models like `aura-asteria-en`, `aura-luna-en`, and others are available. Supports multiple encoding formats (linear16, mp3, opus, aac, flac) and fine tuning on speed, sample rate, and style.
- **[ElevenLabs Text-to-Speech](https://elevenlabs.io/text-to-speech)** (ElevenLabs):
ElevenLabs leads in lifelike, emotionally rich TTS, offering dozens of voices in 29+ languages and the ability to clone custom voices. Models support voice design, speech synthesis, and direct API access, with advanced controls for style, emotion, stability, and similarity. Suitable for audiobooks, content creation, accessibility, and more.
- **[Cartesia TTS](https://docs.cartesia.ai/)** (Cartesia):
Cartesia offers high-quality, fast, and secure text-to-speech with a focus on privacy and flexible deployment. It provides instant streaming, real-time synthesis, and supports multiple international voices and accents, accessible through a simple API.
- **[Google Cloud Text-to-Speech](https://cloud.google.com/text-to-speech)** (Google Cloud):
Google uses DeepMind WaveNet and Neural2 models to power high-fidelity voices in 50+ languages and variants. Features include voice selection, pitch, speaking rate, volume control, SSML tags, and access to both standard and studio-grade premium voices. Widely used for accessibility, IVR, and media.
- **[Microsoft Azure Speech](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech)** (Microsoft Azure):
Azure provides over 400 neural voices across 140+ languages and locales, with unique voice customization, style, emotion, role, and real-time controls. Offers SSML support for pronunciation, intonation, and more. Ideal for global, enterprise, or creative TTS needs.
- **[PlayHT](https://play.ht/)** (PlayHT):
PlayHT specializes in realistic voice synthesis, voice cloning, and instant streaming playback with 800+ voices in over 100 languages. Features include emotion, pitch and speed controls, multi-voice audio, and custom voice creation via the API or online studio.
**How to Choose:**
Pick your provider and model by prioritizing languages, supported voice types, desired formats (mp3, wav, etc.), control granularity (speed, emotion, etc.), and specialized features (voice cloning, accent, streaming). For creative, accessibility, or developer use cases, ensure compatibility with your application's requirements and compare costs.
Visit each providers official site for up-to-date capabilities, pricing, and documentation details!
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Generate natural-sounding speech from text using state-of-the-art AI voices from OpenAI, Deepgram, ElevenLabs, Cartesia, Google Cloud, Azure, and PlayHT. Supports multiple voices, languages, and audio formats.
## Tools
### `tts_openai`
Convert text to speech using OpenAI TTS models
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text to convert to speech |
| `apiKey` | string | Yes | OpenAI API key |
| `model` | string | No | TTS model to use \(tts-1, tts-1-hd, or gpt-4o-mini-tts\) |
| `voice` | string | No | Voice to use \(alloy, ash, ballad, cedar, coral, echo, marin, sage, shimmer, verse\) |
| `responseFormat` | string | No | Audio format \(mp3, opus, aac, flac, wav, pcm\) |
| `speed` | number | No | Speech speed \(0.25 to 4.0, default: 1.0\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL to the generated audio file |
| `audioFile` | file | Generated audio file object |
| `duration` | number | Audio duration in seconds |
| `characterCount` | number | Number of characters processed |
| `format` | string | Audio format |
| `provider` | string | TTS provider used |
### `tts_deepgram`
Convert text to speech using Deepgram Aura
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text to convert to speech |
| `apiKey` | string | Yes | Deepgram API key |
| `model` | string | No | Deepgram model/voice \(e.g., aura-asteria-en, aura-luna-en\) |
| `voice` | string | No | Voice identifier \(alternative to model param\) |
| `encoding` | string | No | Audio encoding \(linear16, mp3, opus, aac, flac\) |
| `sampleRate` | number | No | Sample rate \(8000, 16000, 24000, 48000\) |
| `bitRate` | number | No | Bit rate for compressed formats |
| `container` | string | No | Container format \(none, wav, ogg\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL to the generated audio file |
| `audioFile` | file | Generated audio file object |
| `duration` | number | Audio duration in seconds |
| `characterCount` | number | Number of characters processed |
| `format` | string | Audio format |
| `provider` | string | TTS provider used |
### `tts_elevenlabs`
Convert text to speech using ElevenLabs voices
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text to convert to speech |
| `voiceId` | string | Yes | The ID of the voice to use |
| `apiKey` | string | Yes | ElevenLabs API key |
| `modelId` | string | No | Model to use \(e.g., eleven_monolingual_v1, eleven_turbo_v2_5, eleven_flash_v2_5\) |
| `stability` | number | No | Voice stability \(0.0 to 1.0, default: 0.5\) |
| `similarityBoost` | number | No | Similarity boost \(0.0 to 1.0, default: 0.8\) |
| `style` | number | No | Style exaggeration \(0.0 to 1.0\) |
| `useSpeakerBoost` | boolean | No | Use speaker boost \(default: true\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL to the generated audio file |
| `audioFile` | file | Generated audio file object |
| `duration` | number | Audio duration in seconds |
| `characterCount` | number | Number of characters processed |
| `format` | string | Audio format |
| `provider` | string | TTS provider used |
### `tts_cartesia`
Convert text to speech using Cartesia Sonic (ultra-low latency)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text to convert to speech |
| `apiKey` | string | Yes | Cartesia API key |
| `modelId` | string | No | Model ID \(sonic-english, sonic-multilingual\) |
| `voice` | string | No | Voice ID or embedding |
| `language` | string | No | Language code \(en, es, fr, de, it, pt, etc.\) |
| `outputFormat` | json | No | Output format configuration \(container, encoding, sampleRate\) |
| `speed` | number | No | Speed multiplier |
| `emotion` | array | No | Emotion tags for Sonic-3 \(e.g., \['positivity:high'\]\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL to the generated audio file |
| `audioFile` | file | Generated audio file object |
| `duration` | number | Audio duration in seconds |
| `characterCount` | number | Number of characters processed |
| `format` | string | Audio format |
| `provider` | string | TTS provider used |
### `tts_google`
Convert text to speech using Google Cloud Text-to-Speech
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text to convert to speech |
| `apiKey` | string | Yes | Google Cloud API key |
| `voiceId` | string | No | Voice ID \(e.g., en-US-Neural2-A, en-US-Wavenet-D\) |
| `languageCode` | string | Yes | Language code \(e.g., en-US, es-ES, fr-FR\) |
| `gender` | string | No | Voice gender \(MALE, FEMALE, NEUTRAL\) |
| `audioEncoding` | string | No | Audio encoding \(LINEAR16, MP3, OGG_OPUS, MULAW, ALAW\) |
| `speakingRate` | number | No | Speaking rate \(0.25 to 2.0, default: 1.0\) |
| `pitch` | number | No | Voice pitch \(-20.0 to 20.0, default: 0.0\) |
| `volumeGainDb` | number | No | Volume gain in dB \(-96.0 to 16.0\) |
| `sampleRateHertz` | number | No | Sample rate in Hz |
| `effectsProfileId` | array | No | Effects profile \(e.g., \['headphone-class-device'\]\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL to the generated audio file |
| `audioFile` | file | Generated audio file object |
| `duration` | number | Audio duration in seconds |
| `characterCount` | number | Number of characters processed |
| `format` | string | Audio format |
| `provider` | string | TTS provider used |
### `tts_azure`
Convert text to speech using Azure Cognitive Services
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text to convert to speech |
| `apiKey` | string | Yes | Azure Speech Services API key |
| `voiceId` | string | No | Voice ID \(e.g., en-US-JennyNeural, en-US-GuyNeural\) |
| `region` | string | No | Azure region \(e.g., eastus, westus, westeurope\) |
| `outputFormat` | string | No | Output audio format |
| `rate` | string | No | Speaking rate \(e.g., +10%, -20%, 1.5\) |
| `pitch` | string | No | Voice pitch \(e.g., +5Hz, -2st, low\) |
| `style` | string | No | Speaking style \(e.g., cheerful, sad, angry - neural voices only\) |
| `styleDegree` | number | No | Style intensity \(0.01 to 2.0\) |
| `role` | string | No | Role \(e.g., Girl, Boy, YoungAdultFemale\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL to the generated audio file |
| `audioFile` | file | Generated audio file object |
| `duration` | number | Audio duration in seconds |
| `characterCount` | number | Number of characters processed |
| `format` | string | Audio format |
| `provider` | string | TTS provider used |
### `tts_playht`
Convert text to speech using PlayHT (voice cloning)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `text` | string | Yes | The text to convert to speech |
| `apiKey` | string | Yes | PlayHT API key \(AUTHORIZATION header\) |
| `userId` | string | Yes | PlayHT user ID \(X-USER-ID header\) |
| `voice` | string | No | Voice ID or manifest URL |
| `quality` | string | No | Quality level \(draft, standard, premium\) |
| `outputFormat` | string | No | Output format \(mp3, wav, ogg, flac, mulaw\) |
| `speed` | number | No | Speed multiplier \(0.5 to 2.0\) |
| `temperature` | number | No | Creativity/randomness \(0.0 to 2.0\) |
| `voiceGuidance` | number | No | Voice stability \(1.0 to 6.0\) |
| `textGuidance` | number | No | Text adherence \(1.0 to 6.0\) |
| `sampleRate` | number | No | Sample rate \(8000, 16000, 22050, 24000, 44100, 48000\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `audioUrl` | string | URL to the generated audio file |
| `audioFile` | file | Generated audio file object |
| `duration` | number | Audio duration in seconds |
| `characterCount` | number | Number of characters processed |
| `format` | string | Audio format |
| `provider` | string | TTS provider used |
## Notes
- Category: `tools`
- Type: `tts`

View File

@@ -0,0 +1,197 @@
---
title: Video Generator
description: Generate videos from text using AI
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="video_generator"
color="#181C1E"
/>
{/* MANUAL-CONTENT-START:intro */}
Create videos from text prompts using cutting-edge AI models from top providers. Sim's Video Generator brings powerful, creative video synthesis capabilities to your workflow—supporting diverse models, aspect ratios, resolutions, camera controls, native audio, and advanced style and consistency features.
**Supported Providers & Models:**
- **[Runway Gen-4](https://research.runwayml.com/gen2/)** (Runway ML):
Runway is a pioneer in text-to-video generation, known for powerful models like Gen-2, Gen-3, and Gen-4. The latest [Gen-4](https://research.runwayml.com/gen2/) model (and Gen-4 Turbo for faster results) supports more realistic motion, greater world consistency, and visual references for character, object, style, and location. Supports 16:9, 9:16, and 1:1 aspect ratios, 510 second durations, up to 4K resolution, style presets, and direct upload of reference images for consistent generations. Runway powers creative tools for filmmakers, studios, and content creators worldwide.
- **[Google Veo](https://deepmind.google/technologies/veo/)** (Google DeepMind):
[Veo](https://deepmind.google/technologies/veo/) is Googles next-generation video generation model, offering high-quality, native-audio videos up to 1080p and 16 seconds. Supports advanced motion, cinematic effects, and nuanced text understanding. Veo can generate videos with built-in sound—activating native audio as well as silent clips. Options include 16:9 aspect, variable duration, different models (veo-3, veo-3.1), and prompt-based controls. Ideal for storytelling, advertising, research, and ideation.
- **[Luma Dream Machine](https://lumalabs.ai/dream-machine)** (Luma AI):
[Dream Machine](https://lumalabs.ai/dream-machine) delivers jaw-droppingly realistic and fluid video from text. It incorporates advanced camera control, cinematography prompts, and supports both ray-1 and ray-2 models. Dream Machine supports precise aspect ratios (16:9, 9:16, 1:1), variable durations, and the specification of camera paths for intricate visual direction. Luma is renowned for breakthrough visual fidelity and is backed by leading AI vision researchers.
- **[MiniMax Hailuo-02](https://minimax.chat/)** (via [Fal.ai](https://fal.ai/)):
[MiniMax Hailuo-02](https://minimax.chat/) is a sophisticated Chinese generative video model, available globally through [Fal.ai](https://fal.ai/). Generate videos up to 16 seconds in landscape or portrait format, with options for prompt optimization to improve clarity and creativity. Pro and standard endpoints available, supporting high resolutions (up to 1920×1080). Well-suited for creative projects needing prompt translation and optimization, commercial storytelling, and rapid prototyping of visual ideas.
**How to Choose:**
Pick your provider and model based on your needs for quality, speed, duration, audio, cost, and unique features. Runway and Veo offer world-leading realism and cinematic capabilities; Luma excels in fluid motion and camera control; MiniMax is ideal for Chinese-language prompts and offers fast, affordable access. Consider reference support, style presets, audio requirements, and pricing when selecting your tool.
For more details on features, restrictions, pricing, and model advances, see each providers official documentation above.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Generate high-quality videos from text prompts using leading AI providers. Supports multiple models, aspect ratios, resolutions, and provider-specific features like world consistency, camera controls, and audio generation.
## Tools
### `video_runway`
Generate videos using Runway Gen-4 with world consistency and visual references
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | Video provider \(runway\) |
| `apiKey` | string | Yes | Runway API key |
| `model` | string | No | Runway model: gen-4 \(default, higher quality\) or gen-4-turbo \(faster\) |
| `prompt` | string | Yes | Text prompt describing the video to generate |
| `duration` | number | No | Video duration in seconds \(5 or 10, default: 5\) |
| `aspectRatio` | string | No | Aspect ratio: 16:9 \(landscape\), 9:16 \(portrait\), or 1:1 \(square\) |
| `resolution` | string | No | Video resolution \(720p output\). Note: Gen-4 Turbo outputs at 720p natively |
| `visualReference` | json | Yes | Reference image REQUIRED for Gen-4 \(UserFile object\). Gen-4 only supports image-to-video, not text-only generation |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generated video URL |
| `videoFile` | json | Video file object with metadata |
| `duration` | number | Video duration in seconds |
| `width` | number | Video width in pixels |
| `height` | number | Video height in pixels |
| `provider` | string | Provider used \(runway\) |
| `model` | string | Model used |
| `jobId` | string | Runway job ID |
### `video_veo`
Generate videos using Google Veo 3/3.1 with native audio generation
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | Video provider \(veo\) |
| `apiKey` | string | Yes | Google Gemini API key |
| `model` | string | No | Veo model: veo-3 \(default, highest quality\), veo-3-fast \(faster\), or veo-3.1 \(latest\) |
| `prompt` | string | Yes | Text prompt describing the video to generate |
| `duration` | number | No | Video duration in seconds \(4, 6, or 8, default: 8\) |
| `aspectRatio` | string | No | Aspect ratio: 16:9 \(landscape\) or 9:16 \(portrait\) |
| `resolution` | string | No | Video resolution: 720p or 1080p \(default: 1080p\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generated video URL |
| `videoFile` | json | Video file object with metadata |
| `duration` | number | Video duration in seconds |
| `width` | number | Video width in pixels |
| `height` | number | Video height in pixels |
| `provider` | string | Provider used \(veo\) |
| `model` | string | Model used |
| `jobId` | string | Veo job ID |
### `video_luma`
Generate videos using Luma Dream Machine with advanced camera controls
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | Video provider \(luma\) |
| `apiKey` | string | Yes | Luma AI API key |
| `model` | string | No | Luma model: ray-2 \(default\) |
| `prompt` | string | Yes | Text prompt describing the video to generate |
| `duration` | number | No | Video duration in seconds \(5 or 9, default: 5\) |
| `aspectRatio` | string | No | Aspect ratio: 16:9 \(landscape\), 9:16 \(portrait\), or 1:1 \(square\) |
| `resolution` | string | No | Video resolution: 540p, 720p, or 1080p \(default: 1080p\) |
| `cameraControl` | json | No | Camera controls as array of concept objects. Format: \[\{ "key": "concept_name" \}\]. Valid keys: truck_left, truck_right, pan_left, pan_right, tilt_up, tilt_down, zoom_in, zoom_out, push_in, pull_out, orbit_left, orbit_right, crane_up, crane_down, static, handheld, and 20+ more predefined options |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generated video URL |
| `videoFile` | json | Video file object with metadata |
| `duration` | number | Video duration in seconds |
| `width` | number | Video width in pixels |
| `height` | number | Video height in pixels |
| `provider` | string | Provider used \(luma\) |
| `model` | string | Model used |
| `jobId` | string | Luma job ID |
### `video_minimax`
Generate videos using MiniMax Hailuo through MiniMax Platform API with advanced realism and prompt optimization
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | Video provider \(minimax\) |
| `apiKey` | string | Yes | MiniMax API key from platform.minimax.io |
| `model` | string | No | MiniMax model: hailuo-02 \(default\) |
| `prompt` | string | Yes | Text prompt describing the video to generate |
| `duration` | number | No | Video duration in seconds \(6 or 10, default: 6\) |
| `promptOptimizer` | boolean | No | Enable prompt optimization for better results \(default: true\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generated video URL |
| `videoFile` | json | Video file object with metadata |
| `duration` | number | Video duration in seconds |
| `width` | number | Video width in pixels |
| `height` | number | Video height in pixels |
| `provider` | string | Provider used \(minimax\) |
| `model` | string | Model used |
| `jobId` | string | MiniMax job ID |
### `video_falai`
Generate videos using Fal.ai platform with access to multiple models including Veo 3.1, Sora 2, Kling 2.5, MiniMax Hailuo, and more
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `provider` | string | Yes | Video provider \(falai\) |
| `apiKey` | string | Yes | Fal.ai API key |
| `model` | string | Yes | Fal.ai model: veo-3.1 \(Google Veo 3.1\), sora-2 \(OpenAI Sora 2\), kling-2.5-turbo-pro \(Kling 2.5 Turbo Pro\), kling-2.1-pro \(Kling 2.1 Master\), minimax-hailuo-2.3-pro \(MiniMax Hailuo Pro\), minimax-hailuo-2.3-standard \(MiniMax Hailuo Standard\), wan-2.1 \(WAN T2V\), ltxv-0.9.8 \(LTXV 13B\) |
| `prompt` | string | Yes | Text prompt describing the video to generate |
| `duration` | number | No | Video duration in seconds \(varies by model\) |
| `aspectRatio` | string | No | Aspect ratio \(varies by model\): 16:9, 9:16, 1:1 |
| `resolution` | string | No | Video resolution \(varies by model\): 540p, 720p, 1080p |
| `promptOptimizer` | boolean | No | Enable prompt optimization for MiniMax models \(default: true\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `videoUrl` | string | Generated video URL |
| `videoFile` | json | Video file object with metadata |
| `duration` | number | Video duration in seconds |
| `width` | number | Video width in pixels |
| `height` | number | Video height in pixels |
| `provider` | string | Provider used \(falai\) |
| `model` | string | Model used |
| `jobId` | string | Job ID |
## Notes
- Category: `tools`
- Type: `video_generator`

View File

@@ -0,0 +1,647 @@
---
title: Zendesk
description: Manage support tickets, users, and organizations in Zendesk
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="zendesk"
color="#E0E0E0"
/>
{/* MANUAL-CONTENT-START:intro */}
[Zendesk](https://www.zendesk.com/) is a leading customer service and support platform that empowers organizations to efficiently manage support tickets, users, and organizations through a robust set of tools and APIs. The Zendesk integration in Sim lets your agents automate key support operations and synchronize your support data with the rest of your workflow.
With Zendesk in Sim, you can:
- **Manage Tickets:**
- Retrieve lists of support tickets with advanced filtering and sorting.
- Get detailed information on a single ticket for tracking and resolution.
- Create new tickets individually or in bulk to log customer issues programmatically.
- Update tickets or apply bulk updates to streamline complex workflows.
- Delete or merge tickets as cases are resolved or duplicates arise.
- **User Management:**
- Retrieve lists of users or search users by criteria to keep your customer and agent directories up-to-date.
- Get detailed information on individual users or the current logged-in user.
- Create new users or onboard them in bulk, automating customer and agent provisioning.
- Update or bulk update user details to ensure information accuracy.
- Delete users as needed for privacy or account management.
- **Organization Management:**
- List, search, and autocomplete organizations for streamlined support and account management.
- Get organization details and keep your database organized.
- Create, update, or delete organizations to reflect changes in your customer base.
- Perform bulk organization creation for large onboarding efforts.
- **Advanced Search & Analytics:**
- Use versatile search endpoints to quickly locate tickets, users, or organizations by any field.
- Retrieve counts of search results to power reporting and analytics.
By leveraging Zendesks Sim integration, your automated workflows can seamlessly handle support ticket triage, user onboarding/offboarding, company management, and keep your support operations running smoothly. Whether youre integrating support with product, CRM, or automation systems, Zendesk tools in Sim provide robust, programmatic control to power best-in-class support at scale.
{/* MANUAL-CONTENT-END */}
## Usage Instructions
Integrate Zendesk into the workflow. Can get tickets, get ticket, create ticket, create tickets bulk, update ticket, update tickets bulk, delete ticket, merge tickets, get users, get user, get current user, search users, create user, create users bulk, update user, update users bulk, delete user, get organizations, get organization, autocomplete organizations, create organization, create organizations bulk, update organization, delete organization, search, search count.
## Tools
### `zendesk_get_tickets`
Retrieve a list of tickets from Zendesk with optional filtering
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain \(e.g., "mycompany" for mycompany.zendesk.com\) |
| `status` | string | No | Filter by status \(new, open, pending, hold, solved, closed\) |
| `priority` | string | No | Filter by priority \(low, normal, high, urgent\) |
| `type` | string | No | Filter by type \(problem, incident, question, task\) |
| `assigneeId` | string | No | Filter by assignee user ID |
| `organizationId` | string | No | Filter by organization ID |
| `sortBy` | string | No | Sort field \(created_at, updated_at, priority, status\) |
| `sortOrder` | string | No | Sort order \(asc or desc\) |
| `perPage` | string | No | Results per page \(default: 100, max: 100\) |
| `page` | string | No | Page number |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Tickets data and metadata |
### `zendesk_get_ticket`
Get a single ticket by ID from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `ticketId` | string | Yes | Ticket ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Ticket data |
### `zendesk_create_ticket`
Create a new ticket in Zendesk with support for custom fields
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `subject` | string | No | Ticket subject \(optional - will be auto-generated if not provided\) |
| `description` | string | Yes | Ticket description \(first comment\) |
| `priority` | string | No | Priority \(low, normal, high, urgent\) |
| `status` | string | No | Status \(new, open, pending, hold, solved, closed\) |
| `type` | string | No | Type \(problem, incident, question, task\) |
| `tags` | string | No | Comma-separated tags |
| `assigneeId` | string | No | Assignee user ID |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created ticket data |
### `zendesk_create_tickets_bulk`
Create multiple tickets in Zendesk at once (max 100)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `tickets` | string | Yes | JSON array of ticket objects to create \(max 100\). Each ticket should have subject and comment properties. |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Bulk create job status |
### `zendesk_update_ticket`
Update an existing ticket in Zendesk with support for custom fields
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `ticketId` | string | Yes | Ticket ID to update |
| `subject` | string | No | New ticket subject |
| `comment` | string | No | Add a comment to the ticket |
| `priority` | string | No | Priority \(low, normal, high, urgent\) |
| `status` | string | No | Status \(new, open, pending, hold, solved, closed\) |
| `type` | string | No | Type \(problem, incident, question, task\) |
| `tags` | string | No | Comma-separated tags |
| `assigneeId` | string | No | Assignee user ID |
| `groupId` | string | No | Group ID |
| `customFields` | string | No | Custom fields as JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated ticket data |
### `zendesk_update_tickets_bulk`
Update multiple tickets in Zendesk at once (max 100)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `ticketIds` | string | Yes | Comma-separated ticket IDs to update \(max 100\) |
| `status` | string | No | New status for all tickets |
| `priority` | string | No | New priority for all tickets |
| `assigneeId` | string | No | New assignee ID for all tickets |
| `groupId` | string | No | New group ID for all tickets |
| `tags` | string | No | Comma-separated tags to add to all tickets |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Bulk update job status |
### `zendesk_delete_ticket`
Delete a ticket from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `ticketId` | string | Yes | Ticket ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Delete confirmation |
### `zendesk_merge_tickets`
Merge multiple tickets into a target ticket
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `targetTicketId` | string | Yes | Target ticket ID \(tickets will be merged into this one\) |
| `sourceTicketIds` | string | Yes | Comma-separated source ticket IDs to merge |
| `targetComment` | string | No | Comment to add to target ticket after merge |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Merge job status |
### `zendesk_get_users`
Retrieve a list of users from Zendesk with optional filtering
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain \(e.g., "mycompany" for mycompany.zendesk.com\) |
| `role` | string | No | Filter by role \(end-user, agent, admin\) |
| `permissionSet` | string | No | Filter by permission set ID |
| `perPage` | string | No | Results per page \(default: 100, max: 100\) |
| `page` | string | No | Page number |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Users data and metadata |
### `zendesk_get_user`
Get a single user by ID from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `userId` | string | Yes | User ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | User data |
### `zendesk_get_current_user`
Get the currently authenticated user from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Current user data |
### `zendesk_search_users`
Search for users in Zendesk using a query string
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `query` | string | No | Search query string |
| `externalId` | string | No | External ID to search by |
| `perPage` | string | No | Results per page \(default: 100, max: 100\) |
| `page` | string | No | Page number |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Users search results |
### `zendesk_create_user`
Create a new user in Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `name` | string | Yes | User name |
| `userEmail` | string | No | User email |
| `role` | string | No | User role \(end-user, agent, admin\) |
| `phone` | string | No | User phone number |
| `organizationId` | string | No | Organization ID |
| `verified` | string | No | Set to "true" to skip email verification |
| `tags` | string | No | Comma-separated tags |
| `customFields` | string | No | Custom fields as JSON object \(e.g., \{"field_id": "value"\}\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created user data |
### `zendesk_create_users_bulk`
Create multiple users in Zendesk using bulk import
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `users` | string | Yes | JSON array of user objects to create |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Bulk creation job status |
### `zendesk_update_user`
Update an existing user in Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `userId` | string | Yes | User ID to update |
| `name` | string | No | New user name |
| `userEmail` | string | No | New user email |
| `role` | string | No | User role \(end-user, agent, admin\) |
| `phone` | string | No | User phone number |
| `organizationId` | string | No | Organization ID |
| `verified` | string | No | Set to "true" to mark user as verified |
| `tags` | string | No | Comma-separated tags |
| `customFields` | string | No | Custom fields as JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated user data |
### `zendesk_update_users_bulk`
Update multiple users in Zendesk using bulk update
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `users` | string | Yes | JSON array of user objects to update \(must include id field\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Bulk update job status |
### `zendesk_delete_user`
Delete a user from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `userId` | string | Yes | User ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Deleted user data |
### `zendesk_get_organizations`
Retrieve a list of organizations from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain \(e.g., "mycompany" for mycompany.zendesk.com\) |
| `perPage` | string | No | Results per page \(default: 100, max: 100\) |
| `page` | string | No | Page number |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Organizations data and metadata |
### `zendesk_get_organization`
Get a single organization by ID from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `organizationId` | string | Yes | Organization ID to retrieve |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Organization data |
### `zendesk_autocomplete_organizations`
Autocomplete organizations in Zendesk by name prefix (for name matching/autocomplete)
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `name` | string | Yes | Organization name to search for |
| `perPage` | string | No | Results per page \(default: 100, max: 100\) |
| `page` | string | No | Page number |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Organizations search results |
### `zendesk_create_organization`
Create a new organization in Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `name` | string | Yes | Organization name |
| `domainNames` | string | No | Comma-separated domain names |
| `details` | string | No | Organization details |
| `notes` | string | No | Organization notes |
| `tags` | string | No | Comma-separated tags |
| `customFields` | string | No | Custom fields as JSON object \(e.g., \{"field_id": "value"\}\) |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Created organization data |
### `zendesk_create_organizations_bulk`
Create multiple organizations in Zendesk using bulk import
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `organizations` | string | Yes | JSON array of organization objects to create |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Bulk creation job status |
### `zendesk_update_organization`
Update an existing organization in Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `organizationId` | string | Yes | Organization ID to update |
| `name` | string | No | New organization name |
| `domainNames` | string | No | Comma-separated domain names |
| `details` | string | No | Organization details |
| `notes` | string | No | Organization notes |
| `tags` | string | No | Comma-separated tags |
| `customFields` | string | No | Custom fields as JSON object |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Updated organization data |
### `zendesk_delete_organization`
Delete an organization from Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `organizationId` | string | Yes | Organization ID to delete |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Deleted organization data |
### `zendesk_search`
Unified search across tickets, users, and organizations in Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `query` | string | Yes | Search query string |
| `sortBy` | string | No | Sort field \(relevance, created_at, updated_at, priority, status, ticket_type\) |
| `sortOrder` | string | No | Sort order \(asc or desc\) |
| `perPage` | string | No | Results per page \(default: 100, max: 100\) |
| `page` | string | No | Page number |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search results |
### `zendesk_search_count`
Count the number of search results matching a query in Zendesk
#### Input
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `email` | string | Yes | Your Zendesk email address |
| `apiToken` | string | Yes | Zendesk API token |
| `subdomain` | string | Yes | Your Zendesk subdomain |
| `query` | string | Yes | Search query string |
#### Output
| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `success` | boolean | Operation success status |
| `output` | object | Search count result |
## Notes
- Category: `tools`
- Type: `zendesk`

View File

@@ -4,6 +4,17 @@ description: Triggers are the core ways to start Sim workflows
---
import { Card, Cards } from 'fumadocs-ui/components/card'
import { Image } from '@/components/ui/image'
<div className="flex justify-center">
<Image
src="/static/blocks/triggers.png"
alt="Triggers Overview"
width={500}
height={350}
className="my-6"
/>
</div>
## Core Triggers

View File

@@ -42,11 +42,11 @@ El prompt del usuario representa los datos de entrada principales para el proces
El bloque Agente admite múltiples proveedores de LLM a través de una interfaz de inferencia unificada. Los modelos disponibles incluyen:
- **OpenAI**: GPT-5, GPT-4o, o1, o3, o4-mini, gpt-4.1
- **Anthropic**: Claude 3.7 Sonnet
- **OpenAI**: GPT-5.1, GPT-5, GPT-4o, o1, o3, o4-mini, gpt-4.1
- **Anthropic**: Claude 4.5 Sonnet, Claude Opus 4.1
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Otros proveedores**: Groq, Cerebras, xAI, DeepSeek
- **Modelos locales**: Modelos compatibles con Ollama
- **Otros proveedores**: Groq, Cerebras, xAI, Azure OpenAI, OpenRouter
- **Modelos locales**: modelos compatibles con Ollama o VLLM
### Temperatura

View File

@@ -52,7 +52,7 @@ Elige un modelo de IA para realizar la evaluación:
- **Anthropic**: Claude 3.7 Sonnet
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Otros proveedores**: Groq, Cerebras, xAI, DeepSeek
- **Modelos locales**: Modelos compatibles con Ollama
- **Modelos locales**: modelos compatibles con Ollama o VLLM
Utiliza modelos con fuertes capacidades de razonamiento como GPT-4o o Claude 3.7 Sonnet para obtener mejores resultados.

View File

@@ -63,11 +63,11 @@ Utiliza Generación Aumentada por Recuperación (RAG) con puntuación LLM para d
4. La validación se aprueba si la puntuación ≥ umbral (predeterminado: 3)
**Configuración:**
- **Base de conocimientos**: Selecciona entre tus bases de conocimientos existentes
- **Modelo**: Elige LLM para puntuación (requiere razonamiento sólido - se recomienda GPT-4o, Claude 3.7 Sonnet)
- **Clave API**: Autenticación para el proveedor LLM seleccionado (oculta automáticamente para modelos alojados/Ollama)
- **Base de conocimiento**: Selecciona entre tus bases de conocimiento existentes
- **Modelo**: Elige el LLM para la puntuación (requiere razonamiento sólido - se recomienda GPT-4o, Claude 3.7 Sonnet)
- **Clave API**: Autenticación para el proveedor LLM seleccionado (se oculta automáticamente para modelos alojados/Ollama o compatibles con VLLM)
- **Umbral de confianza**: Puntuación mínima para aprobar (0-10, predeterminado: 3)
- **Top K** (Avanzado): Número de fragmentos de la base de conocimientos a recuperar (predeterminado: 10)
- **Top K** (Avanzado): Número de fragmentos de la base de conocimiento a recuperar (predeterminado: 10)
**Salida:**
- `passed`: `true` si la puntuación de confianza ≥ umbral

View File

@@ -5,6 +5,7 @@ title: Human in the Loop
import { Callout } from 'fumadocs-ui/components/callout'
import { Tab, Tabs } from 'fumadocs-ui/components/tabs'
import { Image } from '@/components/ui/image'
import { Video } from '@/components/ui/video'
El bloque Human in the Loop pausa la ejecución del flujo de trabajo y espera la intervención humana antes de continuar. Úsalo para añadir puntos de aprobación, recopilar comentarios o reunir información adicional en puntos críticos de decisión.
@@ -76,7 +77,7 @@ Define los campos que los aprobadores completan al responder. Estos datos estar
}
```
Accede a los datos de reanudación en bloques posteriores usando `<blockId.resumeInput.fieldName>`.
Accede a los datos del resumen en bloques posteriores usando `<blockId.resumeInput.fieldName>`.
## Métodos de aprobación
@@ -174,8 +175,14 @@ Accede usando `<blockId.resumeInput.fieldName>`.
<approval1.resumeInput.approved> === true
```
El ejemplo a continuación muestra un portal de aprobación como lo ve un aprobador después de que el flujo de trabajo se pausa. Los aprobadores pueden revisar los datos y proporcionar entradas como parte de la reanudación del flujo de trabajo. Se puede acceder al portal de aprobación directamente a través de la URL única, `<blockId.url>`.
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="hitl-resume.mp4" width={700} height={450} />
</div>
## Bloques relacionados
- **[Condición](/blocks/condition)** - Ramifica basado en decisiones de aprobación
- **[Variables](/blocks/variables)** - Almacena historial de aprobaciones y metadatos
- **[Respuesta](/blocks/response)** - Devuelve resultados del flujo de trabajo a los llamantes de API
- **[Condición](/blocks/condition)** - Ramificación basada en decisiones de aprobación
- **[Variables](/blocks/variables)** - Almacenar historial de aprobación y metadatos
- **[Respuesta](/blocks/response)** - Devolver resultados del flujo de trabajo a los solicitantes de API

View File

@@ -56,7 +56,7 @@ Elige un modelo de IA para impulsar la decisión de enrutamiento:
- **Anthropic**: Claude 3.7 Sonnet
- **Google**: Gemini 2.5 Pro, Gemini 2.0 Flash
- **Otros proveedores**: Groq, Cerebras, xAI, DeepSeek
- **Modelos locales**: Modelos compatibles con Ollama
- **Modelos locales**: modelos compatibles con Ollama o VLLM
Utiliza modelos con fuertes capacidades de razonamiento como GPT-4o o Claude 3.7 Sonnet para obtener mejores resultados.

View File

@@ -4,6 +4,7 @@ title: Conceptos básicos
import { Callout } from 'fumadocs-ui/components/callout'
import { Step, Steps } from 'fumadocs-ui/components/steps'
import { Video } from '@/components/ui/video'
## Cómo funcionan las conexiones
@@ -28,11 +29,15 @@ Las conexiones son las vías que permiten que los datos fluyan entre bloques en
</Step>
</Steps>
<div className="mx-auto w-full overflow-hidden rounded-lg my-6">
<Video src="connections-build.mp4" width={700} height={450} />
</div>
### Flujo de conexión
El flujo de datos a través de las conexiones sigue estos principios:
1. **Flujo direccional**: Los datos siempre fluyen de las salidas a las entradas
1. **Flujo direccional**: Los datos siempre fluyen desde las salidas hacia las entradas
2. **Orden de ejecución**: Los bloques se ejecutan en orden según sus conexiones
3. **Transformación de datos**: Los datos pueden transformarse al pasar entre bloques
4. **Rutas condicionales**: Algunos bloques (como Router y Condition) pueden dirigir el flujo a diferentes rutas

Some files were not shown because too many files have changed in this diff Show More