Skip to main content
Version: 1.2

Metadata

FDC3 API operations return various types of metadata.

AppIntent

interface AppIntent {
intent: IntentMetadata;
apps: Array<AppMetadata>;
}

An interface that represents the binding of an intent to apps, returned as part of intent disocvery. For each intent, it reference the applications that support that intent.

See also

AppMetadata

interface AppMetadata {
name: string;
appId?: string;
version?: string;
title?: string;
tooltip?: string;
description?: string;
icons?: Array<string>;
images?: Array<string>;
}

App metadata is provided by the FDC3 App Directory that the desktop agent connects to.

It always includes at least a name property, which can be used with open and raiseIntent.

Optionally, extra information from the app directory can be returned, to aid in rendering UI elements, e.g. a context menu. This includes a title, description, tooltip and icon and image URLs.

In situations where a desktop agent connects to multiple app directories or multiple versions of the same app exists in a single app directory, it may be neccessary to specify appId and version to target applications that share the same name.

See also

DisplayMetadata

 public interface DisplayMetadata {
name?: string;
color?: string;
glyph?: string;
}

A desktop agent (typically for system channels) may want to provide additional information about how a channel can be represented in a UI. A common use case is for color linking.

See also

Properties

name

name?: string;

The display name for the channel.

color

color?: string;

A name, hex, rgba, etc. that should be associated within the channel when displaying it in a UI.

glyph

glyph: string;

A URL of an image that can be used to display this channel.

ImplementationMetadata

public interface ImplementationMetadata {
fdc3Version: string;
provider: string;
providerVersion?: string;
}

Metadata relating to the FDC3 DesktopAgent object and its provider, including the supported version of the FDC3 specification and the name of the provider of the implementation.

See also

IntentMetadata

interface IntentMetadata {
name: string;
displayName: string;
}

The Interface used to describe an Intent within the platform.

See also

IntentResolution

interface IntentResolution {
source: TargetApp;
/**
* @deprecated not assignable from intent listeners
*/
data?: object;
version: string;
}

IntentResolution provides a standard format for data returned upon resolving an intent.

Example

// resolve a "Chain" type intent
const intentResolution = await fdc3.raiseIntent("intentName", context);

See also