From bf78802932f9e31d02035ebb6b3b09c0f874489f Mon Sep 17 00:00:00 2001 From: Waleed Latif Date: Sat, 21 Mar 2026 11:23:56 -0700 Subject: [PATCH 1/4] feat(integrations): add integrationType and tags classification to all blocks --- .claude/commands/add-block.md | 10 +- .claude/commands/add-integration.md | 6 +- .../components/integration-grid.tsx | 140 +++- .../integrations/data/integrations.json | 672 +++++++++++++----- .../app/(landing)/integrations/data/types.ts | 2 + apps/sim/blocks/blocks/a2a.ts | 3 + apps/sim/blocks/blocks/agent.ts | 4 +- apps/sim/blocks/blocks/ahrefs.ts | 4 +- apps/sim/blocks/blocks/airtable.ts | 4 +- apps/sim/blocks/blocks/airweave.ts | 4 +- apps/sim/blocks/blocks/algolia.ts | 4 +- apps/sim/blocks/blocks/amplitude.ts | 4 +- apps/sim/blocks/blocks/api.ts | 3 + apps/sim/blocks/blocks/apify.ts | 3 + apps/sim/blocks/blocks/apollo.ts | 4 +- apps/sim/blocks/blocks/arxiv.ts | 3 + apps/sim/blocks/blocks/asana.ts | 4 +- apps/sim/blocks/blocks/ashby.ts | 4 +- apps/sim/blocks/blocks/attio.ts | 4 +- apps/sim/blocks/blocks/box.ts | 4 +- apps/sim/blocks/blocks/brandfetch.ts | 4 +- apps/sim/blocks/blocks/browser_use.ts | 4 +- apps/sim/blocks/blocks/calcom.ts | 4 +- apps/sim/blocks/blocks/calendly.ts | 4 +- apps/sim/blocks/blocks/circleback.ts | 3 + apps/sim/blocks/blocks/clay.ts | 4 +- apps/sim/blocks/blocks/clerk.ts | 3 + apps/sim/blocks/blocks/cloudflare.ts | 4 +- apps/sim/blocks/blocks/confluence.ts | 4 +- apps/sim/blocks/blocks/cursor.ts | 4 +- apps/sim/blocks/blocks/databricks.ts | 4 +- apps/sim/blocks/blocks/datadog.ts | 4 +- apps/sim/blocks/blocks/devin.ts | 4 +- apps/sim/blocks/blocks/discord.ts | 4 +- apps/sim/blocks/blocks/docusign.ts | 4 +- apps/sim/blocks/blocks/dropbox.ts | 4 +- apps/sim/blocks/blocks/dspy.ts | 3 + apps/sim/blocks/blocks/dub.ts | 4 +- apps/sim/blocks/blocks/duckduckgo.ts | 3 + apps/sim/blocks/blocks/dynamodb.ts | 3 + apps/sim/blocks/blocks/elasticsearch.ts | 4 +- apps/sim/blocks/blocks/elevenlabs.ts | 4 +- apps/sim/blocks/blocks/enrich.ts | 4 +- apps/sim/blocks/blocks/evernote.ts | 4 +- apps/sim/blocks/blocks/exa.ts | 4 +- apps/sim/blocks/blocks/fathom.ts | 4 +- apps/sim/blocks/blocks/file.ts | 5 + apps/sim/blocks/blocks/firecrawl.ts | 4 +- apps/sim/blocks/blocks/fireflies.ts | 6 +- apps/sim/blocks/blocks/gamma.ts | 4 +- apps/sim/blocks/blocks/github.ts | 6 +- apps/sim/blocks/blocks/gitlab.ts | 4 +- apps/sim/blocks/blocks/gmail.ts | 6 +- apps/sim/blocks/blocks/gong.ts | 4 +- apps/sim/blocks/blocks/google.ts | 4 +- apps/sim/blocks/blocks/google_ads.ts | 4 +- apps/sim/blocks/blocks/google_bigquery.ts | 4 +- apps/sim/blocks/blocks/google_books.ts | 4 +- apps/sim/blocks/blocks/google_calendar.ts | 6 +- apps/sim/blocks/blocks/google_contacts.ts | 4 +- apps/sim/blocks/blocks/google_docs.ts | 4 +- apps/sim/blocks/blocks/google_drive.ts | 4 +- apps/sim/blocks/blocks/google_forms.ts | 3 + apps/sim/blocks/blocks/google_groups.ts | 4 +- apps/sim/blocks/blocks/google_maps.ts | 3 + apps/sim/blocks/blocks/google_meet.ts | 4 +- apps/sim/blocks/blocks/google_pagespeed.ts | 4 +- apps/sim/blocks/blocks/google_sheets.ts | 6 +- apps/sim/blocks/blocks/google_slides.ts | 6 +- apps/sim/blocks/blocks/google_tasks.ts | 4 +- apps/sim/blocks/blocks/google_translate.ts | 4 +- apps/sim/blocks/blocks/google_vault.ts | 4 +- apps/sim/blocks/blocks/grafana.ts | 4 +- apps/sim/blocks/blocks/grain.ts | 4 +- apps/sim/blocks/blocks/greenhouse.ts | 4 +- apps/sim/blocks/blocks/greptile.ts | 4 +- apps/sim/blocks/blocks/hex.ts | 4 +- apps/sim/blocks/blocks/hubspot.ts | 4 +- apps/sim/blocks/blocks/huggingface.ts | 4 +- apps/sim/blocks/blocks/hunter.ts | 4 +- apps/sim/blocks/blocks/image_generator.ts | 4 +- apps/sim/blocks/blocks/imap.ts | 3 + apps/sim/blocks/blocks/incidentio.ts | 4 +- apps/sim/blocks/blocks/infisical.ts | 4 +- apps/sim/blocks/blocks/intercom.ts | 6 +- apps/sim/blocks/blocks/jina.ts | 4 +- apps/sim/blocks/blocks/jira.ts | 4 +- .../blocks/blocks/jira_service_management.ts | 4 +- apps/sim/blocks/blocks/kalshi.ts | 6 +- apps/sim/blocks/blocks/langsmith.ts | 4 +- apps/sim/blocks/blocks/lemlist.ts | 4 +- apps/sim/blocks/blocks/linear.ts | 4 +- apps/sim/blocks/blocks/linkedin.ts | 4 +- apps/sim/blocks/blocks/linkup.ts | 4 +- apps/sim/blocks/blocks/loops.ts | 4 +- apps/sim/blocks/blocks/luma.ts | 4 +- apps/sim/blocks/blocks/mailchimp.ts | 4 +- apps/sim/blocks/blocks/mailgun.ts | 3 + apps/sim/blocks/blocks/mcp.ts | 3 + apps/sim/blocks/blocks/mem0.ts | 4 +- apps/sim/blocks/blocks/microsoft_ad.ts | 4 +- apps/sim/blocks/blocks/microsoft_dataverse.ts | 4 +- apps/sim/blocks/blocks/microsoft_excel.ts | 6 +- apps/sim/blocks/blocks/microsoft_planner.ts | 4 +- apps/sim/blocks/blocks/microsoft_teams.ts | 4 +- apps/sim/blocks/blocks/mistral_parse.ts | 4 +- apps/sim/blocks/blocks/mongodb.ts | 3 + apps/sim/blocks/blocks/mysql.ts | 3 + apps/sim/blocks/blocks/neo4j.ts | 3 + apps/sim/blocks/blocks/notion.ts | 6 +- apps/sim/blocks/blocks/obsidian.ts | 4 +- apps/sim/blocks/blocks/okta.ts | 3 + apps/sim/blocks/blocks/onedrive.ts | 4 +- apps/sim/blocks/blocks/onepassword.ts | 4 +- apps/sim/blocks/blocks/openai.ts | 4 +- apps/sim/blocks/blocks/outlook.ts | 4 +- apps/sim/blocks/blocks/pagerduty.ts | 4 +- apps/sim/blocks/blocks/parallel.ts | 4 +- apps/sim/blocks/blocks/perplexity.ts | 4 +- apps/sim/blocks/blocks/pinecone.ts | 4 +- apps/sim/blocks/blocks/pipedrive.ts | 4 +- apps/sim/blocks/blocks/polymarket.ts | 3 + apps/sim/blocks/blocks/postgresql.ts | 3 + apps/sim/blocks/blocks/posthog.ts | 4 +- apps/sim/blocks/blocks/pulse.ts | 4 +- apps/sim/blocks/blocks/qdrant.ts | 4 +- apps/sim/blocks/blocks/rds.ts | 3 + apps/sim/blocks/blocks/reddit.ts | 4 +- apps/sim/blocks/blocks/redis.ts | 4 +- apps/sim/blocks/blocks/reducto.ts | 4 +- apps/sim/blocks/blocks/resend.ts | 4 +- apps/sim/blocks/blocks/revenuecat.ts | 4 +- apps/sim/blocks/blocks/rss.ts | 3 + apps/sim/blocks/blocks/s3.ts | 4 +- apps/sim/blocks/blocks/salesforce.ts | 4 +- apps/sim/blocks/blocks/search.ts | 3 + apps/sim/blocks/blocks/sendgrid.ts | 3 + apps/sim/blocks/blocks/sentry.ts | 4 +- apps/sim/blocks/blocks/serper.ts | 4 +- apps/sim/blocks/blocks/servicenow.ts | 3 + apps/sim/blocks/blocks/sftp.ts | 4 +- apps/sim/blocks/blocks/sharepoint.ts | 4 +- apps/sim/blocks/blocks/shopify.ts | 4 +- apps/sim/blocks/blocks/similarweb.ts | 4 +- apps/sim/blocks/blocks/slack.ts | 4 +- apps/sim/blocks/blocks/smtp.ts | 4 +- apps/sim/blocks/blocks/spotify.ts | 4 +- apps/sim/blocks/blocks/sqs.ts | 3 + apps/sim/blocks/blocks/ssh.ts | 4 +- apps/sim/blocks/blocks/stagehand.ts | 4 +- apps/sim/blocks/blocks/stripe.ts | 4 +- apps/sim/blocks/blocks/stt.ts | 4 +- apps/sim/blocks/blocks/supabase.ts | 4 +- apps/sim/blocks/blocks/tavily.ts | 4 +- apps/sim/blocks/blocks/telegram.ts | 4 +- apps/sim/blocks/blocks/textract.ts | 4 +- apps/sim/blocks/blocks/tinybird.ts | 4 +- apps/sim/blocks/blocks/translate.ts | 4 +- apps/sim/blocks/blocks/trello.ts | 4 +- apps/sim/blocks/blocks/tts.ts | 4 +- apps/sim/blocks/blocks/twilio.ts | 4 +- apps/sim/blocks/blocks/twilio_voice.ts | 4 +- apps/sim/blocks/blocks/typeform.ts | 4 +- apps/sim/blocks/blocks/upstash.ts | 4 +- apps/sim/blocks/blocks/vercel.ts | 4 +- apps/sim/blocks/blocks/video_generator.ts | 4 +- apps/sim/blocks/blocks/vision.ts | 4 +- apps/sim/blocks/blocks/wealthbox.ts | 4 +- apps/sim/blocks/blocks/webflow.ts | 4 +- apps/sim/blocks/blocks/whatsapp.ts | 4 +- apps/sim/blocks/blocks/wikipedia.ts | 3 + apps/sim/blocks/blocks/wordpress.ts | 4 +- apps/sim/blocks/blocks/workday.ts | 3 + apps/sim/blocks/blocks/x.ts | 4 +- apps/sim/blocks/blocks/youtube.ts | 4 +- apps/sim/blocks/blocks/zendesk.ts | 4 +- apps/sim/blocks/blocks/zep.ts | 4 +- apps/sim/blocks/blocks/zoom.ts | 4 +- apps/sim/blocks/types.ts | 55 ++ scripts/generate-docs.ts | 63 ++ 180 files changed, 1287 insertions(+), 346 deletions(-) diff --git a/.claude/commands/add-block.md b/.claude/commands/add-block.md index 6d51062660d..e07600c2655 100644 --- a/.claude/commands/add-block.md +++ b/.claude/commands/add-block.md @@ -19,7 +19,7 @@ When the user asks you to create a block: ```typescript import { {ServiceName}Icon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { getScopesForService } from '@/lib/oauth/utils' export const {ServiceName}Block: BlockConfig = { @@ -29,6 +29,8 @@ export const {ServiceName}Block: BlockConfig = { longDescription: 'Detailed description for docs', docsLink: 'https://docs.sim.ai/tools/{service}', category: 'tools', // 'tools' | 'blocks' | 'triggers' + integrationType: IntegrationType.X, // Primary category (see IntegrationType enum) + tags: ['oauth', 'api'], // Cross-cutting tags (see IntegrationTag type) bgColor: '#HEXCOLOR', // Brand color icon: {ServiceName}Icon, @@ -629,7 +631,7 @@ export const registry: Record = { ```typescript import { ServiceIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { getScopesForService } from '@/lib/oauth/utils' export const ServiceBlock: BlockConfig = { @@ -639,6 +641,8 @@ export const ServiceBlock: BlockConfig = { longDescription: 'Full description for documentation...', docsLink: 'https://docs.sim.ai/tools/service', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['oauth', 'api'], bgColor: '#FF6B6B', icon: ServiceIcon, authMode: AuthMode.OAuth, @@ -796,6 +800,8 @@ All tool IDs referenced in `tools.access` and returned by `tools.config.tool` MU ## Checklist Before Finishing +- [ ] `integrationType` is set to the correct `IntegrationType` enum value +- [ ] `tags` array includes all applicable `IntegrationTag` values - [ ] All subBlocks have `id`, `title` (except switch), and `type` - [ ] Conditions use correct syntax (field, value, not, and) - [ ] DependsOn set for fields that need other values diff --git a/.claude/commands/add-integration.md b/.claude/commands/add-integration.md index c990f39a7b2..c0fb91e7fa9 100644 --- a/.claude/commands/add-integration.md +++ b/.claude/commands/add-integration.md @@ -113,7 +113,7 @@ export const {service}{Action}Tool: ToolConfig = { ```typescript import { {Service}Icon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { getScopesForService } from '@/lib/oauth/utils' export const {Service}Block: BlockConfig = { @@ -123,6 +123,8 @@ export const {Service}Block: BlockConfig = { longDescription: '...', docsLink: 'https://docs.sim.ai/tools/{service}', category: 'tools', + integrationType: IntegrationType.X, // Primary category (see IntegrationType enum) + tags: ['oauth', 'api'], // Cross-cutting tags (see IntegrationTag type) bgColor: '#HEXCOLOR', icon: {Service}Icon, authMode: AuthMode.OAuth, // or AuthMode.ApiKey @@ -410,6 +412,8 @@ If creating V2 versions (API-aligned outputs): ### Block - [ ] Created `blocks/blocks/{service}.ts` +- [ ] Set `integrationType` to the correct `IntegrationType` enum value +- [ ] Set `tags` array with all applicable `IntegrationTag` values - [ ] Defined operation dropdown with all operations - [ ] Added credential field with `requiredScopes: getScopesForService('{service}')` - [ ] Added conditional fields per operation diff --git a/apps/sim/app/(landing)/integrations/components/integration-grid.tsx b/apps/sim/app/(landing)/integrations/components/integration-grid.tsx index b06307162d4..61975a29513 100644 --- a/apps/sim/app/(landing)/integrations/components/integration-grid.tsx +++ b/apps/sim/app/(landing)/integrations/components/integration-grid.tsx @@ -6,54 +6,132 @@ import { blockTypeToIconMap } from '@/app/(landing)/integrations/data/icon-mappi import type { Integration } from '@/app/(landing)/integrations/data/types' import { IntegrationCard } from './integration-card' +const CATEGORY_LABELS: Record = { + ai: 'AI', + analytics: 'Analytics', + automation: 'Automation', + communication: 'Communication', + crm: 'CRM', + 'customer-support': 'Customer Support', + databases: 'Databases', + design: 'Design', + 'developer-tools': 'Developer Tools', + documents: 'Documents', + ecommerce: 'E-commerce', + email: 'Email', + 'file-storage': 'File Storage', + hr: 'HR', + media: 'Media', + productivity: 'Productivity', + 'sales-intelligence': 'Sales Intelligence', + search: 'Search', + security: 'Security', + social: 'Social', + other: 'Other', +} as const + interface IntegrationGridProps { integrations: Integration[] } export function IntegrationGrid({ integrations }: IntegrationGridProps) { const [query, setQuery] = useState('') + const [activeCategory, setActiveCategory] = useState(null) + + const availableCategories = useMemo(() => { + const counts = new Map() + for (const i of integrations) { + if (i.integrationType) { + counts.set(i.integrationType, (counts.get(i.integrationType) || 0) + 1) + } + } + return Array.from(counts.entries()) + .sort((a, b) => b[1] - a[1]) + .map(([key]) => key) + }, [integrations]) const filtered = useMemo(() => { + let results = integrations + + if (activeCategory) { + results = results.filter((i) => i.integrationType === activeCategory) + } + const q = query.trim().toLowerCase() - if (!q) return integrations - return integrations.filter( - (i) => - i.name.toLowerCase().includes(q) || - i.description.toLowerCase().includes(q) || - i.operations.some( - (op) => op.name.toLowerCase().includes(q) || op.description.toLowerCase().includes(q) - ) || - i.triggers.some((t) => t.name.toLowerCase().includes(q)) - ) - }, [integrations, query]) + if (q) { + results = results.filter( + (i) => + i.name.toLowerCase().includes(q) || + i.description.toLowerCase().includes(q) || + i.operations.some( + (op) => op.name.toLowerCase().includes(q) || op.description.toLowerCase().includes(q) + ) || + i.triggers.some((t) => t.name.toLowerCase().includes(q)) + ) + } + + return results + }, [integrations, query, activeCategory]) return (
-
-
+ + setQuery(e.target.value)} + className='pl-9' + aria-label='Search integrations' + /> +
+
+ +
+ + {availableCategories.map((cat) => ( + + ))}
{filtered.length === 0 ? (

- No integrations found for “{query}” + No integrations found + {query ? <> for “{query}” : null} + {activeCategory ? <> in {CATEGORY_LABELS[activeCategory] || activeCategory} : null}

) : (
diff --git a/apps/sim/app/(landing)/integrations/data/integrations.json b/apps/sim/app/(landing)/integrations/data/integrations.json index d1048bd260c..9d79e48425e 100644 --- a/apps/sim/app/(landing)/integrations/data/integrations.json +++ b/apps/sim/app/(landing)/integrations/data/integrations.json @@ -50,7 +50,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "security", + "tags": ["api"] }, { "type": "a2a", @@ -99,7 +101,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["api", "automation"] }, { "type": "ahrefs", @@ -148,7 +152,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["marketing"] }, { "type": "airtable", @@ -203,7 +209,9 @@ ], "triggerCount": 1, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "airweave", @@ -219,7 +227,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["vector-search"] }, { "type": "algolia", @@ -296,7 +306,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["vector-search", "api"] }, { "type": "dynamodb", @@ -341,7 +353,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["cloud"] }, { "type": "rds", @@ -382,7 +396,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["cloud"] }, { "type": "sqs", @@ -403,7 +419,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["cloud"] }, { "type": "amplitude", @@ -464,7 +482,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["marketing"] }, { "type": "apify", @@ -489,7 +509,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "automation", + "tags": ["web-scraping", "automation"] }, { "type": "apollo", @@ -606,7 +628,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "sales-intelligence", + "tags": ["enrichment"] }, { "type": "arxiv", @@ -635,7 +659,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["document-processing"] }, { "type": "asana", @@ -676,7 +702,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["project-management", "oauth"] }, { "type": "ashby", @@ -836,7 +864,9 @@ ], "triggerCount": 6, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "hr", + "tags": ["oauth"] }, { "type": "attio", @@ -1104,7 +1134,9 @@ ], "triggerCount": 18, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "crm", + "tags": ["oauth"] }, { "type": "textract_v2", @@ -1120,7 +1152,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["document-processing", "ocr", "cloud"] }, { "type": "microsoft_ad", @@ -1189,7 +1223,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "security", + "tags": ["oauth", "microsoft-365"] }, { "type": "box", @@ -1266,7 +1302,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "file-storage", + "tags": ["oauth", "cloud"] }, { "type": "brandfetch", @@ -1291,7 +1329,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "sales-intelligence", + "tags": ["enrichment", "api"] }, { "type": "browser_use", @@ -1307,7 +1347,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "automation", + "tags": ["web-scraping", "automation"] }, { "type": "calcom", @@ -1446,7 +1488,9 @@ ], "triggerCount": 9, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["calendar", "oauth"] }, { "type": "calendly", @@ -1512,7 +1556,9 @@ ], "triggerCount": 4, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["calendar", "oauth"] }, { "type": "circleback", @@ -1544,7 +1590,9 @@ ], "triggerCount": 3, "authType": "none", - "category": "triggers" + "category": "triggers", + "integrationType": "ai", + "tags": ["meeting"] }, { "type": "clay", @@ -1560,7 +1608,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "sales-intelligence", + "tags": ["enrichment"] }, { "type": "clerk", @@ -1621,7 +1671,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "security", + "tags": ["oauth"] }, { "type": "cloudflare", @@ -1690,7 +1742,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["cloud", "api"] }, { "type": "confluence_v2", @@ -1972,7 +2026,9 @@ ], "triggerCount": 16, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth"] }, { "type": "cursor_v2", @@ -2017,7 +2073,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["api"] }, { "type": "databricks", @@ -2066,7 +2124,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["data-warehouse", "cloud"] }, { "type": "datadog", @@ -2131,7 +2191,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["monitoring", "cloud"] }, { "type": "devin", @@ -2164,7 +2226,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["api"] }, { "type": "discord", @@ -2321,7 +2385,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["oauth", "webhooks"] }, { "type": "docusign", @@ -2370,7 +2436,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth"] }, { "type": "dropbox", @@ -2427,7 +2495,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "file-storage", + "tags": ["oauth", "cloud"] }, { "type": "dspy", @@ -2456,7 +2526,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["llm"] }, { "type": "dub", @@ -2501,7 +2573,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["api", "marketing"] }, { "type": "duckduckgo", @@ -2517,7 +2591,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "elasticsearch", @@ -2586,7 +2662,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["vector-search"] }, { "type": "elevenlabs", @@ -2602,7 +2680,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "media", + "tags": ["text-to-speech", "api"] }, { "type": "openai", @@ -2618,7 +2698,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["llm", "api"] }, { "type": "enrich", @@ -2751,7 +2833,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "sales-intelligence", + "tags": ["enrichment", "api"] }, { "type": "evernote", @@ -2812,7 +2896,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth"] }, { "type": "exa", @@ -2849,7 +2935,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "fathom", @@ -2897,7 +2985,9 @@ ], "triggerCount": 2, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["meeting"] }, { "type": "file_v3", @@ -2913,7 +3003,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "file-storage", + "tags": ["api"] }, { "type": "firecrawl", @@ -2954,7 +3046,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "automation", + "tags": ["web-scraping", "api"] }, { "type": "fireflies_v2", @@ -3017,7 +3111,9 @@ ], "triggerCount": 1, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "media", + "tags": ["meeting", "oauth"] }, { "type": "gamma", @@ -3054,7 +3150,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "design", + "tags": ["api"] }, { "type": "github_v2", @@ -3459,7 +3557,9 @@ ], "triggerCount": 11, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["oauth", "webhooks"] }, { "type": "gitlab", @@ -3552,7 +3652,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["oauth"] }, { "type": "gmail_v2", @@ -3617,7 +3719,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["oauth", "google-workspace"] }, { "type": "gong", @@ -3706,7 +3810,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "sales-intelligence", + "tags": ["meeting", "oauth"] }, { "type": "google_ads", @@ -3747,7 +3853,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["marketing", "oauth", "google-workspace"] }, { "type": "google_bigquery", @@ -3784,7 +3892,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["data-warehouse", "oauth", "google-workspace"] }, { "type": "google_books", @@ -3809,7 +3919,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api", "google-workspace"] }, { "type": "google_calendar_v2", @@ -3866,7 +3978,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["calendar", "oauth", "google-workspace"] }, { "type": "google_contacts", @@ -3907,7 +4021,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["oauth", "google-workspace"] }, { "type": "google_docs", @@ -3936,7 +4052,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth", "google-workspace"] }, { "type": "google_drive", @@ -4009,7 +4127,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "file-storage", + "tags": ["oauth", "cloud", "google-workspace"] }, { "type": "google_forms", @@ -4068,7 +4188,9 @@ ], "triggerCount": 1, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth", "google-workspace"] }, { "type": "google_groups", @@ -4149,7 +4271,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["oauth", "google-workspace"] }, { "type": "google_maps", @@ -4218,7 +4342,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["api", "google-workspace"] }, { "type": "google_meet", @@ -4259,7 +4385,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["meeting", "oauth", "google-workspace"] }, { "type": "google_pagespeed", @@ -4275,7 +4403,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["api", "google-workspace"] }, { "type": "google_search", @@ -4291,7 +4421,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api", "google-workspace"] }, { "type": "google_sheets_v2", @@ -4352,7 +4484,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth", "google-workspace"] }, { "type": "google_slides_v2", @@ -4425,7 +4559,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth", "google-workspace"] }, { "type": "google_tasks", @@ -4466,7 +4602,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["oauth", "google-workspace"] }, { "type": "google_translate", @@ -4491,7 +4629,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["api", "google-workspace"] }, { "type": "google_vault", @@ -4536,7 +4676,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "security", + "tags": ["oauth", "google-workspace"] }, { "type": "grafana", @@ -4629,7 +4771,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["monitoring", "api"] }, { "type": "grain", @@ -4723,7 +4867,9 @@ ], "triggerCount": 8, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "media", + "tags": ["meeting", "api"] }, { "type": "greenhouse", @@ -4784,7 +4930,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "hr", + "tags": ["oauth"] }, { "type": "greptile", @@ -4817,7 +4965,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["api"] }, { "type": "hex", @@ -4898,7 +5048,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["data-warehouse", "api"] }, { "type": "hubspot", @@ -5046,7 +5198,9 @@ ], "triggerCount": 18, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "crm", + "tags": ["oauth", "marketing"] }, { "type": "huggingface", @@ -5062,7 +5216,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["llm", "api"] }, { "type": "hunter", @@ -5103,7 +5259,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "sales-intelligence", + "tags": ["enrichment", "api"] }, { "type": "image_generator", @@ -5119,7 +5277,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["image-generation"] }, { "type": "imap", @@ -5141,7 +5301,9 @@ ], "triggerCount": 1, "authType": "none", - "category": "triggers" + "category": "triggers", + "integrationType": "email", + "tags": ["api"] }, { "type": "incidentio", @@ -5334,7 +5496,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["incident-management", "api"] }, { "type": "infisical", @@ -5371,7 +5535,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "security", + "tags": ["api"] }, { "type": "intercom_v2", @@ -5512,7 +5678,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "customer-support", + "tags": ["customer-support", "oauth"] }, { "type": "jina", @@ -5537,7 +5705,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["web-scraping", "api"] }, { "type": "jira", @@ -5681,7 +5851,9 @@ ], "triggerCount": 6, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["project-management", "oauth"] }, { "type": "jira_service_management", @@ -5782,7 +5954,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "customer-support", + "tags": ["customer-support", "oauth"] }, { "type": "kalshi_v2", @@ -5867,7 +6041,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["prediction-markets", "api"] }, { "type": "knowledge", @@ -5965,7 +6141,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["monitoring", "api"] }, { "type": "lemlist", @@ -6040,7 +6218,9 @@ ], "triggerCount": 9, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["marketing", "api"] }, { "type": "linear", @@ -6445,7 +6625,9 @@ ], "triggerCount": 15, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["project-management", "oauth"] }, { "type": "linkedin", @@ -6470,7 +6652,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "social", + "tags": ["oauth", "marketing"] }, { "type": "linkup", @@ -6486,7 +6670,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "loops", @@ -6543,7 +6729,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["marketing", "api"] }, { "type": "luma", @@ -6584,7 +6772,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["calendar", "api"] }, { "type": "mailchimp", @@ -6893,7 +7083,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["marketing", "oauth"] }, { "type": "mailgun", @@ -6942,7 +7134,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["api"] }, { "type": "mem0", @@ -6971,7 +7165,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["llm", "api"] }, { "type": "memory", @@ -7089,7 +7285,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["oauth", "microsoft-365"] }, { "type": "microsoft_excel_v2", @@ -7114,7 +7312,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth", "microsoft-365"] }, { "type": "microsoft_planner", @@ -7183,7 +7383,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["project-management", "oauth", "microsoft-365"] }, { "type": "microsoft_teams", @@ -7262,7 +7464,9 @@ ], "triggerCount": 1, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["oauth", "microsoft-365"] }, { "type": "mistral_parse_v3", @@ -7278,7 +7482,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["document-processing", "ocr"] }, { "type": "mongodb", @@ -7319,7 +7525,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "mysql", @@ -7360,7 +7568,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "neo4j", @@ -7405,7 +7615,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "notion_v2", @@ -7421,7 +7633,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth"] }, { "type": "obsidian", @@ -7498,7 +7712,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["api"] }, { "type": "okta", @@ -7587,7 +7803,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "security", + "tags": ["oauth"] }, { "type": "onedrive", @@ -7628,7 +7846,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "file-storage", + "tags": ["oauth", "microsoft-365", "cloud"] }, { "type": "outlook", @@ -7681,7 +7901,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["oauth", "microsoft-365"] }, { "type": "pagerduty", @@ -7722,7 +7944,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["incident-management", "oauth"] }, { "type": "parallel_ai", @@ -7751,7 +7975,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "perplexity", @@ -7776,7 +8002,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["llm", "api"] }, { "type": "pinecone", @@ -7813,7 +8041,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["vector-search", "api"] }, { "type": "pipedrive", @@ -7902,7 +8132,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "crm", + "tags": ["oauth"] }, { "type": "polymarket", @@ -7999,7 +8231,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["prediction-markets", "api"] }, { "type": "postgresql", @@ -8040,7 +8274,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "posthog", @@ -8229,7 +8465,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["monitoring", "api"] }, { "type": "pulse_v2", @@ -8245,7 +8483,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["document-processing", "ocr"] }, { "type": "qdrant", @@ -8274,7 +8514,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["vector-search", "api"] }, { "type": "reddit", @@ -8359,7 +8601,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "social", + "tags": ["api"] }, { "type": "redis", @@ -8464,7 +8708,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "reducto_v2", @@ -8480,7 +8726,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["document-processing", "ocr"] }, { "type": "resend", @@ -8529,7 +8777,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["api"] }, { "type": "revenuecat", @@ -8586,7 +8836,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ecommerce", + "tags": ["payments", "api"] }, { "type": "s3", @@ -8623,7 +8875,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "file-storage", + "tags": ["cloud"] }, { "type": "salesforce", @@ -8780,7 +9034,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "crm", + "tags": ["oauth"] }, { "type": "search", @@ -8796,7 +9052,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "sendgrid", @@ -8877,7 +9135,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["api", "marketing"] }, { "type": "sentry", @@ -8942,7 +9202,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["monitoring", "api"] }, { "type": "serper", @@ -8958,7 +9220,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "servicenow", @@ -8991,7 +9255,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "customer-support", + "tags": ["customer-support", "oauth"] }, { "type": "sftp", @@ -9032,7 +9298,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "file-storage", + "tags": ["api"] }, { "type": "sharepoint", @@ -9081,7 +9349,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth", "microsoft-365"] }, { "type": "shopify", @@ -9182,7 +9452,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "ecommerce", + "tags": ["oauth"] }, { "type": "similarweb", @@ -9219,7 +9491,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["marketing", "api"] }, { "type": "slack", @@ -9334,7 +9608,9 @@ ], "triggerCount": 1, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["oauth", "webhooks"] }, { "type": "smtp", @@ -9350,7 +9626,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "email", + "tags": ["api"] }, { "type": "stt_v2", @@ -9366,7 +9644,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["speech-to-text"] }, { "type": "ssh", @@ -9435,7 +9715,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["api"] }, { "type": "stagehand", @@ -9460,7 +9742,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "automation", + "tags": ["web-scraping", "automation"] }, { "type": "stripe", @@ -9683,7 +9967,9 @@ ], "triggerCount": 1, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ecommerce", + "tags": ["payments", "api"] }, { "type": "supabase", @@ -9788,7 +10074,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "tavily", @@ -9821,7 +10109,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "telegram", @@ -9872,7 +10162,9 @@ ], "triggerCount": 1, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["api"] }, { "type": "tts", @@ -9888,7 +10180,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["text-to-speech"] }, { "type": "tinybird", @@ -9913,7 +10207,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "analytics", + "tags": ["data-warehouse", "api"] }, { "type": "translate", @@ -9929,7 +10225,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["api"] }, { "type": "trello", @@ -9970,7 +10268,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "productivity", + "tags": ["project-management", "oauth"] }, { "type": "twilio_sms", @@ -9986,7 +10286,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["api"] }, { "type": "twilio_voice", @@ -10021,7 +10323,9 @@ ], "triggerCount": 1, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["api"] }, { "type": "typeform", @@ -10076,7 +10380,9 @@ ], "triggerCount": 1, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "documents", + "tags": ["oauth"] }, { "type": "upstash", @@ -10157,7 +10463,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "databases", + "tags": ["api"] }, { "type": "vercel", @@ -10374,7 +10682,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "developer-tools", + "tags": ["cloud", "oauth"] }, { "type": "video_generator_v2", @@ -10390,7 +10700,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["video-generation"] }, { "type": "vision_v2", @@ -10406,7 +10718,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["llm"] }, { "type": "wealthbox", @@ -10447,7 +10761,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "crm", + "tags": ["api"] }, { "type": "webflow", @@ -10505,7 +10821,9 @@ ], "triggerCount": 4, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "design", + "tags": ["oauth"] }, { "type": "whatsapp", @@ -10527,7 +10845,9 @@ ], "triggerCount": 1, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["api"] }, { "type": "wikipedia", @@ -10560,7 +10880,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "search", + "tags": ["api"] }, { "type": "wordpress", @@ -10681,7 +11003,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "design", + "tags": ["oauth"] }, { "type": "workday", @@ -10738,7 +11062,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "hr", + "tags": ["oauth"] }, { "type": "x", @@ -10867,7 +11193,9 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "social", + "tags": ["oauth"] }, { "type": "youtube", @@ -10920,7 +11248,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "media", + "tags": ["oauth", "google-workspace"] }, { "type": "zendesk", @@ -11041,7 +11371,9 @@ "triggers": [], "triggerCount": 0, "authType": "none", - "category": "tools" + "category": "tools", + "integrationType": "customer-support", + "tags": ["customer-support", "oauth"] }, { "type": "zep", @@ -11094,7 +11426,9 @@ "triggers": [], "triggerCount": 0, "authType": "api-key", - "category": "tools" + "category": "tools", + "integrationType": "ai", + "tags": ["llm", "api"] }, { "type": "zoom", @@ -11151,6 +11485,8 @@ "triggers": [], "triggerCount": 0, "authType": "oauth", - "category": "tools" + "category": "tools", + "integrationType": "communication", + "tags": ["meeting", "oauth"] } ] diff --git a/apps/sim/app/(landing)/integrations/data/types.ts b/apps/sim/app/(landing)/integrations/data/types.ts index 125247ce61f..b1a17f7a2b2 100644 --- a/apps/sim/app/(landing)/integrations/data/types.ts +++ b/apps/sim/app/(landing)/integrations/data/types.ts @@ -34,4 +34,6 @@ export interface Integration { triggerCount: number authType: AuthType category: string + integrationType?: string + tags?: string[] } diff --git a/apps/sim/blocks/blocks/a2a.ts b/apps/sim/blocks/blocks/a2a.ts index b12905b4b78..3bab9dfec91 100644 --- a/apps/sim/blocks/blocks/a2a.ts +++ b/apps/sim/blocks/blocks/a2a.ts @@ -1,5 +1,6 @@ import { A2AIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { ToolResponse } from '@/tools/types' @@ -63,6 +64,8 @@ export const A2ABlock: BlockConfig = { 'Compatible with any A2A-compliant agent including LangGraph, Google ADK, and other Sim workflows.', docsLink: 'https://docs.sim.ai/blocks/a2a', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api', 'automation'], bgColor: '#4151B5', icon: A2AIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/agent.ts b/apps/sim/blocks/blocks/agent.ts index 651d3d9295b..920952207d5 100644 --- a/apps/sim/blocks/blocks/agent.ts +++ b/apps/sim/blocks/blocks/agent.ts @@ -2,7 +2,7 @@ import { createLogger } from '@sim/logger' import { AgentIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { getApiKeyCondition, getModelOptions, RESPONSE_FORMAT_WAND_CONFIG } from '@/blocks/utils' import { getBaseModelProviders, @@ -69,6 +69,8 @@ export const AgentBlock: BlockConfig = { `, docsLink: 'https://docs.sim.ai/blocks/agent', category: 'blocks', + integrationType: IntegrationType.AI, + tags: ['llm', 'automation'], bgColor: 'var(--brand-primary-hex)', icon: AgentIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/ahrefs.ts b/apps/sim/blocks/blocks/ahrefs.ts index 7624f10b007..81b64e89b23 100644 --- a/apps/sim/blocks/blocks/ahrefs.ts +++ b/apps/sim/blocks/blocks/ahrefs.ts @@ -1,6 +1,6 @@ import { AhrefsIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { AhrefsResponse } from '@/tools/ahrefs/types' export const AhrefsBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const AhrefsBlock: BlockConfig = { 'Integrate Ahrefs SEO tools into your workflow. Analyze domain ratings, backlinks, organic keywords, top pages, and more. Requires an Ahrefs Enterprise plan with API access.', docsLink: 'https://docs.ahrefs.com/docs/api/reference/introduction', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['marketing'], bgColor: '#E0E0E0', icon: AhrefsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/airtable.ts b/apps/sim/blocks/blocks/airtable.ts index ced9b6d8f97..2ac157fe108 100644 --- a/apps/sim/blocks/blocks/airtable.ts +++ b/apps/sim/blocks/blocks/airtable.ts @@ -1,7 +1,7 @@ import { AirtableIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { AirtableResponse } from '@/tools/airtable/types' import { getTrigger } from '@/triggers' @@ -14,6 +14,8 @@ export const AirtableBlock: BlockConfig = { 'Integrates Airtable into the workflow. Can list bases, list tables (with schema), and create, get, list, or update records. Can also be used in trigger mode to trigger a workflow when an update is made to an Airtable table.', docsLink: 'https://docs.sim.ai/tools/airtable', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['api'], bgColor: '#E0E0E0', icon: AirtableIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/airweave.ts b/apps/sim/blocks/blocks/airweave.ts index 3edf0335fa1..a1933b42094 100644 --- a/apps/sim/blocks/blocks/airweave.ts +++ b/apps/sim/blocks/blocks/airweave.ts @@ -1,6 +1,6 @@ import { AirweaveIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { AirweaveSearchResponse } from '@/tools/airweave/types' export const AirweaveBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const AirweaveBlock: BlockConfig = { 'Search across your synced data sources using Airweave. Supports semantic search with hybrid, neural, or keyword retrieval strategies. Optionally generate AI-powered answers from search results.', docsLink: 'https://docs.airweave.ai', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['vector-search'], bgColor: '#6366F1', icon: AirweaveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/algolia.ts b/apps/sim/blocks/blocks/algolia.ts index 0848d6175a0..7539f9a8585 100644 --- a/apps/sim/blocks/blocks/algolia.ts +++ b/apps/sim/blocks/blocks/algolia.ts @@ -1,6 +1,6 @@ import { AlgoliaIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const AlgoliaBlock: BlockConfig = { type: 'algolia', @@ -10,6 +10,8 @@ export const AlgoliaBlock: BlockConfig = { 'Integrate Algolia into your workflow. Search indices, manage records (add, update, delete, browse), configure index settings, and perform batch operations.', docsLink: 'https://docs.sim.ai/tools/algolia', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['vector-search', 'api'], bgColor: '#003DFF', icon: AlgoliaIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/amplitude.ts b/apps/sim/blocks/blocks/amplitude.ts index e9cbf618342..b8a5c9ac9f3 100644 --- a/apps/sim/blocks/blocks/amplitude.ts +++ b/apps/sim/blocks/blocks/amplitude.ts @@ -1,5 +1,5 @@ import { AmplitudeIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' export const AmplitudeBlock: BlockConfig = { type: 'amplitude', @@ -9,6 +9,8 @@ export const AmplitudeBlock: BlockConfig = { 'Integrate Amplitude into your workflow to track events, identify users and groups, search for users, query analytics, and retrieve revenue data.', docsLink: 'https://docs.sim.ai/tools/amplitude', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['marketing'], bgColor: '#1B1F3B', icon: AmplitudeIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/api.ts b/apps/sim/blocks/blocks/api.ts index e12c1422ff1..8ce0eaa6463 100644 --- a/apps/sim/blocks/blocks/api.ts +++ b/apps/sim/blocks/blocks/api.ts @@ -1,5 +1,6 @@ import { ApiIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { RequestResponse } from '@/tools/http/types' export const ApiBlock: BlockConfig = { @@ -13,6 +14,8 @@ export const ApiBlock: BlockConfig = { - Curl the endpoint yourself before filling out the API block to make sure it's working IF you have the necessary authentication headers. Clarify with the user if you need any additional headers. `, category: 'blocks', + integrationType: IntegrationType.DeveloperTools, + tags: ['api'], bgColor: '#2F55FF', icon: ApiIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/apify.ts b/apps/sim/blocks/blocks/apify.ts index 39b92f7f2b3..51b83609ce7 100644 --- a/apps/sim/blocks/blocks/apify.ts +++ b/apps/sim/blocks/blocks/apify.ts @@ -1,5 +1,6 @@ import { ApifyIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { RunActorResult } from '@/tools/apify/types' export const ApifyBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const ApifyBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/apify', category: 'tools', + integrationType: IntegrationType.Automation, + tags: ['web-scraping', 'automation'], bgColor: '#E0E0E0', icon: ApifyIcon, diff --git a/apps/sim/blocks/blocks/apollo.ts b/apps/sim/blocks/blocks/apollo.ts index 11e03b52acc..0e93b96eaad 100644 --- a/apps/sim/blocks/blocks/apollo.ts +++ b/apps/sim/blocks/blocks/apollo.ts @@ -1,6 +1,6 @@ import { ApolloIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { ApolloResponse } from '@/tools/apollo/types' export const ApolloBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const ApolloBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/apollo', category: 'tools', + integrationType: IntegrationType.SalesIntelligence, + tags: ['enrichment'], bgColor: '#EBF212', icon: ApolloIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/arxiv.ts b/apps/sim/blocks/blocks/arxiv.ts index b8946f0c9b2..72e47ea3b36 100644 --- a/apps/sim/blocks/blocks/arxiv.ts +++ b/apps/sim/blocks/blocks/arxiv.ts @@ -1,5 +1,6 @@ import { ArxivIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { ArxivResponse } from '@/tools/arxiv/types' export const ArxivBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const ArxivBlock: BlockConfig = { 'Integrates ArXiv into the workflow. Can search for papers, get paper details, and get author papers. Does not require OAuth or an API key.', docsLink: 'https://docs.sim.ai/tools/arxiv', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['document-processing'], bgColor: '#E0E0E0', icon: ArxivIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/asana.ts b/apps/sim/blocks/blocks/asana.ts index a92c7384a8e..7c80008e038 100644 --- a/apps/sim/blocks/blocks/asana.ts +++ b/apps/sim/blocks/blocks/asana.ts @@ -1,7 +1,7 @@ import { AsanaIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { AsanaResponse } from '@/tools/asana/types' export const AsanaBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const AsanaBlock: BlockConfig = { longDescription: 'Integrate Asana into the workflow. Can read, write, and update tasks.', docsLink: 'https://docs.sim.ai/tools/asana', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['project-management', 'oauth'], bgColor: '#E0E0E0', icon: AsanaIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/ashby.ts b/apps/sim/blocks/blocks/ashby.ts index 175979503b3..5e9e16b2b66 100644 --- a/apps/sim/blocks/blocks/ashby.ts +++ b/apps/sim/blocks/blocks/ashby.ts @@ -1,5 +1,5 @@ import { AshbyIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import { getTrigger } from '@/triggers' export const AshbyBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const AshbyBlock: BlockConfig = { 'Integrate Ashby into the workflow. Manage candidates (list, get, create, update, search, tag), applications (list, get, create, change stage), jobs (list, get), job postings (list, get), offers (list, get), notes (list, create), interviews (list), and reference data (sources, tags, archive reasons, custom fields, departments, locations, openings, users).', docsLink: 'https://docs.sim.ai/tools/ashby', category: 'tools', + integrationType: IntegrationType.HR, + tags: ['oauth'], bgColor: '#5D4ED6', icon: AshbyIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/attio.ts b/apps/sim/blocks/blocks/attio.ts index aebea95d363..725ea555a8e 100644 --- a/apps/sim/blocks/blocks/attio.ts +++ b/apps/sim/blocks/blocks/attio.ts @@ -1,6 +1,6 @@ import { AttioIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { AttioResponse } from '@/tools/attio/types' import { getTrigger } from '@/triggers' @@ -12,6 +12,8 @@ export const AttioBlock: BlockConfig = { 'Connect to Attio to manage CRM records (people, companies, custom objects), notes, tasks, lists, list entries, comments, workspace members, and webhooks.', docsLink: 'https://docs.sim.ai/tools/attio', category: 'tools', + integrationType: IntegrationType.CRM, + tags: ['oauth'], bgColor: '#1D1E20', icon: AttioIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/box.ts b/apps/sim/blocks/blocks/box.ts index a341b9e7cf6..8c2639c43d3 100644 --- a/apps/sim/blocks/blocks/box.ts +++ b/apps/sim/blocks/blocks/box.ts @@ -1,7 +1,7 @@ import { BoxCompanyIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' export const BoxBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const BoxBlock: BlockConfig = { 'Integrate Box into your workflow to manage files, folders, and e-signatures. Upload and download files, search content, create folders, send documents for e-signature, track signing status, and more.', docsLink: 'https://docs.sim.ai/tools/box', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['oauth', 'cloud'], bgColor: '#FFFFFF', icon: BoxCompanyIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/brandfetch.ts b/apps/sim/blocks/blocks/brandfetch.ts index 68bbcd1db30..1154f33fa8e 100644 --- a/apps/sim/blocks/blocks/brandfetch.ts +++ b/apps/sim/blocks/blocks/brandfetch.ts @@ -1,6 +1,6 @@ import { BrandfetchIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { BrandfetchGetBrandResponse, BrandfetchSearchResponse } from '@/tools/brandfetch/types' export const BrandfetchBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const BrandfetchBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const BrowserUseBlock: BlockConfig = { 'Integrate Browser Use into the workflow. Can navigate the web and perform actions as if a real user was interacting with the browser.', docsLink: 'https://docs.sim.ai/tools/browser_use', category: 'tools', + integrationType: IntegrationType.Automation, + tags: ['web-scraping', 'automation'], bgColor: '#181C1E', icon: BrowserUseIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/calcom.ts b/apps/sim/blocks/blocks/calcom.ts index 0a32aa854dc..cdc3dcdfe7e 100644 --- a/apps/sim/blocks/blocks/calcom.ts +++ b/apps/sim/blocks/blocks/calcom.ts @@ -1,6 +1,6 @@ import { CalComIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { ToolResponse } from '@/tools/types' import { getTrigger } from '@/triggers' @@ -14,6 +14,8 @@ export const CalComBlock: BlockConfig = { 'Integrate Cal.com into your workflow. Create and manage bookings, event types, schedules, and check availability slots. Supports creating, listing, rescheduling, and canceling bookings, as well as managing event types and schedules. Can also trigger workflows based on Cal.com webhook events (booking created, cancelled, rescheduled). Connect your Cal.com account via OAuth.', docsLink: 'https://docs.sim.ai/tools/calcom', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['calendar', 'oauth'], bgColor: '#FFFFFE', icon: CalComIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/calendly.ts b/apps/sim/blocks/blocks/calendly.ts index 4f4bfcce69e..6e7722f32c0 100644 --- a/apps/sim/blocks/blocks/calendly.ts +++ b/apps/sim/blocks/blocks/calendly.ts @@ -1,6 +1,6 @@ import { CalendlyIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { ToolResponse } from '@/tools/types' import { getTrigger } from '@/triggers' @@ -14,6 +14,8 @@ export const CalendlyBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/calendly', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['calendar', 'oauth'], bgColor: '#FFFFFF', icon: CalendlyIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/circleback.ts b/apps/sim/blocks/blocks/circleback.ts index b6fc448c878..8dc075fe934 100644 --- a/apps/sim/blocks/blocks/circleback.ts +++ b/apps/sim/blocks/blocks/circleback.ts @@ -1,5 +1,6 @@ import { CirclebackIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import { getTrigger } from '@/triggers' export const CirclebackBlock: BlockConfig = { @@ -9,6 +10,8 @@ export const CirclebackBlock: BlockConfig = { longDescription: 'Receive meeting notes, action items, transcripts, and recordings when meetings are processed. Circleback uses webhooks to push data to your workflows.', category: 'triggers', + integrationType: IntegrationType.AI, + tags: ['meeting'], bgColor: 'linear-gradient(180deg, #E0F7FA 0%, #FFFFFF 100%)', docsLink: 'https://docs.sim.ai/tools/circleback', icon: CirclebackIcon, diff --git a/apps/sim/blocks/blocks/clay.ts b/apps/sim/blocks/blocks/clay.ts index 0d981c9f3e5..75db41943a3 100644 --- a/apps/sim/blocks/blocks/clay.ts +++ b/apps/sim/blocks/blocks/clay.ts @@ -1,5 +1,5 @@ import { ClayIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { ClayPopulateResponse } from '@/tools/clay/types' export const ClayBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const ClayBlock: BlockConfig = { longDescription: 'Integrate Clay into the workflow. Can populate a table with data.', docsLink: 'https://docs.sim.ai/tools/clay', category: 'tools', + integrationType: IntegrationType.SalesIntelligence, + tags: ['enrichment'], bgColor: '#E0E0E0', icon: ClayIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/clerk.ts b/apps/sim/blocks/blocks/clerk.ts index 246d50d4e65..41ee03c37b9 100644 --- a/apps/sim/blocks/blocks/clerk.ts +++ b/apps/sim/blocks/blocks/clerk.ts @@ -1,5 +1,6 @@ import { ClerkIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { ClerkResponse } from '@/tools/clerk/types' export const ClerkBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const ClerkBlock: BlockConfig = { 'Integrate Clerk authentication and user management into your workflow. Create, update, delete, and list users. Manage organizations and their memberships. Monitor and control user sessions.', docsLink: 'https://docs.sim.ai/tools/clerk', category: 'tools', + integrationType: IntegrationType.Security, + tags: ['oauth'], bgColor: '#131316', icon: ClerkIcon, diff --git a/apps/sim/blocks/blocks/cloudflare.ts b/apps/sim/blocks/blocks/cloudflare.ts index d1a264d7188..a394c38b12c 100644 --- a/apps/sim/blocks/blocks/cloudflare.ts +++ b/apps/sim/blocks/blocks/cloudflare.ts @@ -1,5 +1,5 @@ import { CloudflareIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { CloudflareResponse } from '@/tools/cloudflare/types' export const CloudflareBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const CloudflareBlock: BlockConfig = { 'Integrate Cloudflare into the workflow. Manage zones (domains), DNS records, SSL/TLS certificates, zone settings, DNS analytics, and cache purging via the Cloudflare API.', docsLink: 'https://docs.sim.ai/tools/cloudflare', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['cloud', 'api'], bgColor: '#F5F6FA', icon: CloudflareIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/confluence.ts b/apps/sim/blocks/blocks/confluence.ts index ad52791c831..2d863e6315f 100644 --- a/apps/sim/blocks/blocks/confluence.ts +++ b/apps/sim/blocks/blocks/confluence.ts @@ -1,7 +1,7 @@ import { ConfluenceIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { ConfluenceResponse } from '@/tools/confluence/types' import { getTrigger } from '@/triggers' @@ -16,6 +16,8 @@ export const ConfluenceBlock: BlockConfig = { 'Integrate Confluence into the workflow. Can read, create, update, delete pages, manage comments, attachments, labels, and search content.', docsLink: 'https://docs.sim.ai/tools/confluence', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth'], bgColor: '#E0E0E0', icon: ConfluenceIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/cursor.ts b/apps/sim/blocks/blocks/cursor.ts index 3c96fc78e62..a85c7668df8 100644 --- a/apps/sim/blocks/blocks/cursor.ts +++ b/apps/sim/blocks/blocks/cursor.ts @@ -1,6 +1,6 @@ import { CursorIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' import type { CursorResponse } from '@/tools/cursor/types' @@ -12,6 +12,8 @@ export const CursorBlock: BlockConfig = { 'Interact with Cursor Cloud Agents API to launch AI agents that can work on your GitHub repositories. Supports launching agents, adding follow-up instructions, checking status, viewing conversations, and managing agent lifecycle.', docsLink: 'https://cursor.com/docs/cloud-agent/api/endpoints', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api'], bgColor: '#1E1E1E', icon: CursorIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/databricks.ts b/apps/sim/blocks/blocks/databricks.ts index d4473fd41e7..0184becd9af 100644 --- a/apps/sim/blocks/blocks/databricks.ts +++ b/apps/sim/blocks/blocks/databricks.ts @@ -1,6 +1,6 @@ import { DatabricksIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { DatabricksResponse } from '@/tools/databricks/types' export const DatabricksBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const DatabricksBlock: BlockConfig = { 'Connect to Databricks to execute SQL queries against SQL warehouses, trigger and monitor job runs, manage clusters, and retrieve run outputs. Requires a Personal Access Token and workspace host URL.', docsLink: 'https://docs.sim.ai/tools/databricks', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['data-warehouse', 'cloud'], bgColor: '#F9F7F4', icon: DatabricksIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/datadog.ts b/apps/sim/blocks/blocks/datadog.ts index ac06a5b87c3..5bd78d825bc 100644 --- a/apps/sim/blocks/blocks/datadog.ts +++ b/apps/sim/blocks/blocks/datadog.ts @@ -1,6 +1,6 @@ import { DatadogIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { DatadogResponse } from '@/tools/datadog/types' export const DatadogBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const DatadogBlock: BlockConfig = { 'Integrate Datadog monitoring into workflows. Submit metrics, manage monitors, query logs, create events, handle downtimes, and more.', docsLink: 'https://docs.sim.ai/tools/datadog', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['monitoring', 'cloud'], bgColor: '#632CA6', icon: DatadogIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/devin.ts b/apps/sim/blocks/blocks/devin.ts index 8289fc3476c..04bf0b6ae2a 100644 --- a/apps/sim/blocks/blocks/devin.ts +++ b/apps/sim/blocks/blocks/devin.ts @@ -1,6 +1,6 @@ import { DevinIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const DevinBlock: BlockConfig = { type: 'devin', @@ -17,6 +17,8 @@ export const DevinBlock: BlockConfig = { `, docsLink: 'https://docs.sim.ai/tools/devin', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api'], bgColor: '#12141A', icon: DevinIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/discord.ts b/apps/sim/blocks/blocks/discord.ts index 0e245c9e821..986e1f2adaa 100644 --- a/apps/sim/blocks/blocks/discord.ts +++ b/apps/sim/blocks/blocks/discord.ts @@ -1,6 +1,6 @@ import { DiscordIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { DiscordResponse } from '@/tools/discord/types' @@ -12,6 +12,8 @@ export const DiscordBlock: BlockConfig = { longDescription: 'Comprehensive Discord integration: messages, threads, channels, roles, members, invites, and webhooks.', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['oauth', 'webhooks'], bgColor: '#5865F2', icon: DiscordIcon, docsLink: 'https://docs.sim.ai/tools/discord', diff --git a/apps/sim/blocks/blocks/docusign.ts b/apps/sim/blocks/blocks/docusign.ts index 3dd9cb11bff..6a6a705e9d6 100644 --- a/apps/sim/blocks/blocks/docusign.ts +++ b/apps/sim/blocks/blocks/docusign.ts @@ -1,7 +1,7 @@ import { DocuSignIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { DocuSignResponse } from '@/tools/docusign/types' @@ -13,6 +13,8 @@ export const DocuSignBlock: BlockConfig = { 'Create and send envelopes for e-signature, use templates, check signing status, download signed documents, and manage recipients with DocuSign.', docsLink: 'https://docs.sim.ai/tools/docusign', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth'], bgColor: '#FFFFFF', icon: DocuSignIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/dropbox.ts b/apps/sim/blocks/blocks/dropbox.ts index cec6c26a853..030a41b2f86 100644 --- a/apps/sim/blocks/blocks/dropbox.ts +++ b/apps/sim/blocks/blocks/dropbox.ts @@ -1,7 +1,7 @@ import { DropboxIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { DropboxResponse } from '@/tools/dropbox/types' @@ -14,6 +14,8 @@ export const DropboxBlock: BlockConfig = { 'Integrate Dropbox into your workflow for file management, sharing, and collaboration. Upload files, download content, create folders, manage shared links, and more.', docsLink: 'https://docs.sim.ai/tools/dropbox', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['oauth', 'cloud'], icon: DropboxIcon, bgColor: '#0061FF', subBlocks: [ diff --git a/apps/sim/blocks/blocks/dspy.ts b/apps/sim/blocks/blocks/dspy.ts index c2bf4a4b2e1..cee75b38596 100644 --- a/apps/sim/blocks/blocks/dspy.ts +++ b/apps/sim/blocks/blocks/dspy.ts @@ -1,5 +1,6 @@ import { DsPyIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' export const DSPyBlock: BlockConfig = { type: 'dspy', @@ -8,6 +9,8 @@ export const DSPyBlock: BlockConfig = { longDescription: 'Integrate with your self-hosted DSPy programs for LLM-powered predictions. Supports Predict, Chain of Thought, and ReAct agents. DSPy is the framework for programming—not prompting—language models.', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['llm'], bgColor: '#E0E0E0', icon: DsPyIcon, diff --git a/apps/sim/blocks/blocks/dub.ts b/apps/sim/blocks/blocks/dub.ts index 3e2e8fb1747..4031755443e 100644 --- a/apps/sim/blocks/blocks/dub.ts +++ b/apps/sim/blocks/blocks/dub.ts @@ -1,6 +1,6 @@ import { DubIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { DubResponse } from '@/tools/dub/types' export const DubBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const DubBlock: BlockConfig = { 'Create, manage, and track short links with Dub. Supports custom domains, UTM parameters, link analytics, and more.', docsLink: 'https://docs.sim.ai/tools/dub', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api', 'marketing'], bgColor: '#181C1E', icon: DubIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/duckduckgo.ts b/apps/sim/blocks/blocks/duckduckgo.ts index 933e6b6a238..5dd41251992 100644 --- a/apps/sim/blocks/blocks/duckduckgo.ts +++ b/apps/sim/blocks/blocks/duckduckgo.ts @@ -1,5 +1,6 @@ import { DuckDuckGoIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { DuckDuckGoResponse } from '@/tools/duckduckgo/types' export const DuckDuckGoBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const DuckDuckGoBlock: BlockConfig = { 'Search the web using DuckDuckGo Instant Answers API. Returns instant answers, abstracts, related topics, and more. Free to use without an API key.', docsLink: 'https://docs.sim.ai/tools/duckduckgo', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], bgColor: '#FFFFFF', icon: DuckDuckGoIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/dynamodb.ts b/apps/sim/blocks/blocks/dynamodb.ts index 11e51c7b45f..ad00cb91e85 100644 --- a/apps/sim/blocks/blocks/dynamodb.ts +++ b/apps/sim/blocks/blocks/dynamodb.ts @@ -1,5 +1,6 @@ import { DynamoDBIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { DynamoDBIntrospectResponse, DynamoDBResponse } from '@/tools/dynamodb/types' export const DynamoDBBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const DynamoDBBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const ElasticsearchBlock: BlockConfig = { 'Integrate Elasticsearch into workflows for powerful search, indexing, and data management. Supports document CRUD operations, advanced search queries, bulk operations, index management, and cluster monitoring. Works with both self-hosted and Elastic Cloud deployments.', docsLink: 'https://docs.sim.ai/tools/elasticsearch', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['vector-search'], bgColor: '#E0E0E0', icon: ElasticsearchIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/elevenlabs.ts b/apps/sim/blocks/blocks/elevenlabs.ts index 58d79fe67ae..d631ce53a3c 100644 --- a/apps/sim/blocks/blocks/elevenlabs.ts +++ b/apps/sim/blocks/blocks/elevenlabs.ts @@ -1,5 +1,5 @@ import { ElevenLabsIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { ElevenLabsBlockResponse } from '@/tools/elevenlabs/types' export const ElevenLabsBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const ElevenLabsBlock: BlockConfig = { longDescription: 'Integrate ElevenLabs into the workflow. Can convert text to speech.', docsLink: 'https://docs.sim.ai/tools/elevenlabs', category: 'tools', + integrationType: IntegrationType.Media, + tags: ['text-to-speech', 'api'], bgColor: '#181C1E', icon: ElevenLabsIcon, diff --git a/apps/sim/blocks/blocks/enrich.ts b/apps/sim/blocks/blocks/enrich.ts index 40081c16f04..a79f712a260 100644 --- a/apps/sim/blocks/blocks/enrich.ts +++ b/apps/sim/blocks/blocks/enrich.ts @@ -1,6 +1,6 @@ import { EnrichSoIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const EnrichBlock: BlockConfig = { type: 'enrich', @@ -11,6 +11,8 @@ export const EnrichBlock: BlockConfig = { 'Access real-time B2B data intelligence with Enrich.so. Enrich profiles from email addresses, find work emails from LinkedIn, verify email deliverability, search for people and companies, and analyze LinkedIn post engagement.', docsLink: 'https://docs.enrich.so/', category: 'tools', + integrationType: IntegrationType.SalesIntelligence, + tags: ['enrichment', 'api'], bgColor: '#E5E5E6', icon: EnrichSoIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/evernote.ts b/apps/sim/blocks/blocks/evernote.ts index acc7fde5ccb..20f002cc94a 100644 --- a/apps/sim/blocks/blocks/evernote.ts +++ b/apps/sim/blocks/blocks/evernote.ts @@ -1,6 +1,6 @@ import { EvernoteIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const EvernoteBlock: BlockConfig = { type: 'evernote', @@ -10,6 +10,8 @@ export const EvernoteBlock: BlockConfig = { 'Integrate with Evernote to manage notes, notebooks, and tags. Create, read, update, copy, search, and delete notes. Create and list notebooks and tags.', docsLink: 'https://docs.sim.ai/tools/evernote', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth'], bgColor: '#E0E0E0', icon: EvernoteIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/exa.ts b/apps/sim/blocks/blocks/exa.ts index 193fe9c292d..868f0986203 100644 --- a/apps/sim/blocks/blocks/exa.ts +++ b/apps/sim/blocks/blocks/exa.ts @@ -1,6 +1,6 @@ import { ExaAIIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { ExaResponse } from '@/tools/exa/types' export const ExaBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const ExaBlock: BlockConfig = { 'Integrate Exa into the workflow. Can search, get contents, find similar links, answer a question, and perform research.', docsLink: 'https://docs.sim.ai/tools/exa', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], bgColor: '#1F40ED', icon: ExaAIIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/fathom.ts b/apps/sim/blocks/blocks/fathom.ts index b6d8dd4db1b..ea4caf06b74 100644 --- a/apps/sim/blocks/blocks/fathom.ts +++ b/apps/sim/blocks/blocks/fathom.ts @@ -1,5 +1,5 @@ import { FathomIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { FathomResponse } from '@/tools/fathom/types' import { getTrigger } from '@/triggers' import { fathomTriggerOptions } from '@/triggers/fathom/utils' @@ -14,6 +14,8 @@ export const FathomBlock: BlockConfig = { 'Integrate Fathom AI Notetaker into your workflow. List meetings, get transcripts and summaries, and manage team members and teams. Can also trigger workflows when new meeting content is ready.', docsLink: 'https://docs.sim.ai/tools/fathom', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['meeting'], bgColor: '#181C1E', icon: FathomIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/file.ts b/apps/sim/blocks/blocks/file.ts index f9b3058f254..8a3d2ae06b6 100644 --- a/apps/sim/blocks/blocks/file.ts +++ b/apps/sim/blocks/blocks/file.ts @@ -2,6 +2,7 @@ import { createLogger } from '@sim/logger' import { DocumentIcon } from '@/components/icons' import { inferContextFromKey } from '@/lib/uploads/utils/file-utils' import type { BlockConfig, SubBlockType } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { FileParserOutput, FileParserV3Output } from '@/tools/file/types' @@ -53,6 +54,8 @@ export const FileBlock: BlockConfig = { `, docsLink: 'https://docs.sim.ai/tools/file', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['api'], bgColor: '#40916C', icon: DocumentIcon, hideFromToolbar: true, @@ -252,6 +255,8 @@ export const FileV3Block: BlockConfig = { 'Upload files directly or import from external URLs to get UserFile objects for use in other blocks.', docsLink: 'https://docs.sim.ai/tools/file', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['api'], bgColor: '#40916C', icon: DocumentIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/firecrawl.ts b/apps/sim/blocks/blocks/firecrawl.ts index add2d60ff55..77d1f588ef5 100644 --- a/apps/sim/blocks/blocks/firecrawl.ts +++ b/apps/sim/blocks/blocks/firecrawl.ts @@ -1,6 +1,6 @@ import { FirecrawlIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { FirecrawlResponse } from '@/tools/firecrawl/types' export const FirecrawlBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const FirecrawlBlock: BlockConfig = { 'Integrate Firecrawl into the workflow. Scrape pages, search the web, crawl entire sites, map URL structures, and extract structured data with AI.', docsLink: 'https://docs.sim.ai/tools/firecrawl', category: 'tools', + integrationType: IntegrationType.Automation, + tags: ['web-scraping', 'api'], bgColor: '#181C1E', icon: FirecrawlIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/fireflies.ts b/apps/sim/blocks/blocks/fireflies.ts index 347ffb04f47..bc6d015c64f 100644 --- a/apps/sim/blocks/blocks/fireflies.ts +++ b/apps/sim/blocks/blocks/fireflies.ts @@ -1,7 +1,7 @@ import { FirefliesIcon } from '@/components/icons' import { resolveHttpsUrlFromFileInput } from '@/lib/uploads/utils/file-utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { FirefliesResponse } from '@/tools/fireflies/types' import { getTrigger } from '@/triggers' @@ -17,6 +17,8 @@ export const FirefliesBlock: BlockConfig = { 'Integrate Fireflies.ai into the workflow. Manage meeting transcripts, add bot to live meetings, create soundbites, and more. Can also trigger workflows when transcriptions complete.', docsLink: 'https://docs.sim.ai/tools/fireflies', category: 'tools', + integrationType: IntegrationType.Media, + tags: ['meeting', 'oauth'], icon: FirefliesIcon, bgColor: '#100730', subBlocks: [ @@ -613,6 +615,8 @@ export const FirefliesV2Block: BlockConfig = { name: 'Fireflies', description: 'Interact with Fireflies.ai meeting transcripts and recordings', hideFromToolbar: false, + integrationType: IntegrationType.Media, + tags: ['meeting', 'oauth'], subBlocks: firefliesV2SubBlocks, tools: { ...FirefliesBlock.tools, diff --git a/apps/sim/blocks/blocks/gamma.ts b/apps/sim/blocks/blocks/gamma.ts index 27aad522213..bc4d08aa197 100644 --- a/apps/sim/blocks/blocks/gamma.ts +++ b/apps/sim/blocks/blocks/gamma.ts @@ -1,5 +1,5 @@ import { GammaIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { GammaResponse } from '@/tools/gamma/types' export const GammaBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const GammaBlock: BlockConfig = { 'Integrate Gamma into the workflow. Can generate presentations, documents, webpages, and social posts from text, create from templates, check generation status, and browse themes and folders.', docsLink: 'https://docs.sim.ai/tools/gamma', category: 'tools', + integrationType: IntegrationType.Design, + tags: ['api'], bgColor: '#002253', icon: GammaIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/github.ts b/apps/sim/blocks/blocks/github.ts index 0d8f1dbf247..1dc53e285a9 100644 --- a/apps/sim/blocks/blocks/github.ts +++ b/apps/sim/blocks/blocks/github.ts @@ -1,6 +1,6 @@ import { GithubIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' import type { GitHubResponse } from '@/tools/github/types' import { getTrigger } from '@/triggers' @@ -14,6 +14,8 @@ export const GitHubBlock: BlockConfig = { 'Integrate Github into the workflow. Can get get PR details, create PR comment, get repository info, and get latest commit. Can be used in trigger mode to trigger a workflow when a PR is created, commented on, or a commit is pushed.', docsLink: 'https://docs.sim.ai/tools/github', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['oauth', 'webhooks'], bgColor: '#181C1E', icon: GithubIcon, triggerAllowed: true, @@ -2023,6 +2025,8 @@ export const GitHubV2Block: BlockConfig = { type: 'github_v2', name: 'GitHub', hideFromToolbar: false, + integrationType: IntegrationType.DeveloperTools, + tags: ['oauth', 'webhooks'], tools: { ...GitHubBlock.tools, access: (GitHubBlock.tools?.access || []).map((toolId) => `${toolId}_v2`), diff --git a/apps/sim/blocks/blocks/gitlab.ts b/apps/sim/blocks/blocks/gitlab.ts index 9d25f8fe1e2..d01114af571 100644 --- a/apps/sim/blocks/blocks/gitlab.ts +++ b/apps/sim/blocks/blocks/gitlab.ts @@ -1,6 +1,6 @@ import { GitLabIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GitLabResponse } from '@/tools/gitlab/types' export const GitLabBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const GitLabBlock: BlockConfig = { 'Integrate GitLab into the workflow. Can manage projects, issues, merge requests, pipelines, and add comments. Supports all core GitLab DevOps operations.', docsLink: 'https://docs.sim.ai/tools/gitlab', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['oauth'], icon: GitLabIcon, bgColor: '#E0E0E0', subBlocks: [ diff --git a/apps/sim/blocks/blocks/gmail.ts b/apps/sim/blocks/blocks/gmail.ts index fb210593a1c..2e6218f669f 100644 --- a/apps/sim/blocks/blocks/gmail.ts +++ b/apps/sim/blocks/blocks/gmail.ts @@ -1,7 +1,7 @@ import { GmailIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { GmailToolResponse } from '@/tools/gmail/types' import { getTrigger } from '@/triggers' @@ -46,6 +46,8 @@ export const GmailBlock: BlockConfig = { 'Integrate Gmail into the workflow. Can send, read, search, and move emails. Can be used in trigger mode to trigger a workflow when a new email is received.', docsLink: 'https://docs.sim.ai/tools/gmail', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GmailIcon, hideFromToolbar: true, @@ -553,6 +555,8 @@ export const GmailV2Block: BlockConfig = { type: 'gmail_v2', name: 'Gmail', hideFromToolbar: false, + integrationType: IntegrationType.Email, + tags: ['oauth', 'google-workspace'], tools: { ...GmailBlock.tools, access: [ diff --git a/apps/sim/blocks/blocks/gong.ts b/apps/sim/blocks/blocks/gong.ts index 5623efe4080..c153e3cf6e6 100644 --- a/apps/sim/blocks/blocks/gong.ts +++ b/apps/sim/blocks/blocks/gong.ts @@ -1,5 +1,5 @@ import { GongIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { GongResponse } from '@/tools/gong/types' export const GongBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const GongBlock: BlockConfig = { 'Integrate Gong into your workflow. Access call recordings, transcripts, user data, activity stats, scorecards, trackers, library content, coaching metrics, and more via the Gong API.', docsLink: 'https://docs.sim.ai/tools/gong', category: 'tools', + integrationType: IntegrationType.SalesIntelligence, + tags: ['meeting', 'oauth'], bgColor: '#8039DF', icon: GongIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google.ts b/apps/sim/blocks/blocks/google.ts index 2cc817a7020..914b003b96f 100644 --- a/apps/sim/blocks/blocks/google.ts +++ b/apps/sim/blocks/blocks/google.ts @@ -1,6 +1,6 @@ import { GoogleIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GoogleSearchResponse } from '@/tools/google/types' export const GoogleSearchBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const GoogleSearchBlock: BlockConfig = { longDescription: 'Integrate Google Search into the workflow. Can search the web.', docsLink: 'https://docs.sim.ai/tools/google_search', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleIcon, diff --git a/apps/sim/blocks/blocks/google_ads.ts b/apps/sim/blocks/blocks/google_ads.ts index d482c72fed4..4b645b557d3 100644 --- a/apps/sim/blocks/blocks/google_ads.ts +++ b/apps/sim/blocks/blocks/google_ads.ts @@ -1,7 +1,7 @@ import { GoogleAdsIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const GoogleAdsBlock: BlockConfig = { type: 'google_ads', @@ -11,6 +11,8 @@ export const GoogleAdsBlock: BlockConfig = { 'Connect to Google Ads to list accessible accounts, list campaigns, view ad group details, get performance metrics, and run custom GAQL queries.', docsLink: 'https://docs.sim.ai/tools/google_ads', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['marketing', 'oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleAdsIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_bigquery.ts b/apps/sim/blocks/blocks/google_bigquery.ts index 44eb3d30a8a..b0b590eece3 100644 --- a/apps/sim/blocks/blocks/google_bigquery.ts +++ b/apps/sim/blocks/blocks/google_bigquery.ts @@ -1,7 +1,7 @@ import { GoogleBigQueryIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const GoogleBigQueryBlock: BlockConfig = { type: 'google_bigquery', @@ -11,6 +11,8 @@ export const GoogleBigQueryBlock: BlockConfig = { 'Connect to Google BigQuery to run SQL queries, list datasets and tables, get table metadata, and insert rows.', docsLink: 'https://docs.sim.ai/tools/google_bigquery', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['data-warehouse', 'oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleBigQueryIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_books.ts b/apps/sim/blocks/blocks/google_books.ts index 1b36cd7e4ae..6ea083eb307 100644 --- a/apps/sim/blocks/blocks/google_books.ts +++ b/apps/sim/blocks/blocks/google_books.ts @@ -1,6 +1,6 @@ import { GoogleBooksIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const GoogleBooksBlock: BlockConfig = { type: 'google_books', @@ -11,6 +11,8 @@ export const GoogleBooksBlock: BlockConfig = { 'Search for books using the Google Books API. Find volumes by title, author, ISBN, or keywords, and retrieve detailed information about specific books including descriptions, ratings, and publication details.', docsLink: 'https://docs.sim.ai/tools/google_books', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleBooksIcon, diff --git a/apps/sim/blocks/blocks/google_calendar.ts b/apps/sim/blocks/blocks/google_calendar.ts index 24a35e1fbf4..b72410e82ab 100644 --- a/apps/sim/blocks/blocks/google_calendar.ts +++ b/apps/sim/blocks/blocks/google_calendar.ts @@ -1,7 +1,7 @@ import { GoogleCalendarIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' import type { GoogleCalendarResponse } from '@/tools/google_calendar/types' @@ -14,6 +14,8 @@ export const GoogleCalendarBlock: BlockConfig = { 'Integrate Google Calendar into the workflow. Can create, read, update, and list calendar events.', docsLink: 'https://docs.sim.ai/tools/google_calendar', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['calendar', 'oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleCalendarIcon, hideFromToolbar: true, @@ -648,6 +650,8 @@ export const GoogleCalendarV2Block: BlockConfig = { type: 'google_calendar_v2', name: 'Google Calendar', hideFromToolbar: false, + integrationType: IntegrationType.Productivity, + tags: ['calendar', 'oauth', 'google-workspace'], tools: { ...GoogleCalendarBlock.tools, access: [ diff --git a/apps/sim/blocks/blocks/google_contacts.ts b/apps/sim/blocks/blocks/google_contacts.ts index 629b0a60018..bfd6c2ded72 100644 --- a/apps/sim/blocks/blocks/google_contacts.ts +++ b/apps/sim/blocks/blocks/google_contacts.ts @@ -1,7 +1,7 @@ import { GoogleContactsIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GoogleContactsResponse } from '@/tools/google_contacts/types' export const GoogleContactsBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const GoogleContactsBlock: BlockConfig = { 'Integrate Google Contacts into the workflow. Can create, read, update, delete, list, and search contacts.', docsLink: 'https://docs.sim.ai/tools/google_contacts', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleContactsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_docs.ts b/apps/sim/blocks/blocks/google_docs.ts index ac9098395e3..c5bb7751283 100644 --- a/apps/sim/blocks/blocks/google_docs.ts +++ b/apps/sim/blocks/blocks/google_docs.ts @@ -1,7 +1,7 @@ import { GoogleDocsIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GoogleDocsResponse } from '@/tools/google_docs/types' export const GoogleDocsBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const GoogleDocsBlock: BlockConfig = { 'Integrate Google Docs into the workflow. Can read, write, and create documents.', docsLink: 'https://docs.sim.ai/tools/google_docs', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleDocsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_drive.ts b/apps/sim/blocks/blocks/google_drive.ts index 362d1c80426..585ce5d563d 100644 --- a/apps/sim/blocks/blocks/google_drive.ts +++ b/apps/sim/blocks/blocks/google_drive.ts @@ -1,7 +1,7 @@ import { GoogleDriveIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { GoogleDriveResponse } from '@/tools/google_drive/types' @@ -14,6 +14,8 @@ export const GoogleDriveBlock: BlockConfig = { 'Integrate Google Drive into the workflow. Can create, upload, download, copy, move, delete, share files and manage permissions.', docsLink: 'https://docs.sim.ai/tools/google_drive', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['oauth', 'cloud', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleDriveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_forms.ts b/apps/sim/blocks/blocks/google_forms.ts index bf26311b387..0617821a8d0 100644 --- a/apps/sim/blocks/blocks/google_forms.ts +++ b/apps/sim/blocks/blocks/google_forms.ts @@ -1,6 +1,7 @@ import { GoogleFormsIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import { getTrigger } from '@/triggers' export const GoogleFormsBlock: BlockConfig = { @@ -11,6 +12,8 @@ export const GoogleFormsBlock: BlockConfig = { 'Integrate Google Forms into your workflow. Read form structure, get responses, create forms, update content, and manage notification watches.', docsLink: 'https://docs.sim.ai/tools/google_forms', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleFormsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_groups.ts b/apps/sim/blocks/blocks/google_groups.ts index c44830f3b79..2e94b4c9554 100644 --- a/apps/sim/blocks/blocks/google_groups.ts +++ b/apps/sim/blocks/blocks/google_groups.ts @@ -1,7 +1,7 @@ import { GoogleGroupsIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const GoogleGroupsBlock: BlockConfig = { type: 'google_groups', @@ -12,6 +12,8 @@ export const GoogleGroupsBlock: BlockConfig = { 'Connect to Google Workspace to create, update, and manage groups and their members using the Admin SDK Directory API.', docsLink: 'https://developers.google.com/admin-sdk/directory/v1/guides/manage-groups', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['oauth', 'google-workspace'], bgColor: '#E8F0FE', icon: GoogleGroupsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_maps.ts b/apps/sim/blocks/blocks/google_maps.ts index 5a582250e86..87ab3284d9c 100644 --- a/apps/sim/blocks/blocks/google_maps.ts +++ b/apps/sim/blocks/blocks/google_maps.ts @@ -1,5 +1,6 @@ import { GoogleMapsIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' export const GoogleMapsBlock: BlockConfig = { type: 'google_maps', @@ -9,6 +10,8 @@ export const GoogleMapsBlock: BlockConfig = { 'Integrate Google Maps Platform APIs into your workflow. Supports geocoding addresses to coordinates, reverse geocoding, getting directions between locations, calculating distance matrices, searching for places, retrieving place details, elevation data, and timezone information.', docsLink: 'https://docs.sim.ai/tools/google_maps', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleMapsIcon, diff --git a/apps/sim/blocks/blocks/google_meet.ts b/apps/sim/blocks/blocks/google_meet.ts index 28fa1d7f03e..664ab844647 100644 --- a/apps/sim/blocks/blocks/google_meet.ts +++ b/apps/sim/blocks/blocks/google_meet.ts @@ -1,7 +1,7 @@ import { GoogleMeetIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GoogleMeetResponse } from '@/tools/google_meet/types' export const GoogleMeetBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const GoogleMeetBlock: BlockConfig = { 'Integrate Google Meet into your workflow. Create meeting spaces, get space details, end conferences, list conference records, and view participants.', docsLink: 'https://docs.sim.ai/tools/google_meet', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['meeting', 'oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleMeetIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_pagespeed.ts b/apps/sim/blocks/blocks/google_pagespeed.ts index eca3a30996e..08b3cb324b0 100644 --- a/apps/sim/blocks/blocks/google_pagespeed.ts +++ b/apps/sim/blocks/blocks/google_pagespeed.ts @@ -1,5 +1,5 @@ import { GooglePagespeedIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { GooglePagespeedAnalyzeResponse } from '@/tools/google_pagespeed/types' export const GooglePagespeedBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const GooglePagespeedBlock: BlockConfig = 'Analyze web pages for performance, accessibility, SEO, and best practices using Google PageSpeed Insights API powered by Lighthouse.', docsLink: 'https://docs.sim.ai/tools/google_pagespeed', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['api', 'google-workspace'], bgColor: '#E0E0E0', icon: GooglePagespeedIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/google_sheets.ts b/apps/sim/blocks/blocks/google_sheets.ts index 31f9aab66e7..9f92645e102 100644 --- a/apps/sim/blocks/blocks/google_sheets.ts +++ b/apps/sim/blocks/blocks/google_sheets.ts @@ -1,7 +1,7 @@ import { GoogleSheetsIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' import type { GoogleSheetsResponse, GoogleSheetsV2Response } from '@/tools/google_sheets/types' @@ -16,6 +16,8 @@ export const GoogleSheetsBlock: BlockConfig = { 'Integrate Google Sheets into the workflow. Can read, write, append, and update data.', docsLink: 'https://docs.sim.ai/tools/google_sheets', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleSheetsIcon, subBlocks: [ @@ -302,6 +304,8 @@ export const GoogleSheetsV2Block: BlockConfig = { 'Integrate Google Sheets into the workflow with explicit sheet selection. Can read, write, append, update, clear data, create spreadsheets, get spreadsheet info, and copy sheets.', docsLink: 'https://docs.sim.ai/tools/google_sheets', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleSheetsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_slides.ts b/apps/sim/blocks/blocks/google_slides.ts index 9fc8fdbf1d4..013e4dc529c 100644 --- a/apps/sim/blocks/blocks/google_slides.ts +++ b/apps/sim/blocks/blocks/google_slides.ts @@ -2,7 +2,7 @@ import { GoogleSlidesIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import { resolveHttpsUrlFromFileInput } from '@/lib/uploads/utils/file-utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { GoogleSlidesResponse } from '@/tools/google_slides/types' @@ -16,6 +16,8 @@ export const GoogleSlidesBlock: BlockConfig = { 'Integrate Google Slides into the workflow. Can read, write, create presentations, replace text, add slides, add images, get thumbnails, get page details, delete objects, duplicate objects, reorder slides, create tables, create shapes, and insert text.', docsLink: 'https://docs.sim.ai/tools/google_slides', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleSlidesIcon, subBlocks: [ @@ -955,6 +957,8 @@ export const GoogleSlidesV2Block: BlockConfig = { name: 'Google Slides', description: 'Read, write, and create presentations', hideFromToolbar: false, + integrationType: IntegrationType.Documents, + tags: ['oauth', 'google-workspace'], subBlocks: googleSlidesV2SubBlocks, tools: { access: GoogleSlidesBlock.tools!.access, diff --git a/apps/sim/blocks/blocks/google_tasks.ts b/apps/sim/blocks/blocks/google_tasks.ts index cd930ecb21e..4dc98575311 100644 --- a/apps/sim/blocks/blocks/google_tasks.ts +++ b/apps/sim/blocks/blocks/google_tasks.ts @@ -1,7 +1,7 @@ import { GoogleTasksIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GoogleTasksResponse } from '@/tools/google_tasks/types' export const GoogleTasksBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const GoogleTasksBlock: BlockConfig = { 'Integrate Google Tasks into your workflow. Create, read, update, delete, and list tasks and task lists.', docsLink: 'https://docs.sim.ai/tools/google_tasks', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['oauth', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleTasksIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_translate.ts b/apps/sim/blocks/blocks/google_translate.ts index 2eaeb2bb22f..a5a2398aec8 100644 --- a/apps/sim/blocks/blocks/google_translate.ts +++ b/apps/sim/blocks/blocks/google_translate.ts @@ -1,5 +1,5 @@ import { GoogleTranslateIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' const SUPPORTED_LANGUAGES = [ { label: 'Afrikaans', id: 'af' }, @@ -145,6 +145,8 @@ export const GoogleTranslateBlock: BlockConfig = { 'Translate and detect languages using the Google Cloud Translation API. Supports auto-detection of the source language.', docsLink: 'https://docs.sim.ai/tools/google_translate', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['api', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleTranslateIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/google_vault.ts b/apps/sim/blocks/blocks/google_vault.ts index 1cbb334e698..437f396277c 100644 --- a/apps/sim/blocks/blocks/google_vault.ts +++ b/apps/sim/blocks/blocks/google_vault.ts @@ -1,7 +1,7 @@ import { GoogleVaultIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const GoogleVaultBlock: BlockConfig = { type: 'google_vault', @@ -12,6 +12,8 @@ export const GoogleVaultBlock: BlockConfig = { 'Connect Google Vault to create exports, list exports, and manage holds within matters.', docsLink: 'https://developers.google.com/vault', category: 'tools', + integrationType: IntegrationType.Security, + tags: ['oauth', 'google-workspace'], bgColor: '#E8F0FE', icon: GoogleVaultIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/grafana.ts b/apps/sim/blocks/blocks/grafana.ts index fd71cfa7d1b..b0433f1be12 100644 --- a/apps/sim/blocks/blocks/grafana.ts +++ b/apps/sim/blocks/blocks/grafana.ts @@ -1,6 +1,6 @@ import { GrafanaIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GrafanaResponse } from '@/tools/grafana/types' export const GrafanaBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const GrafanaBlock: BlockConfig = { 'Integrate Grafana into workflows. Manage dashboards, alerts, annotations, data sources, folders, and monitor health status.', docsLink: 'https://docs.sim.ai/tools/grafana', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['monitoring', 'api'], bgColor: '#E0E0E0', icon: GrafanaIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/grain.ts b/apps/sim/blocks/blocks/grain.ts index aa0a6236824..faeb6d03737 100644 --- a/apps/sim/blocks/blocks/grain.ts +++ b/apps/sim/blocks/blocks/grain.ts @@ -1,6 +1,6 @@ import { GrainIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { getTrigger } from '@/triggers' import { grainTriggerOptions } from '@/triggers/grain/utils' @@ -13,6 +13,8 @@ export const GrainBlock: BlockConfig = { longDescription: 'Integrate Grain into your workflow. Access meeting recordings, transcripts, highlights, and AI-generated summaries. Can also trigger workflows based on Grain webhook events.', category: 'tools', + integrationType: IntegrationType.Media, + tags: ['meeting', 'api'], docsLink: 'https://docs.sim.ai/tools/grain', icon: GrainIcon, bgColor: '#F6FAF9', diff --git a/apps/sim/blocks/blocks/greenhouse.ts b/apps/sim/blocks/blocks/greenhouse.ts index 5478756faa7..505a3e2902d 100644 --- a/apps/sim/blocks/blocks/greenhouse.ts +++ b/apps/sim/blocks/blocks/greenhouse.ts @@ -1,5 +1,5 @@ import { GreenhouseIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { GreenhouseResponse } from '@/tools/greenhouse/types' export const GreenhouseBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const GreenhouseBlock: BlockConfig = { 'Integrate Greenhouse into the workflow. List and retrieve candidates, jobs, applications, users, departments, offices, and job stages from your Greenhouse ATS account.', docsLink: 'https://docs.sim.ai/tools/greenhouse', category: 'tools', + integrationType: IntegrationType.HR, + tags: ['oauth'], bgColor: '#469776', icon: GreenhouseIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/greptile.ts b/apps/sim/blocks/blocks/greptile.ts index 05b2e68b4c3..1200e5782f1 100644 --- a/apps/sim/blocks/blocks/greptile.ts +++ b/apps/sim/blocks/blocks/greptile.ts @@ -1,6 +1,6 @@ import { GreptileIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { GreptileResponse } from '@/tools/greptile/types' export const GreptileBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const GreptileBlock: BlockConfig = { 'Query and search codebases using natural language with Greptile. Get AI-generated answers about your code, find relevant files, and understand complex codebases.', docsLink: 'https://docs.sim.ai/tools/greptile', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api'], bgColor: '#e5e5e5', icon: GreptileIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/hex.ts b/apps/sim/blocks/blocks/hex.ts index f3ea6a2cb89..cf910ea902a 100644 --- a/apps/sim/blocks/blocks/hex.ts +++ b/apps/sim/blocks/blocks/hex.ts @@ -1,6 +1,6 @@ import { HexIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { HexResponse } from '@/tools/hex/types' export const HexBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const HexBlock: BlockConfig = { 'Integrate Hex into your workflow. Run projects, check run status, manage collections and groups, list users, and view data connections. Requires a Hex API token.', docsLink: 'https://docs.sim.ai/tools/hex', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['data-warehouse', 'api'], bgColor: '#14151A', icon: HexIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/hubspot.ts b/apps/sim/blocks/blocks/hubspot.ts index 24bf1a39819..489f023fc89 100644 --- a/apps/sim/blocks/blocks/hubspot.ts +++ b/apps/sim/blocks/blocks/hubspot.ts @@ -1,7 +1,7 @@ import { HubspotIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { HubSpotResponse } from '@/tools/hubspot/types' import { getTrigger } from '@/triggers' import { hubspotAllTriggerOptions } from '@/triggers/hubspot/utils' @@ -15,6 +15,8 @@ export const HubSpotBlock: BlockConfig = { 'Integrate HubSpot into your workflow. Manage contacts, companies, deals, tickets, and other CRM objects with powerful automation capabilities. Can be used in trigger mode to start workflows when contacts are created, deleted, or updated.', docsLink: 'https://docs.sim.ai/tools/hubspot', category: 'tools', + integrationType: IntegrationType.CRM, + tags: ['oauth', 'marketing'], bgColor: '#FF7A59', icon: HubspotIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/huggingface.ts b/apps/sim/blocks/blocks/huggingface.ts index c02f4a9bf30..25cbbea75d8 100644 --- a/apps/sim/blocks/blocks/huggingface.ts +++ b/apps/sim/blocks/blocks/huggingface.ts @@ -1,6 +1,6 @@ import { HuggingFaceIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { HuggingFaceChatResponse } from '@/tools/huggingface/types' export const HuggingFaceBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const HuggingFaceBlock: BlockConfig = { 'Integrate Hugging Face into the workflow. Can generate completions using the Hugging Face Inference API.', docsLink: 'https://docs.sim.ai/tools/huggingface', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['llm', 'api'], bgColor: '#0B0F19', icon: HuggingFaceIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/hunter.ts b/apps/sim/blocks/blocks/hunter.ts index f713227916b..991c1f3f556 100644 --- a/apps/sim/blocks/blocks/hunter.ts +++ b/apps/sim/blocks/blocks/hunter.ts @@ -1,5 +1,5 @@ import { HunterIOIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { HunterResponse } from '@/tools/hunter/types' export const HunterBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const HunterBlock: BlockConfig = { 'Integrate Hunter into the workflow. Can search domains, find email addresses, verify email addresses, discover companies, find companies, and count email addresses.', docsLink: 'https://docs.sim.ai/tools/hunter', category: 'tools', + integrationType: IntegrationType.SalesIntelligence, + tags: ['enrichment', 'api'], bgColor: '#E0E0E0', icon: HunterIOIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/image_generator.ts b/apps/sim/blocks/blocks/image_generator.ts index e2efad69d59..1cae0192236 100644 --- a/apps/sim/blocks/blocks/image_generator.ts +++ b/apps/sim/blocks/blocks/image_generator.ts @@ -1,5 +1,5 @@ import { ImageIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { DalleResponse } from '@/tools/openai/types' export const ImageGeneratorBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const ImageGeneratorBlock: BlockConfig = { 'Integrate Image Generator into the workflow. Can generate images using DALL-E 3 or GPT Image.', docsLink: 'https://docs.sim.ai/tools/image_generator', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['image-generation'], bgColor: '#4D5FFF', icon: ImageIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/imap.ts b/apps/sim/blocks/blocks/imap.ts index e23727b20c0..364d4054cdd 100644 --- a/apps/sim/blocks/blocks/imap.ts +++ b/apps/sim/blocks/blocks/imap.ts @@ -1,5 +1,6 @@ import { MailServerIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import { getTrigger } from '@/triggers' export const ImapBlock: BlockConfig = { @@ -9,6 +10,8 @@ export const ImapBlock: BlockConfig = { longDescription: 'Connect to any email server via IMAP protocol to trigger workflows when new emails are received. Supports Gmail, Outlook, Yahoo, and any other IMAP-compatible email provider.', category: 'triggers', + integrationType: IntegrationType.Email, + tags: ['api'], bgColor: '#6366F1', icon: MailServerIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/incidentio.ts b/apps/sim/blocks/blocks/incidentio.ts index cd3de03573e..2e726b9ed2c 100644 --- a/apps/sim/blocks/blocks/incidentio.ts +++ b/apps/sim/blocks/blocks/incidentio.ts @@ -1,6 +1,6 @@ import { IncidentioIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { IncidentioResponse } from '@/tools/incidentio/types' export const IncidentioBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const IncidentioBlock: BlockConfig = { 'Integrate incident.io into the workflow. Manage incidents, actions, follow-ups, workflows, schedules, escalations, custom fields, and more.', docsLink: 'https://docs.sim.ai/tools/incidentio', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['incident-management', 'api'], bgColor: '#E0E0E0', icon: IncidentioIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/infisical.ts b/apps/sim/blocks/blocks/infisical.ts index adfb69c02d3..1021163ab2c 100644 --- a/apps/sim/blocks/blocks/infisical.ts +++ b/apps/sim/blocks/blocks/infisical.ts @@ -1,6 +1,6 @@ import { InfisicalIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { InfisicalResponse } from '@/tools/infisical/types' export const InfisicalBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const InfisicalBlock: BlockConfig = { 'Integrate Infisical into your workflow. List, get, create, update, and delete secrets across project environments.', docsLink: 'https://docs.sim.ai/tools/infisical', category: 'tools', + integrationType: IntegrationType.Security, + tags: ['api'], bgColor: '#F7FE62', icon: InfisicalIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/intercom.ts b/apps/sim/blocks/blocks/intercom.ts index 6919679b640..8c0dc6a7f8e 100644 --- a/apps/sim/blocks/blocks/intercom.ts +++ b/apps/sim/blocks/blocks/intercom.ts @@ -1,6 +1,6 @@ import { IntercomIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' export const IntercomBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const IntercomBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/intercom', authMode: AuthMode.ApiKey, category: 'tools', + integrationType: IntegrationType.CustomerSupport, + tags: ['customer-support', 'oauth'], bgColor: '#E0E0E0', icon: IntercomIcon, subBlocks: [ @@ -1404,6 +1406,8 @@ export const IntercomV2Block: BlockConfig = { ...IntercomBlock, type: 'intercom_v2', name: 'Intercom', + integrationType: IntegrationType.CustomerSupport, + tags: ['customer-support', 'oauth'], hideFromToolbar: false, tools: { ...IntercomBlock.tools, diff --git a/apps/sim/blocks/blocks/jina.ts b/apps/sim/blocks/blocks/jina.ts index 4f9be7884c9..11eb0a886cb 100644 --- a/apps/sim/blocks/blocks/jina.ts +++ b/apps/sim/blocks/blocks/jina.ts @@ -1,5 +1,5 @@ import { JinaAIIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { ReadUrlResponse, SearchResponse } from '@/tools/jina/types' export const JinaBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const JinaBlock: BlockConfig = { 'Integrate Jina AI into the workflow. Search the web and get LLM-friendly results, or extract clean content from specific URLs with advanced parsing options.', docsLink: 'https://docs.sim.ai/tools/jina', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['web-scraping', 'api'], bgColor: '#333333', icon: JinaAIIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/jira.ts b/apps/sim/blocks/blocks/jira.ts index 82f118cf213..478eee1aa3e 100644 --- a/apps/sim/blocks/blocks/jira.ts +++ b/apps/sim/blocks/blocks/jira.ts @@ -1,7 +1,7 @@ import { JiraIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { JiraResponse } from '@/tools/jira/types' import { getTrigger } from '@/triggers' @@ -16,6 +16,8 @@ export const JiraBlock: BlockConfig = { 'Integrate Jira into the workflow. Can read, write, and update issues. Can also trigger workflows based on Jira webhook events.', docsLink: 'https://docs.sim.ai/tools/jira', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['project-management', 'oauth'], bgColor: '#E0E0E0', icon: JiraIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/jira_service_management.ts b/apps/sim/blocks/blocks/jira_service_management.ts index b74fbe4a134..a0b13728261 100644 --- a/apps/sim/blocks/blocks/jira_service_management.ts +++ b/apps/sim/blocks/blocks/jira_service_management.ts @@ -1,7 +1,7 @@ import { JiraServiceManagementIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { JsmResponse } from '@/tools/jsm/types' export const JiraServiceManagementBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const JiraServiceManagementBlock: BlockConfig = { 'Integrate with Jira Service Management for IT service management. Create and manage service requests, handle customers and organizations, track SLAs, and manage queues.', docsLink: 'https://docs.sim.ai/tools/jira-service-management', category: 'tools', + integrationType: IntegrationType.CustomerSupport, + tags: ['customer-support', 'oauth'], bgColor: '#E0E0E0', icon: JiraServiceManagementIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/kalshi.ts b/apps/sim/blocks/blocks/kalshi.ts index d013c93c28d..be42732e533 100644 --- a/apps/sim/blocks/blocks/kalshi.ts +++ b/apps/sim/blocks/blocks/kalshi.ts @@ -1,6 +1,6 @@ import { KalshiIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' export const KalshiBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const KalshiBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/kalshi', authMode: AuthMode.ApiKey, category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['prediction-markets', 'api'], hideFromToolbar: true, bgColor: '#09C285', icon: KalshiIcon, @@ -707,6 +709,8 @@ export const KalshiV2Block: BlockConfig = { description: 'Access prediction markets and trade on Kalshi', longDescription: 'Integrate Kalshi prediction markets into the workflow. Can get markets, market, events, event, balance, positions, orders, orderbook, trades, candlesticks, fills, series, exchange status, and place/cancel/amend trades.', + integrationType: IntegrationType.Analytics, + tags: ['prediction-markets', 'api'], hideFromToolbar: false, tools: { ...KalshiBlock.tools, diff --git a/apps/sim/blocks/blocks/langsmith.ts b/apps/sim/blocks/blocks/langsmith.ts index 0a09606bf80..5a5879024c3 100644 --- a/apps/sim/blocks/blocks/langsmith.ts +++ b/apps/sim/blocks/blocks/langsmith.ts @@ -1,5 +1,5 @@ import { LangsmithIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { LangsmithResponse } from '@/tools/langsmith/types' export const LangsmithBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const LangsmithBlock: BlockConfig = { 'Send run data to LangSmith to trace executions, attach metadata, and monitor workflow performance.', docsLink: 'https://docs.sim.ai/tools/langsmith', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['monitoring', 'api'], bgColor: '#181C1E', icon: LangsmithIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/lemlist.ts b/apps/sim/blocks/blocks/lemlist.ts index 9758b7e1ad3..e16467a2211 100644 --- a/apps/sim/blocks/blocks/lemlist.ts +++ b/apps/sim/blocks/blocks/lemlist.ts @@ -1,5 +1,5 @@ import { LemlistIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { LemlistResponse } from '@/tools/lemlist/types' import { getTrigger } from '@/triggers' @@ -12,6 +12,8 @@ export const LemlistBlock: BlockConfig = { 'Integrate Lemlist into your workflow. Retrieve campaign activities and replies, get lead information, and send emails through the Lemlist inbox.', docsLink: 'https://docs.sim.ai/tools/lemlist', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['marketing', 'api'], bgColor: '#316BFF', icon: LemlistIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/linear.ts b/apps/sim/blocks/blocks/linear.ts index e1a922daacc..ccc9a1d45b4 100644 --- a/apps/sim/blocks/blocks/linear.ts +++ b/apps/sim/blocks/blocks/linear.ts @@ -1,7 +1,7 @@ import { LinearIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { LinearResponse } from '@/tools/linear/types' import { getTrigger } from '@/triggers' @@ -16,6 +16,8 @@ export const LinearBlock: BlockConfig = { 'Integrate Linear into the workflow. Can manage issues, comments, projects, labels, workflow states, cycles, attachments, and more. Can also trigger workflows based on Linear webhook events.', docsLink: 'https://docs.sim.ai/tools/linear', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['project-management', 'oauth'], icon: LinearIcon, bgColor: '#5E6AD2', subBlocks: [ diff --git a/apps/sim/blocks/blocks/linkedin.ts b/apps/sim/blocks/blocks/linkedin.ts index 87fd163b3c1..d9d302fe5d5 100644 --- a/apps/sim/blocks/blocks/linkedin.ts +++ b/apps/sim/blocks/blocks/linkedin.ts @@ -1,7 +1,7 @@ import { LinkedInIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { LinkedInResponse } from '@/tools/linkedin/types' export const LinkedInBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const LinkedInBlock: BlockConfig = { 'Integrate LinkedIn into workflows. Share posts to your personal feed and access your LinkedIn profile information.', docsLink: 'https://docs.sim.ai/tools/linkedin', category: 'tools', + integrationType: IntegrationType.Social, + tags: ['oauth', 'marketing'], bgColor: '#0072B1', icon: LinkedInIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/linkup.ts b/apps/sim/blocks/blocks/linkup.ts index c9cfc4953e4..0e501da0e05 100644 --- a/apps/sim/blocks/blocks/linkup.ts +++ b/apps/sim/blocks/blocks/linkup.ts @@ -1,5 +1,5 @@ import { LinkupIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { LinkupSearchToolResponse } from '@/tools/linkup/types' export const LinkupBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const LinkupBlock: BlockConfig = { longDescription: 'Integrate Linkup into the workflow. Can search the web.', docsLink: 'https://docs.sim.ai/tools/linkup', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], bgColor: '#D6D3C7', icon: LinkupIcon, diff --git a/apps/sim/blocks/blocks/loops.ts b/apps/sim/blocks/blocks/loops.ts index 02a49ea7647..a36b8512752 100644 --- a/apps/sim/blocks/blocks/loops.ts +++ b/apps/sim/blocks/blocks/loops.ts @@ -1,6 +1,6 @@ import { LoopsIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { LoopsResponse } from '@/tools/loops/types' export const LoopsBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const LoopsBlock: BlockConfig = { 'Integrate Loops into the workflow. Create and manage contacts, send transactional emails, and trigger event-based automations.', docsLink: 'https://docs.sim.ai/tools/loops', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['marketing', 'api'], bgColor: '#FAFAF9', icon: LoopsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/luma.ts b/apps/sim/blocks/blocks/luma.ts index aa640b00813..1254a4411d6 100644 --- a/apps/sim/blocks/blocks/luma.ts +++ b/apps/sim/blocks/blocks/luma.ts @@ -1,5 +1,5 @@ import { LumaIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' export const LumaBlock: BlockConfig = { type: 'luma', @@ -9,6 +9,8 @@ export const LumaBlock: BlockConfig = { 'Integrate Luma into the workflow. Can create events, update events, get event details, list calendar events, get guest lists, and add guests to events.', docsLink: 'https://docs.sim.ai/tools/luma', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['calendar', 'api'], bgColor: '#FFFFFF', icon: LumaIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/mailchimp.ts b/apps/sim/blocks/blocks/mailchimp.ts index 147e61e575c..e18385b28a9 100644 --- a/apps/sim/blocks/blocks/mailchimp.ts +++ b/apps/sim/blocks/blocks/mailchimp.ts @@ -1,6 +1,6 @@ import { MailchimpIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const MailchimpBlock: BlockConfig = { type: 'mailchimp', @@ -11,6 +11,8 @@ export const MailchimpBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/mailchimp', authMode: AuthMode.ApiKey, category: 'tools', + integrationType: IntegrationType.Email, + tags: ['marketing', 'oauth'], bgColor: '#FFE01B', icon: MailchimpIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/mailgun.ts b/apps/sim/blocks/blocks/mailgun.ts index 4fdee43095d..9b21260cd6a 100644 --- a/apps/sim/blocks/blocks/mailgun.ts +++ b/apps/sim/blocks/blocks/mailgun.ts @@ -1,5 +1,6 @@ import { MailgunIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { SendMessageResult } from '@/tools/mailgun/types' export const MailgunBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const MailgunBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/mailgun', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['api'], bgColor: '#E0E0E0', icon: MailgunIcon, diff --git a/apps/sim/blocks/blocks/mcp.ts b/apps/sim/blocks/blocks/mcp.ts index 1d80d052da3..40e0d65b409 100644 --- a/apps/sim/blocks/blocks/mcp.ts +++ b/apps/sim/blocks/blocks/mcp.ts @@ -1,6 +1,7 @@ import { McpIcon } from '@/components/icons' import { createMcpToolId } from '@/lib/mcp/shared' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { ToolResponse } from '@/tools/types' export interface McpResponse extends ToolResponse { @@ -15,6 +16,8 @@ export const McpBlock: BlockConfig = { 'Integrate MCP into the workflow. Can execute tools from MCP servers. Requires MCP servers in workspace settings.', docsLink: 'https://docs.sim.ai/mcp', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api', 'automation'], bgColor: '#181C1E', icon: McpIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/mem0.ts b/apps/sim/blocks/blocks/mem0.ts index 3384b93b0cb..615f9b92e7a 100644 --- a/apps/sim/blocks/blocks/mem0.ts +++ b/apps/sim/blocks/blocks/mem0.ts @@ -1,5 +1,5 @@ import { Mem0Icon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { Mem0Response } from '@/tools/mem0/types' export const Mem0Block: BlockConfig = { @@ -11,6 +11,8 @@ export const Mem0Block: BlockConfig = { bgColor: '#181C1E', icon: Mem0Icon, category: 'tools', + integrationType: IntegrationType.AI, + tags: ['llm', 'api'], docsLink: 'https://docs.sim.ai/tools/mem0', subBlocks: [ { diff --git a/apps/sim/blocks/blocks/microsoft_ad.ts b/apps/sim/blocks/blocks/microsoft_ad.ts index be5265efaa2..183141c92d2 100644 --- a/apps/sim/blocks/blocks/microsoft_ad.ts +++ b/apps/sim/blocks/blocks/microsoft_ad.ts @@ -1,7 +1,7 @@ import { AzureIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { MicrosoftAdResponse } from '@/tools/microsoft_ad/types' export const MicrosoftAdBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const MicrosoftAdBlock: BlockConfig = { 'Integrate Azure Active Directory into your workflows. List, create, update, and delete users and groups. Manage group memberships programmatically.', docsLink: 'https://docs.sim.ai/tools/microsoft_ad', category: 'tools', + integrationType: IntegrationType.Security, + tags: ['oauth', 'microsoft-365'], bgColor: '#0078D4', icon: AzureIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/microsoft_dataverse.ts b/apps/sim/blocks/blocks/microsoft_dataverse.ts index 531973197fa..be33911974e 100644 --- a/apps/sim/blocks/blocks/microsoft_dataverse.ts +++ b/apps/sim/blocks/blocks/microsoft_dataverse.ts @@ -1,7 +1,7 @@ import { MicrosoftDataverseIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { DataverseResponse } from '@/tools/microsoft_dataverse/types' @@ -14,6 +14,8 @@ export const MicrosoftDataverseBlock: BlockConfig = { 'Integrate Microsoft Dataverse into your workflow. Create, read, update, delete, upsert, associate, query, search, and execute actions and functions against Dataverse tables using the Web API. Supports bulk operations, FetchXML, file uploads, and relevance search. Works with Dynamics 365, Power Platform, and custom Dataverse environments.', docsLink: 'https://docs.sim.ai/tools/microsoft_dataverse', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['oauth', 'microsoft-365'], bgColor: '#E0E0E0', icon: MicrosoftDataverseIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/microsoft_excel.ts b/apps/sim/blocks/blocks/microsoft_excel.ts index 1329b6edcde..8f46d240066 100644 --- a/apps/sim/blocks/blocks/microsoft_excel.ts +++ b/apps/sim/blocks/blocks/microsoft_excel.ts @@ -1,7 +1,7 @@ import { MicrosoftExcelIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' import type { MicrosoftExcelResponse, @@ -18,6 +18,8 @@ export const MicrosoftExcelBlock: BlockConfig = { 'Integrate Microsoft Excel into the workflow. Can read, write, update, add to table, and create new worksheets.', docsLink: 'https://docs.sim.ai/tools/microsoft_excel', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'microsoft-365'], bgColor: '#E0E0E0', icon: MicrosoftExcelIcon, subBlocks: [ @@ -338,6 +340,8 @@ export const MicrosoftExcelV2Block: BlockConfig = { 'Integrate Microsoft Excel into the workflow with explicit sheet selection. Can read and write data in specific sheets.', docsLink: 'https://docs.sim.ai/tools/microsoft_excel', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'microsoft-365'], bgColor: '#E0E0E0', icon: MicrosoftExcelIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/microsoft_planner.ts b/apps/sim/blocks/blocks/microsoft_planner.ts index 1a0d57d9be9..0b3e745e322 100644 --- a/apps/sim/blocks/blocks/microsoft_planner.ts +++ b/apps/sim/blocks/blocks/microsoft_planner.ts @@ -1,7 +1,7 @@ import { MicrosoftPlannerIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { MicrosoftPlannerResponse } from '@/tools/microsoft_planner/types' interface MicrosoftPlannerBlockParams { @@ -35,6 +35,8 @@ export const MicrosoftPlannerBlock: BlockConfig = { 'Integrate Microsoft Planner into the workflow. Manage tasks, plans, buckets, and task details including checklists and references.', docsLink: 'https://docs.sim.ai/tools/microsoft_planner', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['project-management', 'oauth', 'microsoft-365'], bgColor: '#E0E0E0', icon: MicrosoftPlannerIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/microsoft_teams.ts b/apps/sim/blocks/blocks/microsoft_teams.ts index 7b382374c8d..f113b3d0115 100644 --- a/apps/sim/blocks/blocks/microsoft_teams.ts +++ b/apps/sim/blocks/blocks/microsoft_teams.ts @@ -1,7 +1,7 @@ import { MicrosoftTeamsIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { MicrosoftTeamsResponse } from '@/tools/microsoft_teams/types' import { getTrigger } from '@/triggers' @@ -15,6 +15,8 @@ export const MicrosoftTeamsBlock: BlockConfig = { 'Integrate Microsoft Teams into the workflow. Read, write, update, and delete chat and channel messages. Reply to messages, add reactions, and list team/channel members. Can be used in trigger mode to trigger a workflow when a message is sent to a chat or channel. To mention users in messages, wrap their name in `` tags: `userName`', docsLink: 'https://docs.sim.ai/tools/microsoft_teams', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['oauth', 'microsoft-365'], triggerAllowed: true, bgColor: '#E0E0E0', icon: MicrosoftTeamsIcon, diff --git a/apps/sim/blocks/blocks/mistral_parse.ts b/apps/sim/blocks/blocks/mistral_parse.ts index d7bb020a1b3..2ee52dbcf82 100644 --- a/apps/sim/blocks/blocks/mistral_parse.ts +++ b/apps/sim/blocks/blocks/mistral_parse.ts @@ -1,5 +1,5 @@ import { MistralIcon } from '@/components/icons' -import { AuthMode, type BlockConfig, type SubBlockType } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType, type SubBlockType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { MistralParserOutput } from '@/tools/mistral/types' @@ -12,6 +12,8 @@ export const MistralParseBlock: BlockConfig = { longDescription: `Integrate Mistral Parse into the workflow. Can extract text from uploaded PDF documents, or from a URL.`, docsLink: 'https://docs.sim.ai/tools/mistral_parse', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['document-processing', 'ocr'], bgColor: '#000000', icon: MistralIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/mongodb.ts b/apps/sim/blocks/blocks/mongodb.ts index aa567e30e3d..50dd5d10940 100644 --- a/apps/sim/blocks/blocks/mongodb.ts +++ b/apps/sim/blocks/blocks/mongodb.ts @@ -1,5 +1,6 @@ import { MongoDBIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { MongoDBIntrospectResponse, MongoDBResponse } from '@/tools/mongodb/types' export const MongoDBBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const MongoDBBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const MySQLBlock: BlockConfig = { 'Integrate MySQL into the workflow. Can query, insert, update, delete, and execute raw SQL.', docsLink: 'https://docs.sim.ai/tools/mysql', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['api'], bgColor: '#E0E0E0', icon: MySQLIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/neo4j.ts b/apps/sim/blocks/blocks/neo4j.ts index 2624e5e0bb3..722ccbe3bbd 100644 --- a/apps/sim/blocks/blocks/neo4j.ts +++ b/apps/sim/blocks/blocks/neo4j.ts @@ -1,5 +1,6 @@ import { Neo4jIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { Neo4jIntrospectResponse, Neo4jResponse } from '@/tools/neo4j/types' export const Neo4jBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const Neo4jBlock: BlockConfig = 'Integrate Neo4j graph database into the workflow. Can query, create, merge, update, and delete nodes and relationships.', docsLink: 'https://docs.sim.ai/tools/neo4j', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['api'], bgColor: '#FFFFFF', icon: Neo4jIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/notion.ts b/apps/sim/blocks/blocks/notion.ts index f222565fdf4..5740afb8a13 100644 --- a/apps/sim/blocks/blocks/notion.ts +++ b/apps/sim/blocks/blocks/notion.ts @@ -1,6 +1,6 @@ import { NotionIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector } from '@/blocks/utils' import type { NotionResponse } from '@/tools/notion/types' @@ -15,6 +15,8 @@ export const NotionBlock: BlockConfig = { 'Integrate with Notion into the workflow. Can read page, read database, create page, create database, append content, query database, and search workspace.', docsLink: 'https://docs.sim.ai/tools/notion', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth'], bgColor: '#181C1E', icon: NotionIcon, subBlocks: [ @@ -429,6 +431,8 @@ export const NotionV2Block: BlockConfig = { 'Integrate with Notion into the workflow. Can read page, read database, create page, create database, append content, query database, and search workspace.', docsLink: 'https://docs.sim.ai/tools/notion', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth'], bgColor: '#181C1E', icon: NotionIcon, hideFromToolbar: false, diff --git a/apps/sim/blocks/blocks/obsidian.ts b/apps/sim/blocks/blocks/obsidian.ts index 533c80fc654..0d973281b5c 100644 --- a/apps/sim/blocks/blocks/obsidian.ts +++ b/apps/sim/blocks/blocks/obsidian.ts @@ -1,6 +1,6 @@ import { ObsidianIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const ObsidianBlock: BlockConfig = { type: 'obsidian', @@ -10,6 +10,8 @@ export const ObsidianBlock: BlockConfig = { 'Read, create, update, search, and delete notes in your Obsidian vault. Manage periodic notes, execute commands, and patch content at specific locations. Requires the Obsidian Local REST API plugin.', docsLink: 'https://docs.sim.ai/tools/obsidian', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['api'], bgColor: '#0F0F0F', icon: ObsidianIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/okta.ts b/apps/sim/blocks/blocks/okta.ts index e0b284c1bb6..d2404dca507 100644 --- a/apps/sim/blocks/blocks/okta.ts +++ b/apps/sim/blocks/blocks/okta.ts @@ -1,5 +1,6 @@ import { OktaIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { OktaResponse } from '@/tools/okta/types' export const OktaBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const OktaBlock: BlockConfig = { 'Integrate Okta identity management into your workflow. List, create, update, activate, suspend, and delete users. Reset passwords. Manage groups and group membership.', docsLink: 'https://docs.sim.ai/tools/okta', category: 'tools', + integrationType: IntegrationType.Security, + tags: ['oauth'], bgColor: '#191919', icon: OktaIcon, diff --git a/apps/sim/blocks/blocks/onedrive.ts b/apps/sim/blocks/blocks/onedrive.ts index b8d54b5e300..805cbcd283b 100644 --- a/apps/sim/blocks/blocks/onedrive.ts +++ b/apps/sim/blocks/blocks/onedrive.ts @@ -2,7 +2,7 @@ import { createLogger } from '@sim/logger' import { MicrosoftOneDriveIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { OneDriveResponse } from '@/tools/onedrive/types' import { normalizeExcelValuesForToolParams } from '@/tools/onedrive/utils' @@ -18,6 +18,8 @@ export const OneDriveBlock: BlockConfig = { 'Integrate OneDrive into the workflow. Can create text and Excel files, upload files, download files, list files, and delete files or folders.', docsLink: 'https://docs.sim.ai/tools/onedrive', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['oauth', 'microsoft-365', 'cloud'], bgColor: '#E0E0E0', icon: MicrosoftOneDriveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/onepassword.ts b/apps/sim/blocks/blocks/onepassword.ts index 7407c7f9277..b6e53a4b8b6 100644 --- a/apps/sim/blocks/blocks/onepassword.ts +++ b/apps/sim/blocks/blocks/onepassword.ts @@ -1,5 +1,5 @@ import { OnePasswordIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' export const OnePasswordBlock: BlockConfig = { type: 'onepassword', @@ -9,6 +9,8 @@ export const OnePasswordBlock: BlockConfig = { 'Access and manage secrets stored in 1Password vaults using the Connect API or Service Account SDK. List vaults, retrieve items with their fields and secrets, create new items, update existing ones, delete items, and resolve secret references.', docsLink: 'https://docs.sim.ai/tools/onepassword', category: 'tools', + integrationType: IntegrationType.Security, + tags: ['api'], bgColor: '#E0E0E0', icon: OnePasswordIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/openai.ts b/apps/sim/blocks/blocks/openai.ts index 2585804b296..4c940c68656 100644 --- a/apps/sim/blocks/blocks/openai.ts +++ b/apps/sim/blocks/blocks/openai.ts @@ -1,6 +1,6 @@ import { OpenAIIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const OpenAIBlock: BlockConfig = { type: 'openai', @@ -9,6 +9,8 @@ export const OpenAIBlock: BlockConfig = { authMode: AuthMode.ApiKey, longDescription: 'Integrate Embeddings into the workflow. Can generate embeddings from text.', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['llm', 'api'], docsLink: 'https://docs.sim.ai/tools/openai', bgColor: '#10a37f', icon: OpenAIIcon, diff --git a/apps/sim/blocks/blocks/outlook.ts b/apps/sim/blocks/blocks/outlook.ts index 2635a5be659..6b2550b4918 100644 --- a/apps/sim/blocks/blocks/outlook.ts +++ b/apps/sim/blocks/blocks/outlook.ts @@ -1,7 +1,7 @@ import { OutlookIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { OutlookResponse } from '@/tools/outlook/types' import { getTrigger } from '@/triggers' @@ -15,6 +15,8 @@ export const OutlookBlock: BlockConfig = { 'Integrate Outlook into the workflow. Can read, draft, send, forward, and move email messages. Can be used in trigger mode to trigger a workflow when a new email is received.', docsLink: 'https://docs.sim.ai/tools/outlook', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['oauth', 'microsoft-365'], triggerAllowed: true, bgColor: '#E0E0E0', icon: OutlookIcon, diff --git a/apps/sim/blocks/blocks/pagerduty.ts b/apps/sim/blocks/blocks/pagerduty.ts index 34e1336bb92..91cf8befa53 100644 --- a/apps/sim/blocks/blocks/pagerduty.ts +++ b/apps/sim/blocks/blocks/pagerduty.ts @@ -1,5 +1,5 @@ import { PagerDutyIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' export const PagerDutyBlock: BlockConfig = { type: 'pagerduty', @@ -9,6 +9,8 @@ export const PagerDutyBlock: BlockConfig = { 'Integrate PagerDuty into your workflow to list, create, and update incidents, add notes, list services, and check on-call schedules.', docsLink: 'https://docs.sim.ai/tools/pagerduty', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['incident-management', 'oauth'], bgColor: '#06AC38', icon: PagerDutyIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/parallel.ts b/apps/sim/blocks/blocks/parallel.ts index 65fdc052c69..f1a4caf30ac 100644 --- a/apps/sim/blocks/blocks/parallel.ts +++ b/apps/sim/blocks/blocks/parallel.ts @@ -1,5 +1,5 @@ import { ParallelIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { ToolResponse } from '@/tools/types' export const ParallelBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const ParallelBlock: BlockConfig = { 'Integrate Parallel AI into the workflow. Can search the web, extract information from URLs, and conduct deep research.', docsLink: 'https://docs.sim.ai/tools/parallel-ai', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], bgColor: '#E0E0E0', icon: ParallelIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/perplexity.ts b/apps/sim/blocks/blocks/perplexity.ts index eb88fe81b4c..be869557f07 100644 --- a/apps/sim/blocks/blocks/perplexity.ts +++ b/apps/sim/blocks/blocks/perplexity.ts @@ -1,5 +1,5 @@ import { PerplexityIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { PerplexityChatResponse, PerplexitySearchResponse } from '@/tools/perplexity/types' type PerplexityResponse = PerplexityChatResponse | PerplexitySearchResponse @@ -13,6 +13,8 @@ export const PerplexityBlock: BlockConfig = { authMode: AuthMode.ApiKey, docsLink: 'https://docs.sim.ai/tools/perplexity', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['llm', 'api'], bgColor: '#20808D', // Perplexity turquoise color icon: PerplexityIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/pinecone.ts b/apps/sim/blocks/blocks/pinecone.ts index c89b67c20a0..592280e22b0 100644 --- a/apps/sim/blocks/blocks/pinecone.ts +++ b/apps/sim/blocks/blocks/pinecone.ts @@ -1,6 +1,6 @@ import { PineconeIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { PineconeResponse } from '@/tools/pinecone/types' export const PineconeBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const PineconeBlock: BlockConfig = { 'Integrate Pinecone into the workflow. Can generate embeddings, upsert text, search with text, fetch vectors, and search with vectors.', docsLink: 'https://docs.sim.ai/tools/pinecone', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['vector-search', 'api'], bgColor: '#0D1117', icon: PineconeIcon, diff --git a/apps/sim/blocks/blocks/pipedrive.ts b/apps/sim/blocks/blocks/pipedrive.ts index 7b62906f93e..8875f15c238 100644 --- a/apps/sim/blocks/blocks/pipedrive.ts +++ b/apps/sim/blocks/blocks/pipedrive.ts @@ -1,7 +1,7 @@ import { PipedriveIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { PipedriveResponse } from '@/tools/pipedrive/types' export const PipedriveBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const PipedriveBlock: BlockConfig = { 'Integrate Pipedrive into your workflow. Manage deals, contacts, sales pipeline, projects, activities, files, and communications with powerful CRM capabilities.', docsLink: 'https://docs.sim.ai/tools/pipedrive', category: 'tools', + integrationType: IntegrationType.CRM, + tags: ['oauth'], bgColor: '#2E6936', icon: PipedriveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/polymarket.ts b/apps/sim/blocks/blocks/polymarket.ts index dd92a405714..139ddd04b26 100644 --- a/apps/sim/blocks/blocks/polymarket.ts +++ b/apps/sim/blocks/blocks/polymarket.ts @@ -1,5 +1,6 @@ import { PolymarketIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' export const PolymarketBlock: BlockConfig = { type: 'polymarket', @@ -9,6 +10,8 @@ export const PolymarketBlock: BlockConfig = { 'Integrate Polymarket prediction markets into the workflow. Can get markets, market, events, event, tags, series, orderbook, price, midpoint, price history, last trade price, spread, tick size, positions, trades, activity, leaderboard, holders, and search.', docsLink: 'https://docs.sim.ai/tools/polymarket', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['prediction-markets', 'api'], bgColor: '#4C82FB', icon: PolymarketIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/postgresql.ts b/apps/sim/blocks/blocks/postgresql.ts index 2f375733345..f2f8b6d088f 100644 --- a/apps/sim/blocks/blocks/postgresql.ts +++ b/apps/sim/blocks/blocks/postgresql.ts @@ -1,5 +1,6 @@ import { PostgresIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { PostgresResponse } from '@/tools/postgresql/types' export const PostgreSQLBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const PostgreSQLBlock: BlockConfig = { 'Integrate PostgreSQL into the workflow. Can query, insert, update, delete, and execute raw SQL.', docsLink: 'https://docs.sim.ai/tools/postgresql', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['api'], bgColor: '#336791', icon: PostgresIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/posthog.ts b/apps/sim/blocks/blocks/posthog.ts index fef1f8aa5df..7d51ad591bb 100644 --- a/apps/sim/blocks/blocks/posthog.ts +++ b/apps/sim/blocks/blocks/posthog.ts @@ -1,6 +1,6 @@ import { PosthogIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { PostHogResponse } from '@/tools/posthog/types' export const PostHogBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const PostHogBlock: BlockConfig = { 'Integrate PostHog into your workflow. Track events, manage feature flags, analyze user behavior, run experiments, create surveys, and access session recordings.', docsLink: 'https://docs.sim.ai/tools/posthog', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['monitoring', 'api'], bgColor: '#E0E0E0', icon: PosthogIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/pulse.ts b/apps/sim/blocks/blocks/pulse.ts index fda29aa162e..41b6a74571b 100644 --- a/apps/sim/blocks/blocks/pulse.ts +++ b/apps/sim/blocks/blocks/pulse.ts @@ -1,5 +1,5 @@ import { PulseIcon } from '@/components/icons' -import { AuthMode, type BlockConfig, type SubBlockType } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType, type SubBlockType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { PulseParserOutput } from '@/tools/pulse/types' @@ -13,6 +13,8 @@ export const PulseBlock: BlockConfig = { 'Integrate Pulse into the workflow. Extract text from PDF documents, images, and Office files via URL or upload.', docsLink: 'https://docs.sim.ai/tools/pulse', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['document-processing', 'ocr'], bgColor: '#E0E0E0', icon: PulseIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/qdrant.ts b/apps/sim/blocks/blocks/qdrant.ts index 9d0de09c32e..427384e8fb0 100644 --- a/apps/sim/blocks/blocks/qdrant.ts +++ b/apps/sim/blocks/blocks/qdrant.ts @@ -1,6 +1,6 @@ import { QdrantIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { QdrantResponse } from '@/tools/qdrant/types' export const QdrantBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const QdrantBlock: BlockConfig = { longDescription: 'Integrate Qdrant into the workflow. Can upsert, search, and fetch points.', docsLink: 'https://qdrant.tech/documentation/', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['vector-search', 'api'], bgColor: '#1A223F', icon: QdrantIcon, diff --git a/apps/sim/blocks/blocks/rds.ts b/apps/sim/blocks/blocks/rds.ts index 1bf54787c28..d8bdb152eb7 100644 --- a/apps/sim/blocks/blocks/rds.ts +++ b/apps/sim/blocks/blocks/rds.ts @@ -1,5 +1,6 @@ import { RDSIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { RdsIntrospectResponse, RdsResponse } from '@/tools/rds/types' export const RDSBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const RDSBlock: BlockConfig = { 'Integrate Amazon RDS Aurora Serverless into the workflow using the Data API. Can query, insert, update, delete, and execute raw SQL without managing database connections.', docsLink: 'https://docs.sim.ai/tools/rds', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['cloud'], bgColor: 'linear-gradient(45deg, #2E27AD 0%, #527FFF 100%)', icon: RDSIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/reddit.ts b/apps/sim/blocks/blocks/reddit.ts index d2ddb1d908e..f8762ceb644 100644 --- a/apps/sim/blocks/blocks/reddit.ts +++ b/apps/sim/blocks/blocks/reddit.ts @@ -1,7 +1,7 @@ import { RedditIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { RedditResponse } from '@/tools/reddit/types' export const RedditBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const RedditBlock: BlockConfig = { 'Integrate Reddit into workflows. Read posts, comments, and search content. Submit posts, vote, reply, edit, manage messages, and access user and subreddit info.', docsLink: 'https://docs.sim.ai/tools/reddit', category: 'tools', + integrationType: IntegrationType.Social, + tags: ['api'], bgColor: '#FF5700', icon: RedditIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/redis.ts b/apps/sim/blocks/blocks/redis.ts index 1b105dac5f3..ababed4936a 100644 --- a/apps/sim/blocks/blocks/redis.ts +++ b/apps/sim/blocks/blocks/redis.ts @@ -1,6 +1,6 @@ import { RedisIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { RedisCommandResponse, RedisDeleteResponse, @@ -81,6 +81,8 @@ export const RedisBlock: BlockConfig = { 'Connect to any Redis instance to perform key-value, hash, list, and utility operations via a direct connection.', docsLink: 'https://docs.sim.ai/tools/redis', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['api'], bgColor: '#FF4438', authMode: AuthMode.ApiKey, icon: RedisIcon, diff --git a/apps/sim/blocks/blocks/reducto.ts b/apps/sim/blocks/blocks/reducto.ts index d0c6ed7ce3f..cd666fa739c 100644 --- a/apps/sim/blocks/blocks/reducto.ts +++ b/apps/sim/blocks/blocks/reducto.ts @@ -1,5 +1,5 @@ import { ReductoIcon } from '@/components/icons' -import { AuthMode, type BlockConfig, type SubBlockType } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType, type SubBlockType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { ReductoParserOutput } from '@/tools/reducto/types' @@ -12,6 +12,8 @@ export const ReductoBlock: BlockConfig = { longDescription: `Integrate Reducto Parse into the workflow. Can extract text from uploaded PDF documents, or from a URL.`, docsLink: 'https://docs.sim.ai/tools/reducto', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['document-processing', 'ocr'], bgColor: '#5c0c5c', icon: ReductoIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/resend.ts b/apps/sim/blocks/blocks/resend.ts index 75a06bcfaaa..6fc7472ad19 100644 --- a/apps/sim/blocks/blocks/resend.ts +++ b/apps/sim/blocks/blocks/resend.ts @@ -1,6 +1,6 @@ import { ResendIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const ResendBlock: BlockConfig = { type: 'resend', @@ -10,6 +10,8 @@ export const ResendBlock: BlockConfig = { 'Integrate Resend into your workflow. Send emails, retrieve email status, manage contacts, and view domains. Requires API Key.', docsLink: 'https://docs.sim.ai/tools/resend', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['api'], bgColor: '#181C1E', icon: ResendIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/revenuecat.ts b/apps/sim/blocks/blocks/revenuecat.ts index b6e645c42b5..0d643436501 100644 --- a/apps/sim/blocks/blocks/revenuecat.ts +++ b/apps/sim/blocks/blocks/revenuecat.ts @@ -1,6 +1,6 @@ import { RevenueCatIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { RevenueCatResponse } from '@/tools/revenuecat/types' export const RevenueCatBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const RevenueCatBlock: BlockConfig = { 'Integrate RevenueCat into the workflow. Manage subscribers, entitlements, offerings, and Google Play subscriptions. Retrieve customer subscription status, grant or revoke promotional entitlements, record purchases, update subscriber attributes, and manage Google Play subscription billing.', docsLink: 'https://docs.sim.ai/tools/revenuecat', category: 'tools', + integrationType: IntegrationType.Ecommerce, + tags: ['payments', 'api'], bgColor: '#F25A5A', icon: RevenueCatIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/rss.ts b/apps/sim/blocks/blocks/rss.ts index d91f8a6b82a..d9eadc19a19 100644 --- a/apps/sim/blocks/blocks/rss.ts +++ b/apps/sim/blocks/blocks/rss.ts @@ -1,5 +1,6 @@ import { RssIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import { getTrigger } from '@/triggers' export const RssBlock: BlockConfig = { @@ -9,6 +10,8 @@ export const RssBlock: BlockConfig = { longDescription: 'Subscribe to any RSS or Atom feed and automatically trigger your workflow when new content is published. Perfect for monitoring blogs, news sites, podcasts, and any content that publishes an RSS feed.', category: 'triggers', + integrationType: IntegrationType.Search, + tags: ['api'], bgColor: '#F97316', icon: RssIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/s3.ts b/apps/sim/blocks/blocks/s3.ts index 30fabd9d3e5..b53efdc4c09 100644 --- a/apps/sim/blocks/blocks/s3.ts +++ b/apps/sim/blocks/blocks/s3.ts @@ -1,6 +1,6 @@ import { S3Icon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { S3Response } from '@/tools/s3/types' @@ -13,6 +13,8 @@ export const S3Block: BlockConfig = { 'Integrate S3 into the workflow. Upload files, download objects, list bucket contents, delete objects, and copy objects between buckets. Requires AWS access key and secret access key.', docsLink: 'https://docs.sim.ai/tools/s3', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['cloud'], bgColor: 'linear-gradient(45deg, #1B660F 0%, #6CAE3E 100%)', icon: S3Icon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/salesforce.ts b/apps/sim/blocks/blocks/salesforce.ts index f6bbd422e63..3c0c4e7b4fa 100644 --- a/apps/sim/blocks/blocks/salesforce.ts +++ b/apps/sim/blocks/blocks/salesforce.ts @@ -1,7 +1,7 @@ import { SalesforceIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { SalesforceResponse } from '@/tools/salesforce/types' export const SalesforceBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const SalesforceBlock: BlockConfig = { 'Integrate Salesforce into your workflow. Manage accounts, contacts, leads, opportunities, cases, and tasks with powerful automation capabilities.', docsLink: 'https://docs.sim.ai/tools/salesforce', category: 'tools', + integrationType: IntegrationType.CRM, + tags: ['oauth'], bgColor: '#E0E0E0', icon: SalesforceIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/search.ts b/apps/sim/blocks/blocks/search.ts index 9ec8dbe4822..890661242c4 100644 --- a/apps/sim/blocks/blocks/search.ts +++ b/apps/sim/blocks/blocks/search.ts @@ -1,5 +1,6 @@ import { SearchIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' export const SearchBlock: BlockConfig = { type: 'search', @@ -9,6 +10,8 @@ export const SearchBlock: BlockConfig = { bgColor: '#3B82F6', icon: SearchIcon, category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], docsLink: 'https://docs.sim.ai/tools/search', subBlocks: [ { diff --git a/apps/sim/blocks/blocks/sendgrid.ts b/apps/sim/blocks/blocks/sendgrid.ts index 29a58c2564e..d5484a7c951 100644 --- a/apps/sim/blocks/blocks/sendgrid.ts +++ b/apps/sim/blocks/blocks/sendgrid.ts @@ -1,5 +1,6 @@ import { SendgridIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { SendMailResult } from '@/tools/sendgrid/types' @@ -11,6 +12,8 @@ export const SendGridBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/sendgrid', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['api', 'marketing'], bgColor: '#1A82E2', icon: SendgridIcon, diff --git a/apps/sim/blocks/blocks/sentry.ts b/apps/sim/blocks/blocks/sentry.ts index 8afe64d9607..1b51a27aeeb 100644 --- a/apps/sim/blocks/blocks/sentry.ts +++ b/apps/sim/blocks/blocks/sentry.ts @@ -1,6 +1,6 @@ import { SentryIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { SentryResponse } from '@/tools/sentry/types' export const SentryBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const SentryBlock: BlockConfig = { 'Integrate Sentry into the workflow. Monitor issues, manage projects, track events, and coordinate releases across your applications.', docsLink: 'https://docs.sim.ai/tools/sentry', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['monitoring', 'api'], bgColor: '#E0E0E0', icon: SentryIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/serper.ts b/apps/sim/blocks/blocks/serper.ts index 202de8ef70b..b7243b47cdf 100644 --- a/apps/sim/blocks/blocks/serper.ts +++ b/apps/sim/blocks/blocks/serper.ts @@ -1,6 +1,6 @@ import { SerperIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { SearchResponse } from '@/tools/serper/types' export const SerperBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const SerperBlock: BlockConfig = { longDescription: 'Integrate Serper into the workflow. Can search the web.', docsLink: 'https://docs.sim.ai/tools/serper', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], bgColor: '#2B3543', icon: SerperIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/servicenow.ts b/apps/sim/blocks/blocks/servicenow.ts index 2a260d88c09..bddafd3a13e 100644 --- a/apps/sim/blocks/blocks/servicenow.ts +++ b/apps/sim/blocks/blocks/servicenow.ts @@ -1,5 +1,6 @@ import { ServiceNowIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { ServiceNowResponse } from '@/tools/servicenow/types' export const ServiceNowBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const ServiceNowBlock: BlockConfig = { 'Integrate ServiceNow into your workflow. Create, read, update, and delete records in any ServiceNow table including incidents, tasks, change requests, users, and more.', docsLink: 'https://docs.sim.ai/tools/servicenow', category: 'tools', + integrationType: IntegrationType.CustomerSupport, + tags: ['customer-support', 'oauth'], bgColor: '#032D42', icon: ServiceNowIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/sftp.ts b/apps/sim/blocks/blocks/sftp.ts index 0a868644d3e..d971819a430 100644 --- a/apps/sim/blocks/blocks/sftp.ts +++ b/apps/sim/blocks/blocks/sftp.ts @@ -1,6 +1,6 @@ import { SftpIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { SftpUploadResult } from '@/tools/sftp/types' @@ -12,6 +12,8 @@ export const SftpBlock: BlockConfig = { 'Upload, download, list, and manage files on remote servers via SFTP. Supports both password and private key authentication for secure file transfers.', docsLink: 'https://docs.sim.ai/tools/sftp', category: 'tools', + integrationType: IntegrationType.FileStorage, + tags: ['api'], bgColor: '#2D3748', icon: SftpIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/sharepoint.ts b/apps/sim/blocks/blocks/sharepoint.ts index 85ac2c34ba4..012e9bbbe92 100644 --- a/apps/sim/blocks/blocks/sharepoint.ts +++ b/apps/sim/blocks/blocks/sharepoint.ts @@ -2,7 +2,7 @@ import { createLogger } from '@sim/logger' import { MicrosoftSharepointIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { SharepointResponse } from '@/tools/sharepoint/types' @@ -17,6 +17,8 @@ export const SharepointBlock: BlockConfig = { 'Integrate SharePoint into the workflow. Read/create pages, list sites, and work with lists (read, create, update items). Requires OAuth.', docsLink: 'https://docs.sim.ai/tools/sharepoint', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth', 'microsoft-365'], bgColor: '#E0E0E0', icon: MicrosoftSharepointIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/shopify.ts b/apps/sim/blocks/blocks/shopify.ts index 7c4d12e7379..a2bfd69b48d 100644 --- a/apps/sim/blocks/blocks/shopify.ts +++ b/apps/sim/blocks/blocks/shopify.ts @@ -1,7 +1,7 @@ import { ShopifyIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' interface ShopifyResponse { success: boolean @@ -18,6 +18,8 @@ export const ShopifyBlock: BlockConfig = { 'Integrate Shopify into your workflow. Manage products, orders, customers, and inventory. Create, read, update, and delete products. List and manage orders. Handle customer data and adjust inventory levels.', docsLink: 'https://docs.sim.ai/tools/shopify', category: 'tools', + integrationType: IntegrationType.Ecommerce, + tags: ['oauth'], icon: ShopifyIcon, bgColor: '#FFFFFF', subBlocks: [ diff --git a/apps/sim/blocks/blocks/similarweb.ts b/apps/sim/blocks/blocks/similarweb.ts index 432b3a47125..ba515964d89 100644 --- a/apps/sim/blocks/blocks/similarweb.ts +++ b/apps/sim/blocks/blocks/similarweb.ts @@ -1,6 +1,6 @@ import { SimilarwebIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const SimilarwebBlock: BlockConfig = { type: 'similarweb', @@ -10,6 +10,8 @@ export const SimilarwebBlock: BlockConfig = { 'Access comprehensive website analytics including traffic estimates, engagement metrics, rankings, and traffic sources using the Similarweb API.', docsLink: 'https://developers.similarweb.com/docs/similarweb-web-traffic-api', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['marketing', 'api'], bgColor: '#000922', icon: SimilarwebIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/slack.ts b/apps/sim/blocks/blocks/slack.ts index a455c8f0392..f07fad1d086 100644 --- a/apps/sim/blocks/blocks/slack.ts +++ b/apps/sim/blocks/blocks/slack.ts @@ -1,7 +1,7 @@ import { SlackIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { SlackResponse } from '@/tools/slack/types' import { getTrigger } from '@/triggers' @@ -16,6 +16,8 @@ export const SlackBlock: BlockConfig = { 'Integrate Slack into the workflow. Can send, update, and delete messages, send ephemeral messages visible only to a specific user, open/update/push modal views, publish Home tab views, create canvases, read messages, and add or remove reactions. Requires Bot Token instead of OAuth in advanced mode. Can be used in trigger mode to trigger a workflow when a message is sent to a channel.', docsLink: 'https://docs.sim.ai/tools/slack', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['oauth', 'webhooks'], bgColor: '#611f69', icon: SlackIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/smtp.ts b/apps/sim/blocks/blocks/smtp.ts index 6537beb5c95..ef06c2a2e09 100644 --- a/apps/sim/blocks/blocks/smtp.ts +++ b/apps/sim/blocks/blocks/smtp.ts @@ -1,6 +1,6 @@ import { SmtpIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { SmtpSendMailResult } from '@/tools/smtp/types' @@ -12,6 +12,8 @@ export const SmtpBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/smtp', category: 'tools', + integrationType: IntegrationType.Email, + tags: ['api'], bgColor: '#2D3748', icon: SmtpIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/spotify.ts b/apps/sim/blocks/blocks/spotify.ts index 61d0670f49e..07babe1c918 100644 --- a/apps/sim/blocks/blocks/spotify.ts +++ b/apps/sim/blocks/blocks/spotify.ts @@ -1,6 +1,6 @@ import { SpotifyIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { ToolResponse } from '@/tools/types' @@ -13,6 +13,8 @@ export const SpotifyBlock: BlockConfig = { 'Integrate Spotify into your workflow. Search for tracks, albums, artists, and playlists. Manage playlists, access your library, control playback, browse podcasts and audiobooks.', docsLink: 'https://docs.sim.ai/tools/spotify', category: 'tools', + integrationType: IntegrationType.Media, + tags: ['oauth'], hideFromToolbar: true, bgColor: '#000000', icon: SpotifyIcon, diff --git a/apps/sim/blocks/blocks/sqs.ts b/apps/sim/blocks/blocks/sqs.ts index 72f6ccacdc4..eead6205871 100644 --- a/apps/sim/blocks/blocks/sqs.ts +++ b/apps/sim/blocks/blocks/sqs.ts @@ -1,5 +1,6 @@ import { SQSIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { SqsResponse } from '@/tools/sqs/types' export const SQSBlock: BlockConfig = { @@ -9,6 +10,8 @@ export const SQSBlock: BlockConfig = { longDescription: 'Integrate Amazon SQS into the workflow. Can send messages to SQS queues.', docsLink: 'https://docs.sim.ai/tools/sqs', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['cloud'], bgColor: 'linear-gradient(45deg, #2E27AD 0%, #527FFF 100%)', icon: SQSIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/ssh.ts b/apps/sim/blocks/blocks/ssh.ts index eb7e975d213..f433286ca0a 100644 --- a/apps/sim/blocks/blocks/ssh.ts +++ b/apps/sim/blocks/blocks/ssh.ts @@ -1,6 +1,6 @@ import { SshIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { SSHResponse } from '@/tools/ssh/types' export const SSHBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const SSHBlock: BlockConfig = { 'Execute commands, transfer files, and manage remote servers via SSH. Supports password and private key authentication for secure server access.', docsLink: 'https://docs.sim.ai/tools/ssh', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['api'], bgColor: '#000000', icon: SshIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/stagehand.ts b/apps/sim/blocks/blocks/stagehand.ts index c5764533602..e9c70ccb363 100644 --- a/apps/sim/blocks/blocks/stagehand.ts +++ b/apps/sim/blocks/blocks/stagehand.ts @@ -1,5 +1,5 @@ import { StagehandIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { ToolResponse } from '@/tools/types' export interface StagehandExtractResponse extends ToolResponse { @@ -35,6 +35,8 @@ export const StagehandBlock: BlockConfig = { 'Integrate Stagehand into the workflow. Can extract structured data from webpages or run an autonomous agent to perform tasks.', docsLink: 'https://docs.sim.ai/tools/stagehand', category: 'tools', + integrationType: IntegrationType.Automation, + tags: ['web-scraping', 'automation'], bgColor: '#FFC83C', icon: StagehandIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/stripe.ts b/apps/sim/blocks/blocks/stripe.ts index 9377e56ef76..16d98c6a405 100644 --- a/apps/sim/blocks/blocks/stripe.ts +++ b/apps/sim/blocks/blocks/stripe.ts @@ -1,6 +1,6 @@ import { StripeIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { StripeResponse } from '@/tools/stripe/types' import { getTrigger } from '@/triggers' @@ -13,6 +13,8 @@ export const StripeBlock: BlockConfig = { 'Integrates Stripe into the workflow. Manage payment intents, customers, subscriptions, invoices, charges, products, prices, and events. Can be used in trigger mode to trigger a workflow when a Stripe event occurs.', docsLink: 'https://docs.sim.ai/tools/stripe', category: 'tools', + integrationType: IntegrationType.Ecommerce, + tags: ['payments', 'api'], bgColor: '#635BFF', icon: StripeIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/stt.ts b/apps/sim/blocks/blocks/stt.ts index dd22afb291f..3f0a7faebe4 100644 --- a/apps/sim/blocks/blocks/stt.ts +++ b/apps/sim/blocks/blocks/stt.ts @@ -1,5 +1,5 @@ import { STTIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { SttBlockResponse } from '@/tools/stt/types' @@ -13,6 +13,8 @@ export const SttBlock: BlockConfig = { 'Transcribe audio and video files to text using leading AI providers. Supports multiple languages, timestamps, and speaker diarization.', docsLink: 'https://docs.sim.ai/tools/stt', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['speech-to-text'], bgColor: '#181C1E', icon: STTIcon, diff --git a/apps/sim/blocks/blocks/supabase.ts b/apps/sim/blocks/blocks/supabase.ts index 84ec3c0e3b8..91659d94548 100644 --- a/apps/sim/blocks/blocks/supabase.ts +++ b/apps/sim/blocks/blocks/supabase.ts @@ -1,6 +1,6 @@ import { createLogger } from '@sim/logger' import { SupabaseIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { SupabaseResponse } from '@/tools/supabase/types' @@ -15,6 +15,8 @@ export const SupabaseBlock: BlockConfig = { 'Integrate Supabase into the workflow. Supports database operations (query, insert, update, delete, upsert), full-text search, RPC functions, row counting, vector search, and complete storage management (upload, download, list, move, copy, delete files and buckets).', docsLink: 'https://docs.sim.ai/tools/supabase', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['api'], bgColor: '#1C1C1C', icon: SupabaseIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/tavily.ts b/apps/sim/blocks/blocks/tavily.ts index 11731b6ab1f..cab583dd912 100644 --- a/apps/sim/blocks/blocks/tavily.ts +++ b/apps/sim/blocks/blocks/tavily.ts @@ -1,6 +1,6 @@ import { TavilyIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { TavilyResponse } from '@/tools/tavily/types' export const TavilyBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const TavilyBlock: BlockConfig = { longDescription: 'Integrate Tavily into the workflow. Can search the web and extract content from specific URLs. Requires API Key.', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], docsLink: 'https://docs.sim.ai/tools/tavily', bgColor: '#0066FF', icon: TavilyIcon, diff --git a/apps/sim/blocks/blocks/telegram.ts b/apps/sim/blocks/blocks/telegram.ts index ce4076d3849..e2c89a7cc1a 100644 --- a/apps/sim/blocks/blocks/telegram.ts +++ b/apps/sim/blocks/blocks/telegram.ts @@ -1,6 +1,6 @@ import { TelegramIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { TelegramResponse } from '@/tools/telegram/types' import { getTrigger } from '@/triggers' @@ -14,6 +14,8 @@ export const TelegramBlock: BlockConfig = { 'Integrate Telegram into the workflow. Can send and delete messages. Can be used in trigger mode to trigger a workflow when a message is sent to a chat.', docsLink: 'https://docs.sim.ai/tools/telegram', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['api'], bgColor: '#E0E0E0', icon: TelegramIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/textract.ts b/apps/sim/blocks/blocks/textract.ts index a2eea305049..e21d646ee9a 100644 --- a/apps/sim/blocks/blocks/textract.ts +++ b/apps/sim/blocks/blocks/textract.ts @@ -1,5 +1,5 @@ import { TextractIcon } from '@/components/icons' -import { AuthMode, type BlockConfig, type SubBlockType } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType, type SubBlockType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { TextractParserOutput } from '@/tools/textract/types' @@ -12,6 +12,8 @@ export const TextractBlock: BlockConfig = { longDescription: `Integrate AWS Textract into your workflow to extract text, tables, forms, and key-value pairs from documents. Single-page mode supports JPEG, PNG, and single-page PDF. Multi-page mode supports multi-page PDF and TIFF.`, docsLink: 'https://docs.sim.ai/tools/textract', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['document-processing', 'ocr', 'cloud'], bgColor: 'linear-gradient(135deg, #055F4E 0%, #56C0A7 100%)', icon: TextractIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/tinybird.ts b/apps/sim/blocks/blocks/tinybird.ts index 436543de76f..0f990ab5b66 100644 --- a/apps/sim/blocks/blocks/tinybird.ts +++ b/apps/sim/blocks/blocks/tinybird.ts @@ -1,6 +1,6 @@ import { TinybirdIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { TinybirdResponse } from '@/tools/tinybird/types' export const TinybirdBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const TinybirdBlock: BlockConfig = { 'Interact with Tinybird using the Events API to stream JSON or NDJSON events, or use the Query API to execute SQL queries against Pipes and Data Sources.', docsLink: 'https://www.tinybird.co/docs/api-reference', category: 'tools', + integrationType: IntegrationType.Analytics, + tags: ['data-warehouse', 'api'], bgColor: '#2EF598', icon: TinybirdIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/translate.ts b/apps/sim/blocks/blocks/translate.ts index a47a2e06ef4..1582e801291 100644 --- a/apps/sim/blocks/blocks/translate.ts +++ b/apps/sim/blocks/blocks/translate.ts @@ -1,5 +1,5 @@ import { TranslateIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import { getModelOptions, getProviderCredentialSubBlocks, @@ -17,6 +17,8 @@ export const TranslateBlock: BlockConfig = { longDescription: 'Integrate Translate into the workflow. Can translate text to any language.', docsLink: 'https://docs.sim.ai/tools/translate', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['api'], bgColor: '#FF4B4B', icon: TranslateIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/trello.ts b/apps/sim/blocks/blocks/trello.ts index 0e4180d557a..0346b97e71b 100644 --- a/apps/sim/blocks/blocks/trello.ts +++ b/apps/sim/blocks/blocks/trello.ts @@ -1,7 +1,7 @@ import { TrelloIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { ToolResponse } from '@/tools/types' /** @@ -21,6 +21,8 @@ export const TrelloBlock: BlockConfig = { 'Integrate with Trello to manage boards and cards. List boards, list cards, create cards, update cards, get actions, and add comments.', docsLink: 'https://docs.sim.ai/tools/trello', category: 'tools', + integrationType: IntegrationType.Productivity, + tags: ['project-management', 'oauth'], bgColor: '#0052CC', icon: TrelloIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/tts.ts b/apps/sim/blocks/blocks/tts.ts index eebc8acd3e5..2affc930cc2 100644 --- a/apps/sim/blocks/blocks/tts.ts +++ b/apps/sim/blocks/blocks/tts.ts @@ -1,5 +1,5 @@ import { TTSIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { TtsBlockResponse } from '@/tools/tts/types' export const TtsBlock: BlockConfig = { @@ -11,6 +11,8 @@ export const TtsBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/tts', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['text-to-speech'], bgColor: '#181C1E', icon: TTSIcon, diff --git a/apps/sim/blocks/blocks/twilio.ts b/apps/sim/blocks/blocks/twilio.ts index 8f5db2d9b08..51bf7f45fed 100644 --- a/apps/sim/blocks/blocks/twilio.ts +++ b/apps/sim/blocks/blocks/twilio.ts @@ -1,6 +1,6 @@ import { TwilioIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { TwilioSMSBlockOutput } from '@/tools/twilio/types' export const TwilioSMSBlock: BlockConfig = { @@ -10,6 +10,8 @@ export const TwilioSMSBlock: BlockConfig = { authMode: AuthMode.ApiKey, longDescription: 'Integrate Twilio into the workflow. Can send SMS messages.', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['api'], docsLink: 'https://docs.sim.ai/tools/twilio', bgColor: '#F22F46', // Twilio brand color icon: TwilioIcon, diff --git a/apps/sim/blocks/blocks/twilio_voice.ts b/apps/sim/blocks/blocks/twilio_voice.ts index b9692c1089c..08dce875493 100644 --- a/apps/sim/blocks/blocks/twilio_voice.ts +++ b/apps/sim/blocks/blocks/twilio_voice.ts @@ -1,6 +1,6 @@ import { TwilioIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { ToolResponse } from '@/tools/types' import { getTrigger } from '@/triggers' @@ -12,6 +12,8 @@ export const TwilioVoiceBlock: BlockConfig = { longDescription: 'Integrate Twilio Voice into the workflow. Make outbound calls and retrieve call recordings.', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['api'], docsLink: 'https://docs.sim.ai/tools/twilio_voice', bgColor: '#F22F46', // Twilio brand color icon: TwilioIcon, diff --git a/apps/sim/blocks/blocks/typeform.ts b/apps/sim/blocks/blocks/typeform.ts index f0c0a58de68..5bc6495b383 100644 --- a/apps/sim/blocks/blocks/typeform.ts +++ b/apps/sim/blocks/blocks/typeform.ts @@ -1,6 +1,6 @@ import { TypeformIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { TypeformResponse } from '@/tools/typeform/types' import { getTrigger } from '@/triggers' @@ -13,6 +13,8 @@ export const TypeformBlock: BlockConfig = { 'Integrate Typeform into the workflow. Can retrieve responses, download files, and get form insights. Can be used in trigger mode to trigger a workflow when a form is submitted. Requires API Key.', docsLink: 'https://docs.sim.ai/tools/typeform', category: 'tools', + integrationType: IntegrationType.Documents, + tags: ['oauth'], bgColor: '#262627', // Typeform brand color icon: TypeformIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/upstash.ts b/apps/sim/blocks/blocks/upstash.ts index e5afc6e7baf..1f5842fa438 100644 --- a/apps/sim/blocks/blocks/upstash.ts +++ b/apps/sim/blocks/blocks/upstash.ts @@ -1,6 +1,6 @@ import { UpstashIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { UpstashRedisCommandResponse, UpstashRedisDeleteResponse, @@ -46,6 +46,8 @@ export const UpstashBlock: BlockConfig = { 'Connect to Upstash Redis to perform key-value, hash, list, and utility operations via the REST API.', docsLink: 'https://docs.sim.ai/tools/upstash', category: 'tools', + integrationType: IntegrationType.Databases, + tags: ['api'], bgColor: '#181C1E', authMode: AuthMode.ApiKey, icon: UpstashIcon, diff --git a/apps/sim/blocks/blocks/vercel.ts b/apps/sim/blocks/blocks/vercel.ts index c49e37d0172..d5c46952dff 100644 --- a/apps/sim/blocks/blocks/vercel.ts +++ b/apps/sim/blocks/blocks/vercel.ts @@ -1,6 +1,6 @@ import { VercelIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const VercelBlock: BlockConfig = { type: 'vercel', @@ -10,6 +10,8 @@ export const VercelBlock: BlockConfig = { 'Integrate with Vercel to manage deployments, projects, domains, DNS records, environment variables, aliases, edge configs, teams, and more.', docsLink: 'https://docs.sim.ai/tools/vercel', category: 'tools', + integrationType: IntegrationType.DeveloperTools, + tags: ['cloud', 'oauth'], bgColor: '#171717', icon: VercelIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/video_generator.ts b/apps/sim/blocks/blocks/video_generator.ts index 55c5a247203..6706fb92ca9 100644 --- a/apps/sim/blocks/blocks/video_generator.ts +++ b/apps/sim/blocks/blocks/video_generator.ts @@ -1,5 +1,5 @@ import { VideoIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { VideoBlockResponse } from '@/tools/video/types' @@ -13,6 +13,8 @@ export const VideoGeneratorBlock: BlockConfig = { '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.', docsLink: 'https://docs.sim.ai/tools/video-generator', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['video-generation'], bgColor: '#181C1E', icon: VideoIcon, diff --git a/apps/sim/blocks/blocks/vision.ts b/apps/sim/blocks/blocks/vision.ts index 6c35fd613a0..243cfeca052 100644 --- a/apps/sim/blocks/blocks/vision.ts +++ b/apps/sim/blocks/blocks/vision.ts @@ -1,6 +1,6 @@ import { EyeIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { createVersionedToolSelector, normalizeFileInput } from '@/blocks/utils' import type { VisionResponse } from '@/tools/vision/types' @@ -30,6 +30,8 @@ export const VisionBlock: BlockConfig = { longDescription: 'Integrate Vision into the workflow. Can analyze images with vision models.', docsLink: 'https://docs.sim.ai/tools/vision', category: 'tools', + integrationType: IntegrationType.AI, + tags: ['llm'], bgColor: '#4D5FFF', icon: EyeIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/wealthbox.ts b/apps/sim/blocks/blocks/wealthbox.ts index 0a70229ead6..832e9195168 100644 --- a/apps/sim/blocks/blocks/wealthbox.ts +++ b/apps/sim/blocks/blocks/wealthbox.ts @@ -1,7 +1,7 @@ import { WealthboxIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { WealthboxResponse } from '@/tools/wealthbox/types' export const WealthboxBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const WealthboxBlock: BlockConfig = { 'Integrate Wealthbox into the workflow. Can read and write notes, read and write contacts, and read and write tasks.', docsLink: 'https://docs.sim.ai/tools/wealthbox', category: 'tools', + integrationType: IntegrationType.CRM, + tags: ['api'], bgColor: '#E0E0E0', icon: WealthboxIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/webflow.ts b/apps/sim/blocks/blocks/webflow.ts index 6c2afb6577f..4c8150525db 100644 --- a/apps/sim/blocks/blocks/webflow.ts +++ b/apps/sim/blocks/blocks/webflow.ts @@ -1,7 +1,7 @@ import { WebflowIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { WebflowResponse } from '@/tools/webflow/types' import { getTrigger } from '@/triggers' @@ -14,6 +14,8 @@ export const WebflowBlock: BlockConfig = { 'Integrates Webflow CMS into the workflow. Can create, get, list, update, or delete items in Webflow CMS collections. Manage your Webflow content programmatically. Can be used in trigger mode to trigger workflows when collection items change or forms are submitted.', docsLink: 'https://docs.sim.ai/tools/webflow', category: 'tools', + integrationType: IntegrationType.Design, + tags: ['oauth'], triggerAllowed: true, bgColor: '#E0E0E0', icon: WebflowIcon, diff --git a/apps/sim/blocks/blocks/whatsapp.ts b/apps/sim/blocks/blocks/whatsapp.ts index 2a709f3594d..e92dbfdd746 100644 --- a/apps/sim/blocks/blocks/whatsapp.ts +++ b/apps/sim/blocks/blocks/whatsapp.ts @@ -1,6 +1,6 @@ import { WhatsAppIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { WhatsAppResponse } from '@/tools/whatsapp/types' import { getTrigger } from '@/triggers' @@ -12,6 +12,8 @@ export const WhatsAppBlock: BlockConfig = { longDescription: 'Integrate WhatsApp into the workflow. Can send messages.', docsLink: 'https://docs.sim.ai/tools/whatsapp', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['api'], bgColor: '#25D366', icon: WhatsAppIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/wikipedia.ts b/apps/sim/blocks/blocks/wikipedia.ts index 9fbcea81434..2a9a5a9fb6f 100644 --- a/apps/sim/blocks/blocks/wikipedia.ts +++ b/apps/sim/blocks/blocks/wikipedia.ts @@ -1,5 +1,6 @@ import { WikipediaIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' import type { WikipediaResponse } from '@/tools/wikipedia/types' export const WikipediaBlock: BlockConfig = { @@ -10,6 +11,8 @@ export const WikipediaBlock: BlockConfig = { 'Integrate Wikipedia into the workflow. Can get page summary, search pages, get page content, and get random page.', docsLink: 'https://docs.sim.ai/tools/wikipedia', category: 'tools', + integrationType: IntegrationType.Search, + tags: ['api'], bgColor: '#000000', icon: WikipediaIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/wordpress.ts b/apps/sim/blocks/blocks/wordpress.ts index 305f0be30cb..7747dab52ec 100644 --- a/apps/sim/blocks/blocks/wordpress.ts +++ b/apps/sim/blocks/blocks/wordpress.ts @@ -1,7 +1,7 @@ import { WordpressIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import { normalizeFileInput } from '@/blocks/utils' import type { WordPressResponse } from '@/tools/wordpress/types' @@ -14,6 +14,8 @@ export const WordPressBlock: BlockConfig = { 'Integrate with WordPress to create, update, and manage posts, pages, media, comments, categories, tags, and users. Supports WordPress.com sites via OAuth and self-hosted WordPress sites using Application Passwords authentication.', docsLink: 'https://docs.sim.ai/tools/wordpress', category: 'tools', + integrationType: IntegrationType.Design, + tags: ['oauth'], bgColor: '#21759B', icon: WordpressIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/workday.ts b/apps/sim/blocks/blocks/workday.ts index b55e4e7fc0f..759c5dde280 100644 --- a/apps/sim/blocks/blocks/workday.ts +++ b/apps/sim/blocks/blocks/workday.ts @@ -1,5 +1,6 @@ import { WorkdayIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' +import { IntegrationType } from '@/blocks/types' export const WorkdayBlock: BlockConfig = { type: 'workday', @@ -9,6 +10,8 @@ export const WorkdayBlock: BlockConfig = { 'Integrate Workday HRIS into your workflow. Create pre-hires, hire employees, manage worker profiles, assign onboarding plans, handle job changes, retrieve compensation data, and process terminations.', docsLink: 'https://docs.sim.ai/tools/workday', category: 'tools', + integrationType: IntegrationType.HR, + tags: ['oauth'], bgColor: '#F5F0EB', icon: WorkdayIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/x.ts b/apps/sim/blocks/blocks/x.ts index e1d93077ece..10b9ae1d430 100644 --- a/apps/sim/blocks/blocks/x.ts +++ b/apps/sim/blocks/blocks/x.ts @@ -1,7 +1,7 @@ import { xIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const XBlock: BlockConfig = { type: 'x', @@ -12,6 +12,8 @@ export const XBlock: BlockConfig = { 'Integrate X into the workflow. Search tweets, manage bookmarks, follow/block/mute users, like and retweet, view trends, and more.', docsLink: 'https://docs.sim.ai/tools/x', category: 'tools', + integrationType: IntegrationType.Social, + tags: ['oauth'], bgColor: '#000000', icon: xIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/youtube.ts b/apps/sim/blocks/blocks/youtube.ts index 243c80ef40d..69b287afb19 100644 --- a/apps/sim/blocks/blocks/youtube.ts +++ b/apps/sim/blocks/blocks/youtube.ts @@ -1,6 +1,6 @@ import { YouTubeIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { YouTubeResponse } from '@/tools/youtube/types' export const YouTubeBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const YouTubeBlock: BlockConfig = { 'Integrate YouTube into the workflow. Can search for videos, get trending videos, get video details, get video categories, get channel information, get all videos from a channel, get channel playlists, get playlist items, and get video comments.', docsLink: 'https://docs.sim.ai/tools/youtube', category: 'tools', + integrationType: IntegrationType.Media, + tags: ['oauth', 'google-workspace'], bgColor: '#FF0000', icon: YouTubeIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/zendesk.ts b/apps/sim/blocks/blocks/zendesk.ts index bdd504e8069..53f39b6c1d4 100644 --- a/apps/sim/blocks/blocks/zendesk.ts +++ b/apps/sim/blocks/blocks/zendesk.ts @@ -1,6 +1,6 @@ import { ZendeskIcon } from '@/components/icons' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' export const ZendeskBlock: BlockConfig = { type: 'zendesk', @@ -11,6 +11,8 @@ export const ZendeskBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/zendesk', authMode: AuthMode.ApiKey, category: 'tools', + integrationType: IntegrationType.CustomerSupport, + tags: ['customer-support', 'oauth'], bgColor: '#E0E0E0', icon: ZendeskIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/zep.ts b/apps/sim/blocks/blocks/zep.ts index bd3f43f66aa..84343a29cc8 100644 --- a/apps/sim/blocks/blocks/zep.ts +++ b/apps/sim/blocks/blocks/zep.ts @@ -1,5 +1,5 @@ import { ZepIcon } from '@/components/icons' -import { AuthMode, type BlockConfig } from '@/blocks/types' +import { AuthMode, type BlockConfig, IntegrationType } from '@/blocks/types' import type { ZepResponse } from '@/tools/zep/types' export const ZepBlock: BlockConfig = { @@ -12,6 +12,8 @@ export const ZepBlock: BlockConfig = { bgColor: '#E8E8E8', icon: ZepIcon, category: 'tools', + integrationType: IntegrationType.AI, + tags: ['llm', 'api'], docsLink: 'https://docs.sim.ai/tools/zep', subBlocks: [ { diff --git a/apps/sim/blocks/blocks/zoom.ts b/apps/sim/blocks/blocks/zoom.ts index 4d9ecbd21dd..c79bbe00ad9 100644 --- a/apps/sim/blocks/blocks/zoom.ts +++ b/apps/sim/blocks/blocks/zoom.ts @@ -1,7 +1,7 @@ import { ZoomIcon } from '@/components/icons' import { getScopesForService } from '@/lib/oauth/utils' import type { BlockConfig } from '@/blocks/types' -import { AuthMode } from '@/blocks/types' +import { AuthMode, IntegrationType } from '@/blocks/types' import type { ZoomResponse } from '@/tools/zoom/types' export const ZoomBlock: BlockConfig = { @@ -13,6 +13,8 @@ export const ZoomBlock: BlockConfig = { 'Integrate Zoom into workflows. Create, list, update, and delete Zoom meetings. Get meeting details, invitations, recordings, and participants. Manage cloud recordings programmatically.', docsLink: 'https://docs.sim.ai/tools/zoom', category: 'tools', + integrationType: IntegrationType.Communication, + tags: ['meeting', 'oauth'], bgColor: '#2D8CFF', icon: ZoomIcon, subBlocks: [ diff --git a/apps/sim/blocks/types.ts b/apps/sim/blocks/types.ts index 1ff68892ee1..febc7d7d205 100644 --- a/apps/sim/blocks/types.ts +++ b/apps/sim/blocks/types.ts @@ -16,6 +16,59 @@ export type PrimitiveValueType = export type BlockCategory = 'blocks' | 'tools' | 'triggers' +export enum IntegrationType { + AI = 'ai', + Analytics = 'analytics', + Automation = 'automation', + Communication = 'communication', + CRM = 'crm', + CustomerSupport = 'customer-support', + Databases = 'databases', + Design = 'design', + DeveloperTools = 'developer-tools', + Documents = 'documents', + Ecommerce = 'ecommerce', + Email = 'email', + FileStorage = 'file-storage', + HR = 'hr', + Media = 'media', + Other = 'other', + Productivity = 'productivity', + SalesIntelligence = 'sales-intelligence', + Search = 'search', + Security = 'security', + Social = 'social', +} + +export type IntegrationTag = + | 'marketing' + | 'automation' + | 'api' + | 'oauth' + | 'webhooks' + | 'vector-search' + | 'meeting' + | 'calendar' + | 'incident-management' + | 'monitoring' + | 'prediction-markets' + | 'document-processing' + | 'ocr' + | 'text-to-speech' + | 'speech-to-text' + | 'image-generation' + | 'video-generation' + | 'cloud' + | 'google-workspace' + | 'microsoft-365' + | 'data-warehouse' + | 'customer-support' + | 'project-management' + | 'payments' + | 'enrichment' + | 'web-scraping' + | 'llm' + // Authentication modes for sub-blocks and summaries export enum AuthMode { OAuth = 'oauth', @@ -351,6 +404,8 @@ export interface BlockConfig { name: string description: string category: BlockCategory + integrationType?: IntegrationType + tags?: IntegrationTag[] longDescription?: string bestPractices?: string docsLink?: string diff --git a/scripts/generate-docs.ts b/scripts/generate-docs.ts index 2619b2c9a63..8a7f8b760f6 100755 --- a/scripts/generate-docs.ts +++ b/scripts/generate-docs.ts @@ -592,6 +592,10 @@ async function writeIntegrationsJson(iconMapping: Record): Promi triggerCount: triggers.length, authType, category: config.category, + ...((config as any).integrationType + ? { integrationType: (config as any).integrationType } + : {}), + ...((config as any).tags ? { tags: (config as any).tags } : {}), }) } } @@ -762,6 +766,15 @@ function extractBlockConfigFromContent( (baseConfig as any)?.docsLink || `https://docs.sim.ai/tools/${stripVersionSuffix(blockType)}` + const integrationType = + extractEnumPropertyFromContent(blockContent, 'integrationType') || + (baseConfig as any)?.integrationType || + null + const tags = + extractArrayPropertyFromContent(blockContent, 'tags') || + (baseConfig as any)?.tags || + null + return { type: blockType, name, @@ -777,6 +790,8 @@ function extractBlockConfigFromContent( operations: operations.length > 0 ? operations : (baseConfig as any)?.operations || [], triggerIds: triggerIds.length > 0 ? triggerIds : (baseConfig as any)?.triggerIds || [], docsLink, + ...(integrationType ? { integrationType } : {}), + ...(tags ? { tags } : {}), } } catch (error) { console.error(`Error extracting block configuration for ${blockName}:`, error) @@ -841,6 +856,54 @@ function extractStringPropertyFromContent( return null } +/** + * Extract an enum property value from block content. + * Matches patterns like `integrationType: IntegrationType.DeveloperTools` + * and returns the string value (e.g., 'developer-tools'). + */ +function extractEnumPropertyFromContent(content: string, propName: string): string | null { + const match = content.match(new RegExp(`${propName}\\s*:\\s*IntegrationType\\.(\\w+)`)) + if (!match) return null + const enumKey = match[1] + // Convert enum key to kebab-case value (e.g., DeveloperTools -> developer-tools) + const ENUM_MAP: Record = { + AI: 'ai', + Analytics: 'analytics', + Automation: 'automation', + Communication: 'communication', + CRM: 'crm', + CustomerSupport: 'customer-support', + Databases: 'databases', + Design: 'design', + DeveloperTools: 'developer-tools', + Documents: 'documents', + Ecommerce: 'ecommerce', + Email: 'email', + FileStorage: 'file-storage', + HR: 'hr', + Media: 'media', + Other: 'other', + Productivity: 'productivity', + SalesIntelligence: 'sales-intelligence', + Search: 'search', + Security: 'security', + Social: 'social', + } + return ENUM_MAP[enumKey] || enumKey.toLowerCase() +} + +/** + * Extract a string array property from block content. + * Matches patterns like `tags: ['api', 'oauth', 'webhooks']` + */ +function extractArrayPropertyFromContent(content: string, propName: string): string[] | null { + const match = content.match(new RegExp(`${propName}\\s*:\\s*\\[([^\\]]+)\\]`)) + if (!match) return null + const items = match[1].match(/'([^']+)'|"([^"]+)"/g) + if (!items) return null + return items.map((item) => item.replace(/['"]/g, '')) +} + function extractIconNameFromContent(content: string): string | null { const iconMatch = content.match(/icon\s*:\s*(\w+Icon)/) return iconMatch ? iconMatch[1] : null From 9a5234c678ae0bc66bfcd698b91cf4c93b3f7b5d Mon Sep 17 00:00:00 2001 From: Waleed Latif Date: Sat, 21 Mar 2026 11:34:29 -0700 Subject: [PATCH 2/4] improvement(integrations): replace generic api/oauth tags with use-case-oriented tags --- .../integrations/data/integrations.json | 901 ++++++++++++++---- apps/sim/blocks/blocks/a2a.ts | 2 +- apps/sim/blocks/blocks/agent.ts | 2 +- apps/sim/blocks/blocks/ahrefs.ts | 2 +- apps/sim/blocks/blocks/airtable.ts | 2 +- apps/sim/blocks/blocks/airweave.ts | 2 +- apps/sim/blocks/blocks/algolia.ts | 2 +- apps/sim/blocks/blocks/amplitude.ts | 2 +- apps/sim/blocks/blocks/api.ts | 2 +- apps/sim/blocks/blocks/apify.ts | 2 +- apps/sim/blocks/blocks/apollo.ts | 2 +- apps/sim/blocks/blocks/arxiv.ts | 2 +- apps/sim/blocks/blocks/asana.ts | 2 +- apps/sim/blocks/blocks/ashby.ts | 2 +- apps/sim/blocks/blocks/attio.ts | 2 +- apps/sim/blocks/blocks/box.ts | 2 +- apps/sim/blocks/blocks/brandfetch.ts | 2 +- apps/sim/blocks/blocks/browser_use.ts | 2 +- apps/sim/blocks/blocks/calcom.ts | 2 +- apps/sim/blocks/blocks/calendly.ts | 2 +- apps/sim/blocks/blocks/circleback.ts | 2 +- apps/sim/blocks/blocks/clay.ts | 2 +- apps/sim/blocks/blocks/clerk.ts | 2 +- apps/sim/blocks/blocks/cloudflare.ts | 2 +- apps/sim/blocks/blocks/confluence.ts | 2 +- apps/sim/blocks/blocks/cursor.ts | 2 +- apps/sim/blocks/blocks/databricks.ts | 2 +- apps/sim/blocks/blocks/datadog.ts | 2 +- apps/sim/blocks/blocks/devin.ts | 2 +- apps/sim/blocks/blocks/discord.ts | 2 +- apps/sim/blocks/blocks/docusign.ts | 2 +- apps/sim/blocks/blocks/dropbox.ts | 2 +- apps/sim/blocks/blocks/dspy.ts | 2 +- apps/sim/blocks/blocks/dub.ts | 2 +- apps/sim/blocks/blocks/duckduckgo.ts | 2 +- apps/sim/blocks/blocks/dynamodb.ts | 2 +- apps/sim/blocks/blocks/elasticsearch.ts | 2 +- apps/sim/blocks/blocks/elevenlabs.ts | 2 +- apps/sim/blocks/blocks/enrich.ts | 2 +- apps/sim/blocks/blocks/evernote.ts | 2 +- apps/sim/blocks/blocks/exa.ts | 2 +- apps/sim/blocks/blocks/fathom.ts | 2 +- apps/sim/blocks/blocks/file.ts | 4 +- apps/sim/blocks/blocks/firecrawl.ts | 2 +- apps/sim/blocks/blocks/fireflies.ts | 4 +- apps/sim/blocks/blocks/gamma.ts | 2 +- apps/sim/blocks/blocks/github.ts | 4 +- apps/sim/blocks/blocks/gitlab.ts | 2 +- apps/sim/blocks/blocks/gmail.ts | 4 +- apps/sim/blocks/blocks/gong.ts | 2 +- apps/sim/blocks/blocks/google.ts | 2 +- apps/sim/blocks/blocks/google_ads.ts | 2 +- apps/sim/blocks/blocks/google_bigquery.ts | 2 +- apps/sim/blocks/blocks/google_books.ts | 2 +- apps/sim/blocks/blocks/google_calendar.ts | 4 +- apps/sim/blocks/blocks/google_contacts.ts | 2 +- apps/sim/blocks/blocks/google_docs.ts | 2 +- apps/sim/blocks/blocks/google_drive.ts | 2 +- apps/sim/blocks/blocks/google_forms.ts | 2 +- apps/sim/blocks/blocks/google_groups.ts | 2 +- apps/sim/blocks/blocks/google_maps.ts | 2 +- apps/sim/blocks/blocks/google_meet.ts | 2 +- apps/sim/blocks/blocks/google_pagespeed.ts | 2 +- apps/sim/blocks/blocks/google_sheets.ts | 4 +- apps/sim/blocks/blocks/google_slides.ts | 4 +- apps/sim/blocks/blocks/google_tasks.ts | 2 +- apps/sim/blocks/blocks/google_translate.ts | 2 +- apps/sim/blocks/blocks/google_vault.ts | 2 +- apps/sim/blocks/blocks/grafana.ts | 2 +- apps/sim/blocks/blocks/grain.ts | 2 +- apps/sim/blocks/blocks/greenhouse.ts | 2 +- apps/sim/blocks/blocks/greptile.ts | 2 +- apps/sim/blocks/blocks/hex.ts | 2 +- apps/sim/blocks/blocks/hubspot.ts | 2 +- apps/sim/blocks/blocks/huggingface.ts | 2 +- apps/sim/blocks/blocks/hunter.ts | 2 +- apps/sim/blocks/blocks/image_generator.ts | 2 +- apps/sim/blocks/blocks/imap.ts | 2 +- apps/sim/blocks/blocks/incidentio.ts | 2 +- apps/sim/blocks/blocks/infisical.ts | 2 +- apps/sim/blocks/blocks/intercom.ts | 4 +- apps/sim/blocks/blocks/jina.ts | 2 +- apps/sim/blocks/blocks/jira.ts | 2 +- .../blocks/blocks/jira_service_management.ts | 2 +- apps/sim/blocks/blocks/kalshi.ts | 4 +- apps/sim/blocks/blocks/langsmith.ts | 2 +- apps/sim/blocks/blocks/lemlist.ts | 2 +- apps/sim/blocks/blocks/linear.ts | 2 +- apps/sim/blocks/blocks/linkedin.ts | 2 +- apps/sim/blocks/blocks/linkup.ts | 2 +- apps/sim/blocks/blocks/loops.ts | 2 +- apps/sim/blocks/blocks/luma.ts | 2 +- apps/sim/blocks/blocks/mailchimp.ts | 2 +- apps/sim/blocks/blocks/mailgun.ts | 2 +- apps/sim/blocks/blocks/mcp.ts | 2 +- apps/sim/blocks/blocks/mem0.ts | 2 +- apps/sim/blocks/blocks/microsoft_ad.ts | 2 +- apps/sim/blocks/blocks/microsoft_dataverse.ts | 2 +- apps/sim/blocks/blocks/microsoft_excel.ts | 4 +- apps/sim/blocks/blocks/microsoft_planner.ts | 2 +- apps/sim/blocks/blocks/microsoft_teams.ts | 2 +- apps/sim/blocks/blocks/mongodb.ts | 2 +- apps/sim/blocks/blocks/mysql.ts | 2 +- apps/sim/blocks/blocks/neo4j.ts | 2 +- apps/sim/blocks/blocks/notion.ts | 4 +- apps/sim/blocks/blocks/obsidian.ts | 2 +- apps/sim/blocks/blocks/okta.ts | 2 +- apps/sim/blocks/blocks/onedrive.ts | 2 +- apps/sim/blocks/blocks/onepassword.ts | 2 +- apps/sim/blocks/blocks/openai.ts | 2 +- apps/sim/blocks/blocks/outlook.ts | 2 +- apps/sim/blocks/blocks/pagerduty.ts | 2 +- apps/sim/blocks/blocks/parallel.ts | 2 +- apps/sim/blocks/blocks/perplexity.ts | 2 +- apps/sim/blocks/blocks/pinecone.ts | 2 +- apps/sim/blocks/blocks/pipedrive.ts | 2 +- apps/sim/blocks/blocks/polymarket.ts | 2 +- apps/sim/blocks/blocks/postgresql.ts | 2 +- apps/sim/blocks/blocks/posthog.ts | 2 +- apps/sim/blocks/blocks/qdrant.ts | 2 +- apps/sim/blocks/blocks/rds.ts | 2 +- apps/sim/blocks/blocks/reddit.ts | 2 +- apps/sim/blocks/blocks/redis.ts | 2 +- apps/sim/blocks/blocks/resend.ts | 2 +- apps/sim/blocks/blocks/revenuecat.ts | 2 +- apps/sim/blocks/blocks/rss.ts | 2 +- apps/sim/blocks/blocks/s3.ts | 2 +- apps/sim/blocks/blocks/salesforce.ts | 2 +- apps/sim/blocks/blocks/search.ts | 2 +- apps/sim/blocks/blocks/sendgrid.ts | 2 +- apps/sim/blocks/blocks/sentry.ts | 2 +- apps/sim/blocks/blocks/serper.ts | 2 +- apps/sim/blocks/blocks/servicenow.ts | 2 +- apps/sim/blocks/blocks/sftp.ts | 2 +- apps/sim/blocks/blocks/sharepoint.ts | 2 +- apps/sim/blocks/blocks/shopify.ts | 2 +- apps/sim/blocks/blocks/similarweb.ts | 2 +- apps/sim/blocks/blocks/slack.ts | 2 +- apps/sim/blocks/blocks/smtp.ts | 2 +- apps/sim/blocks/blocks/spotify.ts | 2 +- apps/sim/blocks/blocks/sqs.ts | 2 +- apps/sim/blocks/blocks/ssh.ts | 2 +- apps/sim/blocks/blocks/stagehand.ts | 2 +- apps/sim/blocks/blocks/stripe.ts | 2 +- apps/sim/blocks/blocks/stt.ts | 2 +- apps/sim/blocks/blocks/supabase.ts | 2 +- apps/sim/blocks/blocks/tavily.ts | 2 +- apps/sim/blocks/blocks/telegram.ts | 2 +- apps/sim/blocks/blocks/tinybird.ts | 2 +- apps/sim/blocks/blocks/translate.ts | 2 +- apps/sim/blocks/blocks/trello.ts | 2 +- apps/sim/blocks/blocks/tts.ts | 2 +- apps/sim/blocks/blocks/twilio.ts | 2 +- apps/sim/blocks/blocks/twilio_voice.ts | 2 +- apps/sim/blocks/blocks/typeform.ts | 2 +- apps/sim/blocks/blocks/upstash.ts | 2 +- apps/sim/blocks/blocks/vercel.ts | 2 +- apps/sim/blocks/blocks/video_generator.ts | 2 +- apps/sim/blocks/blocks/vision.ts | 2 +- apps/sim/blocks/blocks/wealthbox.ts | 2 +- apps/sim/blocks/blocks/webflow.ts | 2 +- apps/sim/blocks/blocks/whatsapp.ts | 2 +- apps/sim/blocks/blocks/wikipedia.ts | 2 +- apps/sim/blocks/blocks/wordpress.ts | 2 +- apps/sim/blocks/blocks/workday.ts | 2 +- apps/sim/blocks/blocks/x.ts | 2 +- apps/sim/blocks/blocks/youtube.ts | 2 +- apps/sim/blocks/blocks/zendesk.ts | 2 +- apps/sim/blocks/blocks/zep.ts | 2 +- apps/sim/blocks/blocks/zoom.ts | 2 +- apps/sim/blocks/types.ts | 25 +- scripts/generate-docs.ts | 14 +- 172 files changed, 942 insertions(+), 358 deletions(-) diff --git a/apps/sim/app/(landing)/integrations/data/integrations.json b/apps/sim/app/(landing)/integrations/data/integrations.json index 9d79e48425e..40aefa30a73 100644 --- a/apps/sim/app/(landing)/integrations/data/integrations.json +++ b/apps/sim/app/(landing)/integrations/data/integrations.json @@ -52,7 +52,10 @@ "authType": "api-key", "category": "tools", "integrationType": "security", - "tags": ["api"] + "tags": [ + "secrets-management", + "identity" + ] }, { "type": "a2a", @@ -103,7 +106,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["api", "automation"] + "tags": [ + "agentic", + "automation" + ] }, { "type": "ahrefs", @@ -154,7 +160,11 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["marketing"] + "tags": [ + "seo", + "marketing", + "data-analytics" + ] }, { "type": "airtable", @@ -211,7 +221,10 @@ "authType": "oauth", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "spreadsheet", + "automation" + ] }, { "type": "airweave", @@ -229,7 +242,10 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["vector-search"] + "tags": [ + "vector-search", + "knowledge-base" + ] }, { "type": "algolia", @@ -308,7 +324,10 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["vector-search", "api"] + "tags": [ + "vector-search", + "knowledge-base" + ] }, { "type": "dynamodb", @@ -355,7 +374,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["cloud"] + "tags": [ + "cloud", + "data-warehouse" + ] }, { "type": "rds", @@ -398,7 +420,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["cloud"] + "tags": [ + "cloud", + "data-warehouse" + ] }, { "type": "sqs", @@ -421,7 +446,11 @@ "authType": "none", "category": "tools", "integrationType": "developer-tools", - "tags": ["cloud"] + "tags": [ + "cloud", + "messaging", + "automation" + ] }, { "type": "amplitude", @@ -484,7 +513,10 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["marketing"] + "tags": [ + "data-analytics", + "marketing" + ] }, { "type": "apify", @@ -511,7 +543,11 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": ["web-scraping", "automation"] + "tags": [ + "web-scraping", + "automation", + "data-analytics" + ] }, { "type": "apollo", @@ -630,7 +666,10 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": ["enrichment"] + "tags": [ + "enrichment", + "sales-engagement" + ] }, { "type": "arxiv", @@ -661,7 +700,10 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": ["document-processing"] + "tags": [ + "document-processing", + "knowledge-base" + ] }, { "type": "asana", @@ -704,7 +746,11 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["project-management", "oauth"] + "tags": [ + "project-management", + "ticketing", + "automation" + ] }, { "type": "ashby", @@ -866,7 +912,9 @@ "authType": "api-key", "category": "tools", "integrationType": "hr", - "tags": ["oauth"] + "tags": [ + "hiring" + ] }, { "type": "attio", @@ -1136,7 +1184,10 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": ["oauth"] + "tags": [ + "sales-engagement", + "enrichment" + ] }, { "type": "textract_v2", @@ -1154,7 +1205,11 @@ "authType": "none", "category": "tools", "integrationType": "ai", - "tags": ["document-processing", "ocr", "cloud"] + "tags": [ + "document-processing", + "ocr", + "cloud" + ] }, { "type": "microsoft_ad", @@ -1225,7 +1280,10 @@ "authType": "oauth", "category": "tools", "integrationType": "security", - "tags": ["oauth", "microsoft-365"] + "tags": [ + "identity", + "microsoft-365" + ] }, { "type": "box", @@ -1304,7 +1362,11 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": ["oauth", "cloud"] + "tags": [ + "cloud", + "content-management", + "e-signatures" + ] }, { "type": "brandfetch", @@ -1331,7 +1393,10 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": ["enrichment", "api"] + "tags": [ + "enrichment", + "marketing" + ] }, { "type": "browser_use", @@ -1349,7 +1414,11 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": ["web-scraping", "automation"] + "tags": [ + "web-scraping", + "automation", + "agentic" + ] }, { "type": "calcom", @@ -1490,7 +1559,11 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["calendar", "oauth"] + "tags": [ + "scheduling", + "calendar", + "meeting" + ] }, { "type": "calendly", @@ -1558,7 +1631,11 @@ "authType": "api-key", "category": "tools", "integrationType": "productivity", - "tags": ["calendar", "oauth"] + "tags": [ + "scheduling", + "calendar", + "meeting" + ] }, { "type": "circleback", @@ -1592,7 +1669,11 @@ "authType": "none", "category": "triggers", "integrationType": "ai", - "tags": ["meeting"] + "tags": [ + "meeting", + "note-taking", + "automation" + ] }, { "type": "clay", @@ -1610,7 +1691,11 @@ "authType": "none", "category": "tools", "integrationType": "sales-intelligence", - "tags": ["enrichment"] + "tags": [ + "enrichment", + "sales-engagement", + "data-analytics" + ] }, { "type": "clerk", @@ -1673,7 +1758,10 @@ "authType": "none", "category": "tools", "integrationType": "security", - "tags": ["oauth"] + "tags": [ + "identity", + "automation" + ] }, { "type": "cloudflare", @@ -1744,7 +1832,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["cloud", "api"] + "tags": [ + "cloud", + "monitoring" + ] }, { "type": "confluence_v2", @@ -2028,7 +2119,11 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth"] + "tags": [ + "knowledge-base", + "content-management", + "note-taking" + ] }, { "type": "cursor_v2", @@ -2075,7 +2170,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["api"] + "tags": [ + "agentic", + "automation" + ] }, { "type": "databricks", @@ -2126,7 +2224,11 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": ["data-warehouse", "cloud"] + "tags": [ + "data-warehouse", + "data-analytics", + "cloud" + ] }, { "type": "datadog", @@ -2193,7 +2295,11 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["monitoring", "cloud"] + "tags": [ + "monitoring", + "incident-management", + "error-tracking" + ] }, { "type": "devin", @@ -2228,7 +2334,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["api"] + "tags": [ + "agentic", + "automation" + ] }, { "type": "discord", @@ -2387,7 +2496,11 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": ["oauth", "webhooks"] + "tags": [ + "messaging", + "webhooks", + "automation" + ] }, { "type": "docusign", @@ -2438,7 +2551,10 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth"] + "tags": [ + "e-signatures", + "document-processing" + ] }, { "type": "dropbox", @@ -2497,7 +2613,10 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": ["oauth", "cloud"] + "tags": [ + "cloud", + "document-processing" + ] }, { "type": "dspy", @@ -2528,7 +2647,11 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["llm"] + "tags": [ + "llm", + "agentic", + "automation" + ] }, { "type": "dub", @@ -2575,7 +2698,11 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["api", "marketing"] + "tags": [ + "link-management", + "marketing", + "data-analytics" + ] }, { "type": "duckduckgo", @@ -2593,7 +2720,10 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "web-scraping", + "seo" + ] }, { "type": "elasticsearch", @@ -2664,7 +2794,10 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": ["vector-search"] + "tags": [ + "vector-search", + "data-analytics" + ] }, { "type": "elevenlabs", @@ -2682,7 +2815,9 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": ["text-to-speech", "api"] + "tags": [ + "text-to-speech" + ] }, { "type": "openai", @@ -2700,7 +2835,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["llm", "api"] + "tags": [ + "llm", + "vector-search" + ] }, { "type": "enrich", @@ -2835,7 +2973,10 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": ["enrichment", "api"] + "tags": [ + "enrichment", + "data-analytics" + ] }, { "type": "evernote", @@ -2898,7 +3039,10 @@ "authType": "api-key", "category": "tools", "integrationType": "documents", - "tags": ["oauth"] + "tags": [ + "note-taking", + "knowledge-base" + ] }, { "type": "exa", @@ -2937,7 +3081,10 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "web-scraping", + "enrichment" + ] }, { "type": "fathom", @@ -2987,7 +3134,10 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["meeting"] + "tags": [ + "meeting", + "note-taking" + ] }, { "type": "file_v3", @@ -3005,7 +3155,9 @@ "authType": "none", "category": "tools", "integrationType": "file-storage", - "tags": ["api"] + "tags": [ + "document-processing" + ] }, { "type": "firecrawl", @@ -3048,7 +3200,10 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": ["web-scraping", "api"] + "tags": [ + "web-scraping", + "automation" + ] }, { "type": "fireflies_v2", @@ -3113,7 +3268,11 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": ["meeting", "oauth"] + "tags": [ + "meeting", + "speech-to-text", + "note-taking" + ] }, { "type": "gamma", @@ -3152,7 +3311,10 @@ "authType": "api-key", "category": "tools", "integrationType": "design", - "tags": ["api"] + "tags": [ + "document-processing", + "content-management" + ] }, { "type": "github_v2", @@ -3559,7 +3721,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["oauth", "webhooks"] + "tags": [ + "version-control", + "ci-cd" + ] }, { "type": "gitlab", @@ -3654,7 +3819,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["oauth"] + "tags": [ + "version-control", + "ci-cd" + ] }, { "type": "gmail_v2", @@ -3721,7 +3889,10 @@ "authType": "oauth", "category": "tools", "integrationType": "email", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "messaging" + ] }, { "type": "gong", @@ -3812,7 +3983,11 @@ "authType": "none", "category": "tools", "integrationType": "sales-intelligence", - "tags": ["meeting", "oauth"] + "tags": [ + "meeting", + "sales-engagement", + "speech-to-text" + ] }, { "type": "google_ads", @@ -3855,7 +4030,11 @@ "authType": "oauth", "category": "tools", "integrationType": "analytics", - "tags": ["marketing", "oauth", "google-workspace"] + "tags": [ + "marketing", + "google-workspace", + "data-analytics" + ] }, { "type": "google_bigquery", @@ -3894,7 +4073,11 @@ "authType": "oauth", "category": "tools", "integrationType": "databases", - "tags": ["data-warehouse", "oauth", "google-workspace"] + "tags": [ + "data-warehouse", + "google-workspace", + "data-analytics" + ] }, { "type": "google_books", @@ -3921,7 +4104,11 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["api", "google-workspace"] + "tags": [ + "google-workspace", + "knowledge-base", + "content-management" + ] }, { "type": "google_calendar_v2", @@ -3980,7 +4167,11 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["calendar", "oauth", "google-workspace"] + "tags": [ + "calendar", + "scheduling", + "google-workspace" + ] }, { "type": "google_contacts", @@ -4023,7 +4214,11 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "customer-support", + "enrichment" + ] }, { "type": "google_docs", @@ -4054,7 +4249,11 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "document-processing", + "content-management" + ] }, { "type": "google_drive", @@ -4129,7 +4328,11 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": ["oauth", "cloud", "google-workspace"] + "tags": [ + "cloud", + "google-workspace", + "document-processing" + ] }, { "type": "google_forms", @@ -4190,7 +4393,11 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "forms", + "data-analytics" + ] }, { "type": "google_groups", @@ -4273,7 +4480,11 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "messaging", + "identity" + ] }, { "type": "google_maps", @@ -4344,7 +4555,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["api", "google-workspace"] + "tags": [ + "google-workspace", + "enrichment" + ] }, { "type": "google_meet", @@ -4387,7 +4601,11 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": ["meeting", "oauth", "google-workspace"] + "tags": [ + "meeting", + "google-workspace", + "scheduling" + ] }, { "type": "google_pagespeed", @@ -4405,7 +4623,11 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["api", "google-workspace"] + "tags": [ + "google-workspace", + "seo", + "monitoring" + ] }, { "type": "google_search", @@ -4423,7 +4645,11 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["api", "google-workspace"] + "tags": [ + "google-workspace", + "web-scraping", + "seo" + ] }, { "type": "google_sheets_v2", @@ -4486,7 +4712,11 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth", "google-workspace"] + "tags": [ + "spreadsheet", + "google-workspace", + "data-analytics" + ] }, { "type": "google_slides_v2", @@ -4561,7 +4791,11 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "document-processing", + "content-management" + ] }, { "type": "google_tasks", @@ -4604,7 +4838,11 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "project-management", + "scheduling" + ] }, { "type": "google_translate", @@ -4631,7 +4869,11 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["api", "google-workspace"] + "tags": [ + "google-workspace", + "content-management", + "automation" + ] }, { "type": "google_vault", @@ -4678,7 +4920,11 @@ "authType": "oauth", "category": "tools", "integrationType": "security", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "secrets-management", + "document-processing" + ] }, { "type": "grafana", @@ -4773,7 +5019,10 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["monitoring", "api"] + "tags": [ + "monitoring", + "data-analytics" + ] }, { "type": "grain", @@ -4869,7 +5118,10 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": ["meeting", "api"] + "tags": [ + "meeting", + "note-taking" + ] }, { "type": "greenhouse", @@ -4932,7 +5184,9 @@ "authType": "api-key", "category": "tools", "integrationType": "hr", - "tags": ["oauth"] + "tags": [ + "hiring" + ] }, { "type": "greptile", @@ -4967,7 +5221,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["api"] + "tags": [ + "version-control", + "knowledge-base" + ] }, { "type": "hex", @@ -5050,7 +5307,10 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["data-warehouse", "api"] + "tags": [ + "data-warehouse", + "data-analytics" + ] }, { "type": "hubspot", @@ -5200,7 +5460,11 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": ["oauth", "marketing"] + "tags": [ + "marketing", + "sales-engagement", + "customer-support" + ] }, { "type": "huggingface", @@ -5218,7 +5482,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["llm", "api"] + "tags": [ + "llm", + "agentic" + ] }, { "type": "hunter", @@ -5261,7 +5528,10 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": ["enrichment", "api"] + "tags": [ + "enrichment", + "sales-engagement" + ] }, { "type": "image_generator", @@ -5279,7 +5549,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["image-generation"] + "tags": [ + "image-generation", + "llm" + ] }, { "type": "imap", @@ -5303,7 +5576,10 @@ "authType": "none", "category": "triggers", "integrationType": "email", - "tags": ["api"] + "tags": [ + "messaging", + "automation" + ] }, { "type": "incidentio", @@ -5498,7 +5774,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["incident-management", "api"] + "tags": [ + "incident-management", + "monitoring" + ] }, { "type": "infisical", @@ -5537,7 +5816,9 @@ "authType": "api-key", "category": "tools", "integrationType": "security", - "tags": ["api"] + "tags": [ + "secrets-management" + ] }, { "type": "intercom_v2", @@ -5680,7 +5961,10 @@ "authType": "api-key", "category": "tools", "integrationType": "customer-support", - "tags": ["customer-support", "oauth"] + "tags": [ + "customer-support", + "messaging" + ] }, { "type": "jina", @@ -5707,7 +5991,10 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["web-scraping", "api"] + "tags": [ + "web-scraping", + "knowledge-base" + ] }, { "type": "jira", @@ -5853,7 +6140,10 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["project-management", "oauth"] + "tags": [ + "project-management", + "ticketing" + ] }, { "type": "jira_service_management", @@ -5956,7 +6246,11 @@ "authType": "oauth", "category": "tools", "integrationType": "customer-support", - "tags": ["customer-support", "oauth"] + "tags": [ + "customer-support", + "ticketing", + "incident-management" + ] }, { "type": "kalshi_v2", @@ -6043,7 +6337,10 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": ["prediction-markets", "api"] + "tags": [ + "prediction-markets", + "data-analytics" + ] }, { "type": "knowledge", @@ -6143,7 +6440,11 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["monitoring", "api"] + "tags": [ + "monitoring", + "llm", + "data-analytics" + ] }, { "type": "lemlist", @@ -6220,7 +6521,11 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": ["marketing", "api"] + "tags": [ + "sales-engagement", + "email-marketing", + "automation" + ] }, { "type": "linear", @@ -6627,7 +6932,10 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["project-management", "oauth"] + "tags": [ + "project-management", + "ticketing" + ] }, { "type": "linkedin", @@ -6654,7 +6962,11 @@ "authType": "oauth", "category": "tools", "integrationType": "social", - "tags": ["oauth", "marketing"] + "tags": [ + "marketing", + "sales-engagement", + "enrichment" + ] }, { "type": "linkup", @@ -6672,7 +6984,10 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "web-scraping", + "enrichment" + ] }, { "type": "loops", @@ -6731,7 +7046,11 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": ["marketing", "api"] + "tags": [ + "email-marketing", + "marketing", + "automation" + ] }, { "type": "luma", @@ -6774,7 +7093,11 @@ "authType": "api-key", "category": "tools", "integrationType": "productivity", - "tags": ["calendar", "api"] + "tags": [ + "events", + "calendar", + "scheduling" + ] }, { "type": "mailchimp", @@ -7085,7 +7408,11 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": ["marketing", "oauth"] + "tags": [ + "email-marketing", + "marketing", + "automation" + ] }, { "type": "mailgun", @@ -7136,7 +7463,10 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": ["api"] + "tags": [ + "messaging", + "email-marketing" + ] }, { "type": "mem0", @@ -7167,7 +7497,11 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["llm", "api"] + "tags": [ + "llm", + "knowledge-base", + "agentic" + ] }, { "type": "memory", @@ -7287,7 +7621,11 @@ "authType": "oauth", "category": "tools", "integrationType": "databases", - "tags": ["oauth", "microsoft-365"] + "tags": [ + "microsoft-365", + "data-warehouse", + "cloud" + ] }, { "type": "microsoft_excel_v2", @@ -7314,7 +7652,10 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth", "microsoft-365"] + "tags": [ + "spreadsheet", + "microsoft-365" + ] }, { "type": "microsoft_planner", @@ -7385,7 +7726,11 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["project-management", "oauth", "microsoft-365"] + "tags": [ + "project-management", + "microsoft-365", + "ticketing" + ] }, { "type": "microsoft_teams", @@ -7466,7 +7811,10 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": ["oauth", "microsoft-365"] + "tags": [ + "messaging", + "microsoft-365" + ] }, { "type": "mistral_parse_v3", @@ -7484,7 +7832,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["document-processing", "ocr"] + "tags": [ + "document-processing", + "ocr" + ] }, { "type": "mongodb", @@ -7527,7 +7878,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "data-warehouse", + "cloud" + ] }, { "type": "mysql", @@ -7570,7 +7924,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "data-warehouse", + "data-analytics" + ] }, { "type": "neo4j", @@ -7617,7 +7974,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "data-warehouse", + "data-analytics" + ] }, { "type": "notion_v2", @@ -7635,7 +7995,11 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth"] + "tags": [ + "note-taking", + "knowledge-base", + "content-management" + ] }, { "type": "obsidian", @@ -7714,7 +8078,10 @@ "authType": "api-key", "category": "tools", "integrationType": "documents", - "tags": ["api"] + "tags": [ + "note-taking", + "knowledge-base" + ] }, { "type": "okta", @@ -7805,7 +8172,10 @@ "authType": "api-key", "category": "tools", "integrationType": "security", - "tags": ["oauth"] + "tags": [ + "identity", + "automation" + ] }, { "type": "onedrive", @@ -7848,7 +8218,11 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": ["oauth", "microsoft-365", "cloud"] + "tags": [ + "microsoft-365", + "cloud", + "document-processing" + ] }, { "type": "outlook", @@ -7903,7 +8277,11 @@ "authType": "oauth", "category": "tools", "integrationType": "email", - "tags": ["oauth", "microsoft-365"] + "tags": [ + "microsoft-365", + "messaging", + "automation" + ] }, { "type": "pagerduty", @@ -7946,7 +8324,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["incident-management", "oauth"] + "tags": [ + "incident-management", + "monitoring" + ] }, { "type": "parallel_ai", @@ -7977,7 +8358,11 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "web-scraping", + "llm", + "agentic" + ] }, { "type": "perplexity", @@ -8004,7 +8389,11 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["llm", "api"] + "tags": [ + "llm", + "web-scraping", + "agentic" + ] }, { "type": "pinecone", @@ -8043,7 +8432,10 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": ["vector-search", "api"] + "tags": [ + "vector-search", + "knowledge-base" + ] }, { "type": "pipedrive", @@ -8134,7 +8526,10 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": ["oauth"] + "tags": [ + "sales-engagement", + "project-management" + ] }, { "type": "polymarket", @@ -8233,7 +8628,10 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": ["prediction-markets", "api"] + "tags": [ + "prediction-markets", + "data-analytics" + ] }, { "type": "postgresql", @@ -8276,7 +8674,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "data-warehouse", + "data-analytics" + ] }, { "type": "posthog", @@ -8467,7 +8868,10 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": ["monitoring", "api"] + "tags": [ + "data-analytics", + "monitoring" + ] }, { "type": "pulse_v2", @@ -8485,7 +8889,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["document-processing", "ocr"] + "tags": [ + "document-processing", + "ocr" + ] }, { "type": "qdrant", @@ -8516,7 +8923,10 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": ["vector-search", "api"] + "tags": [ + "vector-search", + "knowledge-base" + ] }, { "type": "reddit", @@ -8603,7 +9013,10 @@ "authType": "oauth", "category": "tools", "integrationType": "social", - "tags": ["api"] + "tags": [ + "content-management", + "web-scraping" + ] }, { "type": "redis", @@ -8710,7 +9123,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "cloud", + "data-warehouse" + ] }, { "type": "reducto_v2", @@ -8728,7 +9144,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["document-processing", "ocr"] + "tags": [ + "document-processing", + "ocr" + ] }, { "type": "resend", @@ -8779,7 +9198,10 @@ "authType": "none", "category": "tools", "integrationType": "email", - "tags": ["api"] + "tags": [ + "email-marketing", + "messaging" + ] }, { "type": "revenuecat", @@ -8838,7 +9260,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ecommerce", - "tags": ["payments", "api"] + "tags": [ + "payments", + "subscriptions" + ] }, { "type": "s3", @@ -8877,7 +9302,10 @@ "authType": "none", "category": "tools", "integrationType": "file-storage", - "tags": ["cloud"] + "tags": [ + "cloud", + "data-warehouse" + ] }, { "type": "salesforce", @@ -9036,7 +9464,10 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": ["oauth"] + "tags": [ + "sales-engagement", + "customer-support" + ] }, { "type": "search", @@ -9054,7 +9485,10 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "web-scraping", + "seo" + ] }, { "type": "sendgrid", @@ -9137,7 +9571,10 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": ["api", "marketing"] + "tags": [ + "email-marketing", + "messaging" + ] }, { "type": "sentry", @@ -9204,7 +9641,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["monitoring", "api"] + "tags": [ + "error-tracking", + "monitoring" + ] }, { "type": "serper", @@ -9222,7 +9662,10 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "web-scraping", + "seo" + ] }, { "type": "servicenow", @@ -9257,7 +9700,11 @@ "authType": "none", "category": "tools", "integrationType": "customer-support", - "tags": ["customer-support", "oauth"] + "tags": [ + "customer-support", + "ticketing", + "incident-management" + ] }, { "type": "sftp", @@ -9300,7 +9747,10 @@ "authType": "none", "category": "tools", "integrationType": "file-storage", - "tags": ["api"] + "tags": [ + "cloud", + "automation" + ] }, { "type": "sharepoint", @@ -9351,7 +9801,11 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": ["oauth", "microsoft-365"] + "tags": [ + "microsoft-365", + "content-management", + "document-processing" + ] }, { "type": "shopify", @@ -9454,7 +9908,10 @@ "authType": "oauth", "category": "tools", "integrationType": "ecommerce", - "tags": ["oauth"] + "tags": [ + "payments", + "subscriptions" + ] }, { "type": "similarweb", @@ -9493,7 +9950,11 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": ["marketing", "api"] + "tags": [ + "marketing", + "data-analytics", + "seo" + ] }, { "type": "slack", @@ -9610,7 +10071,11 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": ["oauth", "webhooks"] + "tags": [ + "messaging", + "webhooks", + "automation" + ] }, { "type": "smtp", @@ -9628,7 +10093,10 @@ "authType": "none", "category": "tools", "integrationType": "email", - "tags": ["api"] + "tags": [ + "email-marketing", + "messaging" + ] }, { "type": "stt_v2", @@ -9646,7 +10114,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["speech-to-text"] + "tags": [ + "speech-to-text", + "document-processing" + ] }, { "type": "ssh", @@ -9717,7 +10188,10 @@ "authType": "none", "category": "tools", "integrationType": "developer-tools", - "tags": ["api"] + "tags": [ + "cloud", + "automation" + ] }, { "type": "stagehand", @@ -9744,7 +10218,11 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": ["web-scraping", "automation"] + "tags": [ + "web-scraping", + "automation", + "agentic" + ] }, { "type": "stripe", @@ -9969,7 +10447,11 @@ "authType": "api-key", "category": "tools", "integrationType": "ecommerce", - "tags": ["payments", "api"] + "tags": [ + "payments", + "subscriptions", + "webhooks" + ] }, { "type": "supabase", @@ -10076,7 +10558,11 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "cloud", + "data-warehouse", + "vector-search" + ] }, { "type": "tavily", @@ -10111,7 +10597,10 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "web-scraping", + "enrichment" + ] }, { "type": "telegram", @@ -10164,7 +10653,11 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": ["api"] + "tags": [ + "messaging", + "webhooks", + "automation" + ] }, { "type": "tts", @@ -10182,7 +10675,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["text-to-speech"] + "tags": [ + "text-to-speech", + "llm" + ] }, { "type": "tinybird", @@ -10209,7 +10705,10 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": ["data-warehouse", "api"] + "tags": [ + "data-warehouse", + "data-analytics" + ] }, { "type": "translate", @@ -10227,7 +10726,10 @@ "authType": "none", "category": "tools", "integrationType": "ai", - "tags": ["api"] + "tags": [ + "document-processing", + "llm" + ] }, { "type": "trello", @@ -10270,7 +10772,10 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": ["project-management", "oauth"] + "tags": [ + "project-management", + "ticketing" + ] }, { "type": "twilio_sms", @@ -10288,7 +10793,10 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": ["api"] + "tags": [ + "messaging", + "automation" + ] }, { "type": "twilio_voice", @@ -10325,7 +10833,10 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": ["api"] + "tags": [ + "messaging", + "text-to-speech" + ] }, { "type": "typeform", @@ -10382,7 +10893,10 @@ "authType": "api-key", "category": "tools", "integrationType": "documents", - "tags": ["oauth"] + "tags": [ + "forms", + "data-analytics" + ] }, { "type": "upstash", @@ -10465,7 +10979,10 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": ["api"] + "tags": [ + "cloud", + "data-warehouse" + ] }, { "type": "vercel", @@ -10684,7 +11201,10 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": ["cloud", "oauth"] + "tags": [ + "cloud", + "ci-cd" + ] }, { "type": "video_generator_v2", @@ -10702,7 +11222,10 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["video-generation"] + "tags": [ + "video-generation", + "llm" + ] }, { "type": "vision_v2", @@ -10720,7 +11243,11 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["llm"] + "tags": [ + "llm", + "document-processing", + "ocr" + ] }, { "type": "wealthbox", @@ -10763,7 +11290,10 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": ["api"] + "tags": [ + "sales-engagement", + "customer-support" + ] }, { "type": "webflow", @@ -10823,7 +11353,10 @@ "authType": "oauth", "category": "tools", "integrationType": "design", - "tags": ["oauth"] + "tags": [ + "content-management", + "seo" + ] }, { "type": "whatsapp", @@ -10847,7 +11380,10 @@ "authType": "api-key", "category": "tools", "integrationType": "communication", - "tags": ["api"] + "tags": [ + "messaging", + "automation" + ] }, { "type": "wikipedia", @@ -10882,7 +11418,10 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": ["api"] + "tags": [ + "knowledge-base", + "web-scraping" + ] }, { "type": "wordpress", @@ -11005,7 +11544,10 @@ "authType": "oauth", "category": "tools", "integrationType": "design", - "tags": ["oauth"] + "tags": [ + "content-management", + "seo" + ] }, { "type": "workday", @@ -11064,7 +11606,10 @@ "authType": "none", "category": "tools", "integrationType": "hr", - "tags": ["oauth"] + "tags": [ + "hiring", + "project-management" + ] }, { "type": "x", @@ -11195,7 +11740,10 @@ "authType": "oauth", "category": "tools", "integrationType": "social", - "tags": ["oauth"] + "tags": [ + "marketing", + "messaging" + ] }, { "type": "youtube", @@ -11250,7 +11798,11 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": ["oauth", "google-workspace"] + "tags": [ + "google-workspace", + "marketing", + "content-management" + ] }, { "type": "zendesk", @@ -11373,7 +11925,10 @@ "authType": "none", "category": "tools", "integrationType": "customer-support", - "tags": ["customer-support", "oauth"] + "tags": [ + "customer-support", + "ticketing" + ] }, { "type": "zep", @@ -11428,7 +11983,11 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": ["llm", "api"] + "tags": [ + "llm", + "knowledge-base", + "agentic" + ] }, { "type": "zoom", @@ -11487,6 +12046,10 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": ["meeting", "oauth"] + "tags": [ + "meeting", + "calendar", + "scheduling" + ] } -] +] \ No newline at end of file diff --git a/apps/sim/blocks/blocks/a2a.ts b/apps/sim/blocks/blocks/a2a.ts index 3bab9dfec91..44b70d3803d 100644 --- a/apps/sim/blocks/blocks/a2a.ts +++ b/apps/sim/blocks/blocks/a2a.ts @@ -65,7 +65,7 @@ export const A2ABlock: BlockConfig = { docsLink: 'https://docs.sim.ai/blocks/a2a', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api', 'automation'], + tags: ['agentic', 'automation'], bgColor: '#4151B5', icon: A2AIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/agent.ts b/apps/sim/blocks/blocks/agent.ts index 920952207d5..a5585816a61 100644 --- a/apps/sim/blocks/blocks/agent.ts +++ b/apps/sim/blocks/blocks/agent.ts @@ -70,7 +70,7 @@ export const AgentBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/blocks/agent', category: 'blocks', integrationType: IntegrationType.AI, - tags: ['llm', 'automation'], + tags: ['llm', 'agentic', 'automation'], bgColor: 'var(--brand-primary-hex)', icon: AgentIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/ahrefs.ts b/apps/sim/blocks/blocks/ahrefs.ts index 81b64e89b23..02857936b5c 100644 --- a/apps/sim/blocks/blocks/ahrefs.ts +++ b/apps/sim/blocks/blocks/ahrefs.ts @@ -13,7 +13,7 @@ export const AhrefsBlock: BlockConfig = { docsLink: 'https://docs.ahrefs.com/docs/api/reference/introduction', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['marketing'], + tags: ['seo', 'marketing', 'data-analytics'], bgColor: '#E0E0E0', icon: AhrefsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/airtable.ts b/apps/sim/blocks/blocks/airtable.ts index 2ac157fe108..48e9b670bc4 100644 --- a/apps/sim/blocks/blocks/airtable.ts +++ b/apps/sim/blocks/blocks/airtable.ts @@ -15,7 +15,7 @@ export const AirtableBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/airtable', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['api'], + tags: ['spreadsheet', 'automation'], bgColor: '#E0E0E0', icon: AirtableIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/airweave.ts b/apps/sim/blocks/blocks/airweave.ts index a1933b42094..caa9c4097f6 100644 --- a/apps/sim/blocks/blocks/airweave.ts +++ b/apps/sim/blocks/blocks/airweave.ts @@ -13,7 +13,7 @@ export const AirweaveBlock: BlockConfig = { docsLink: 'https://docs.airweave.ai', category: 'tools', integrationType: IntegrationType.Search, - tags: ['vector-search'], + tags: ['vector-search', 'knowledge-base'], bgColor: '#6366F1', icon: AirweaveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/algolia.ts b/apps/sim/blocks/blocks/algolia.ts index 7539f9a8585..f2d0d8f2640 100644 --- a/apps/sim/blocks/blocks/algolia.ts +++ b/apps/sim/blocks/blocks/algolia.ts @@ -11,7 +11,7 @@ export const AlgoliaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/algolia', category: 'tools', integrationType: IntegrationType.Search, - tags: ['vector-search', 'api'], + tags: ['vector-search', 'knowledge-base'], bgColor: '#003DFF', icon: AlgoliaIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/amplitude.ts b/apps/sim/blocks/blocks/amplitude.ts index b8a5c9ac9f3..689f5a9d0c5 100644 --- a/apps/sim/blocks/blocks/amplitude.ts +++ b/apps/sim/blocks/blocks/amplitude.ts @@ -10,7 +10,7 @@ export const AmplitudeBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/amplitude', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['marketing'], + tags: ['data-analytics', 'marketing'], bgColor: '#1B1F3B', icon: AmplitudeIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/api.ts b/apps/sim/blocks/blocks/api.ts index 8ce0eaa6463..8eafbb423e3 100644 --- a/apps/sim/blocks/blocks/api.ts +++ b/apps/sim/blocks/blocks/api.ts @@ -15,7 +15,7 @@ export const ApiBlock: BlockConfig = { `, category: 'blocks', integrationType: IntegrationType.DeveloperTools, - tags: ['api'], + tags: ['automation', 'webhooks'], bgColor: '#2F55FF', icon: ApiIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/apify.ts b/apps/sim/blocks/blocks/apify.ts index 51b83609ce7..bbcca0055b9 100644 --- a/apps/sim/blocks/blocks/apify.ts +++ b/apps/sim/blocks/blocks/apify.ts @@ -12,7 +12,7 @@ export const ApifyBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/apify', category: 'tools', integrationType: IntegrationType.Automation, - tags: ['web-scraping', 'automation'], + tags: ['web-scraping', 'automation', 'data-analytics'], bgColor: '#E0E0E0', icon: ApifyIcon, diff --git a/apps/sim/blocks/blocks/apollo.ts b/apps/sim/blocks/blocks/apollo.ts index 0e93b96eaad..5383123dcb6 100644 --- a/apps/sim/blocks/blocks/apollo.ts +++ b/apps/sim/blocks/blocks/apollo.ts @@ -13,7 +13,7 @@ export const ApolloBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/apollo', category: 'tools', integrationType: IntegrationType.SalesIntelligence, - tags: ['enrichment'], + tags: ['enrichment', 'sales-engagement'], bgColor: '#EBF212', icon: ApolloIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/arxiv.ts b/apps/sim/blocks/blocks/arxiv.ts index 72e47ea3b36..c7bbbe1d905 100644 --- a/apps/sim/blocks/blocks/arxiv.ts +++ b/apps/sim/blocks/blocks/arxiv.ts @@ -12,7 +12,7 @@ export const ArxivBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/arxiv', category: 'tools', integrationType: IntegrationType.Search, - tags: ['document-processing'], + tags: ['document-processing', 'knowledge-base'], bgColor: '#E0E0E0', icon: ArxivIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/asana.ts b/apps/sim/blocks/blocks/asana.ts index 7c80008e038..4da1b84f961 100644 --- a/apps/sim/blocks/blocks/asana.ts +++ b/apps/sim/blocks/blocks/asana.ts @@ -13,7 +13,7 @@ export const AsanaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/asana', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['project-management', 'oauth'], + tags: ['project-management', 'ticketing', 'automation'], bgColor: '#E0E0E0', icon: AsanaIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/ashby.ts b/apps/sim/blocks/blocks/ashby.ts index 5e9e16b2b66..0659dcbeda3 100644 --- a/apps/sim/blocks/blocks/ashby.ts +++ b/apps/sim/blocks/blocks/ashby.ts @@ -11,7 +11,7 @@ export const AshbyBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/ashby', category: 'tools', integrationType: IntegrationType.HR, - tags: ['oauth'], + tags: ['hiring'], bgColor: '#5D4ED6', icon: AshbyIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/attio.ts b/apps/sim/blocks/blocks/attio.ts index 725ea555a8e..21ee5ffdf82 100644 --- a/apps/sim/blocks/blocks/attio.ts +++ b/apps/sim/blocks/blocks/attio.ts @@ -13,7 +13,7 @@ export const AttioBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/attio', category: 'tools', integrationType: IntegrationType.CRM, - tags: ['oauth'], + tags: ['sales-engagement', 'enrichment'], bgColor: '#1D1E20', icon: AttioIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/box.ts b/apps/sim/blocks/blocks/box.ts index 8c2639c43d3..27318f83531 100644 --- a/apps/sim/blocks/blocks/box.ts +++ b/apps/sim/blocks/blocks/box.ts @@ -13,7 +13,7 @@ export const BoxBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/box', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['oauth', 'cloud'], + tags: ['cloud', 'content-management', 'e-signatures'], bgColor: '#FFFFFF', icon: BoxCompanyIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/brandfetch.ts b/apps/sim/blocks/blocks/brandfetch.ts index 1154f33fa8e..6b1965b8bad 100644 --- a/apps/sim/blocks/blocks/brandfetch.ts +++ b/apps/sim/blocks/blocks/brandfetch.ts @@ -12,7 +12,7 @@ export const BrandfetchBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/browser_use', category: 'tools', integrationType: IntegrationType.Automation, - tags: ['web-scraping', 'automation'], + tags: ['web-scraping', 'automation', 'agentic'], bgColor: '#181C1E', icon: BrowserUseIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/calcom.ts b/apps/sim/blocks/blocks/calcom.ts index cdc3dcdfe7e..2b08bac4165 100644 --- a/apps/sim/blocks/blocks/calcom.ts +++ b/apps/sim/blocks/blocks/calcom.ts @@ -15,7 +15,7 @@ export const CalComBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/calcom', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['calendar', 'oauth'], + tags: ['scheduling', 'calendar', 'meeting'], bgColor: '#FFFFFE', icon: CalComIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/calendly.ts b/apps/sim/blocks/blocks/calendly.ts index 6e7722f32c0..aa99278402f 100644 --- a/apps/sim/blocks/blocks/calendly.ts +++ b/apps/sim/blocks/blocks/calendly.ts @@ -15,7 +15,7 @@ export const CalendlyBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/calendly', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['calendar', 'oauth'], + tags: ['scheduling', 'calendar', 'meeting'], bgColor: '#FFFFFF', icon: CalendlyIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/circleback.ts b/apps/sim/blocks/blocks/circleback.ts index 8dc075fe934..519549cc701 100644 --- a/apps/sim/blocks/blocks/circleback.ts +++ b/apps/sim/blocks/blocks/circleback.ts @@ -11,7 +11,7 @@ export const CirclebackBlock: BlockConfig = { 'Receive meeting notes, action items, transcripts, and recordings when meetings are processed. Circleback uses webhooks to push data to your workflows.', category: 'triggers', integrationType: IntegrationType.AI, - tags: ['meeting'], + tags: ['meeting', 'note-taking', 'automation'], bgColor: 'linear-gradient(180deg, #E0F7FA 0%, #FFFFFF 100%)', docsLink: 'https://docs.sim.ai/tools/circleback', icon: CirclebackIcon, diff --git a/apps/sim/blocks/blocks/clay.ts b/apps/sim/blocks/blocks/clay.ts index 75db41943a3..b662cb091b0 100644 --- a/apps/sim/blocks/blocks/clay.ts +++ b/apps/sim/blocks/blocks/clay.ts @@ -11,7 +11,7 @@ export const ClayBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/clay', category: 'tools', integrationType: IntegrationType.SalesIntelligence, - tags: ['enrichment'], + tags: ['enrichment', 'sales-engagement', 'data-analytics'], bgColor: '#E0E0E0', icon: ClayIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/clerk.ts b/apps/sim/blocks/blocks/clerk.ts index 41ee03c37b9..a88d67be276 100644 --- a/apps/sim/blocks/blocks/clerk.ts +++ b/apps/sim/blocks/blocks/clerk.ts @@ -12,7 +12,7 @@ export const ClerkBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/clerk', category: 'tools', integrationType: IntegrationType.Security, - tags: ['oauth'], + tags: ['identity', 'automation'], bgColor: '#131316', icon: ClerkIcon, diff --git a/apps/sim/blocks/blocks/cloudflare.ts b/apps/sim/blocks/blocks/cloudflare.ts index a394c38b12c..9ef661fc819 100644 --- a/apps/sim/blocks/blocks/cloudflare.ts +++ b/apps/sim/blocks/blocks/cloudflare.ts @@ -12,7 +12,7 @@ export const CloudflareBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/cloudflare', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['cloud', 'api'], + tags: ['cloud', 'monitoring'], bgColor: '#F5F6FA', icon: CloudflareIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/confluence.ts b/apps/sim/blocks/blocks/confluence.ts index 2d863e6315f..8d90cfda4ca 100644 --- a/apps/sim/blocks/blocks/confluence.ts +++ b/apps/sim/blocks/blocks/confluence.ts @@ -17,7 +17,7 @@ export const ConfluenceBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/confluence', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth'], + tags: ['knowledge-base', 'content-management', 'note-taking'], bgColor: '#E0E0E0', icon: ConfluenceIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/cursor.ts b/apps/sim/blocks/blocks/cursor.ts index a85c7668df8..60ceec13e32 100644 --- a/apps/sim/blocks/blocks/cursor.ts +++ b/apps/sim/blocks/blocks/cursor.ts @@ -13,7 +13,7 @@ export const CursorBlock: BlockConfig = { docsLink: 'https://cursor.com/docs/cloud-agent/api/endpoints', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api'], + tags: ['agentic', 'automation'], bgColor: '#1E1E1E', icon: CursorIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/databricks.ts b/apps/sim/blocks/blocks/databricks.ts index 0184becd9af..3985fb9afcb 100644 --- a/apps/sim/blocks/blocks/databricks.ts +++ b/apps/sim/blocks/blocks/databricks.ts @@ -13,7 +13,7 @@ export const DatabricksBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/databricks', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['data-warehouse', 'cloud'], + tags: ['data-warehouse', 'data-analytics', 'cloud'], bgColor: '#F9F7F4', icon: DatabricksIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/datadog.ts b/apps/sim/blocks/blocks/datadog.ts index 5bd78d825bc..c66ad2dc1e4 100644 --- a/apps/sim/blocks/blocks/datadog.ts +++ b/apps/sim/blocks/blocks/datadog.ts @@ -13,7 +13,7 @@ export const DatadogBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/datadog', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['monitoring', 'cloud'], + tags: ['monitoring', 'incident-management', 'error-tracking'], bgColor: '#632CA6', icon: DatadogIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/devin.ts b/apps/sim/blocks/blocks/devin.ts index 04bf0b6ae2a..291722e7d7d 100644 --- a/apps/sim/blocks/blocks/devin.ts +++ b/apps/sim/blocks/blocks/devin.ts @@ -18,7 +18,7 @@ export const DevinBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/devin', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api'], + tags: ['agentic', 'automation'], bgColor: '#12141A', icon: DevinIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/discord.ts b/apps/sim/blocks/blocks/discord.ts index 986e1f2adaa..992874e4e08 100644 --- a/apps/sim/blocks/blocks/discord.ts +++ b/apps/sim/blocks/blocks/discord.ts @@ -13,7 +13,7 @@ export const DiscordBlock: BlockConfig = { 'Comprehensive Discord integration: messages, threads, channels, roles, members, invites, and webhooks.', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['oauth', 'webhooks'], + tags: ['messaging', 'webhooks', 'automation'], bgColor: '#5865F2', icon: DiscordIcon, docsLink: 'https://docs.sim.ai/tools/discord', diff --git a/apps/sim/blocks/blocks/docusign.ts b/apps/sim/blocks/blocks/docusign.ts index 6a6a705e9d6..d66c001f37f 100644 --- a/apps/sim/blocks/blocks/docusign.ts +++ b/apps/sim/blocks/blocks/docusign.ts @@ -14,7 +14,7 @@ export const DocuSignBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/docusign', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth'], + tags: ['e-signatures', 'document-processing'], bgColor: '#FFFFFF', icon: DocuSignIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/dropbox.ts b/apps/sim/blocks/blocks/dropbox.ts index 030a41b2f86..12907877261 100644 --- a/apps/sim/blocks/blocks/dropbox.ts +++ b/apps/sim/blocks/blocks/dropbox.ts @@ -15,7 +15,7 @@ export const DropboxBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/dropbox', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['oauth', 'cloud'], + tags: ['cloud', 'document-processing'], icon: DropboxIcon, bgColor: '#0061FF', subBlocks: [ diff --git a/apps/sim/blocks/blocks/dspy.ts b/apps/sim/blocks/blocks/dspy.ts index cee75b38596..5cf823d99c8 100644 --- a/apps/sim/blocks/blocks/dspy.ts +++ b/apps/sim/blocks/blocks/dspy.ts @@ -10,7 +10,7 @@ export const DSPyBlock: BlockConfig = { 'Integrate with your self-hosted DSPy programs for LLM-powered predictions. Supports Predict, Chain of Thought, and ReAct agents. DSPy is the framework for programming—not prompting—language models.', category: 'tools', integrationType: IntegrationType.AI, - tags: ['llm'], + tags: ['llm', 'agentic', 'automation'], bgColor: '#E0E0E0', icon: DsPyIcon, diff --git a/apps/sim/blocks/blocks/dub.ts b/apps/sim/blocks/blocks/dub.ts index 4031755443e..4894ab11523 100644 --- a/apps/sim/blocks/blocks/dub.ts +++ b/apps/sim/blocks/blocks/dub.ts @@ -13,7 +13,7 @@ export const DubBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/dub', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api', 'marketing'], + tags: ['link-management', 'marketing', 'data-analytics'], bgColor: '#181C1E', icon: DubIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/duckduckgo.ts b/apps/sim/blocks/blocks/duckduckgo.ts index 5dd41251992..87d4d84a4fe 100644 --- a/apps/sim/blocks/blocks/duckduckgo.ts +++ b/apps/sim/blocks/blocks/duckduckgo.ts @@ -12,7 +12,7 @@ export const DuckDuckGoBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/duckduckgo', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['web-scraping', 'seo'], bgColor: '#FFFFFF', icon: DuckDuckGoIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/dynamodb.ts b/apps/sim/blocks/blocks/dynamodb.ts index ad00cb91e85..628174f2099 100644 --- a/apps/sim/blocks/blocks/dynamodb.ts +++ b/apps/sim/blocks/blocks/dynamodb.ts @@ -12,7 +12,7 @@ export const DynamoDBBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/elasticsearch', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['vector-search'], + tags: ['vector-search', 'data-analytics'], bgColor: '#E0E0E0', icon: ElasticsearchIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/elevenlabs.ts b/apps/sim/blocks/blocks/elevenlabs.ts index d631ce53a3c..805a38b4a72 100644 --- a/apps/sim/blocks/blocks/elevenlabs.ts +++ b/apps/sim/blocks/blocks/elevenlabs.ts @@ -11,7 +11,7 @@ export const ElevenLabsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/elevenlabs', category: 'tools', integrationType: IntegrationType.Media, - tags: ['text-to-speech', 'api'], + tags: ['text-to-speech'], bgColor: '#181C1E', icon: ElevenLabsIcon, diff --git a/apps/sim/blocks/blocks/enrich.ts b/apps/sim/blocks/blocks/enrich.ts index a79f712a260..90d594398df 100644 --- a/apps/sim/blocks/blocks/enrich.ts +++ b/apps/sim/blocks/blocks/enrich.ts @@ -12,7 +12,7 @@ export const EnrichBlock: BlockConfig = { docsLink: 'https://docs.enrich.so/', category: 'tools', integrationType: IntegrationType.SalesIntelligence, - tags: ['enrichment', 'api'], + tags: ['enrichment', 'data-analytics'], bgColor: '#E5E5E6', icon: EnrichSoIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/evernote.ts b/apps/sim/blocks/blocks/evernote.ts index 20f002cc94a..af80ad1cd82 100644 --- a/apps/sim/blocks/blocks/evernote.ts +++ b/apps/sim/blocks/blocks/evernote.ts @@ -11,7 +11,7 @@ export const EvernoteBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/evernote', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth'], + tags: ['note-taking', 'knowledge-base'], bgColor: '#E0E0E0', icon: EvernoteIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/exa.ts b/apps/sim/blocks/blocks/exa.ts index 868f0986203..483dba64584 100644 --- a/apps/sim/blocks/blocks/exa.ts +++ b/apps/sim/blocks/blocks/exa.ts @@ -13,7 +13,7 @@ export const ExaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/exa', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['web-scraping', 'enrichment'], bgColor: '#1F40ED', icon: ExaAIIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/fathom.ts b/apps/sim/blocks/blocks/fathom.ts index ea4caf06b74..7e8a83f2fe1 100644 --- a/apps/sim/blocks/blocks/fathom.ts +++ b/apps/sim/blocks/blocks/fathom.ts @@ -15,7 +15,7 @@ export const FathomBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/fathom', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['meeting'], + tags: ['meeting', 'note-taking'], bgColor: '#181C1E', icon: FathomIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/file.ts b/apps/sim/blocks/blocks/file.ts index 8a3d2ae06b6..9e6b14b7d9b 100644 --- a/apps/sim/blocks/blocks/file.ts +++ b/apps/sim/blocks/blocks/file.ts @@ -55,7 +55,7 @@ export const FileBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/file', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['api'], + tags: ['document-processing'], bgColor: '#40916C', icon: DocumentIcon, hideFromToolbar: true, @@ -256,7 +256,7 @@ export const FileV3Block: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/file', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['api'], + tags: ['document-processing'], bgColor: '#40916C', icon: DocumentIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/firecrawl.ts b/apps/sim/blocks/blocks/firecrawl.ts index 77d1f588ef5..51ce40ed124 100644 --- a/apps/sim/blocks/blocks/firecrawl.ts +++ b/apps/sim/blocks/blocks/firecrawl.ts @@ -13,7 +13,7 @@ export const FirecrawlBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/firecrawl', category: 'tools', integrationType: IntegrationType.Automation, - tags: ['web-scraping', 'api'], + tags: ['web-scraping', 'automation'], bgColor: '#181C1E', icon: FirecrawlIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/fireflies.ts b/apps/sim/blocks/blocks/fireflies.ts index bc6d015c64f..9812095fc47 100644 --- a/apps/sim/blocks/blocks/fireflies.ts +++ b/apps/sim/blocks/blocks/fireflies.ts @@ -18,7 +18,7 @@ export const FirefliesBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/fireflies', category: 'tools', integrationType: IntegrationType.Media, - tags: ['meeting', 'oauth'], + tags: ['meeting', 'speech-to-text', 'note-taking'], icon: FirefliesIcon, bgColor: '#100730', subBlocks: [ @@ -616,7 +616,7 @@ export const FirefliesV2Block: BlockConfig = { description: 'Interact with Fireflies.ai meeting transcripts and recordings', hideFromToolbar: false, integrationType: IntegrationType.Media, - tags: ['meeting', 'oauth'], + tags: ['meeting', 'speech-to-text', 'note-taking'], subBlocks: firefliesV2SubBlocks, tools: { ...FirefliesBlock.tools, diff --git a/apps/sim/blocks/blocks/gamma.ts b/apps/sim/blocks/blocks/gamma.ts index bc4d08aa197..5def6c2f201 100644 --- a/apps/sim/blocks/blocks/gamma.ts +++ b/apps/sim/blocks/blocks/gamma.ts @@ -11,7 +11,7 @@ export const GammaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/gamma', category: 'tools', integrationType: IntegrationType.Design, - tags: ['api'], + tags: ['document-processing', 'content-management'], bgColor: '#002253', icon: GammaIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/github.ts b/apps/sim/blocks/blocks/github.ts index 1dc53e285a9..4ce959f28e7 100644 --- a/apps/sim/blocks/blocks/github.ts +++ b/apps/sim/blocks/blocks/github.ts @@ -15,7 +15,7 @@ export const GitHubBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/github', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['oauth', 'webhooks'], + tags: ['version-control', 'ci-cd'], bgColor: '#181C1E', icon: GithubIcon, triggerAllowed: true, @@ -2026,7 +2026,7 @@ export const GitHubV2Block: BlockConfig = { name: 'GitHub', hideFromToolbar: false, integrationType: IntegrationType.DeveloperTools, - tags: ['oauth', 'webhooks'], + tags: ['version-control', 'ci-cd'], tools: { ...GitHubBlock.tools, access: (GitHubBlock.tools?.access || []).map((toolId) => `${toolId}_v2`), diff --git a/apps/sim/blocks/blocks/gitlab.ts b/apps/sim/blocks/blocks/gitlab.ts index d01114af571..845ffa4f07e 100644 --- a/apps/sim/blocks/blocks/gitlab.ts +++ b/apps/sim/blocks/blocks/gitlab.ts @@ -14,7 +14,7 @@ export const GitLabBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/gitlab', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['oauth'], + tags: ['version-control', 'ci-cd'], icon: GitLabIcon, bgColor: '#E0E0E0', subBlocks: [ diff --git a/apps/sim/blocks/blocks/gmail.ts b/apps/sim/blocks/blocks/gmail.ts index 2e6218f669f..ca9f6eda697 100644 --- a/apps/sim/blocks/blocks/gmail.ts +++ b/apps/sim/blocks/blocks/gmail.ts @@ -47,7 +47,7 @@ export const GmailBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/gmail', category: 'tools', integrationType: IntegrationType.Email, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'messaging'], bgColor: '#E0E0E0', icon: GmailIcon, hideFromToolbar: true, @@ -556,7 +556,7 @@ export const GmailV2Block: BlockConfig = { name: 'Gmail', hideFromToolbar: false, integrationType: IntegrationType.Email, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'messaging'], tools: { ...GmailBlock.tools, access: [ diff --git a/apps/sim/blocks/blocks/gong.ts b/apps/sim/blocks/blocks/gong.ts index c153e3cf6e6..33adaf28742 100644 --- a/apps/sim/blocks/blocks/gong.ts +++ b/apps/sim/blocks/blocks/gong.ts @@ -12,7 +12,7 @@ export const GongBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/gong', category: 'tools', integrationType: IntegrationType.SalesIntelligence, - tags: ['meeting', 'oauth'], + tags: ['meeting', 'sales-engagement', 'speech-to-text'], bgColor: '#8039DF', icon: GongIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google.ts b/apps/sim/blocks/blocks/google.ts index 914b003b96f..c7370af563b 100644 --- a/apps/sim/blocks/blocks/google.ts +++ b/apps/sim/blocks/blocks/google.ts @@ -12,7 +12,7 @@ export const GoogleSearchBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_search', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api', 'google-workspace'], + tags: ['google-workspace', 'web-scraping', 'seo'], bgColor: '#E0E0E0', icon: GoogleIcon, diff --git a/apps/sim/blocks/blocks/google_ads.ts b/apps/sim/blocks/blocks/google_ads.ts index 4b645b557d3..8e20e428951 100644 --- a/apps/sim/blocks/blocks/google_ads.ts +++ b/apps/sim/blocks/blocks/google_ads.ts @@ -12,7 +12,7 @@ export const GoogleAdsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_ads', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['marketing', 'oauth', 'google-workspace'], + tags: ['marketing', 'google-workspace', 'data-analytics'], bgColor: '#E0E0E0', icon: GoogleAdsIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_bigquery.ts b/apps/sim/blocks/blocks/google_bigquery.ts index b0b590eece3..ee6d7014d18 100644 --- a/apps/sim/blocks/blocks/google_bigquery.ts +++ b/apps/sim/blocks/blocks/google_bigquery.ts @@ -12,7 +12,7 @@ export const GoogleBigQueryBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_bigquery', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['data-warehouse', 'oauth', 'google-workspace'], + tags: ['data-warehouse', 'google-workspace', 'data-analytics'], bgColor: '#E0E0E0', icon: GoogleBigQueryIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_books.ts b/apps/sim/blocks/blocks/google_books.ts index 6ea083eb307..033fd12948b 100644 --- a/apps/sim/blocks/blocks/google_books.ts +++ b/apps/sim/blocks/blocks/google_books.ts @@ -12,7 +12,7 @@ export const GoogleBooksBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_books', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api', 'google-workspace'], + tags: ['google-workspace', 'knowledge-base', 'content-management'], bgColor: '#E0E0E0', icon: GoogleBooksIcon, diff --git a/apps/sim/blocks/blocks/google_calendar.ts b/apps/sim/blocks/blocks/google_calendar.ts index b72410e82ab..22b5acd29c3 100644 --- a/apps/sim/blocks/blocks/google_calendar.ts +++ b/apps/sim/blocks/blocks/google_calendar.ts @@ -15,7 +15,7 @@ export const GoogleCalendarBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_calendar', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['calendar', 'oauth', 'google-workspace'], + tags: ['calendar', 'scheduling', 'google-workspace'], bgColor: '#E0E0E0', icon: GoogleCalendarIcon, hideFromToolbar: true, @@ -651,7 +651,7 @@ export const GoogleCalendarV2Block: BlockConfig = { name: 'Google Calendar', hideFromToolbar: false, integrationType: IntegrationType.Productivity, - tags: ['calendar', 'oauth', 'google-workspace'], + tags: ['calendar', 'scheduling', 'google-workspace'], tools: { ...GoogleCalendarBlock.tools, access: [ diff --git a/apps/sim/blocks/blocks/google_contacts.ts b/apps/sim/blocks/blocks/google_contacts.ts index bfd6c2ded72..5ba85d7dbbf 100644 --- a/apps/sim/blocks/blocks/google_contacts.ts +++ b/apps/sim/blocks/blocks/google_contacts.ts @@ -14,7 +14,7 @@ export const GoogleContactsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_contacts', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'customer-support', 'enrichment'], bgColor: '#E0E0E0', icon: GoogleContactsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_docs.ts b/apps/sim/blocks/blocks/google_docs.ts index c5bb7751283..d103a467965 100644 --- a/apps/sim/blocks/blocks/google_docs.ts +++ b/apps/sim/blocks/blocks/google_docs.ts @@ -14,7 +14,7 @@ export const GoogleDocsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_docs', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'document-processing', 'content-management'], bgColor: '#E0E0E0', icon: GoogleDocsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_drive.ts b/apps/sim/blocks/blocks/google_drive.ts index 585ce5d563d..cf9b988e9a0 100644 --- a/apps/sim/blocks/blocks/google_drive.ts +++ b/apps/sim/blocks/blocks/google_drive.ts @@ -15,7 +15,7 @@ export const GoogleDriveBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_drive', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['oauth', 'cloud', 'google-workspace'], + tags: ['cloud', 'google-workspace', 'document-processing'], bgColor: '#E0E0E0', icon: GoogleDriveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_forms.ts b/apps/sim/blocks/blocks/google_forms.ts index 0617821a8d0..a5bbf82952a 100644 --- a/apps/sim/blocks/blocks/google_forms.ts +++ b/apps/sim/blocks/blocks/google_forms.ts @@ -13,7 +13,7 @@ export const GoogleFormsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_forms', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'forms', 'data-analytics'], bgColor: '#E0E0E0', icon: GoogleFormsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_groups.ts b/apps/sim/blocks/blocks/google_groups.ts index 2e94b4c9554..98a2e19ec07 100644 --- a/apps/sim/blocks/blocks/google_groups.ts +++ b/apps/sim/blocks/blocks/google_groups.ts @@ -13,7 +13,7 @@ export const GoogleGroupsBlock: BlockConfig = { docsLink: 'https://developers.google.com/admin-sdk/directory/v1/guides/manage-groups', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'messaging', 'identity'], bgColor: '#E8F0FE', icon: GoogleGroupsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_maps.ts b/apps/sim/blocks/blocks/google_maps.ts index 87ab3284d9c..24676cb10ff 100644 --- a/apps/sim/blocks/blocks/google_maps.ts +++ b/apps/sim/blocks/blocks/google_maps.ts @@ -11,7 +11,7 @@ export const GoogleMapsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_maps', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api', 'google-workspace'], + tags: ['google-workspace', 'enrichment'], bgColor: '#E0E0E0', icon: GoogleMapsIcon, diff --git a/apps/sim/blocks/blocks/google_meet.ts b/apps/sim/blocks/blocks/google_meet.ts index 664ab844647..9484359b1aa 100644 --- a/apps/sim/blocks/blocks/google_meet.ts +++ b/apps/sim/blocks/blocks/google_meet.ts @@ -13,7 +13,7 @@ export const GoogleMeetBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_meet', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['meeting', 'oauth', 'google-workspace'], + tags: ['meeting', 'google-workspace', 'scheduling'], bgColor: '#E0E0E0', icon: GoogleMeetIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_pagespeed.ts b/apps/sim/blocks/blocks/google_pagespeed.ts index 08b3cb324b0..fada86e3183 100644 --- a/apps/sim/blocks/blocks/google_pagespeed.ts +++ b/apps/sim/blocks/blocks/google_pagespeed.ts @@ -11,7 +11,7 @@ export const GooglePagespeedBlock: BlockConfig = docsLink: 'https://docs.sim.ai/tools/google_pagespeed', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['api', 'google-workspace'], + tags: ['google-workspace', 'seo', 'monitoring'], bgColor: '#E0E0E0', icon: GooglePagespeedIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/google_sheets.ts b/apps/sim/blocks/blocks/google_sheets.ts index 9f92645e102..eeb41cd0536 100644 --- a/apps/sim/blocks/blocks/google_sheets.ts +++ b/apps/sim/blocks/blocks/google_sheets.ts @@ -17,7 +17,7 @@ export const GoogleSheetsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_sheets', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'google-workspace'], + tags: ['spreadsheet', 'google-workspace', 'data-analytics'], bgColor: '#E0E0E0', icon: GoogleSheetsIcon, subBlocks: [ @@ -305,7 +305,7 @@ export const GoogleSheetsV2Block: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_sheets', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'google-workspace'], + tags: ['spreadsheet', 'google-workspace', 'data-analytics'], bgColor: '#E0E0E0', icon: GoogleSheetsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/google_slides.ts b/apps/sim/blocks/blocks/google_slides.ts index 013e4dc529c..fb2d6fca536 100644 --- a/apps/sim/blocks/blocks/google_slides.ts +++ b/apps/sim/blocks/blocks/google_slides.ts @@ -17,7 +17,7 @@ export const GoogleSlidesBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_slides', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'document-processing', 'content-management'], bgColor: '#E0E0E0', icon: GoogleSlidesIcon, subBlocks: [ @@ -958,7 +958,7 @@ export const GoogleSlidesV2Block: BlockConfig = { description: 'Read, write, and create presentations', hideFromToolbar: false, integrationType: IntegrationType.Documents, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'document-processing', 'content-management'], subBlocks: googleSlidesV2SubBlocks, tools: { access: GoogleSlidesBlock.tools!.access, diff --git a/apps/sim/blocks/blocks/google_tasks.ts b/apps/sim/blocks/blocks/google_tasks.ts index 4dc98575311..12569327ad1 100644 --- a/apps/sim/blocks/blocks/google_tasks.ts +++ b/apps/sim/blocks/blocks/google_tasks.ts @@ -13,7 +13,7 @@ export const GoogleTasksBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_tasks', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'project-management', 'scheduling'], bgColor: '#E0E0E0', icon: GoogleTasksIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/google_translate.ts b/apps/sim/blocks/blocks/google_translate.ts index a5a2398aec8..86d6cf131c8 100644 --- a/apps/sim/blocks/blocks/google_translate.ts +++ b/apps/sim/blocks/blocks/google_translate.ts @@ -146,7 +146,7 @@ export const GoogleTranslateBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/google_translate', category: 'tools', integrationType: IntegrationType.AI, - tags: ['api', 'google-workspace'], + tags: ['google-workspace', 'content-management', 'automation'], bgColor: '#E0E0E0', icon: GoogleTranslateIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/google_vault.ts b/apps/sim/blocks/blocks/google_vault.ts index 437f396277c..7ca1ed44851 100644 --- a/apps/sim/blocks/blocks/google_vault.ts +++ b/apps/sim/blocks/blocks/google_vault.ts @@ -13,7 +13,7 @@ export const GoogleVaultBlock: BlockConfig = { docsLink: 'https://developers.google.com/vault', category: 'tools', integrationType: IntegrationType.Security, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'secrets-management', 'document-processing'], bgColor: '#E8F0FE', icon: GoogleVaultIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/grafana.ts b/apps/sim/blocks/blocks/grafana.ts index b0433f1be12..4ef7f36810a 100644 --- a/apps/sim/blocks/blocks/grafana.ts +++ b/apps/sim/blocks/blocks/grafana.ts @@ -13,7 +13,7 @@ export const GrafanaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/grafana', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['monitoring', 'api'], + tags: ['monitoring', 'data-analytics'], bgColor: '#E0E0E0', icon: GrafanaIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/grain.ts b/apps/sim/blocks/blocks/grain.ts index faeb6d03737..2a4684bdf88 100644 --- a/apps/sim/blocks/blocks/grain.ts +++ b/apps/sim/blocks/blocks/grain.ts @@ -14,7 +14,7 @@ export const GrainBlock: BlockConfig = { 'Integrate Grain into your workflow. Access meeting recordings, transcripts, highlights, and AI-generated summaries. Can also trigger workflows based on Grain webhook events.', category: 'tools', integrationType: IntegrationType.Media, - tags: ['meeting', 'api'], + tags: ['meeting', 'note-taking'], docsLink: 'https://docs.sim.ai/tools/grain', icon: GrainIcon, bgColor: '#F6FAF9', diff --git a/apps/sim/blocks/blocks/greenhouse.ts b/apps/sim/blocks/blocks/greenhouse.ts index 505a3e2902d..4df4963fca4 100644 --- a/apps/sim/blocks/blocks/greenhouse.ts +++ b/apps/sim/blocks/blocks/greenhouse.ts @@ -11,7 +11,7 @@ export const GreenhouseBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/greenhouse', category: 'tools', integrationType: IntegrationType.HR, - tags: ['oauth'], + tags: ['hiring'], bgColor: '#469776', icon: GreenhouseIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/greptile.ts b/apps/sim/blocks/blocks/greptile.ts index 1200e5782f1..76cb142cf3c 100644 --- a/apps/sim/blocks/blocks/greptile.ts +++ b/apps/sim/blocks/blocks/greptile.ts @@ -13,7 +13,7 @@ export const GreptileBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/greptile', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api'], + tags: ['version-control', 'knowledge-base'], bgColor: '#e5e5e5', icon: GreptileIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/hex.ts b/apps/sim/blocks/blocks/hex.ts index cf910ea902a..4da74a5f32f 100644 --- a/apps/sim/blocks/blocks/hex.ts +++ b/apps/sim/blocks/blocks/hex.ts @@ -12,7 +12,7 @@ export const HexBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/hex', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['data-warehouse', 'api'], + tags: ['data-warehouse', 'data-analytics'], bgColor: '#14151A', icon: HexIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/hubspot.ts b/apps/sim/blocks/blocks/hubspot.ts index 489f023fc89..ecacf1d588e 100644 --- a/apps/sim/blocks/blocks/hubspot.ts +++ b/apps/sim/blocks/blocks/hubspot.ts @@ -16,7 +16,7 @@ export const HubSpotBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/hubspot', category: 'tools', integrationType: IntegrationType.CRM, - tags: ['oauth', 'marketing'], + tags: ['marketing', 'sales-engagement', 'customer-support'], bgColor: '#FF7A59', icon: HubspotIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/huggingface.ts b/apps/sim/blocks/blocks/huggingface.ts index 25cbbea75d8..9333d0d5902 100644 --- a/apps/sim/blocks/blocks/huggingface.ts +++ b/apps/sim/blocks/blocks/huggingface.ts @@ -13,7 +13,7 @@ export const HuggingFaceBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/huggingface', category: 'tools', integrationType: IntegrationType.AI, - tags: ['llm', 'api'], + tags: ['llm', 'agentic'], bgColor: '#0B0F19', icon: HuggingFaceIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/hunter.ts b/apps/sim/blocks/blocks/hunter.ts index 991c1f3f556..614ab7dd391 100644 --- a/apps/sim/blocks/blocks/hunter.ts +++ b/apps/sim/blocks/blocks/hunter.ts @@ -12,7 +12,7 @@ export const HunterBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/hunter', category: 'tools', integrationType: IntegrationType.SalesIntelligence, - tags: ['enrichment', 'api'], + tags: ['enrichment', 'sales-engagement'], bgColor: '#E0E0E0', icon: HunterIOIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/image_generator.ts b/apps/sim/blocks/blocks/image_generator.ts index 1cae0192236..517e25bf7a7 100644 --- a/apps/sim/blocks/blocks/image_generator.ts +++ b/apps/sim/blocks/blocks/image_generator.ts @@ -12,7 +12,7 @@ export const ImageGeneratorBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/image_generator', category: 'tools', integrationType: IntegrationType.AI, - tags: ['image-generation'], + tags: ['image-generation', 'llm'], bgColor: '#4D5FFF', icon: ImageIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/imap.ts b/apps/sim/blocks/blocks/imap.ts index 364d4054cdd..8217e372de6 100644 --- a/apps/sim/blocks/blocks/imap.ts +++ b/apps/sim/blocks/blocks/imap.ts @@ -11,7 +11,7 @@ export const ImapBlock: BlockConfig = { 'Connect to any email server via IMAP protocol to trigger workflows when new emails are received. Supports Gmail, Outlook, Yahoo, and any other IMAP-compatible email provider.', category: 'triggers', integrationType: IntegrationType.Email, - tags: ['api'], + tags: ['messaging', 'automation'], bgColor: '#6366F1', icon: MailServerIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/incidentio.ts b/apps/sim/blocks/blocks/incidentio.ts index 2e726b9ed2c..ad8c19949d6 100644 --- a/apps/sim/blocks/blocks/incidentio.ts +++ b/apps/sim/blocks/blocks/incidentio.ts @@ -13,7 +13,7 @@ export const IncidentioBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/incidentio', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['incident-management', 'api'], + tags: ['incident-management', 'monitoring'], bgColor: '#E0E0E0', icon: IncidentioIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/infisical.ts b/apps/sim/blocks/blocks/infisical.ts index 1021163ab2c..94909db1b6e 100644 --- a/apps/sim/blocks/blocks/infisical.ts +++ b/apps/sim/blocks/blocks/infisical.ts @@ -12,7 +12,7 @@ export const InfisicalBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/infisical', category: 'tools', integrationType: IntegrationType.Security, - tags: ['api'], + tags: ['secrets-management'], bgColor: '#F7FE62', icon: InfisicalIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/intercom.ts b/apps/sim/blocks/blocks/intercom.ts index 8c0dc6a7f8e..21b8124324a 100644 --- a/apps/sim/blocks/blocks/intercom.ts +++ b/apps/sim/blocks/blocks/intercom.ts @@ -14,7 +14,7 @@ export const IntercomBlock: BlockConfig = { authMode: AuthMode.ApiKey, category: 'tools', integrationType: IntegrationType.CustomerSupport, - tags: ['customer-support', 'oauth'], + tags: ['customer-support', 'messaging'], bgColor: '#E0E0E0', icon: IntercomIcon, subBlocks: [ @@ -1407,7 +1407,7 @@ export const IntercomV2Block: BlockConfig = { type: 'intercom_v2', name: 'Intercom', integrationType: IntegrationType.CustomerSupport, - tags: ['customer-support', 'oauth'], + tags: ['customer-support', 'messaging'], hideFromToolbar: false, tools: { ...IntercomBlock.tools, diff --git a/apps/sim/blocks/blocks/jina.ts b/apps/sim/blocks/blocks/jina.ts index 11eb0a886cb..2a71e96eaa7 100644 --- a/apps/sim/blocks/blocks/jina.ts +++ b/apps/sim/blocks/blocks/jina.ts @@ -12,7 +12,7 @@ export const JinaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/jina', category: 'tools', integrationType: IntegrationType.Search, - tags: ['web-scraping', 'api'], + tags: ['web-scraping', 'knowledge-base'], bgColor: '#333333', icon: JinaAIIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/jira.ts b/apps/sim/blocks/blocks/jira.ts index 478eee1aa3e..092677ab904 100644 --- a/apps/sim/blocks/blocks/jira.ts +++ b/apps/sim/blocks/blocks/jira.ts @@ -17,7 +17,7 @@ export const JiraBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/jira', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['project-management', 'oauth'], + tags: ['project-management', 'ticketing'], bgColor: '#E0E0E0', icon: JiraIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/jira_service_management.ts b/apps/sim/blocks/blocks/jira_service_management.ts index a0b13728261..d78251cb3c0 100644 --- a/apps/sim/blocks/blocks/jira_service_management.ts +++ b/apps/sim/blocks/blocks/jira_service_management.ts @@ -14,7 +14,7 @@ export const JiraServiceManagementBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/jira-service-management', category: 'tools', integrationType: IntegrationType.CustomerSupport, - tags: ['customer-support', 'oauth'], + tags: ['customer-support', 'ticketing', 'incident-management'], bgColor: '#E0E0E0', icon: JiraServiceManagementIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/kalshi.ts b/apps/sim/blocks/blocks/kalshi.ts index be42732e533..8293dbba418 100644 --- a/apps/sim/blocks/blocks/kalshi.ts +++ b/apps/sim/blocks/blocks/kalshi.ts @@ -13,7 +13,7 @@ export const KalshiBlock: BlockConfig = { authMode: AuthMode.ApiKey, category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['prediction-markets', 'api'], + tags: ['prediction-markets', 'data-analytics'], hideFromToolbar: true, bgColor: '#09C285', icon: KalshiIcon, @@ -710,7 +710,7 @@ export const KalshiV2Block: BlockConfig = { longDescription: 'Integrate Kalshi prediction markets into the workflow. Can get markets, market, events, event, balance, positions, orders, orderbook, trades, candlesticks, fills, series, exchange status, and place/cancel/amend trades.', integrationType: IntegrationType.Analytics, - tags: ['prediction-markets', 'api'], + tags: ['prediction-markets', 'data-analytics'], hideFromToolbar: false, tools: { ...KalshiBlock.tools, diff --git a/apps/sim/blocks/blocks/langsmith.ts b/apps/sim/blocks/blocks/langsmith.ts index 5a5879024c3..96773f8fc7b 100644 --- a/apps/sim/blocks/blocks/langsmith.ts +++ b/apps/sim/blocks/blocks/langsmith.ts @@ -11,7 +11,7 @@ export const LangsmithBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/langsmith', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['monitoring', 'api'], + tags: ['monitoring', 'llm', 'data-analytics'], bgColor: '#181C1E', icon: LangsmithIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/lemlist.ts b/apps/sim/blocks/blocks/lemlist.ts index e16467a2211..c917e95e51d 100644 --- a/apps/sim/blocks/blocks/lemlist.ts +++ b/apps/sim/blocks/blocks/lemlist.ts @@ -13,7 +13,7 @@ export const LemlistBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/lemlist', category: 'tools', integrationType: IntegrationType.Email, - tags: ['marketing', 'api'], + tags: ['sales-engagement', 'email-marketing', 'automation'], bgColor: '#316BFF', icon: LemlistIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/linear.ts b/apps/sim/blocks/blocks/linear.ts index ccc9a1d45b4..504cb6b5ffa 100644 --- a/apps/sim/blocks/blocks/linear.ts +++ b/apps/sim/blocks/blocks/linear.ts @@ -17,7 +17,7 @@ export const LinearBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/linear', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['project-management', 'oauth'], + tags: ['project-management', 'ticketing'], icon: LinearIcon, bgColor: '#5E6AD2', subBlocks: [ diff --git a/apps/sim/blocks/blocks/linkedin.ts b/apps/sim/blocks/blocks/linkedin.ts index d9d302fe5d5..3098124b7b7 100644 --- a/apps/sim/blocks/blocks/linkedin.ts +++ b/apps/sim/blocks/blocks/linkedin.ts @@ -14,7 +14,7 @@ export const LinkedInBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/linkedin', category: 'tools', integrationType: IntegrationType.Social, - tags: ['oauth', 'marketing'], + tags: ['marketing', 'sales-engagement', 'enrichment'], bgColor: '#0072B1', icon: LinkedInIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/linkup.ts b/apps/sim/blocks/blocks/linkup.ts index 0e501da0e05..b1aead7b07f 100644 --- a/apps/sim/blocks/blocks/linkup.ts +++ b/apps/sim/blocks/blocks/linkup.ts @@ -11,7 +11,7 @@ export const LinkupBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/linkup', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['web-scraping', 'enrichment'], bgColor: '#D6D3C7', icon: LinkupIcon, diff --git a/apps/sim/blocks/blocks/loops.ts b/apps/sim/blocks/blocks/loops.ts index a36b8512752..ec7b9d9b53d 100644 --- a/apps/sim/blocks/blocks/loops.ts +++ b/apps/sim/blocks/blocks/loops.ts @@ -13,7 +13,7 @@ export const LoopsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/loops', category: 'tools', integrationType: IntegrationType.Email, - tags: ['marketing', 'api'], + tags: ['email-marketing', 'marketing', 'automation'], bgColor: '#FAFAF9', icon: LoopsIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/luma.ts b/apps/sim/blocks/blocks/luma.ts index 1254a4411d6..f7fc2d615b9 100644 --- a/apps/sim/blocks/blocks/luma.ts +++ b/apps/sim/blocks/blocks/luma.ts @@ -10,7 +10,7 @@ export const LumaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/luma', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['calendar', 'api'], + tags: ['events', 'calendar', 'scheduling'], bgColor: '#FFFFFF', icon: LumaIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/mailchimp.ts b/apps/sim/blocks/blocks/mailchimp.ts index e18385b28a9..0834f9bb2fe 100644 --- a/apps/sim/blocks/blocks/mailchimp.ts +++ b/apps/sim/blocks/blocks/mailchimp.ts @@ -12,7 +12,7 @@ export const MailchimpBlock: BlockConfig = { authMode: AuthMode.ApiKey, category: 'tools', integrationType: IntegrationType.Email, - tags: ['marketing', 'oauth'], + tags: ['email-marketing', 'marketing', 'automation'], bgColor: '#FFE01B', icon: MailchimpIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/mailgun.ts b/apps/sim/blocks/blocks/mailgun.ts index 9b21260cd6a..5d06a21c218 100644 --- a/apps/sim/blocks/blocks/mailgun.ts +++ b/apps/sim/blocks/blocks/mailgun.ts @@ -12,7 +12,7 @@ export const MailgunBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/mailgun', category: 'tools', integrationType: IntegrationType.Email, - tags: ['api'], + tags: ['messaging', 'email-marketing'], bgColor: '#E0E0E0', icon: MailgunIcon, diff --git a/apps/sim/blocks/blocks/mcp.ts b/apps/sim/blocks/blocks/mcp.ts index 40e0d65b409..0b5d4da8db6 100644 --- a/apps/sim/blocks/blocks/mcp.ts +++ b/apps/sim/blocks/blocks/mcp.ts @@ -17,7 +17,7 @@ export const McpBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/mcp', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api', 'automation'], + tags: ['agentic', 'automation', 'llm'], bgColor: '#181C1E', icon: McpIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/mem0.ts b/apps/sim/blocks/blocks/mem0.ts index 615f9b92e7a..8904e9593e2 100644 --- a/apps/sim/blocks/blocks/mem0.ts +++ b/apps/sim/blocks/blocks/mem0.ts @@ -12,7 +12,7 @@ export const Mem0Block: BlockConfig = { icon: Mem0Icon, category: 'tools', integrationType: IntegrationType.AI, - tags: ['llm', 'api'], + tags: ['llm', 'knowledge-base', 'agentic'], docsLink: 'https://docs.sim.ai/tools/mem0', subBlocks: [ { diff --git a/apps/sim/blocks/blocks/microsoft_ad.ts b/apps/sim/blocks/blocks/microsoft_ad.ts index 183141c92d2..bc6d0cf34e3 100644 --- a/apps/sim/blocks/blocks/microsoft_ad.ts +++ b/apps/sim/blocks/blocks/microsoft_ad.ts @@ -13,7 +13,7 @@ export const MicrosoftAdBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/microsoft_ad', category: 'tools', integrationType: IntegrationType.Security, - tags: ['oauth', 'microsoft-365'], + tags: ['identity', 'microsoft-365'], bgColor: '#0078D4', icon: AzureIcon, authMode: AuthMode.OAuth, diff --git a/apps/sim/blocks/blocks/microsoft_dataverse.ts b/apps/sim/blocks/blocks/microsoft_dataverse.ts index be33911974e..336b76e5df7 100644 --- a/apps/sim/blocks/blocks/microsoft_dataverse.ts +++ b/apps/sim/blocks/blocks/microsoft_dataverse.ts @@ -15,7 +15,7 @@ export const MicrosoftDataverseBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/microsoft_dataverse', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['oauth', 'microsoft-365'], + tags: ['microsoft-365', 'data-warehouse', 'cloud'], bgColor: '#E0E0E0', icon: MicrosoftDataverseIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/microsoft_excel.ts b/apps/sim/blocks/blocks/microsoft_excel.ts index 8f46d240066..4b04368742c 100644 --- a/apps/sim/blocks/blocks/microsoft_excel.ts +++ b/apps/sim/blocks/blocks/microsoft_excel.ts @@ -19,7 +19,7 @@ export const MicrosoftExcelBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/microsoft_excel', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'microsoft-365'], + tags: ['spreadsheet', 'microsoft-365'], bgColor: '#E0E0E0', icon: MicrosoftExcelIcon, subBlocks: [ @@ -341,7 +341,7 @@ export const MicrosoftExcelV2Block: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/microsoft_excel', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'microsoft-365'], + tags: ['spreadsheet', 'microsoft-365'], bgColor: '#E0E0E0', icon: MicrosoftExcelIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/microsoft_planner.ts b/apps/sim/blocks/blocks/microsoft_planner.ts index 0b3e745e322..cfa7c8bf08b 100644 --- a/apps/sim/blocks/blocks/microsoft_planner.ts +++ b/apps/sim/blocks/blocks/microsoft_planner.ts @@ -36,7 +36,7 @@ export const MicrosoftPlannerBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/microsoft_planner', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['project-management', 'oauth', 'microsoft-365'], + tags: ['project-management', 'microsoft-365', 'ticketing'], bgColor: '#E0E0E0', icon: MicrosoftPlannerIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/microsoft_teams.ts b/apps/sim/blocks/blocks/microsoft_teams.ts index f113b3d0115..65869e81a9a 100644 --- a/apps/sim/blocks/blocks/microsoft_teams.ts +++ b/apps/sim/blocks/blocks/microsoft_teams.ts @@ -16,7 +16,7 @@ export const MicrosoftTeamsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/microsoft_teams', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['oauth', 'microsoft-365'], + tags: ['messaging', 'microsoft-365'], triggerAllowed: true, bgColor: '#E0E0E0', icon: MicrosoftTeamsIcon, diff --git a/apps/sim/blocks/blocks/mongodb.ts b/apps/sim/blocks/blocks/mongodb.ts index 50dd5d10940..cf1398f295e 100644 --- a/apps/sim/blocks/blocks/mongodb.ts +++ b/apps/sim/blocks/blocks/mongodb.ts @@ -12,7 +12,7 @@ export const MongoDBBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/mysql', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['api'], + tags: ['data-warehouse', 'data-analytics'], bgColor: '#E0E0E0', icon: MySQLIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/neo4j.ts b/apps/sim/blocks/blocks/neo4j.ts index 722ccbe3bbd..df502c237ce 100644 --- a/apps/sim/blocks/blocks/neo4j.ts +++ b/apps/sim/blocks/blocks/neo4j.ts @@ -12,7 +12,7 @@ export const Neo4jBlock: BlockConfig = docsLink: 'https://docs.sim.ai/tools/neo4j', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['api'], + tags: ['data-warehouse', 'data-analytics'], bgColor: '#FFFFFF', icon: Neo4jIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/notion.ts b/apps/sim/blocks/blocks/notion.ts index 5740afb8a13..82fae4c2c3f 100644 --- a/apps/sim/blocks/blocks/notion.ts +++ b/apps/sim/blocks/blocks/notion.ts @@ -16,7 +16,7 @@ export const NotionBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/notion', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth'], + tags: ['note-taking', 'knowledge-base', 'content-management'], bgColor: '#181C1E', icon: NotionIcon, subBlocks: [ @@ -432,7 +432,7 @@ export const NotionV2Block: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/notion', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth'], + tags: ['note-taking', 'knowledge-base', 'content-management'], bgColor: '#181C1E', icon: NotionIcon, hideFromToolbar: false, diff --git a/apps/sim/blocks/blocks/obsidian.ts b/apps/sim/blocks/blocks/obsidian.ts index 0d973281b5c..57711412610 100644 --- a/apps/sim/blocks/blocks/obsidian.ts +++ b/apps/sim/blocks/blocks/obsidian.ts @@ -11,7 +11,7 @@ export const ObsidianBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/obsidian', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['api'], + tags: ['note-taking', 'knowledge-base'], bgColor: '#0F0F0F', icon: ObsidianIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/okta.ts b/apps/sim/blocks/blocks/okta.ts index d2404dca507..8961846d606 100644 --- a/apps/sim/blocks/blocks/okta.ts +++ b/apps/sim/blocks/blocks/okta.ts @@ -12,7 +12,7 @@ export const OktaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/okta', category: 'tools', integrationType: IntegrationType.Security, - tags: ['oauth'], + tags: ['identity', 'automation'], bgColor: '#191919', icon: OktaIcon, diff --git a/apps/sim/blocks/blocks/onedrive.ts b/apps/sim/blocks/blocks/onedrive.ts index 805cbcd283b..4ecc27b97aa 100644 --- a/apps/sim/blocks/blocks/onedrive.ts +++ b/apps/sim/blocks/blocks/onedrive.ts @@ -19,7 +19,7 @@ export const OneDriveBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/onedrive', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['oauth', 'microsoft-365', 'cloud'], + tags: ['microsoft-365', 'cloud', 'document-processing'], bgColor: '#E0E0E0', icon: MicrosoftOneDriveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/onepassword.ts b/apps/sim/blocks/blocks/onepassword.ts index b6e53a4b8b6..80e5b4adef1 100644 --- a/apps/sim/blocks/blocks/onepassword.ts +++ b/apps/sim/blocks/blocks/onepassword.ts @@ -10,7 +10,7 @@ export const OnePasswordBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/onepassword', category: 'tools', integrationType: IntegrationType.Security, - tags: ['api'], + tags: ['secrets-management', 'identity'], bgColor: '#E0E0E0', icon: OnePasswordIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/openai.ts b/apps/sim/blocks/blocks/openai.ts index 4c940c68656..5069ab13864 100644 --- a/apps/sim/blocks/blocks/openai.ts +++ b/apps/sim/blocks/blocks/openai.ts @@ -10,7 +10,7 @@ export const OpenAIBlock: BlockConfig = { longDescription: 'Integrate Embeddings into the workflow. Can generate embeddings from text.', category: 'tools', integrationType: IntegrationType.AI, - tags: ['llm', 'api'], + tags: ['llm', 'vector-search'], docsLink: 'https://docs.sim.ai/tools/openai', bgColor: '#10a37f', icon: OpenAIIcon, diff --git a/apps/sim/blocks/blocks/outlook.ts b/apps/sim/blocks/blocks/outlook.ts index 6b2550b4918..ead70e9e7c4 100644 --- a/apps/sim/blocks/blocks/outlook.ts +++ b/apps/sim/blocks/blocks/outlook.ts @@ -16,7 +16,7 @@ export const OutlookBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/outlook', category: 'tools', integrationType: IntegrationType.Email, - tags: ['oauth', 'microsoft-365'], + tags: ['microsoft-365', 'messaging', 'automation'], triggerAllowed: true, bgColor: '#E0E0E0', icon: OutlookIcon, diff --git a/apps/sim/blocks/blocks/pagerduty.ts b/apps/sim/blocks/blocks/pagerduty.ts index 91cf8befa53..5cb6a4e88cc 100644 --- a/apps/sim/blocks/blocks/pagerduty.ts +++ b/apps/sim/blocks/blocks/pagerduty.ts @@ -10,7 +10,7 @@ export const PagerDutyBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/pagerduty', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['incident-management', 'oauth'], + tags: ['incident-management', 'monitoring'], bgColor: '#06AC38', icon: PagerDutyIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/parallel.ts b/apps/sim/blocks/blocks/parallel.ts index f1a4caf30ac..b57dac65632 100644 --- a/apps/sim/blocks/blocks/parallel.ts +++ b/apps/sim/blocks/blocks/parallel.ts @@ -12,7 +12,7 @@ export const ParallelBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/parallel-ai', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['web-scraping', 'llm', 'agentic'], bgColor: '#E0E0E0', icon: ParallelIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/perplexity.ts b/apps/sim/blocks/blocks/perplexity.ts index be869557f07..7a1050e94b0 100644 --- a/apps/sim/blocks/blocks/perplexity.ts +++ b/apps/sim/blocks/blocks/perplexity.ts @@ -14,7 +14,7 @@ export const PerplexityBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/perplexity', category: 'tools', integrationType: IntegrationType.AI, - tags: ['llm', 'api'], + tags: ['llm', 'web-scraping', 'agentic'], bgColor: '#20808D', // Perplexity turquoise color icon: PerplexityIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/pinecone.ts b/apps/sim/blocks/blocks/pinecone.ts index 592280e22b0..59459a80413 100644 --- a/apps/sim/blocks/blocks/pinecone.ts +++ b/apps/sim/blocks/blocks/pinecone.ts @@ -13,7 +13,7 @@ export const PineconeBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/pinecone', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['vector-search', 'api'], + tags: ['vector-search', 'knowledge-base'], bgColor: '#0D1117', icon: PineconeIcon, diff --git a/apps/sim/blocks/blocks/pipedrive.ts b/apps/sim/blocks/blocks/pipedrive.ts index 8875f15c238..4d7b8606663 100644 --- a/apps/sim/blocks/blocks/pipedrive.ts +++ b/apps/sim/blocks/blocks/pipedrive.ts @@ -14,7 +14,7 @@ export const PipedriveBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/pipedrive', category: 'tools', integrationType: IntegrationType.CRM, - tags: ['oauth'], + tags: ['sales-engagement', 'project-management'], bgColor: '#2E6936', icon: PipedriveIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/polymarket.ts b/apps/sim/blocks/blocks/polymarket.ts index 139ddd04b26..62eb55ce2fe 100644 --- a/apps/sim/blocks/blocks/polymarket.ts +++ b/apps/sim/blocks/blocks/polymarket.ts @@ -11,7 +11,7 @@ export const PolymarketBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/polymarket', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['prediction-markets', 'api'], + tags: ['prediction-markets', 'data-analytics'], bgColor: '#4C82FB', icon: PolymarketIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/postgresql.ts b/apps/sim/blocks/blocks/postgresql.ts index f2f8b6d088f..53bf028ed6c 100644 --- a/apps/sim/blocks/blocks/postgresql.ts +++ b/apps/sim/blocks/blocks/postgresql.ts @@ -12,7 +12,7 @@ export const PostgreSQLBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/postgresql', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['api'], + tags: ['data-warehouse', 'data-analytics'], bgColor: '#336791', icon: PostgresIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/posthog.ts b/apps/sim/blocks/blocks/posthog.ts index 7d51ad591bb..9e4f147a9ca 100644 --- a/apps/sim/blocks/blocks/posthog.ts +++ b/apps/sim/blocks/blocks/posthog.ts @@ -13,7 +13,7 @@ export const PostHogBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/posthog', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['monitoring', 'api'], + tags: ['data-analytics', 'monitoring'], bgColor: '#E0E0E0', icon: PosthogIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/qdrant.ts b/apps/sim/blocks/blocks/qdrant.ts index 427384e8fb0..71ec14c2168 100644 --- a/apps/sim/blocks/blocks/qdrant.ts +++ b/apps/sim/blocks/blocks/qdrant.ts @@ -12,7 +12,7 @@ export const QdrantBlock: BlockConfig = { docsLink: 'https://qdrant.tech/documentation/', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['vector-search', 'api'], + tags: ['vector-search', 'knowledge-base'], bgColor: '#1A223F', icon: QdrantIcon, diff --git a/apps/sim/blocks/blocks/rds.ts b/apps/sim/blocks/blocks/rds.ts index d8bdb152eb7..71ac6822e85 100644 --- a/apps/sim/blocks/blocks/rds.ts +++ b/apps/sim/blocks/blocks/rds.ts @@ -12,7 +12,7 @@ export const RDSBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/rds', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['cloud'], + tags: ['cloud', 'data-warehouse'], bgColor: 'linear-gradient(45deg, #2E27AD 0%, #527FFF 100%)', icon: RDSIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/reddit.ts b/apps/sim/blocks/blocks/reddit.ts index f8762ceb644..a9e44008065 100644 --- a/apps/sim/blocks/blocks/reddit.ts +++ b/apps/sim/blocks/blocks/reddit.ts @@ -14,7 +14,7 @@ export const RedditBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/reddit', category: 'tools', integrationType: IntegrationType.Social, - tags: ['api'], + tags: ['content-management', 'web-scraping'], bgColor: '#FF5700', icon: RedditIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/redis.ts b/apps/sim/blocks/blocks/redis.ts index ababed4936a..8149fb4c6da 100644 --- a/apps/sim/blocks/blocks/redis.ts +++ b/apps/sim/blocks/blocks/redis.ts @@ -82,7 +82,7 @@ export const RedisBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/redis', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['api'], + tags: ['cloud', 'data-warehouse'], bgColor: '#FF4438', authMode: AuthMode.ApiKey, icon: RedisIcon, diff --git a/apps/sim/blocks/blocks/resend.ts b/apps/sim/blocks/blocks/resend.ts index 6fc7472ad19..db3b77506a9 100644 --- a/apps/sim/blocks/blocks/resend.ts +++ b/apps/sim/blocks/blocks/resend.ts @@ -11,7 +11,7 @@ export const ResendBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/resend', category: 'tools', integrationType: IntegrationType.Email, - tags: ['api'], + tags: ['email-marketing', 'messaging'], bgColor: '#181C1E', icon: ResendIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/revenuecat.ts b/apps/sim/blocks/blocks/revenuecat.ts index 0d643436501..c99b5cf6917 100644 --- a/apps/sim/blocks/blocks/revenuecat.ts +++ b/apps/sim/blocks/blocks/revenuecat.ts @@ -13,7 +13,7 @@ export const RevenueCatBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/revenuecat', category: 'tools', integrationType: IntegrationType.Ecommerce, - tags: ['payments', 'api'], + tags: ['payments', 'subscriptions'], bgColor: '#F25A5A', icon: RevenueCatIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/rss.ts b/apps/sim/blocks/blocks/rss.ts index d9eadc19a19..8f1214e4837 100644 --- a/apps/sim/blocks/blocks/rss.ts +++ b/apps/sim/blocks/blocks/rss.ts @@ -11,7 +11,7 @@ export const RssBlock: BlockConfig = { 'Subscribe to any RSS or Atom feed and automatically trigger your workflow when new content is published. Perfect for monitoring blogs, news sites, podcasts, and any content that publishes an RSS feed.', category: 'triggers', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['content-management', 'automation'], bgColor: '#F97316', icon: RssIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/s3.ts b/apps/sim/blocks/blocks/s3.ts index b53efdc4c09..5e93cdef6e9 100644 --- a/apps/sim/blocks/blocks/s3.ts +++ b/apps/sim/blocks/blocks/s3.ts @@ -14,7 +14,7 @@ export const S3Block: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/s3', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['cloud'], + tags: ['cloud', 'data-warehouse'], bgColor: 'linear-gradient(45deg, #1B660F 0%, #6CAE3E 100%)', icon: S3Icon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/salesforce.ts b/apps/sim/blocks/blocks/salesforce.ts index 3c0c4e7b4fa..53a9d67adae 100644 --- a/apps/sim/blocks/blocks/salesforce.ts +++ b/apps/sim/blocks/blocks/salesforce.ts @@ -14,7 +14,7 @@ export const SalesforceBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/salesforce', category: 'tools', integrationType: IntegrationType.CRM, - tags: ['oauth'], + tags: ['sales-engagement', 'customer-support'], bgColor: '#E0E0E0', icon: SalesforceIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/search.ts b/apps/sim/blocks/blocks/search.ts index 890661242c4..70f82ab211b 100644 --- a/apps/sim/blocks/blocks/search.ts +++ b/apps/sim/blocks/blocks/search.ts @@ -11,7 +11,7 @@ export const SearchBlock: BlockConfig = { icon: SearchIcon, category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['web-scraping', 'seo'], docsLink: 'https://docs.sim.ai/tools/search', subBlocks: [ { diff --git a/apps/sim/blocks/blocks/sendgrid.ts b/apps/sim/blocks/blocks/sendgrid.ts index d5484a7c951..37c151702b0 100644 --- a/apps/sim/blocks/blocks/sendgrid.ts +++ b/apps/sim/blocks/blocks/sendgrid.ts @@ -13,7 +13,7 @@ export const SendGridBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/sendgrid', category: 'tools', integrationType: IntegrationType.Email, - tags: ['api', 'marketing'], + tags: ['email-marketing', 'messaging'], bgColor: '#1A82E2', icon: SendgridIcon, diff --git a/apps/sim/blocks/blocks/sentry.ts b/apps/sim/blocks/blocks/sentry.ts index 1b51a27aeeb..19d3b5be4cf 100644 --- a/apps/sim/blocks/blocks/sentry.ts +++ b/apps/sim/blocks/blocks/sentry.ts @@ -13,7 +13,7 @@ export const SentryBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/sentry', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['monitoring', 'api'], + tags: ['error-tracking', 'monitoring'], bgColor: '#E0E0E0', icon: SentryIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/serper.ts b/apps/sim/blocks/blocks/serper.ts index b7243b47cdf..b857dbe58a5 100644 --- a/apps/sim/blocks/blocks/serper.ts +++ b/apps/sim/blocks/blocks/serper.ts @@ -12,7 +12,7 @@ export const SerperBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/serper', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['web-scraping', 'seo'], bgColor: '#2B3543', icon: SerperIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/servicenow.ts b/apps/sim/blocks/blocks/servicenow.ts index bddafd3a13e..14376584725 100644 --- a/apps/sim/blocks/blocks/servicenow.ts +++ b/apps/sim/blocks/blocks/servicenow.ts @@ -12,7 +12,7 @@ export const ServiceNowBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/servicenow', category: 'tools', integrationType: IntegrationType.CustomerSupport, - tags: ['customer-support', 'oauth'], + tags: ['customer-support', 'ticketing', 'incident-management'], bgColor: '#032D42', icon: ServiceNowIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/sftp.ts b/apps/sim/blocks/blocks/sftp.ts index d971819a430..18b3bd43f11 100644 --- a/apps/sim/blocks/blocks/sftp.ts +++ b/apps/sim/blocks/blocks/sftp.ts @@ -13,7 +13,7 @@ export const SftpBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/sftp', category: 'tools', integrationType: IntegrationType.FileStorage, - tags: ['api'], + tags: ['cloud', 'automation'], bgColor: '#2D3748', icon: SftpIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/sharepoint.ts b/apps/sim/blocks/blocks/sharepoint.ts index 012e9bbbe92..8813654588d 100644 --- a/apps/sim/blocks/blocks/sharepoint.ts +++ b/apps/sim/blocks/blocks/sharepoint.ts @@ -18,7 +18,7 @@ export const SharepointBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/sharepoint', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth', 'microsoft-365'], + tags: ['microsoft-365', 'content-management', 'document-processing'], bgColor: '#E0E0E0', icon: MicrosoftSharepointIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/shopify.ts b/apps/sim/blocks/blocks/shopify.ts index a2bfd69b48d..d21d414c8c5 100644 --- a/apps/sim/blocks/blocks/shopify.ts +++ b/apps/sim/blocks/blocks/shopify.ts @@ -19,7 +19,7 @@ export const ShopifyBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/shopify', category: 'tools', integrationType: IntegrationType.Ecommerce, - tags: ['oauth'], + tags: ['payments', 'subscriptions'], icon: ShopifyIcon, bgColor: '#FFFFFF', subBlocks: [ diff --git a/apps/sim/blocks/blocks/similarweb.ts b/apps/sim/blocks/blocks/similarweb.ts index ba515964d89..a2af1b178f1 100644 --- a/apps/sim/blocks/blocks/similarweb.ts +++ b/apps/sim/blocks/blocks/similarweb.ts @@ -11,7 +11,7 @@ export const SimilarwebBlock: BlockConfig = { docsLink: 'https://developers.similarweb.com/docs/similarweb-web-traffic-api', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['marketing', 'api'], + tags: ['marketing', 'data-analytics', 'seo'], bgColor: '#000922', icon: SimilarwebIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/slack.ts b/apps/sim/blocks/blocks/slack.ts index f07fad1d086..23edef24d9f 100644 --- a/apps/sim/blocks/blocks/slack.ts +++ b/apps/sim/blocks/blocks/slack.ts @@ -17,7 +17,7 @@ export const SlackBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/slack', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['oauth', 'webhooks'], + tags: ['messaging', 'webhooks', 'automation'], bgColor: '#611f69', icon: SlackIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/smtp.ts b/apps/sim/blocks/blocks/smtp.ts index ef06c2a2e09..43aeb757135 100644 --- a/apps/sim/blocks/blocks/smtp.ts +++ b/apps/sim/blocks/blocks/smtp.ts @@ -13,7 +13,7 @@ export const SmtpBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/smtp', category: 'tools', integrationType: IntegrationType.Email, - tags: ['api'], + tags: ['email-marketing', 'messaging'], bgColor: '#2D3748', icon: SmtpIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/spotify.ts b/apps/sim/blocks/blocks/spotify.ts index 07babe1c918..2c4de8e7f22 100644 --- a/apps/sim/blocks/blocks/spotify.ts +++ b/apps/sim/blocks/blocks/spotify.ts @@ -14,7 +14,7 @@ export const SpotifyBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/spotify', category: 'tools', integrationType: IntegrationType.Media, - tags: ['oauth'], + tags: ['content-management', 'automation'], hideFromToolbar: true, bgColor: '#000000', icon: SpotifyIcon, diff --git a/apps/sim/blocks/blocks/sqs.ts b/apps/sim/blocks/blocks/sqs.ts index eead6205871..cc65c3f038a 100644 --- a/apps/sim/blocks/blocks/sqs.ts +++ b/apps/sim/blocks/blocks/sqs.ts @@ -11,7 +11,7 @@ export const SQSBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/sqs', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['cloud'], + tags: ['cloud', 'messaging', 'automation'], bgColor: 'linear-gradient(45deg, #2E27AD 0%, #527FFF 100%)', icon: SQSIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/ssh.ts b/apps/sim/blocks/blocks/ssh.ts index f433286ca0a..6e80f4a88ca 100644 --- a/apps/sim/blocks/blocks/ssh.ts +++ b/apps/sim/blocks/blocks/ssh.ts @@ -13,7 +13,7 @@ export const SSHBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/ssh', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['api'], + tags: ['cloud', 'automation'], bgColor: '#000000', icon: SshIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/stagehand.ts b/apps/sim/blocks/blocks/stagehand.ts index e9c70ccb363..118a2104857 100644 --- a/apps/sim/blocks/blocks/stagehand.ts +++ b/apps/sim/blocks/blocks/stagehand.ts @@ -36,7 +36,7 @@ export const StagehandBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/stagehand', category: 'tools', integrationType: IntegrationType.Automation, - tags: ['web-scraping', 'automation'], + tags: ['web-scraping', 'automation', 'agentic'], bgColor: '#FFC83C', icon: StagehandIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/stripe.ts b/apps/sim/blocks/blocks/stripe.ts index 16d98c6a405..1ffd43ab495 100644 --- a/apps/sim/blocks/blocks/stripe.ts +++ b/apps/sim/blocks/blocks/stripe.ts @@ -14,7 +14,7 @@ export const StripeBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/stripe', category: 'tools', integrationType: IntegrationType.Ecommerce, - tags: ['payments', 'api'], + tags: ['payments', 'subscriptions', 'webhooks'], bgColor: '#635BFF', icon: StripeIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/stt.ts b/apps/sim/blocks/blocks/stt.ts index 3f0a7faebe4..1f6a3820fcd 100644 --- a/apps/sim/blocks/blocks/stt.ts +++ b/apps/sim/blocks/blocks/stt.ts @@ -14,7 +14,7 @@ export const SttBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/stt', category: 'tools', integrationType: IntegrationType.AI, - tags: ['speech-to-text'], + tags: ['speech-to-text', 'document-processing'], bgColor: '#181C1E', icon: STTIcon, diff --git a/apps/sim/blocks/blocks/supabase.ts b/apps/sim/blocks/blocks/supabase.ts index 91659d94548..2ef6b973ad7 100644 --- a/apps/sim/blocks/blocks/supabase.ts +++ b/apps/sim/blocks/blocks/supabase.ts @@ -16,7 +16,7 @@ export const SupabaseBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/supabase', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['api'], + tags: ['cloud', 'data-warehouse', 'vector-search'], bgColor: '#1C1C1C', icon: SupabaseIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/tavily.ts b/apps/sim/blocks/blocks/tavily.ts index cab583dd912..549a67c3db9 100644 --- a/apps/sim/blocks/blocks/tavily.ts +++ b/apps/sim/blocks/blocks/tavily.ts @@ -12,7 +12,7 @@ export const TavilyBlock: BlockConfig = { 'Integrate Tavily into the workflow. Can search the web and extract content from specific URLs. Requires API Key.', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['web-scraping', 'enrichment'], docsLink: 'https://docs.sim.ai/tools/tavily', bgColor: '#0066FF', icon: TavilyIcon, diff --git a/apps/sim/blocks/blocks/telegram.ts b/apps/sim/blocks/blocks/telegram.ts index e2c89a7cc1a..8e720f2c68f 100644 --- a/apps/sim/blocks/blocks/telegram.ts +++ b/apps/sim/blocks/blocks/telegram.ts @@ -15,7 +15,7 @@ export const TelegramBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/telegram', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['api'], + tags: ['messaging', 'webhooks', 'automation'], bgColor: '#E0E0E0', icon: TelegramIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/tinybird.ts b/apps/sim/blocks/blocks/tinybird.ts index 0f990ab5b66..e1b1e08d4da 100644 --- a/apps/sim/blocks/blocks/tinybird.ts +++ b/apps/sim/blocks/blocks/tinybird.ts @@ -13,7 +13,7 @@ export const TinybirdBlock: BlockConfig = { docsLink: 'https://www.tinybird.co/docs/api-reference', category: 'tools', integrationType: IntegrationType.Analytics, - tags: ['data-warehouse', 'api'], + tags: ['data-warehouse', 'data-analytics'], bgColor: '#2EF598', icon: TinybirdIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/translate.ts b/apps/sim/blocks/blocks/translate.ts index 1582e801291..b29079be194 100644 --- a/apps/sim/blocks/blocks/translate.ts +++ b/apps/sim/blocks/blocks/translate.ts @@ -18,7 +18,7 @@ export const TranslateBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/translate', category: 'tools', integrationType: IntegrationType.AI, - tags: ['api'], + tags: ['document-processing', 'llm'], bgColor: '#FF4B4B', icon: TranslateIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/trello.ts b/apps/sim/blocks/blocks/trello.ts index 0346b97e71b..c0d9511bfcc 100644 --- a/apps/sim/blocks/blocks/trello.ts +++ b/apps/sim/blocks/blocks/trello.ts @@ -22,7 +22,7 @@ export const TrelloBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/trello', category: 'tools', integrationType: IntegrationType.Productivity, - tags: ['project-management', 'oauth'], + tags: ['project-management', 'ticketing'], bgColor: '#0052CC', icon: TrelloIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/tts.ts b/apps/sim/blocks/blocks/tts.ts index 2affc930cc2..c6fea970e79 100644 --- a/apps/sim/blocks/blocks/tts.ts +++ b/apps/sim/blocks/blocks/tts.ts @@ -12,7 +12,7 @@ export const TtsBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/tts', category: 'tools', integrationType: IntegrationType.AI, - tags: ['text-to-speech'], + tags: ['text-to-speech', 'llm'], bgColor: '#181C1E', icon: TTSIcon, diff --git a/apps/sim/blocks/blocks/twilio.ts b/apps/sim/blocks/blocks/twilio.ts index 51bf7f45fed..2b620559977 100644 --- a/apps/sim/blocks/blocks/twilio.ts +++ b/apps/sim/blocks/blocks/twilio.ts @@ -11,7 +11,7 @@ export const TwilioSMSBlock: BlockConfig = { longDescription: 'Integrate Twilio into the workflow. Can send SMS messages.', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['api'], + tags: ['messaging', 'automation'], docsLink: 'https://docs.sim.ai/tools/twilio', bgColor: '#F22F46', // Twilio brand color icon: TwilioIcon, diff --git a/apps/sim/blocks/blocks/twilio_voice.ts b/apps/sim/blocks/blocks/twilio_voice.ts index 08dce875493..3a4c4b85bf0 100644 --- a/apps/sim/blocks/blocks/twilio_voice.ts +++ b/apps/sim/blocks/blocks/twilio_voice.ts @@ -13,7 +13,7 @@ export const TwilioVoiceBlock: BlockConfig = { 'Integrate Twilio Voice into the workflow. Make outbound calls and retrieve call recordings.', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['api'], + tags: ['messaging', 'text-to-speech'], docsLink: 'https://docs.sim.ai/tools/twilio_voice', bgColor: '#F22F46', // Twilio brand color icon: TwilioIcon, diff --git a/apps/sim/blocks/blocks/typeform.ts b/apps/sim/blocks/blocks/typeform.ts index 5bc6495b383..cb707c349b3 100644 --- a/apps/sim/blocks/blocks/typeform.ts +++ b/apps/sim/blocks/blocks/typeform.ts @@ -14,7 +14,7 @@ export const TypeformBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/typeform', category: 'tools', integrationType: IntegrationType.Documents, - tags: ['oauth'], + tags: ['forms', 'data-analytics'], bgColor: '#262627', // Typeform brand color icon: TypeformIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/upstash.ts b/apps/sim/blocks/blocks/upstash.ts index 1f5842fa438..040377d9625 100644 --- a/apps/sim/blocks/blocks/upstash.ts +++ b/apps/sim/blocks/blocks/upstash.ts @@ -47,7 +47,7 @@ export const UpstashBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/upstash', category: 'tools', integrationType: IntegrationType.Databases, - tags: ['api'], + tags: ['cloud', 'data-warehouse'], bgColor: '#181C1E', authMode: AuthMode.ApiKey, icon: UpstashIcon, diff --git a/apps/sim/blocks/blocks/vercel.ts b/apps/sim/blocks/blocks/vercel.ts index d5c46952dff..0a89cc24c34 100644 --- a/apps/sim/blocks/blocks/vercel.ts +++ b/apps/sim/blocks/blocks/vercel.ts @@ -11,7 +11,7 @@ export const VercelBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/vercel', category: 'tools', integrationType: IntegrationType.DeveloperTools, - tags: ['cloud', 'oauth'], + tags: ['cloud', 'ci-cd'], bgColor: '#171717', icon: VercelIcon, authMode: AuthMode.ApiKey, diff --git a/apps/sim/blocks/blocks/video_generator.ts b/apps/sim/blocks/blocks/video_generator.ts index 6706fb92ca9..cc7141f3371 100644 --- a/apps/sim/blocks/blocks/video_generator.ts +++ b/apps/sim/blocks/blocks/video_generator.ts @@ -14,7 +14,7 @@ export const VideoGeneratorBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/video-generator', category: 'tools', integrationType: IntegrationType.AI, - tags: ['video-generation'], + tags: ['video-generation', 'llm'], bgColor: '#181C1E', icon: VideoIcon, diff --git a/apps/sim/blocks/blocks/vision.ts b/apps/sim/blocks/blocks/vision.ts index 243cfeca052..46c910ad8f4 100644 --- a/apps/sim/blocks/blocks/vision.ts +++ b/apps/sim/blocks/blocks/vision.ts @@ -31,7 +31,7 @@ export const VisionBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/vision', category: 'tools', integrationType: IntegrationType.AI, - tags: ['llm'], + tags: ['llm', 'document-processing', 'ocr'], bgColor: '#4D5FFF', icon: EyeIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/wealthbox.ts b/apps/sim/blocks/blocks/wealthbox.ts index 832e9195168..abdb86bca24 100644 --- a/apps/sim/blocks/blocks/wealthbox.ts +++ b/apps/sim/blocks/blocks/wealthbox.ts @@ -14,7 +14,7 @@ export const WealthboxBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/wealthbox', category: 'tools', integrationType: IntegrationType.CRM, - tags: ['api'], + tags: ['sales-engagement', 'customer-support'], bgColor: '#E0E0E0', icon: WealthboxIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/webflow.ts b/apps/sim/blocks/blocks/webflow.ts index 4c8150525db..db6e7978cb3 100644 --- a/apps/sim/blocks/blocks/webflow.ts +++ b/apps/sim/blocks/blocks/webflow.ts @@ -15,7 +15,7 @@ export const WebflowBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/webflow', category: 'tools', integrationType: IntegrationType.Design, - tags: ['oauth'], + tags: ['content-management', 'seo'], triggerAllowed: true, bgColor: '#E0E0E0', icon: WebflowIcon, diff --git a/apps/sim/blocks/blocks/whatsapp.ts b/apps/sim/blocks/blocks/whatsapp.ts index e92dbfdd746..c42ea29d3d3 100644 --- a/apps/sim/blocks/blocks/whatsapp.ts +++ b/apps/sim/blocks/blocks/whatsapp.ts @@ -13,7 +13,7 @@ export const WhatsAppBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/whatsapp', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['api'], + tags: ['messaging', 'automation'], bgColor: '#25D366', icon: WhatsAppIcon, triggerAllowed: true, diff --git a/apps/sim/blocks/blocks/wikipedia.ts b/apps/sim/blocks/blocks/wikipedia.ts index 2a9a5a9fb6f..2965d4083a4 100644 --- a/apps/sim/blocks/blocks/wikipedia.ts +++ b/apps/sim/blocks/blocks/wikipedia.ts @@ -12,7 +12,7 @@ export const WikipediaBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/wikipedia', category: 'tools', integrationType: IntegrationType.Search, - tags: ['api'], + tags: ['knowledge-base', 'web-scraping'], bgColor: '#000000', icon: WikipediaIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/wordpress.ts b/apps/sim/blocks/blocks/wordpress.ts index 7747dab52ec..58ea0629dcf 100644 --- a/apps/sim/blocks/blocks/wordpress.ts +++ b/apps/sim/blocks/blocks/wordpress.ts @@ -15,7 +15,7 @@ export const WordPressBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/wordpress', category: 'tools', integrationType: IntegrationType.Design, - tags: ['oauth'], + tags: ['content-management', 'seo'], bgColor: '#21759B', icon: WordpressIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/workday.ts b/apps/sim/blocks/blocks/workday.ts index 759c5dde280..76d54900afb 100644 --- a/apps/sim/blocks/blocks/workday.ts +++ b/apps/sim/blocks/blocks/workday.ts @@ -11,7 +11,7 @@ export const WorkdayBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/workday', category: 'tools', integrationType: IntegrationType.HR, - tags: ['oauth'], + tags: ['hiring', 'project-management'], bgColor: '#F5F0EB', icon: WorkdayIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/x.ts b/apps/sim/blocks/blocks/x.ts index 10b9ae1d430..d68e16249ee 100644 --- a/apps/sim/blocks/blocks/x.ts +++ b/apps/sim/blocks/blocks/x.ts @@ -13,7 +13,7 @@ export const XBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/x', category: 'tools', integrationType: IntegrationType.Social, - tags: ['oauth'], + tags: ['marketing', 'messaging'], bgColor: '#000000', icon: xIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/youtube.ts b/apps/sim/blocks/blocks/youtube.ts index 69b287afb19..856f4f5c22f 100644 --- a/apps/sim/blocks/blocks/youtube.ts +++ b/apps/sim/blocks/blocks/youtube.ts @@ -13,7 +13,7 @@ export const YouTubeBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/youtube', category: 'tools', integrationType: IntegrationType.Media, - tags: ['oauth', 'google-workspace'], + tags: ['google-workspace', 'marketing', 'content-management'], bgColor: '#FF0000', icon: YouTubeIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/zendesk.ts b/apps/sim/blocks/blocks/zendesk.ts index 53f39b6c1d4..1a994a6d4fa 100644 --- a/apps/sim/blocks/blocks/zendesk.ts +++ b/apps/sim/blocks/blocks/zendesk.ts @@ -12,7 +12,7 @@ export const ZendeskBlock: BlockConfig = { authMode: AuthMode.ApiKey, category: 'tools', integrationType: IntegrationType.CustomerSupport, - tags: ['customer-support', 'oauth'], + tags: ['customer-support', 'ticketing'], bgColor: '#E0E0E0', icon: ZendeskIcon, subBlocks: [ diff --git a/apps/sim/blocks/blocks/zep.ts b/apps/sim/blocks/blocks/zep.ts index 84343a29cc8..a944fe5956d 100644 --- a/apps/sim/blocks/blocks/zep.ts +++ b/apps/sim/blocks/blocks/zep.ts @@ -13,7 +13,7 @@ export const ZepBlock: BlockConfig = { icon: ZepIcon, category: 'tools', integrationType: IntegrationType.AI, - tags: ['llm', 'api'], + tags: ['llm', 'knowledge-base', 'agentic'], docsLink: 'https://docs.sim.ai/tools/zep', subBlocks: [ { diff --git a/apps/sim/blocks/blocks/zoom.ts b/apps/sim/blocks/blocks/zoom.ts index c79bbe00ad9..5c77ac856ed 100644 --- a/apps/sim/blocks/blocks/zoom.ts +++ b/apps/sim/blocks/blocks/zoom.ts @@ -14,7 +14,7 @@ export const ZoomBlock: BlockConfig = { docsLink: 'https://docs.sim.ai/tools/zoom', category: 'tools', integrationType: IntegrationType.Communication, - tags: ['meeting', 'oauth'], + tags: ['meeting', 'calendar', 'scheduling'], bgColor: '#2D8CFF', icon: ZoomIcon, subBlocks: [ diff --git a/apps/sim/blocks/types.ts b/apps/sim/blocks/types.ts index febc7d7d205..0e02b26a17e 100644 --- a/apps/sim/blocks/types.ts +++ b/apps/sim/blocks/types.ts @@ -43,14 +43,14 @@ export enum IntegrationType { export type IntegrationTag = | 'marketing' | 'automation' - | 'api' - | 'oauth' | 'webhooks' | 'vector-search' | 'meeting' | 'calendar' + | 'scheduling' | 'incident-management' | 'monitoring' + | 'error-tracking' | 'prediction-markets' | 'document-processing' | 'ocr' @@ -62,12 +62,33 @@ export type IntegrationTag = | 'google-workspace' | 'microsoft-365' | 'data-warehouse' + | 'data-analytics' | 'customer-support' | 'project-management' + | 'ticketing' | 'payments' + | 'subscriptions' | 'enrichment' | 'web-scraping' | 'llm' + | 'messaging' + | 'version-control' + | 'ci-cd' + | 'note-taking' + | 'spreadsheet' + | 'seo' + | 'email-marketing' + | 'e-signatures' + | 'identity' + | 'secrets-management' + | 'hiring' + | 'sales-engagement' + | 'agentic' + | 'knowledge-base' + | 'content-management' + | 'forms' + | 'link-management' + | 'events' // Authentication modes for sub-blocks and summaries export enum AuthMode { diff --git a/scripts/generate-docs.ts b/scripts/generate-docs.ts index 8a7f8b760f6..ddbad423d35 100755 --- a/scripts/generate-docs.ts +++ b/scripts/generate-docs.ts @@ -79,6 +79,8 @@ interface IntegrationEntry { triggerCount: number authType: 'oauth' | 'api-key' | 'none' category: string + integrationType?: string + tags?: string[] } /** @@ -592,10 +594,8 @@ async function writeIntegrationsJson(iconMapping: Record): Promi triggerCount: triggers.length, authType, category: config.category, - ...((config as any).integrationType - ? { integrationType: (config as any).integrationType } - : {}), - ...((config as any).tags ? { tags: (config as any).tags } : {}), + ...(config.integrationType ? { integrationType: config.integrationType } : {}), + ...(config.tags ? { tags: config.tags } : {}), }) } } @@ -763,16 +763,16 @@ function extractBlockConfigFromContent( const triggerIds = extractTriggersAvailable(blockContent) const docsLink = extractStringPropertyFromContent(blockContent, 'docsLink', true) || - (baseConfig as any)?.docsLink || + baseConfig?.docsLink || `https://docs.sim.ai/tools/${stripVersionSuffix(blockType)}` const integrationType = extractEnumPropertyFromContent(blockContent, 'integrationType') || - (baseConfig as any)?.integrationType || + baseConfig?.integrationType || null const tags = extractArrayPropertyFromContent(blockContent, 'tags') || - (baseConfig as any)?.tags || + baseConfig?.tags || null return { From 1004ce9d1c1956d767f072d467e234b8f4a399ad Mon Sep 17 00:00:00 2001 From: Waleed Latif Date: Sat, 21 Mar 2026 11:41:33 -0700 Subject: [PATCH 3/4] lint --- .../integrations/data/integrations.json | 901 ++++-------------- 1 file changed, 169 insertions(+), 732 deletions(-) diff --git a/apps/sim/app/(landing)/integrations/data/integrations.json b/apps/sim/app/(landing)/integrations/data/integrations.json index 40aefa30a73..ee1bedb0da4 100644 --- a/apps/sim/app/(landing)/integrations/data/integrations.json +++ b/apps/sim/app/(landing)/integrations/data/integrations.json @@ -52,10 +52,7 @@ "authType": "api-key", "category": "tools", "integrationType": "security", - "tags": [ - "secrets-management", - "identity" - ] + "tags": ["secrets-management", "identity"] }, { "type": "a2a", @@ -106,10 +103,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "agentic", - "automation" - ] + "tags": ["agentic", "automation"] }, { "type": "ahrefs", @@ -160,11 +154,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "seo", - "marketing", - "data-analytics" - ] + "tags": ["seo", "marketing", "data-analytics"] }, { "type": "airtable", @@ -221,10 +211,7 @@ "authType": "oauth", "category": "tools", "integrationType": "databases", - "tags": [ - "spreadsheet", - "automation" - ] + "tags": ["spreadsheet", "automation"] }, { "type": "airweave", @@ -242,10 +229,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "vector-search", - "knowledge-base" - ] + "tags": ["vector-search", "knowledge-base"] }, { "type": "algolia", @@ -324,10 +308,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "vector-search", - "knowledge-base" - ] + "tags": ["vector-search", "knowledge-base"] }, { "type": "dynamodb", @@ -374,10 +355,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "cloud", - "data-warehouse" - ] + "tags": ["cloud", "data-warehouse"] }, { "type": "rds", @@ -420,10 +398,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "cloud", - "data-warehouse" - ] + "tags": ["cloud", "data-warehouse"] }, { "type": "sqs", @@ -446,11 +421,7 @@ "authType": "none", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "cloud", - "messaging", - "automation" - ] + "tags": ["cloud", "messaging", "automation"] }, { "type": "amplitude", @@ -513,10 +484,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "data-analytics", - "marketing" - ] + "tags": ["data-analytics", "marketing"] }, { "type": "apify", @@ -543,11 +511,7 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": [ - "web-scraping", - "automation", - "data-analytics" - ] + "tags": ["web-scraping", "automation", "data-analytics"] }, { "type": "apollo", @@ -666,10 +630,7 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": [ - "enrichment", - "sales-engagement" - ] + "tags": ["enrichment", "sales-engagement"] }, { "type": "arxiv", @@ -700,10 +661,7 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": [ - "document-processing", - "knowledge-base" - ] + "tags": ["document-processing", "knowledge-base"] }, { "type": "asana", @@ -746,11 +704,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "project-management", - "ticketing", - "automation" - ] + "tags": ["project-management", "ticketing", "automation"] }, { "type": "ashby", @@ -912,9 +866,7 @@ "authType": "api-key", "category": "tools", "integrationType": "hr", - "tags": [ - "hiring" - ] + "tags": ["hiring"] }, { "type": "attio", @@ -1184,10 +1136,7 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": [ - "sales-engagement", - "enrichment" - ] + "tags": ["sales-engagement", "enrichment"] }, { "type": "textract_v2", @@ -1205,11 +1154,7 @@ "authType": "none", "category": "tools", "integrationType": "ai", - "tags": [ - "document-processing", - "ocr", - "cloud" - ] + "tags": ["document-processing", "ocr", "cloud"] }, { "type": "microsoft_ad", @@ -1280,10 +1225,7 @@ "authType": "oauth", "category": "tools", "integrationType": "security", - "tags": [ - "identity", - "microsoft-365" - ] + "tags": ["identity", "microsoft-365"] }, { "type": "box", @@ -1362,11 +1304,7 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": [ - "cloud", - "content-management", - "e-signatures" - ] + "tags": ["cloud", "content-management", "e-signatures"] }, { "type": "brandfetch", @@ -1393,10 +1331,7 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": [ - "enrichment", - "marketing" - ] + "tags": ["enrichment", "marketing"] }, { "type": "browser_use", @@ -1414,11 +1349,7 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": [ - "web-scraping", - "automation", - "agentic" - ] + "tags": ["web-scraping", "automation", "agentic"] }, { "type": "calcom", @@ -1559,11 +1490,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "scheduling", - "calendar", - "meeting" - ] + "tags": ["scheduling", "calendar", "meeting"] }, { "type": "calendly", @@ -1631,11 +1558,7 @@ "authType": "api-key", "category": "tools", "integrationType": "productivity", - "tags": [ - "scheduling", - "calendar", - "meeting" - ] + "tags": ["scheduling", "calendar", "meeting"] }, { "type": "circleback", @@ -1669,11 +1592,7 @@ "authType": "none", "category": "triggers", "integrationType": "ai", - "tags": [ - "meeting", - "note-taking", - "automation" - ] + "tags": ["meeting", "note-taking", "automation"] }, { "type": "clay", @@ -1691,11 +1610,7 @@ "authType": "none", "category": "tools", "integrationType": "sales-intelligence", - "tags": [ - "enrichment", - "sales-engagement", - "data-analytics" - ] + "tags": ["enrichment", "sales-engagement", "data-analytics"] }, { "type": "clerk", @@ -1758,10 +1673,7 @@ "authType": "none", "category": "tools", "integrationType": "security", - "tags": [ - "identity", - "automation" - ] + "tags": ["identity", "automation"] }, { "type": "cloudflare", @@ -1832,10 +1744,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "cloud", - "monitoring" - ] + "tags": ["cloud", "monitoring"] }, { "type": "confluence_v2", @@ -2119,11 +2028,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "knowledge-base", - "content-management", - "note-taking" - ] + "tags": ["knowledge-base", "content-management", "note-taking"] }, { "type": "cursor_v2", @@ -2170,10 +2075,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "agentic", - "automation" - ] + "tags": ["agentic", "automation"] }, { "type": "databricks", @@ -2224,11 +2126,7 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": [ - "data-warehouse", - "data-analytics", - "cloud" - ] + "tags": ["data-warehouse", "data-analytics", "cloud"] }, { "type": "datadog", @@ -2295,11 +2193,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "monitoring", - "incident-management", - "error-tracking" - ] + "tags": ["monitoring", "incident-management", "error-tracking"] }, { "type": "devin", @@ -2334,10 +2228,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "agentic", - "automation" - ] + "tags": ["agentic", "automation"] }, { "type": "discord", @@ -2496,11 +2387,7 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": [ - "messaging", - "webhooks", - "automation" - ] + "tags": ["messaging", "webhooks", "automation"] }, { "type": "docusign", @@ -2551,10 +2438,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "e-signatures", - "document-processing" - ] + "tags": ["e-signatures", "document-processing"] }, { "type": "dropbox", @@ -2613,10 +2497,7 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": [ - "cloud", - "document-processing" - ] + "tags": ["cloud", "document-processing"] }, { "type": "dspy", @@ -2647,11 +2528,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "llm", - "agentic", - "automation" - ] + "tags": ["llm", "agentic", "automation"] }, { "type": "dub", @@ -2698,11 +2575,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "link-management", - "marketing", - "data-analytics" - ] + "tags": ["link-management", "marketing", "data-analytics"] }, { "type": "duckduckgo", @@ -2720,10 +2593,7 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "seo" - ] + "tags": ["web-scraping", "seo"] }, { "type": "elasticsearch", @@ -2794,10 +2664,7 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": [ - "vector-search", - "data-analytics" - ] + "tags": ["vector-search", "data-analytics"] }, { "type": "elevenlabs", @@ -2815,9 +2682,7 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": [ - "text-to-speech" - ] + "tags": ["text-to-speech"] }, { "type": "openai", @@ -2835,10 +2700,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "llm", - "vector-search" - ] + "tags": ["llm", "vector-search"] }, { "type": "enrich", @@ -2973,10 +2835,7 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": [ - "enrichment", - "data-analytics" - ] + "tags": ["enrichment", "data-analytics"] }, { "type": "evernote", @@ -3039,10 +2898,7 @@ "authType": "api-key", "category": "tools", "integrationType": "documents", - "tags": [ - "note-taking", - "knowledge-base" - ] + "tags": ["note-taking", "knowledge-base"] }, { "type": "exa", @@ -3081,10 +2937,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "enrichment" - ] + "tags": ["web-scraping", "enrichment"] }, { "type": "fathom", @@ -3134,10 +2987,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "meeting", - "note-taking" - ] + "tags": ["meeting", "note-taking"] }, { "type": "file_v3", @@ -3155,9 +3005,7 @@ "authType": "none", "category": "tools", "integrationType": "file-storage", - "tags": [ - "document-processing" - ] + "tags": ["document-processing"] }, { "type": "firecrawl", @@ -3200,10 +3048,7 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": [ - "web-scraping", - "automation" - ] + "tags": ["web-scraping", "automation"] }, { "type": "fireflies_v2", @@ -3268,11 +3113,7 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": [ - "meeting", - "speech-to-text", - "note-taking" - ] + "tags": ["meeting", "speech-to-text", "note-taking"] }, { "type": "gamma", @@ -3311,10 +3152,7 @@ "authType": "api-key", "category": "tools", "integrationType": "design", - "tags": [ - "document-processing", - "content-management" - ] + "tags": ["document-processing", "content-management"] }, { "type": "github_v2", @@ -3721,10 +3559,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "version-control", - "ci-cd" - ] + "tags": ["version-control", "ci-cd"] }, { "type": "gitlab", @@ -3819,10 +3654,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "version-control", - "ci-cd" - ] + "tags": ["version-control", "ci-cd"] }, { "type": "gmail_v2", @@ -3889,10 +3721,7 @@ "authType": "oauth", "category": "tools", "integrationType": "email", - "tags": [ - "google-workspace", - "messaging" - ] + "tags": ["google-workspace", "messaging"] }, { "type": "gong", @@ -3983,11 +3812,7 @@ "authType": "none", "category": "tools", "integrationType": "sales-intelligence", - "tags": [ - "meeting", - "sales-engagement", - "speech-to-text" - ] + "tags": ["meeting", "sales-engagement", "speech-to-text"] }, { "type": "google_ads", @@ -4030,11 +3855,7 @@ "authType": "oauth", "category": "tools", "integrationType": "analytics", - "tags": [ - "marketing", - "google-workspace", - "data-analytics" - ] + "tags": ["marketing", "google-workspace", "data-analytics"] }, { "type": "google_bigquery", @@ -4073,11 +3894,7 @@ "authType": "oauth", "category": "tools", "integrationType": "databases", - "tags": [ - "data-warehouse", - "google-workspace", - "data-analytics" - ] + "tags": ["data-warehouse", "google-workspace", "data-analytics"] }, { "type": "google_books", @@ -4104,11 +3921,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "google-workspace", - "knowledge-base", - "content-management" - ] + "tags": ["google-workspace", "knowledge-base", "content-management"] }, { "type": "google_calendar_v2", @@ -4167,11 +3980,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "calendar", - "scheduling", - "google-workspace" - ] + "tags": ["calendar", "scheduling", "google-workspace"] }, { "type": "google_contacts", @@ -4214,11 +4023,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "google-workspace", - "customer-support", - "enrichment" - ] + "tags": ["google-workspace", "customer-support", "enrichment"] }, { "type": "google_docs", @@ -4249,11 +4054,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "google-workspace", - "document-processing", - "content-management" - ] + "tags": ["google-workspace", "document-processing", "content-management"] }, { "type": "google_drive", @@ -4328,11 +4129,7 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": [ - "cloud", - "google-workspace", - "document-processing" - ] + "tags": ["cloud", "google-workspace", "document-processing"] }, { "type": "google_forms", @@ -4393,11 +4190,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "google-workspace", - "forms", - "data-analytics" - ] + "tags": ["google-workspace", "forms", "data-analytics"] }, { "type": "google_groups", @@ -4480,11 +4273,7 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": [ - "google-workspace", - "messaging", - "identity" - ] + "tags": ["google-workspace", "messaging", "identity"] }, { "type": "google_maps", @@ -4555,10 +4344,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "google-workspace", - "enrichment" - ] + "tags": ["google-workspace", "enrichment"] }, { "type": "google_meet", @@ -4601,11 +4387,7 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": [ - "meeting", - "google-workspace", - "scheduling" - ] + "tags": ["meeting", "google-workspace", "scheduling"] }, { "type": "google_pagespeed", @@ -4623,11 +4405,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "google-workspace", - "seo", - "monitoring" - ] + "tags": ["google-workspace", "seo", "monitoring"] }, { "type": "google_search", @@ -4645,11 +4423,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "google-workspace", - "web-scraping", - "seo" - ] + "tags": ["google-workspace", "web-scraping", "seo"] }, { "type": "google_sheets_v2", @@ -4712,11 +4486,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "spreadsheet", - "google-workspace", - "data-analytics" - ] + "tags": ["spreadsheet", "google-workspace", "data-analytics"] }, { "type": "google_slides_v2", @@ -4791,11 +4561,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "google-workspace", - "document-processing", - "content-management" - ] + "tags": ["google-workspace", "document-processing", "content-management"] }, { "type": "google_tasks", @@ -4838,11 +4604,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "google-workspace", - "project-management", - "scheduling" - ] + "tags": ["google-workspace", "project-management", "scheduling"] }, { "type": "google_translate", @@ -4869,11 +4631,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "google-workspace", - "content-management", - "automation" - ] + "tags": ["google-workspace", "content-management", "automation"] }, { "type": "google_vault", @@ -4920,11 +4678,7 @@ "authType": "oauth", "category": "tools", "integrationType": "security", - "tags": [ - "google-workspace", - "secrets-management", - "document-processing" - ] + "tags": ["google-workspace", "secrets-management", "document-processing"] }, { "type": "grafana", @@ -5019,10 +4773,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "monitoring", - "data-analytics" - ] + "tags": ["monitoring", "data-analytics"] }, { "type": "grain", @@ -5118,10 +4869,7 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": [ - "meeting", - "note-taking" - ] + "tags": ["meeting", "note-taking"] }, { "type": "greenhouse", @@ -5184,9 +4932,7 @@ "authType": "api-key", "category": "tools", "integrationType": "hr", - "tags": [ - "hiring" - ] + "tags": ["hiring"] }, { "type": "greptile", @@ -5221,10 +4967,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "version-control", - "knowledge-base" - ] + "tags": ["version-control", "knowledge-base"] }, { "type": "hex", @@ -5307,10 +5050,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "data-warehouse", - "data-analytics" - ] + "tags": ["data-warehouse", "data-analytics"] }, { "type": "hubspot", @@ -5460,11 +5200,7 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": [ - "marketing", - "sales-engagement", - "customer-support" - ] + "tags": ["marketing", "sales-engagement", "customer-support"] }, { "type": "huggingface", @@ -5482,10 +5218,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "llm", - "agentic" - ] + "tags": ["llm", "agentic"] }, { "type": "hunter", @@ -5528,10 +5261,7 @@ "authType": "api-key", "category": "tools", "integrationType": "sales-intelligence", - "tags": [ - "enrichment", - "sales-engagement" - ] + "tags": ["enrichment", "sales-engagement"] }, { "type": "image_generator", @@ -5549,10 +5279,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "image-generation", - "llm" - ] + "tags": ["image-generation", "llm"] }, { "type": "imap", @@ -5576,10 +5303,7 @@ "authType": "none", "category": "triggers", "integrationType": "email", - "tags": [ - "messaging", - "automation" - ] + "tags": ["messaging", "automation"] }, { "type": "incidentio", @@ -5774,10 +5498,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "incident-management", - "monitoring" - ] + "tags": ["incident-management", "monitoring"] }, { "type": "infisical", @@ -5816,9 +5537,7 @@ "authType": "api-key", "category": "tools", "integrationType": "security", - "tags": [ - "secrets-management" - ] + "tags": ["secrets-management"] }, { "type": "intercom_v2", @@ -5961,10 +5680,7 @@ "authType": "api-key", "category": "tools", "integrationType": "customer-support", - "tags": [ - "customer-support", - "messaging" - ] + "tags": ["customer-support", "messaging"] }, { "type": "jina", @@ -5991,10 +5707,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "knowledge-base" - ] + "tags": ["web-scraping", "knowledge-base"] }, { "type": "jira", @@ -6140,10 +5853,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "project-management", - "ticketing" - ] + "tags": ["project-management", "ticketing"] }, { "type": "jira_service_management", @@ -6246,11 +5956,7 @@ "authType": "oauth", "category": "tools", "integrationType": "customer-support", - "tags": [ - "customer-support", - "ticketing", - "incident-management" - ] + "tags": ["customer-support", "ticketing", "incident-management"] }, { "type": "kalshi_v2", @@ -6337,10 +6043,7 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": [ - "prediction-markets", - "data-analytics" - ] + "tags": ["prediction-markets", "data-analytics"] }, { "type": "knowledge", @@ -6440,11 +6143,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "monitoring", - "llm", - "data-analytics" - ] + "tags": ["monitoring", "llm", "data-analytics"] }, { "type": "lemlist", @@ -6521,11 +6220,7 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": [ - "sales-engagement", - "email-marketing", - "automation" - ] + "tags": ["sales-engagement", "email-marketing", "automation"] }, { "type": "linear", @@ -6932,10 +6627,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "project-management", - "ticketing" - ] + "tags": ["project-management", "ticketing"] }, { "type": "linkedin", @@ -6962,11 +6654,7 @@ "authType": "oauth", "category": "tools", "integrationType": "social", - "tags": [ - "marketing", - "sales-engagement", - "enrichment" - ] + "tags": ["marketing", "sales-engagement", "enrichment"] }, { "type": "linkup", @@ -6984,10 +6672,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "enrichment" - ] + "tags": ["web-scraping", "enrichment"] }, { "type": "loops", @@ -7046,11 +6731,7 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": [ - "email-marketing", - "marketing", - "automation" - ] + "tags": ["email-marketing", "marketing", "automation"] }, { "type": "luma", @@ -7093,11 +6774,7 @@ "authType": "api-key", "category": "tools", "integrationType": "productivity", - "tags": [ - "events", - "calendar", - "scheduling" - ] + "tags": ["events", "calendar", "scheduling"] }, { "type": "mailchimp", @@ -7408,11 +7085,7 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": [ - "email-marketing", - "marketing", - "automation" - ] + "tags": ["email-marketing", "marketing", "automation"] }, { "type": "mailgun", @@ -7463,10 +7136,7 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": [ - "messaging", - "email-marketing" - ] + "tags": ["messaging", "email-marketing"] }, { "type": "mem0", @@ -7497,11 +7167,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "llm", - "knowledge-base", - "agentic" - ] + "tags": ["llm", "knowledge-base", "agentic"] }, { "type": "memory", @@ -7621,11 +7287,7 @@ "authType": "oauth", "category": "tools", "integrationType": "databases", - "tags": [ - "microsoft-365", - "data-warehouse", - "cloud" - ] + "tags": ["microsoft-365", "data-warehouse", "cloud"] }, { "type": "microsoft_excel_v2", @@ -7652,10 +7314,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "spreadsheet", - "microsoft-365" - ] + "tags": ["spreadsheet", "microsoft-365"] }, { "type": "microsoft_planner", @@ -7726,11 +7385,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "project-management", - "microsoft-365", - "ticketing" - ] + "tags": ["project-management", "microsoft-365", "ticketing"] }, { "type": "microsoft_teams", @@ -7811,10 +7466,7 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": [ - "messaging", - "microsoft-365" - ] + "tags": ["messaging", "microsoft-365"] }, { "type": "mistral_parse_v3", @@ -7832,10 +7484,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "document-processing", - "ocr" - ] + "tags": ["document-processing", "ocr"] }, { "type": "mongodb", @@ -7878,10 +7527,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "data-warehouse", - "cloud" - ] + "tags": ["data-warehouse", "cloud"] }, { "type": "mysql", @@ -7924,10 +7570,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "data-warehouse", - "data-analytics" - ] + "tags": ["data-warehouse", "data-analytics"] }, { "type": "neo4j", @@ -7974,10 +7617,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "data-warehouse", - "data-analytics" - ] + "tags": ["data-warehouse", "data-analytics"] }, { "type": "notion_v2", @@ -7995,11 +7635,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "note-taking", - "knowledge-base", - "content-management" - ] + "tags": ["note-taking", "knowledge-base", "content-management"] }, { "type": "obsidian", @@ -8078,10 +7714,7 @@ "authType": "api-key", "category": "tools", "integrationType": "documents", - "tags": [ - "note-taking", - "knowledge-base" - ] + "tags": ["note-taking", "knowledge-base"] }, { "type": "okta", @@ -8172,10 +7805,7 @@ "authType": "api-key", "category": "tools", "integrationType": "security", - "tags": [ - "identity", - "automation" - ] + "tags": ["identity", "automation"] }, { "type": "onedrive", @@ -8218,11 +7848,7 @@ "authType": "oauth", "category": "tools", "integrationType": "file-storage", - "tags": [ - "microsoft-365", - "cloud", - "document-processing" - ] + "tags": ["microsoft-365", "cloud", "document-processing"] }, { "type": "outlook", @@ -8277,11 +7903,7 @@ "authType": "oauth", "category": "tools", "integrationType": "email", - "tags": [ - "microsoft-365", - "messaging", - "automation" - ] + "tags": ["microsoft-365", "messaging", "automation"] }, { "type": "pagerduty", @@ -8324,10 +7946,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "incident-management", - "monitoring" - ] + "tags": ["incident-management", "monitoring"] }, { "type": "parallel_ai", @@ -8358,11 +7977,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "llm", - "agentic" - ] + "tags": ["web-scraping", "llm", "agentic"] }, { "type": "perplexity", @@ -8389,11 +8004,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "llm", - "web-scraping", - "agentic" - ] + "tags": ["llm", "web-scraping", "agentic"] }, { "type": "pinecone", @@ -8432,10 +8043,7 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": [ - "vector-search", - "knowledge-base" - ] + "tags": ["vector-search", "knowledge-base"] }, { "type": "pipedrive", @@ -8526,10 +8134,7 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": [ - "sales-engagement", - "project-management" - ] + "tags": ["sales-engagement", "project-management"] }, { "type": "polymarket", @@ -8628,10 +8233,7 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": [ - "prediction-markets", - "data-analytics" - ] + "tags": ["prediction-markets", "data-analytics"] }, { "type": "postgresql", @@ -8674,10 +8276,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "data-warehouse", - "data-analytics" - ] + "tags": ["data-warehouse", "data-analytics"] }, { "type": "posthog", @@ -8868,10 +8467,7 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": [ - "data-analytics", - "monitoring" - ] + "tags": ["data-analytics", "monitoring"] }, { "type": "pulse_v2", @@ -8889,10 +8485,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "document-processing", - "ocr" - ] + "tags": ["document-processing", "ocr"] }, { "type": "qdrant", @@ -8923,10 +8516,7 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": [ - "vector-search", - "knowledge-base" - ] + "tags": ["vector-search", "knowledge-base"] }, { "type": "reddit", @@ -9013,10 +8603,7 @@ "authType": "oauth", "category": "tools", "integrationType": "social", - "tags": [ - "content-management", - "web-scraping" - ] + "tags": ["content-management", "web-scraping"] }, { "type": "redis", @@ -9123,10 +8710,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "cloud", - "data-warehouse" - ] + "tags": ["cloud", "data-warehouse"] }, { "type": "reducto_v2", @@ -9144,10 +8728,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "document-processing", - "ocr" - ] + "tags": ["document-processing", "ocr"] }, { "type": "resend", @@ -9198,10 +8779,7 @@ "authType": "none", "category": "tools", "integrationType": "email", - "tags": [ - "email-marketing", - "messaging" - ] + "tags": ["email-marketing", "messaging"] }, { "type": "revenuecat", @@ -9260,10 +8838,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ecommerce", - "tags": [ - "payments", - "subscriptions" - ] + "tags": ["payments", "subscriptions"] }, { "type": "s3", @@ -9302,10 +8877,7 @@ "authType": "none", "category": "tools", "integrationType": "file-storage", - "tags": [ - "cloud", - "data-warehouse" - ] + "tags": ["cloud", "data-warehouse"] }, { "type": "salesforce", @@ -9464,10 +9036,7 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": [ - "sales-engagement", - "customer-support" - ] + "tags": ["sales-engagement", "customer-support"] }, { "type": "search", @@ -9485,10 +9054,7 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "seo" - ] + "tags": ["web-scraping", "seo"] }, { "type": "sendgrid", @@ -9571,10 +9137,7 @@ "authType": "api-key", "category": "tools", "integrationType": "email", - "tags": [ - "email-marketing", - "messaging" - ] + "tags": ["email-marketing", "messaging"] }, { "type": "sentry", @@ -9641,10 +9204,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "error-tracking", - "monitoring" - ] + "tags": ["error-tracking", "monitoring"] }, { "type": "serper", @@ -9662,10 +9222,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "seo" - ] + "tags": ["web-scraping", "seo"] }, { "type": "servicenow", @@ -9700,11 +9257,7 @@ "authType": "none", "category": "tools", "integrationType": "customer-support", - "tags": [ - "customer-support", - "ticketing", - "incident-management" - ] + "tags": ["customer-support", "ticketing", "incident-management"] }, { "type": "sftp", @@ -9747,10 +9300,7 @@ "authType": "none", "category": "tools", "integrationType": "file-storage", - "tags": [ - "cloud", - "automation" - ] + "tags": ["cloud", "automation"] }, { "type": "sharepoint", @@ -9801,11 +9351,7 @@ "authType": "oauth", "category": "tools", "integrationType": "documents", - "tags": [ - "microsoft-365", - "content-management", - "document-processing" - ] + "tags": ["microsoft-365", "content-management", "document-processing"] }, { "type": "shopify", @@ -9908,10 +9454,7 @@ "authType": "oauth", "category": "tools", "integrationType": "ecommerce", - "tags": [ - "payments", - "subscriptions" - ] + "tags": ["payments", "subscriptions"] }, { "type": "similarweb", @@ -9950,11 +9493,7 @@ "authType": "api-key", "category": "tools", "integrationType": "analytics", - "tags": [ - "marketing", - "data-analytics", - "seo" - ] + "tags": ["marketing", "data-analytics", "seo"] }, { "type": "slack", @@ -10071,11 +9610,7 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": [ - "messaging", - "webhooks", - "automation" - ] + "tags": ["messaging", "webhooks", "automation"] }, { "type": "smtp", @@ -10093,10 +9628,7 @@ "authType": "none", "category": "tools", "integrationType": "email", - "tags": [ - "email-marketing", - "messaging" - ] + "tags": ["email-marketing", "messaging"] }, { "type": "stt_v2", @@ -10114,10 +9646,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "speech-to-text", - "document-processing" - ] + "tags": ["speech-to-text", "document-processing"] }, { "type": "ssh", @@ -10188,10 +9717,7 @@ "authType": "none", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "cloud", - "automation" - ] + "tags": ["cloud", "automation"] }, { "type": "stagehand", @@ -10218,11 +9744,7 @@ "authType": "api-key", "category": "tools", "integrationType": "automation", - "tags": [ - "web-scraping", - "automation", - "agentic" - ] + "tags": ["web-scraping", "automation", "agentic"] }, { "type": "stripe", @@ -10447,11 +9969,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ecommerce", - "tags": [ - "payments", - "subscriptions", - "webhooks" - ] + "tags": ["payments", "subscriptions", "webhooks"] }, { "type": "supabase", @@ -10558,11 +10076,7 @@ "authType": "api-key", "category": "tools", "integrationType": "databases", - "tags": [ - "cloud", - "data-warehouse", - "vector-search" - ] + "tags": ["cloud", "data-warehouse", "vector-search"] }, { "type": "tavily", @@ -10597,10 +10111,7 @@ "authType": "api-key", "category": "tools", "integrationType": "search", - "tags": [ - "web-scraping", - "enrichment" - ] + "tags": ["web-scraping", "enrichment"] }, { "type": "telegram", @@ -10653,11 +10164,7 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": [ - "messaging", - "webhooks", - "automation" - ] + "tags": ["messaging", "webhooks", "automation"] }, { "type": "tts", @@ -10675,10 +10182,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "text-to-speech", - "llm" - ] + "tags": ["text-to-speech", "llm"] }, { "type": "tinybird", @@ -10705,10 +10209,7 @@ "authType": "none", "category": "tools", "integrationType": "analytics", - "tags": [ - "data-warehouse", - "data-analytics" - ] + "tags": ["data-warehouse", "data-analytics"] }, { "type": "translate", @@ -10726,10 +10227,7 @@ "authType": "none", "category": "tools", "integrationType": "ai", - "tags": [ - "document-processing", - "llm" - ] + "tags": ["document-processing", "llm"] }, { "type": "trello", @@ -10772,10 +10270,7 @@ "authType": "oauth", "category": "tools", "integrationType": "productivity", - "tags": [ - "project-management", - "ticketing" - ] + "tags": ["project-management", "ticketing"] }, { "type": "twilio_sms", @@ -10793,10 +10288,7 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": [ - "messaging", - "automation" - ] + "tags": ["messaging", "automation"] }, { "type": "twilio_voice", @@ -10833,10 +10325,7 @@ "authType": "none", "category": "tools", "integrationType": "communication", - "tags": [ - "messaging", - "text-to-speech" - ] + "tags": ["messaging", "text-to-speech"] }, { "type": "typeform", @@ -10893,10 +10382,7 @@ "authType": "api-key", "category": "tools", "integrationType": "documents", - "tags": [ - "forms", - "data-analytics" - ] + "tags": ["forms", "data-analytics"] }, { "type": "upstash", @@ -10979,10 +10465,7 @@ "authType": "none", "category": "tools", "integrationType": "databases", - "tags": [ - "cloud", - "data-warehouse" - ] + "tags": ["cloud", "data-warehouse"] }, { "type": "vercel", @@ -11201,10 +10684,7 @@ "authType": "api-key", "category": "tools", "integrationType": "developer-tools", - "tags": [ - "cloud", - "ci-cd" - ] + "tags": ["cloud", "ci-cd"] }, { "type": "video_generator_v2", @@ -11222,10 +10702,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "video-generation", - "llm" - ] + "tags": ["video-generation", "llm"] }, { "type": "vision_v2", @@ -11243,11 +10720,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "llm", - "document-processing", - "ocr" - ] + "tags": ["llm", "document-processing", "ocr"] }, { "type": "wealthbox", @@ -11290,10 +10763,7 @@ "authType": "oauth", "category": "tools", "integrationType": "crm", - "tags": [ - "sales-engagement", - "customer-support" - ] + "tags": ["sales-engagement", "customer-support"] }, { "type": "webflow", @@ -11353,10 +10823,7 @@ "authType": "oauth", "category": "tools", "integrationType": "design", - "tags": [ - "content-management", - "seo" - ] + "tags": ["content-management", "seo"] }, { "type": "whatsapp", @@ -11380,10 +10847,7 @@ "authType": "api-key", "category": "tools", "integrationType": "communication", - "tags": [ - "messaging", - "automation" - ] + "tags": ["messaging", "automation"] }, { "type": "wikipedia", @@ -11418,10 +10882,7 @@ "authType": "none", "category": "tools", "integrationType": "search", - "tags": [ - "knowledge-base", - "web-scraping" - ] + "tags": ["knowledge-base", "web-scraping"] }, { "type": "wordpress", @@ -11544,10 +11005,7 @@ "authType": "oauth", "category": "tools", "integrationType": "design", - "tags": [ - "content-management", - "seo" - ] + "tags": ["content-management", "seo"] }, { "type": "workday", @@ -11606,10 +11064,7 @@ "authType": "none", "category": "tools", "integrationType": "hr", - "tags": [ - "hiring", - "project-management" - ] + "tags": ["hiring", "project-management"] }, { "type": "x", @@ -11740,10 +11195,7 @@ "authType": "oauth", "category": "tools", "integrationType": "social", - "tags": [ - "marketing", - "messaging" - ] + "tags": ["marketing", "messaging"] }, { "type": "youtube", @@ -11798,11 +11250,7 @@ "authType": "api-key", "category": "tools", "integrationType": "media", - "tags": [ - "google-workspace", - "marketing", - "content-management" - ] + "tags": ["google-workspace", "marketing", "content-management"] }, { "type": "zendesk", @@ -11925,10 +11373,7 @@ "authType": "none", "category": "tools", "integrationType": "customer-support", - "tags": [ - "customer-support", - "ticketing" - ] + "tags": ["customer-support", "ticketing"] }, { "type": "zep", @@ -11983,11 +11428,7 @@ "authType": "api-key", "category": "tools", "integrationType": "ai", - "tags": [ - "llm", - "knowledge-base", - "agentic" - ] + "tags": ["llm", "knowledge-base", "agentic"] }, { "type": "zoom", @@ -12046,10 +11487,6 @@ "authType": "oauth", "category": "tools", "integrationType": "communication", - "tags": [ - "meeting", - "calendar", - "scheduling" - ] + "tags": ["meeting", "calendar", "scheduling"] } -] \ No newline at end of file +] From dd9e7c91f9121e4a0cba9c395bb368ac758a5161 Mon Sep 17 00:00:00 2001 From: Waleed Latif Date: Sat, 21 Mar 2026 11:42:04 -0700 Subject: [PATCH 4/4] upgrade turbo --- bun.lock | 28 ++++++++++++++-------------- package.json | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/bun.lock b/bun.lock index cd5dc2f1e00..c55505f0ec9 100644 --- a/bun.lock +++ b/bun.lock @@ -10,7 +10,7 @@ "glob": "13.0.0", "husky": "9.1.7", "lint-staged": "16.0.0", - "turbo": "2.8.17", + "turbo": "2.8.20", }, }, "apps/docs": { @@ -1461,6 +1461,18 @@ "@trigger.dev/sdk": ["@trigger.dev/sdk@4.1.2", "", { "dependencies": { "@opentelemetry/api": "1.9.0", "@opentelemetry/semantic-conventions": "1.36.0", "@trigger.dev/core": "4.1.2", "chalk": "^5.2.0", "cronstrue": "^2.21.0", "debug": "^4.3.4", "evt": "^2.4.13", "slug": "^6.0.0", "ulid": "^2.3.0", "uncrypto": "^0.1.3", "uuid": "^9.0.0", "ws": "^8.11.0" }, "peerDependencies": { "ai": "^4.2.0 || ^5.0.0", "zod": "^3.0.0 || ^4.0.0" }, "optionalPeers": ["ai"] }, "sha512-BQLcskVAlUvOM4jN91PNpXtcmgjsHOL8IFes3aEt/fnBfnDRzRNIUlO+H4KkBy5/66pAOgODLmevMSCKd0keYw=="], + "@turbo/darwin-64": ["@turbo/darwin-64@2.8.20", "", { "os": "darwin", "cpu": "x64" }, "sha512-FQ9EX1xMU5nbwjxXxM3yU88AQQ6Sqc6S44exPRroMcx9XZHqqppl5ymJF0Ig/z3nvQNwDmz1Gsnvxubo+nXWjQ=="], + + "@turbo/darwin-arm64": ["@turbo/darwin-arm64@2.8.20", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Gpyh9ATFGThD6/s9L95YWY54cizg/VRWl2B67h0yofG8BpHf67DFAh9nuJVKG7bY0+SBJDAo5cMur+wOl9YOYw=="], + + "@turbo/linux-64": ["@turbo/linux-64@2.8.20", "", { "os": "linux", "cpu": "x64" }, "sha512-p2QxWUYyYUgUFG0b0kR+pPi8t7c9uaVlRtjTTI1AbCvVqkpjUfCcReBn6DgG/Hu8xrWdKLuyQFaLYFzQskZbcA=="], + + "@turbo/linux-arm64": ["@turbo/linux-arm64@2.8.20", "", { "os": "linux", "cpu": "arm64" }, "sha512-Gn5yjlZGLRZWarLWqdQzv0wMqyBNIdq1QLi48F1oY5Lo9kiohuf7BPQWtWxeNVS2NgJ1+nb/DzK1JduYC4AWOA=="], + + "@turbo/windows-64": ["@turbo/windows-64@2.8.20", "", { "os": "win32", "cpu": "x64" }, "sha512-vyaDpYk/8T6Qz5V/X+ihKvKFEZFUoC0oxYpC1sZanK6gaESJlmV3cMRT3Qhcg4D2VxvtC2Jjs9IRkrZGL+exLw=="], + + "@turbo/windows-arm64": ["@turbo/windows-arm64@2.8.20", "", { "os": "win32", "cpu": "arm64" }, "sha512-voicVULvUV5yaGXo0Iue13BcHGYW3u0VgqSbfQwBaHbpj1zLjYV4KIe+7fYIo6DO8FVUJzxFps3ODCQG/Wy2Qw=="], + "@tweenjs/tween.js": ["@tweenjs/tween.js@23.1.3", "", {}, "sha512-vJmvvwFxYuGnF2axRtPYocag6Clbb5YS7kLL+SO/TeVFzHqDIWrNKYtcsPMibjDx9O+bu+psAy9NKfWklassUA=="], "@types/babel__core": ["@types/babel__core@7.20.5", "", { "dependencies": { "@babel/parser": "^7.20.7", "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" } }, "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA=="], @@ -3539,19 +3551,7 @@ "tunnel-agent": ["tunnel-agent@0.6.0", "", { "dependencies": { "safe-buffer": "^5.0.1" } }, "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w=="], - "turbo": ["turbo@2.8.17", "", { "optionalDependencies": { "turbo-darwin-64": "2.8.17", "turbo-darwin-arm64": "2.8.17", "turbo-linux-64": "2.8.17", "turbo-linux-arm64": "2.8.17", "turbo-windows-64": "2.8.17", "turbo-windows-arm64": "2.8.17" }, "bin": { "turbo": "bin/turbo" } }, "sha512-YwPsNSqU2f/RXU/+Kcb7cPkPZARxom4+me7LKEdN5jsvy2tpfze3zDZ4EiGrJnvOm9Avu9rK0aaYsP7qZ3iz7A=="], - - "turbo-darwin-64": ["turbo-darwin-64@2.8.17", "", { "os": "darwin", "cpu": "x64" }, "sha512-ZFkv2hv7zHpAPEXBF6ouRRXshllOavYc+jjcrYyVHvxVTTwJWsBZwJ/gpPzmOKGvkSjsEyDO5V6aqqtZzwVF+Q=="], - - "turbo-darwin-arm64": ["turbo-darwin-arm64@2.8.17", "", { "os": "darwin", "cpu": "arm64" }, "sha512-5DXqhQUt24ycEryXDfMNKEkW5TBHs+QmU23a2qxXwwFDaJsWcPo2obEhBxxdEPOv7qmotjad+09RGeWCcJ9JDw=="], - - "turbo-linux-64": ["turbo-linux-64@2.8.17", "", { "os": "linux", "cpu": "x64" }, "sha512-KLUbz6w7F73D/Ihh51hVagrKR0/CTsPEbRkvXLXvoND014XJ4BCrQUqSxlQ4/hu+nqp1v5WlM85/h3ldeyujuA=="], - - "turbo-linux-arm64": ["turbo-linux-arm64@2.8.17", "", { "os": "linux", "cpu": "arm64" }, "sha512-pJK67XcNJH40lTAjFu7s/rUlobgVXyB3A3lDoq+/JccB3hf+SysmkpR4Itlc93s8LEaFAI4mamhFuTV17Z6wOg=="], - - "turbo-windows-64": ["turbo-windows-64@2.8.17", "", { "os": "win32", "cpu": "x64" }, "sha512-EijeQ6zszDMmGZLP2vT2RXTs/GVi9rM0zv2/G4rNu2SSRSGFapgZdxgW4b5zUYLVaSkzmkpWlGfPfj76SW9yUg=="], - - "turbo-windows-arm64": ["turbo-windows-arm64@2.8.17", "", { "os": "win32", "cpu": "arm64" }, "sha512-crpfeMPkfECd4V1PQ/hMoiyVcOy04+bWedu/if89S15WhOalHZ2BYUi6DOJhZrszY+mTT99OwpOsj4wNfb/GHQ=="], + "turbo": ["turbo@2.8.20", "", { "optionalDependencies": { "@turbo/darwin-64": "2.8.20", "@turbo/darwin-arm64": "2.8.20", "@turbo/linux-64": "2.8.20", "@turbo/linux-arm64": "2.8.20", "@turbo/windows-64": "2.8.20", "@turbo/windows-arm64": "2.8.20" }, "bin": { "turbo": "bin/turbo" } }, "sha512-Rb4qk5YT8RUwwdXtkLpkVhNEe/lor6+WV7S5tTlLpxSz6MjV5Qi8jGNn4gS6NAvrYGA/rNrE6YUQM85sCZUDbQ=="], "tweetnacl": ["tweetnacl@0.14.5", "", {}, "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA=="], diff --git a/package.json b/package.json index a3644a06b83..ac3b5cc61ba 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "glob": "13.0.0", "husky": "9.1.7", "lint-staged": "16.0.0", - "turbo": "2.8.17" + "turbo": "2.8.20" }, "lint-staged": { "*.{js,jsx,ts,tsx,json,css,scss}": [