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 6d51062660..e07600c265 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 c990f39a7b..c0fb91e7fa 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 b06307162d..61975a2951 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 d1048bd260..9d79e48425 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 125247ce61..b1a17f7a2b 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 b12905b4b7..3bab9dfec9 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 651d3d9295..920952207d 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 7624f10b00..81b64e89b2 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 ced9b6d8f9..2ac157fe10 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 3edf0335fa..a1933b4209 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 0848d6175a..7539f9a858 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 e9cbf61834..b8a5c9ac9f 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 e12c1422ff..8ce0eaa646 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 39b92f7f2b..51b83609ce 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 11e03b52ac..0e93b96eaa 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 b8946f0c9b..72e47ea3b3 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 a92c7384a8..7c80008e03 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 175979503b..5e9e16b2b6 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 aebea95d36..725ea555a8 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 a341b9e7cf..8c2639c43d 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 68bbcd1db3..1154f33fa8 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 0a32aa854d..cdc3dcdfe7 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 4f4bfcce69..6e7722f32c 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 b6fc448c87..8dc075fe93 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 0d981c9f3e..75db41943a 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 246d50d4e6..41ee03c37b 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 d1a264d718..a394c38b12 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 ad52791c83..2d863e6315 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 3c96fc78e6..a85c7668df 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 d4473fd41e..0184becd9a 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 ac06a5b87c..5bd78d825b 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 8289fc3476..04bf0b6ae2 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 0e245c9e82..986e1f2ada 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 3dd9cb11bf..6a6a705e9d 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 cec6c26a85..030a41b2f8 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 c2bf4a4b2e..cee75b3859 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 3e2e8fb174..4031755443 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 933e6b6a23..5dd4125199 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 11e51c7b45..ad00cb91e8 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 58d79fe67a..d631ce53a3 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 40081c16f0..a79f712a26 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 acc7fde5cc..20f002cc94 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 193fe9c292..868f098620 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 b6d8dd4db1..ea4caf06b7 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 f9b3058f25..8a3d2ae06b 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 add2d60ff5..77d1f588ef 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 347ffb04f4..bc6d015c64 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 27aad52221..bc4d08aa19 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 0d8f1dbf24..1dc53e285a 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 9d25f8fe1e..d01114af57 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 fb210593a1..2e6218f669 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 5623efe408..c153e3cf6e 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 2cc817a702..914b003b96 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 d482c72fed..4b645b557d 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 44eb3d30a8..b0b590eece 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 1b36cd7e4a..6ea083eb30 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 24a35e1fbf..b72410e82a 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 629b0a6001..bfd6c2ded7 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 ac9098395e..c5bb775128 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 362d1c8042..585ce5d563 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 bf26311b38..0617821a8d 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 c44830f3b7..2e94b4c955 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 5a582250e8..87ab3284d9 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 28fa1d7f03..664ab84464 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 eca3a30996..08b3cb324b 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 31f9aab66e..9f92645e10 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 9fc8fdbf1d..013e4dc529 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 cd930ecb21..4dc9857531 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 2eaeb2bb22..a5a2398aec 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 1cbb334e69..437f396277 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 fd71cfa7d1..b0433f1be1 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 aa0a623682..faeb6d0373 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 5478756faa..505a3e2902 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 05b2e68b4c..1200e5782f 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 f3ea6a2cb8..cf910ea902 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 24bf1a3981..489f023fc8 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 c02f4a9bf3..25cbbea75d 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 f713227916..991c1f3f55 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 e2efad69d5..1cae019223 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 e23727b20c..364d4054cd 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 cd3de03573..2e726b9ed2 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 adfb69c02d..1021163ab2 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 6919679b64..8c0dc6a7f8 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 4f9be7884c..11eb0a886c 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 82f118cf21..478eee1aa3 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 b74fbe4a13..a0b1372826 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 d013c93c28..be42732e53 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 0a09606bf8..5a5879024c 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 9758b7e1ad..e16467a221 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 e1a922daac..ccc9a1d45b 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 87fd163b3c..d9d302fe5d 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 c9cfc4953e..0e501da0e0 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 02a49ea764..a36b851275 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 aa640b0081..1254a4411d 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 147e61e575..e18385b28a 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 4fdee43095..9b21260cd6 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 1d80d052da..40e0d65b40 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 3384b93b0c..615f9b92e7 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 be5265efaa..183141c92d 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 531973197f..be33911974 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 1329b6edcd..8f46d24006 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 1a0d57d9be..0b3e745e32 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 7b382374c8..f113b3d011 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 d7bb020a1b..2ee52dbcf8 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 aa567e30e3..50dd5d1094 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 2624e5e0bb..722ccbe3bb 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 f222565fdf..5740afb8a1 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 533c80fc65..0d973281b5 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 e0b284c1bb..d2404dca50 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 b8d54b5e30..805cbcd283 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 7407c7f927..b6e53a4b8b 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 2585804b29..4c940c6865 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 2635a5be65..6b2550b491 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 34e1336bb9..91cf8befa5 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 65fdc052c6..f1a4caf30a 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 eb88fe81b4..be869557f0 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 c89b67c20a..592280e22b 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 7b62906f93..8875f15c23 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 dd92a40571..139ddd04b2 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 2f37573334..f2f8b6d088 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 fef1f8aa5d..7d51ad591b 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 fda29aa162..41b6a74571 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 9d0de09c32..427384e8fb 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 1bf54787c2..d8bdb152eb 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 d2ddb1d908..f8762ceb64 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 1b105dac5f..ababed4936 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 d0c6ed7ce3..cd666fa739 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 75a06bcfaa..6fc7472ad1 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 b6e645c42b..0d64343650 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 d91f8a6b82..d9eadc19a1 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 30fabd9d3e..b53efdc4c0 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 f6bbd422e6..3c0c4e7b4f 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 9ec8dbe482..890661242c 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 29a58c2564..d5484a7c95 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 8afe64d960..1b51a27aee 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 202de8ef70..b7243b47cd 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 2a260d88c0..bddafd3a13 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 0a868644d3..d971819a43 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 85ac2c34ba..012e9bbbe9 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 7c4d12e737..a2bfd69b48 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 432b3a4712..ba515964d8 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 a455c8f039..f07fad1d08 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 6537beb5c9..ef06c2a2e0 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 61d0670f49..07babe1c91 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 72f6ccacdc..eead620587 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 eb7e975d21..f433286ca0 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 c576453360..e9c70ccb36 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 9377e56ef7..16d98c6a40 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 dd22afb291..3f0a7faebe 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 84ec3c0e3b..91659d9454 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 11731b6ab1..cab583dd91 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 ce4076d384..e2c89a7cc1 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 a2eea30504..e21d646ee9 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 436543de76..0f990ab5b6 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 a47a2e06ef..1582e80129 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 0e4180d557..0346b97e71 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 eebc8acd3e..2affc930cc 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 8f5db2d9b0..51bf7f45fe 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 b9692c1089..08dce87549 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 f0c0a58de6..5bc6495b38 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 e5afc6e7ba..1f5842fa43 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 c49e37d017..d5c46952df 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 55c5a24720..6706fb92ca 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 6c35fd613a..243cfeca05 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 0a70229ead..832e919516 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 6c2afb6577..4c8150525d 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 2a709f3594..e92dbfdd74 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 9fbcea8143..2a9a5a9fb6 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 305f0be30c..7747dab52e 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 b55e4e7fc0..759c5dde28 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 e1d93077ec..10b9ae1d43 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 243c80ef40..69b287afb1 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 bdd504e806..53f39b6c1d 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 bd3f43f66a..84343a29cc 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 4d9ecbd21d..c79bbe00ad 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 1ff68892ee..febc7d7d20 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 2619b2c9a6..8a7f8b760f 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 9d79e48425..40aefa30a7 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 3bab9dfec9..44b70d3803 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 920952207d..a5585816a6 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 81b64e89b2..02857936b5 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 2ac157fe10..48e9b670bc 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 a1933b4209..caa9c4097f 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 7539f9a858..f2d0d8f264 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 b8a5c9ac9f..689f5a9d0c 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 8ce0eaa646..8eafbb423e 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 51b83609ce..bbcca0055b 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 0e93b96eaa..5383123dcb 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 72e47ea3b3..c7bbbe1d90 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 7c80008e03..4da1b84f96 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 5e9e16b2b6..0659dcbeda 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 725ea555a8..21ee5ffdf8 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 8c2639c43d..27318f8353 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 1154f33fa8..6b1965b8ba 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 cdc3dcdfe7..2b08bac416 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 6e7722f32c..aa99278402 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 8dc075fe93..519549cc70 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 75db41943a..b662cb091b 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 41ee03c37b..a88d67be27 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 a394c38b12..9ef661fc81 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 2d863e6315..8d90cfda4c 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 a85c7668df..60ceec13e3 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 0184becd9a..3985fb9afc 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 5bd78d825b..c66ad2dc1e 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 04bf0b6ae2..291722e7d7 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 986e1f2ada..992874e4e0 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 6a6a705e9d..d66c001f37 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 030a41b2f8..1290787726 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 cee75b3859..5cf823d99c 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 4031755443..4894ab1152 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 5dd4125199..87d4d84a4f 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 ad00cb91e8..628174f209 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 d631ce53a3..805a38b4a7 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 a79f712a26..90d594398d 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 20f002cc94..af80ad1cd8 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 868f098620..483dba6458 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 ea4caf06b7..7e8a83f2fe 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 8a3d2ae06b..9e6b14b7d9 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 77d1f588ef..51ce40ed12 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 bc6d015c64..9812095fc4 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 bc4d08aa19..5def6c2f20 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 1dc53e285a..4ce959f28e 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 d01114af57..845ffa4f07 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 2e6218f669..ca9f6eda69 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 c153e3cf6e..33adaf2874 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 914b003b96..c7370af563 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 4b645b557d..8e20e42895 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 b0b590eece..ee6d7014d1 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 6ea083eb30..033fd12948 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 b72410e82a..22b5acd29c 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 bfd6c2ded7..5ba85d7dbb 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 c5bb775128..d103a46796 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 585ce5d563..cf9b988e9a 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 0617821a8d..a5bbf82952 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 2e94b4c955..98a2e19ec0 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 87ab3284d9..24676cb10f 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 664ab84464..9484359b1a 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 08b3cb324b..fada86e318 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 9f92645e10..eeb41cd053 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 013e4dc529..fb2d6fca53 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 4dc9857531..12569327ad 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 a5a2398aec..86d6cf131c 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 437f396277..7ca1ed4485 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 b0433f1be1..4ef7f36810 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 faeb6d0373..2a4684bdf8 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 505a3e2902..4df4963fca 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 1200e5782f..76cb142cf3 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 cf910ea902..4da74a5f32 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 489f023fc8..ecacf1d588 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 25cbbea75d..9333d0d590 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 991c1f3f55..614ab7dd39 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 1cae019223..517e25bf7a 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 364d4054cd..8217e372de 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 2e726b9ed2..ad8c19949d 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 1021163ab2..94909db1b6 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 8c0dc6a7f8..21b8124324 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 11eb0a886c..2a71e96eaa 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 478eee1aa3..092677ab90 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 a0b1372826..d78251cb3c 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 be42732e53..8293dbba41 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 5a5879024c..96773f8fc7 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 e16467a221..c917e95e51 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 ccc9a1d45b..504cb6b5ff 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 d9d302fe5d..3098124b7b 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 0e501da0e0..b1aead7b07 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 a36b851275..ec7b9d9b53 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 1254a4411d..f7fc2d615b 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 e18385b28a..0834f9bb2f 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 9b21260cd6..5d06a21c21 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 40e0d65b40..0b5d4da8db 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 615f9b92e7..8904e9593e 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 183141c92d..bc6d0cf34e 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 be33911974..336b76e5df 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 8f46d24006..4b04368742 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 0b3e745e32..cfa7c8bf08 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 f113b3d011..65869e81a9 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 50dd5d1094..cf1398f295 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 722ccbe3bb..df502c237c 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 5740afb8a1..82fae4c2c3 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 0d973281b5..5771141261 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 d2404dca50..8961846d60 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 805cbcd283..4ecc27b97a 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 b6e53a4b8b..80e5b4adef 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 4c940c6865..5069ab1386 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 6b2550b491..ead70e9e7c 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 91cf8befa5..5cb6a4e88c 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 f1a4caf30a..b57dac6563 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 be869557f0..7a1050e94b 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 592280e22b..59459a8041 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 8875f15c23..4d7b860666 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 139ddd04b2..62eb55ce2f 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 f2f8b6d088..53bf028ed6 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 7d51ad591b..9e4f147a9c 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 427384e8fb..71ec14c216 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 d8bdb152eb..71ac6822e8 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 f8762ceb64..a9e4400806 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 ababed4936..8149fb4c6d 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 6fc7472ad1..db3b77506a 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 0d64343650..c99b5cf691 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 d9eadc19a1..8f1214e483 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 b53efdc4c0..5e93cdef6e 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 3c0c4e7b4f..53a9d67ada 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 890661242c..70f82ab211 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 d5484a7c95..37c151702b 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 1b51a27aee..19d3b5be4c 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 b7243b47cd..b857dbe58a 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 bddafd3a13..1437658472 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 d971819a43..18b3bd43f1 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 012e9bbbe9..8813654588 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 a2bfd69b48..d21d414c8c 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 ba515964d8..a2af1b178f 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 f07fad1d08..23edef24d9 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 ef06c2a2e0..43aeb75713 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 07babe1c91..2c4de8e7f2 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 eead620587..cc65c3f038 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 f433286ca0..6e80f4a88c 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 e9c70ccb36..118a210485 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 16d98c6a40..1ffd43ab49 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 3f0a7faebe..1f6a3820fc 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 91659d9454..2ef6b973ad 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 cab583dd91..549a67c3db 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 e2c89a7cc1..8e720f2c68 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 0f990ab5b6..e1b1e08d4d 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 1582e80129..b29079be19 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 0346b97e71..c0d9511bfc 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 2affc930cc..c6fea970e7 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 51bf7f45fe..2b62055997 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 08dce87549..3a4c4b85bf 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 5bc6495b38..cb707c349b 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 1f5842fa43..040377d962 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 d5c46952df..0a89cc24c3 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 6706fb92ca..cc7141f337 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 243cfeca05..46c910ad8f 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 832e919516..abdb86bca2 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 4c8150525d..db6e7978cb 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 e92dbfdd74..c42ea29d3d 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 2a9a5a9fb6..2965d4083a 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 7747dab52e..58ea0629dc 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 759c5dde28..76d54900af 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 10b9ae1d43..d68e16249e 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 69b287afb1..856f4f5c22 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 53f39b6c1d..1a994a6d4f 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 84343a29cc..a944fe5956 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 c79bbe00ad..5c77ac856e 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 febc7d7d20..0e02b26a17 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 8a7f8b760f..ddbad423d3 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 40aefa30a7..ee1bedb0da 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 cd5dc2f1e0..c55505f0ec 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 a3644a06b8..ac3b5cc61b 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}": [