<!--
{
  "availability" : [
    "FxPlug: 4.1.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "professional_video_applications",
  "identifier" : "/documentation/professional_video_applications/FxCommandAPI",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Professional Video Applications"
    ],
    "preciseIdentifier" : "c:objc(pl)FxCommandAPI"
  },
  "title" : "FxCommandAPI"
}
-->

# FxCommandAPI

Commands that you can tell the host to perform.

```
protocol FxCommandAPI
```

## Topics

### Instructing the Host to Perform a Command

[`func perform(FxCommand) throws`](/documentation/professional_video_applications/FxCommandAPI/perform(_:))

Instructs the host application to perform a command.

### Handling and Defining Commands

[`protocol FxCommandHandler`](/documentation/professional_video_applications/FxCommandHandler)

Defines the methods a plug-in must implement to be notified of the application’s key binding for common commands.

[`enum FxCommand`](/documentation/professional_video_applications/FxCommand)

Defines the commands that can be performed by the host.

### Constants

[`var kKeyChar_UpArrow: unichar`](/documentation/professional_video_applications/kKeyChar_UpArrow)

The key character for Unicode 0x21de.

[`var kKeyChar_LeftArrow: unichar`](/documentation/professional_video_applications/kKeyChar_LeftArrow)

The key character for Unicode 0x21e0.

[`var kKeyChar_DownArrow: unichar`](/documentation/professional_video_applications/kKeyChar_DownArrow)

The key character for Unicode 0x21df.

[`var kKeyChar_RightArrow: unichar`](/documentation/professional_video_applications/kKeyChar_RightArrow)

The key character for Unicode 0x21e2.

[`let kKey_Command: String`](/documentation/professional_video_applications/kKey_Command)

The FxCommand that will be invoked by this keypress.

[`let kKey_Character: String`](/documentation/professional_video_applications/kKey_Character)

The character the user must press to invoke the command.

[`let kKey_Modifiers: String`](/documentation/professional_video_applications/kKey_Modifiers)

The modifiers the user must include in the keypress to invoke the command.

## Relationships

### Inherited By

[`FxCommandAPI_v2`](/documentation/professional_video_applications/FxCommandAPI_v2)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)