LogoLogo
v4.3
  • Docs
  • Connector Configuration
  • Knowledge Base
  • Changelog
v4.3
  • Introduction
  • Migration from 4.2
  • Overview
    • Introduction
    • Component
    • Flow
    • End User Guide
  • Component Definition
    • Basic Structure
    • Manifest
      • name
      • label
      • icon
      • marker
      • author
      • description
      • auth
      • authConfig
      • quota
      • properties
      • inPorts
      • outPorts
      • firePatterns
      • tick
      • private
      • webhook
      • state
      • localization
    • Behaviour
    • Dependencies
    • Authentication
    • Quotas & Limits
    • Configuration
    • Example Component
  • Customizing UI
    • Custom Inspector Fields
    • Custom Theme
    • Custom Strings
    • Custom API
    • Custom Component Strings
    • Custom Component Shapes
  • Appmixer hosted
    • Getting started
    • Creating Custom Components
    • Using Appmixer SDK
    • Using Appmixer API
    • Using Oauth applications
  • Appmixer Self-Managed
    • Installation
    • Getting Started
    • Custom Component: HelloAppmixer
    • Using Appmixer SDK
    • Using Appmixer API
    • Using OAuth applications
    • Installation GCP
    • System Webhooks
    • Configuration
    • Appmixer Architecture
    • Appmixer Deployment Models
  • API
    • ACL
    • Accounts
    • Apps
    • Authentication
    • Charts
    • Data Stores
    • Files
    • Flows
    • Insights
    • Modifiers
    • People Task
    • Service Configuration
    • Unprocessed Messages
  • Appmixer SDK
    • Getting Started
    • API Reference
      • Constructor
      • API
      • FlowManager
      • Designer
      • InsightsLogs
      • InsightsDashboard
      • InsightsChartEditor
      • Accounts
      • Storage
      • PeopleTasks
      • Components
      • Wizard
      • Integrations
    • Developer mode
  • Appmixer Backoffice
    • Getting Started
    • Services
  • Tutorials
    • Managing Authentication
    • Sharing Flows
    • Flows Metadata & Filtering
    • People Tasks
    • Customizing modifiers
    • Setting ACL
    • Integration Templates
  • Appmixer CLI
    • Appmixer CLI
  • App Registration
    • Azure Cognitive Services
    • Google
    • DeepAI
    • Highrise
    • Microsoft
    • Screenshot API
    • Slack
    • Trello
    • Typeform
    • Utilities
      • Email
      • Language
      • Tasks
      • Test
      • Weather
Powered by GitBook
On this page
  • appmixer.ui.Integrations
  • Events
  • Example

Was this helpful?

Export as PDF
  1. Appmixer SDK
  2. API Reference

Integrations

PreviousWizardNextDeveloper mode

Last updated 4 years ago

Was this helpful?

appmixer.ui.Integrations

The appmixer.ui.Integrations is a UI widget that displays available and active integrations.

Method

Description

appmixer.ui.Integrations()

Constructor function that accepts config object. The config object must contain at least the el property that points to a container DOM element where the Integrations will be rendered.

open()

Render the Integrations inside its container.

close()

Close the Integrations.

on(event, handler)

React on events of the Integrations widget. See below for the list of events the Integrations widget supports.

off([event, handler])

Remove event listeners. If no arguments are provided, remove all event listeners. If only the event is provided, remove all listeners for that event. If both event and handler are given, remove the listener for that specific handler only.

reload()

Refresh the Integrations.

Events

Event

Callback

Triggered when ...

integration:create

function(templateId)

User clicks to opens an available Integration.

integration:edit

function(integrationId)

User clicks to edits an active Integration.

Example

var integrations = appmixer.ui.Integrations({
    el: '#your-integrations-div',
});
integrations.on('integration:create', async function(templateId) {
    // Create integration flow as a clone of the template. Disconnect
    // accounts because they might not be shared with the end user.
    var integrationId = await appmixer.api.cloneFlow(templateId, { connectAccounts: false });
    // Identify the clone as an integration.
    await appmixer.api.updateFlow(integrationId, { templateId });

    // Open appmixer.ui.Wizard
    var wizard = appmixer.ui.Wizard({
        el: '#your-wizard-div',
        flowId: integrationId,
    });
    wizard.open();
    integrations.reload();
});
integrations.on('integration:edit', function(integrationId) {
    // Open appmixer.ui.Wizard
    var wizard = appmixer.ui.Wizard({
        el: '#your-wizard-div',
        flowId: integrationId,
    });
    wizard.open();
});
integrations.open();