FDC3

Plug-and-play with FDC3

To enable seamless interoperability, all the apps on a desktop need to speak the same language. That’s why OpenFin founded the FDC3 standard in collaboration with major industry participants. Our FDC3 API implements the standard on OpenFin OS.

Data

Context Data

At the heart of FDC3 is a very simple data type known as ‘Context’. This extensible structure forms the basis of the information that is shared between applications through context sharing and intents. The FDC3 Specification includes a number of standard types, such as Contact and Instrument, but applications are free to introduce their own.

Context

Share Context

No more bilateral integrations needed. Seamlessly share FDC3 Context between multiple apps, across process boundaries and across multiple runtime versions.

Intents

Use Intents to Connect Workflow

Use FDC3 Intents to invoke another app into the workflow. Start a chat, view a chart, create a watchlist and more.

Security

Ensure Data Security

With OpenFin, each platform decides which apps can access its FDC3 data. This ensures data doesn’t leak to untrusted apps running on the same desktop.

Control

Manage Your Own Desktop Agent

Our FDC3 architecture allows you to control and manage your own FDC3 Desktop Agent, including the timing of upgrading to a new version.

FDC3 API

FDC3 API Documentation

FDC3 FAQ

What is FDC3?

Expand

FDC3 is an open standard for plug-and-play interoperability between desktop apps.

Where does the name FDC3 come from?

Expand

FDC3 is an abbreviation for Financial Desktop Connectivity and Collaboration Consortium. The name was inspired by the W3C (World Wide Web Consortium) which is a standards body for defining the open web platform, including HTML5.

How did the FDC3 standard get started?

Expand

OpenFin started the group in the fall of 2017, bringing together major banks, buy-side and industry platforms. The initiative was announced publicly in March 2018: https://www.prnewswire.com/news-releases/major-financial-industry-players-rally-around-fdc3-to-provide-universal-technology-standards-300610226.html

What is the relationship with FINOS?

Expand

OpenFin contributed the initiative to FINOS (FinTech Open Source Foundation) in May 2018 to bring additional governance and independence to the development of the standard: https://www.prnewswire.com/news-releases/finos-expands-with-openfin-contribution-of-fdc3-application-interoperability-standards-300648249.html

Does OpenFin continue to participate in FINOS FDC3 working groups?

Expand

Yes. In addition, we’ve made it our mission at OpenFin to bridge the communication around FDC3 with our many customers who aren’t active working group participants.

What support does OpenFin Workspace provide for FCD3?

Expand

OpenFin Workspace enables context sharing using FDC3 APIs.

What support does OpenFin Container provide for FCD3?

Expand

OpenFin Container just released new FDC3 APIs that implement the standard specification: https://developer.openfin.co/docs/javascript/19.89.61.3/Fdc3.html

Did OpenFin Container support FDC3 before?

Expand

Yes. OpenFin previously had an FDC3 Service that implemented the standard.

Why the change from a Service to the new APIs?

Expand

With the new approach, developers take upgrades to FDC3 APIs at the same time as upgrades for all other OpenFin APIs. The previous Service architecture had the potential for compatibility issues.

What is the Interop API?

Expand

OpenFin Container recently added improved APIs to simplify support of FDC3 and address feedback from customers related to data security and modeling of the relationship between apps.

Are the new Interop APIs a departure from FDC3?

Expand

No. FDC3 APIs are built on top of the Interop APIs. Previously our FDC3 Service was built on the OpenFin Channel API. The Interop API builds on the Channel API and simplifies development. For example, it makes it easy to share context only with other trusted apps which addresses a key customer concern around data security.

Why do you need a different Interop API and not just the FDC3 API?

Expand

Our FDC3 APIs implement the FDC3 specification to the letter as a developer would expect. However, our customers need us to provide them with additional capabilities that aren’t (yet) part of the FDC3 standard. This is very common in standards development -- APIs come first, standards follow.

Why does the Interop API have different naming than FDC3?

Expand

To avoid developer confusion with FDC3 APIs.

What happens if one app uses FDC3 API and another uses Interop API?

Expand

They are fully compatible since the FDC3 API is built on top of the Interop API.

Can my apps use either API when running in OpenFin Workspace?

Expand

Yes. They’re both fully compatible.

Which apps can access data that I share using FDC3 protocol?

Expand

With the introduction of our new Interop API, a Platform can decide which apps are trusted and only those apps are given access to data. This allows multiple platforms on the same desktop to use FDC3 protocol without data leakage. OpenFin is unique in providing this capability.

Who decides when the OpenFin FDC3 DesktopAgent is upgraded?

Expand

With the introduction of our new Interop API, there is no longer a dependency between apps on the same desktop. Each app upgrades its FDC3 DesktopAgent software on its own timing. OpenFin is unique in providing this capability.

What’s next on the roadmap?

Expand

We are actively participating in the FDC3 2.0 specification process and will be adding support once finalized.

Where can I learn more about FDC3 and OpenFin?

Expand

If you have additional questions about FDC3 and our approach, please don’t hesitate to reach out to us at fdc3@openfin.co.

Get Started

Join the growing number of Banks and vendors in the OpenFin ecosystem by adopting the FDC3 Standards

FDC3 Documentation

A quick introduction for developers to OpenFin's new paradigm for FDC3 support.

Why FDC3

If you haven’t heard of FDC3 before and are feeling left out of the zeitgeist, here’s a primer.

Container

OpenFin’s developer platform makes it easy to build enterprise-grade native web apps