> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ravenna.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Integrations

> Browse all Ravenna integrations including identity providers, ticketing systems, device management, HRIS, knowledge sources, and incident tools.

export const SearchableIntegrations = () => {
  const [searchTerm, setSearchTerm] = useState('');
  const [selectedFilter, setSelectedFilter] = useState(null);
  const integrations = [{
    title: 'BambooHR',
    icon: '/icons/bamboohr.png',
    href: '/integrations/bamboohr/overview',
    description: 'Sync employee data from BambooHR for personalized AI responses, intelligent routing, and time-off management through workflows.',
    category: 'HRIS',
    supports: ['Workflows']
  }, {
    title: 'Coda',
    icon: '/icons/coda.svg',
    href: '/integrations/coda/overview',
    description: 'Sync Coda documents and pages to enhance your knowledge base with structured content and data.',
    category: 'Knowledge',
    supports: ['Knowledge']
  }, {
    title: 'Confluence',
    icon: '/icons/confluence.jpg',
    href: '/integrations/confluence/overview',
    description: 'Import Confluence spaces and pages to provide your AI assistant with comprehensive documentation and wiki content.',
    category: 'Knowledge',
    supports: ['Knowledge']
  }, {
    title: 'Fleet',
    icon: '/icons/fleet.svg',
    href: '/integrations/fleet/overview',
    description: 'Monitor device health, security compliance, and software inventory with Fleet Device Management integration.',
    category: 'Device Management',
    supports: ['Agents', 'Workflows']
  }, {
    title: 'Freshservice',
    icon: '/icons/freshservice.svg',
    href: '/integrations/freshservice/overview',
    description: 'Replicate tickets from Ravenna to Freshservice with automatic sync of comments, status, priority, and assignee changes.',
    category: 'Ticketing',
    supports: ['Ticket Replication']
  }, {
    title: 'Guru',
    icon: '/icons/guru.svg',
    href: '/integrations/guru/overview',
    description: 'Sync Guru cards and collections into your knowledge base so AI agents reference your verified team knowledge.',
    category: 'Knowledge',
    supports: ['Knowledge']
  }, {
    title: 'Google Drive',
    icon: '/icons/gdrive.svg',
    href: '/integrations/google-drive/overview',
    description: 'Import Google Drive documents, sheets, and presentations to build a comprehensive knowledge repository.',
    category: 'Knowledge',
    supports: ['Knowledge']
  }, {
    title: 'Google Workspace',
    icon: '/icons/google.svg',
    href: '/integrations/google-workspace/overview',
    description: 'Automate user and group management with Google Workspace integration using service account credentials and domain-wide delegation.',
    category: 'Software Access',
    supports: ['Agents', 'Workflows', 'Admin']
  }, {
    title: 'HubSpot',
    icon: '/icons/hubspot.svg',
    href: '/integrations/hubspot/overview',
    description: 'Sync contacts, companies, and deals between Ravenna and HubSpot CRM to streamline customer management and support workflows.',
    category: 'CRM',
    supports: ['Agents']
  }, {
    title: 'HiBob',
    icon: '/icons/hibob.png',
    href: '/integrations/hibob/overview',
    description: 'Sync employee data from HiBob for personalized AI responses, intelligent routing, and time-off management through workflows.',
    category: 'HRIS',
    supports: ['Workflows']
  }, {
    title: 'Incident.io',
    icon: '/icons/incident-io.svg',
    href: '/integrations/incident-io/overview',
    description: 'Automate incident management workflows and validate on-call schedules with Incident.io integration.',
    category: 'Incident Management',
    supports: ['Agents', 'Workflows']
  }, {
    title: 'Iru',
    icon: '/icons/iru.png',
    href: '/integrations/iru/overview',
    description: 'Automate device management, security compliance checks, and IT support workflows with Iru integration.',
    category: 'Device Management',
    supports: ['Agents', 'Workflows']
  }, {
    title: 'Jamf Pro',
    icon: '/icons/jamf.jpeg',
    href: '/integrations/jamf/overview',
    description: 'Monitor device health, security compliance, and software inventory with our Jamf Pro integration.',
    category: 'Device Management',
    supports: ['Agents', 'Workflows']
  }, {
    title: 'Microsoft Intune',
    icon: '/icons/intune.svg',
    href: '/integrations/intune/overview',
    description: 'Look up managed devices, check compliance status, and view endpoint information with Microsoft Intune.',
    category: 'Device Management',
    supports: ['Agents']
  }, {
    title: 'Jira',
    icon: '/icons/jira.png',
    href: '/integrations/jira/overview',
    description: 'Connect Ravenna to Jira to create, link, and track issues with bidirectional sync. Supports Jira Software, Work Management, and Service Management (JSM) with full ITSM capabilities.',
    category: 'Ticketing',
    supports: ['Ticket Replication', 'Agents', 'Workflows']
  }, {
    title: 'JumpCloud',
    icon: '/icons/jumpcloud.jpeg',
    href: '/integrations/jumpcloud/overview',
    description: 'Automate user lifecycle management, group assignments, security resets, and device lookups with JumpCloud cloud directory integration.',
    category: 'Software Access',
    supports: ['Workflows', 'Admin']
  }, {
    title: 'Linear',
    icon: '/icons/linear.svg',
    href: '/integrations/linear/overview',
    description: 'Link Ravenna tickets to Linear issues for product and engineering teams with issue synchronization and workflow automation.',
    category: 'Ticketing',
    supports: ['Ticket Replication', 'Agents', 'Workflows']
  }, {
    title: 'Microsoft Entra ID',
    icon: '/icons/microsoft-entra.svg',
    href: '/integrations/microsoft-entra/overview',
    description: 'Automate user and group management with Microsoft Entra ID (formerly Azure Active Directory) integration using OAuth 2.0.',
    category: 'Software Access',
    supports: ['Agents', 'Workflows', 'Admin']
  }, {
    title: 'Microsoft Teams',
    icon: '/icons/microsoft-teams.svg',
    href: '/integrations/microsoft-teams/overview',
    description: 'Connect Ravenna to Microsoft Teams for ticketing, AI assistance, approvals, and a My Tickets tab directly in Teams.',
    category: 'Microsoft Teams',
    supports: ['Knowledge', 'Agents', 'Workflows']
  }, {
    title: 'Notion',
    icon: '/icons/notion.svg',
    href: '/integrations/notion/overview',
    description: 'Connect Notion to sync pages and databases into your knowledge base for AI-powered support responses.',
    category: 'Knowledge',
    supports: ['Knowledge']
  }, {
    title: 'Okta',
    icon: '/icons/okta.svg',
    href: '/integrations/okta/overview',
    description: 'Automate user and group management, application provisioning, and password resets with Okta integration.',
    category: 'Software Access',
    supports: ['Agents', 'Workflows', 'Admin']
  }, {
    title: 'PagerDuty',
    icon: '/icons/pager-duty.jpeg',
    href: '/integrations/pagerduty/overview',
    description: 'Validate on-call schedules and automate incident management workflows with PagerDuty integration.',
    category: 'Incident Management',
    supports: ['Agents', 'Workflows']
  }, {
    title: 'Rippling',
    icon: '/icons/rippling.png',
    href: '/integrations/rippling/overview',
    description: 'Sync employee data from Rippling for personalized AI responses and intelligent ticket routing based on department, role, or team.',
    category: 'HRIS',
    supports: []
  }, {
    title: 'Ravenna MCP',
    icon: '/icons/ravenna.png',
    href: '/documentation/automate/mcp/overview',
    description: 'Connect AI assistants like ChatGPT, Claude, and Cursor directly to your Ravenna workspace using the Model Context Protocol.',
    category: 'AI',
    supports: []
  }, {
    title: 'Slack',
    icon: '/icons/slack.svg',
    href: '/integrations/slack/overview',
    description: 'Connect Ravenna to Slack for seamless ticketing, AI assistance, and workflow automation directly in your workspace.',
    category: 'Slack',
    supports: ['Knowledge', 'Agents', 'Workflows']
  }, {
    title: 'SSO',
    icon: 'shield-check',
    href: '/integrations/sso/overview',
    description: 'Enable Single Sign-On with your identity provider for centralized authentication and user management.',
    category: 'Identity Provider',
    supports: ['Admin']
  }, {
    title: 'Vanta',
    icon: '/icons/vanta.svg',
    href: '/integrations/vanta/overview',
    description: 'Connect Ravenna to Vanta to automatically sync user account data for continuous compliance monitoring and security audits.',
    category: 'Compliance',
    supports: ['Agents', 'Admin']
  }, {
    title: 'Zendesk',
    icon: '/icons/zendesk.png',
    href: '/integrations/zendesk/overview',
    description: 'Import Zendesk Help Center articles into your knowledge base so AI agents answer with your existing support content.',
    category: 'Knowledge',
    supports: ['Knowledge']
  }, {
    title: 'Workday',
    icon: '/icons/workday.png',
    href: '/integrations/workday/overview',
    description: 'Sync employee data from Workday for personalized AI responses, intelligent routing, and time-off management through workflows.',
    category: 'HRIS',
    supports: ['Workflows']
  }];
  const filteredIntegrations = integrations.filter(integration => {
    const matchesSearch = integration.title.toLowerCase().includes(searchTerm.toLowerCase()) || integration.description.toLowerCase().includes(searchTerm.toLowerCase()) || integration.category.toLowerCase().includes(searchTerm.toLowerCase());
    const matchesFilter = !selectedFilter || integration.supports.includes(selectedFilter);
    return matchesSearch && matchesFilter;
  });
  const getFeatureStyle = feature => {
    const styles = {
      Knowledge: {
        color: 'blue',
        icon: 'book-open'
      },
      Agents: {
        color: 'purple',
        icon: 'sparkles'
      },
      Workflows: {
        color: 'green',
        icon: 'zap'
      },
      'Ticket Replication': {
        color: 'orange',
        icon: 'refresh-cw'
      },
      Admin: {
        color: 'gray',
        icon: 'shield-check'
      }
    };
    return styles[feature] || ({
      color: 'gray',
      icon: 'circle'
    });
  };
  const filterOptions = ['Knowledge', 'Agents', 'Workflows', 'Ticket Replication', 'Admin'];
  return <div>
      {}
      <div className="mb-6 p-4 border border-gray-200 dark:border-neutral-600 rounded-xl bg-white dark:bg-neutral-900">
        {}
        <div className="mb-3">
          <div className="relative">
            <div className="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none">
              <Icon icon="search" size={16} color="currentColor" className="text-gray-400 dark:text-white" />
            </div>
            <input type="text" placeholder="Search integrations..." value={searchTerm} onChange={e => setSearchTerm(e.target.value)} className="block w-full pl-10 pr-3 py-3 border border-gray-200 dark:border-neutral-600 rounded-xl text-sm bg-white dark:bg-neutral-900 placeholder-gray-500 dark:placeholder-neutral-400 text-gray-900 dark:text-white focus:outline-none focus:ring-1 focus:ring-black focus:border-transparent dark:focus:ring-white transition-all duration-200" />
          </div>
        </div>

        {}
        <div className="flex flex-col sm:flex-row sm:items-center gap-2">
          <div className="text-xs font-medium text-gray-600 dark:text-gray-400">Filter</div>
          <div className="flex gap-2 flex-wrap">
            {filterOptions.map(filter => {
    const style = getFeatureStyle(filter);
    const isSelected = selectedFilter === filter;
    return <button key={filter} onClick={() => setSelectedFilter(isSelected ? null : filter)} className={`transition-all duration-200 ${isSelected ? 'opacity-100' : 'opacity-60 hover:opacity-100'}`}>
                  <Badge color={style.color} icon={style.icon} size="sm">
                    {filter}
                  </Badge>
                </button>;
  })}
          </div>
        </div>
      </div>

      {}
      {(searchTerm || selectedFilter) && <div className="mb-4 text-sm text-gray-600 dark:text-gray-400">
          {filteredIntegrations.length} integration{filteredIntegrations.length !== 1 ? 's' : ''}{' '}
          found
          {selectedFilter && ` with ${selectedFilter}`}
        </div>}

      {}
      <div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4">
        {filteredIntegrations.map((integration, index) => <a key={index} href={integration.href} className="integration-card flex flex-col bg-white dark:bg-neutral-900 border border-gray-200 dark:border-neutral-700 rounded-xl overflow-hidden no-underline transition-all duration-200">
            {}
            <div style={{
    display: 'flex',
    flexDirection: 'column',
    gap: '18px',
    alignItems: 'center',
    justifyContent: 'center',
    padding: '28px 24px'
  }}>
              {}
              <div className="integration-card-icon flex items-center justify-center w-12 h-12 bg-white dark:bg-neutral-800 rounded-full p-1">
                <Icon icon={integration.icon} size={24} color="#9E9E9E" />
              </div>

              {}
              <p className="text-black dark:text-white" style={{
    fontFamily: 'Inter, sans-serif',
    fontWeight: 500,
    fontSize: '18px',
    lineHeight: '1.25',
    letterSpacing: '-0.09px',
    textAlign: 'center',
    margin: 0,
    whiteSpace: 'pre-wrap',
    minWidth: '100%'
  }}>
                {integration.title}
              </p>

              {}
              {integration.supports && integration.supports.length > 0 && <div style={{
    display: 'flex',
    gap: '6px',
    flexWrap: 'wrap',
    justifyContent: 'center'
  }}>
                  {integration.supports.map((feature, idx) => {
    const style = getFeatureStyle(feature);
    return <Badge key={idx} color={style.color} icon={style.icon} size="sm">
                        {feature}
                      </Badge>;
  })}
                </div>}
            </div>

            {}
            <div className="border-t border-gray-200 dark:border-neutral-700 w-full" />

            {}
            <div style={{
    padding: '16px 20px',
    display: 'flex',
    alignItems: 'center'
  }}>
              <p className="text-black/70 dark:text-neutral-400" style={{
    fontFamily: 'Inter, sans-serif',
    fontWeight: 400,
    fontSize: '13px',
    lineHeight: '1.55',
    letterSpacing: '0.195px',
    margin: 0,
    overflow: 'hidden',
    textOverflow: 'ellipsis',
    whiteSpace: 'pre-wrap',
    flex: '1 0 0'
  }}>
                {integration.description}
              </p>
            </div>
          </a>)}
      </div>

      {}
      {(searchTerm || selectedFilter) && filteredIntegrations.length === 0 && <div className="text-center py-12">
          <Icon icon="search-x" size={48} className="mx-auto text-gray-400 mb-4" />
          <h3 className="text-lg font-medium text-gray-900 dark:text-white mb-2">
            No integrations found
          </h3>
          <p className="text-gray-600 dark:text-gray-400">
            Try adjusting your search terms or filters, or browse all available integrations above.
          </p>
        </div>}
    </div>;
};

Ravenna integrates with the tools modern support, IT, and operations teams rely on – from identity providers and issue trackers to incident management platforms.\
These integrations are built to help you work faster, keep context front-and-center, and avoid the constant tab-switching that slows teams down.

<Note>
  Integrations can only be added by Organization Admin. If you do not see an
  integrations tab in Settings, please contact your admin.
</Note>

<SearchableIntegrations />
