Skip to main content
Version: 1.0

Intents Overview

Extending APIs from one application to another is powerful. However, it requires bi-lateral agreements where implementors build to proprietary APIs. A standard language for interaction between applications allows us to create workflows on the fly, so that applications can discover and link to another without any prior knowledge.

FDC3 Intents define a standard set of verbs that can be used to put together common cross-application workflows on the financial desktop.

  • Applications register the Intents & Context Data combinations they support in the App Directory
  • The App Directory supports application discovery by Intents and/or Context Data
  • Intents are not full RPC, apps don’t need to enumerate every function with an intent
  • FDC3 Standard Intents are a limited set, organizations can create their own intents

Using Intents

Combined with Context Data and App Directory standards, Intents enable rich service discovery on the desktop. For example:

Ask for a chart to be displayed

const result = await fdc3.raiseIntent("ViewChart", {
type: "fdc3.instrument",
name: "IBM",
id: {
ticker:"ibm"
}
});

Ask a specific application to display a chart

const result = await fdc3.raiseIntent("ViewChart", {
type: "fdc3.instrument",
name: "IBM",
id: {
ticker:"ibm"
}
}, "market-data-app");

Find applications that can start a chat

const intentApps = await fdc3.findIntent("StartChat");

Find available intents for a contact

const intentsAndApps = await fdc3.findIntentsByContext({
type: "fdc3.contact",
name: "Nick Kolba",
id: {
email:"nick@openfin.co"
}
});