--- layout: docs page_title: plugin register - Command description: |- The "plugin register" command registers a new plugin in Vault's plugin catalog. --- # plugin register The `plugin register` command registers a new plugin in Vault's plugin catalog. The plugin's type of "auth", "database", or "secret" must be included. ## Examples Register a plugin: ```shell-session $ vault plugin register \ -sha256=d3f0a8be02f6c074cf38c9c99d4d04c9c6466249 \ auth my-custom-plugin Success! Registered plugin: my-custom-plugin ``` Register a plugin with custom args: ```shell-session $ vault plugin register \ -sha256=d3f0a8be02f6c074cf38c9c99d4d04c9c6466249 \ -args=--with-glibc,--with-curl-bindings \ auth my-custom-plugin ``` ## Usage The following flags are available in addition to the [standard set of flags](/vault/docs/commands) included on all commands. ### Output options - `-format` `(string: "table")` - Print the output in the given format. Valid formats are "table", "json", or "yaml". This can also be specified via the `VAULT_FORMAT` environment variable. ### Command options - `-sha256` `(string: )` - SHA256 of the plugin binary or the OCI image provided. This is required for all plugins. - `-args` `([]string: [])` - Argument to pass to the plugin when starting. This flag can be specified multiple times to specify multiple args. - `-command` `(string: "")` - Command to spawn the plugin. This defaults to the name of the plugin if both `-oci_image` and `-command` are unspecified. - `-env` `([]string: [])` - Environment variables to set for the plugin when starting. This flag can be specified multiple times to specify multiple environment variables. - `-oci_image` `(string: "")` - OCI image to run. If specified, setting `-command`, `-args`, and `-env` will update the container's entrypoint, args, and environment variables (append-only) respectively. - `-runtime` `(string: "")` - Vault plugin runtime to use if `-oci_image` is specified. - `-version` `(string: "")` - Semantic version of the plugin. Used as the tag when specifying `-oci_image`, but any leading 'v' will automatically be trimmed.