API calls for all endpoints tagged Plugins.
Summary
Functions
Create a new plugin Creates a new plugin with the specified configuration.
Delete a plugin Removes a plugin from the configuration and stops it if running.
Get a specific plugin
Returns the configuration for a specific plugin. The response includes the plugin status with types array showing which interfaces the plugin implements (llm, mcp, http). The actualName field shows the plugin name from GetName() (used as the map key), which may differ from the display name (name).
List built-in plugin names Returns the canonical list of built-in plugin names available in this Bifrost build. Use this to discover which plugins can be enabled without supplying a custom binary.
List all plugins
Returns a list of all plugins with their configurations and status. The actualName field contains the plugin name from GetName() (used as the map key), while name contains the display name from the configuration. The types array in the status shows which interfaces the plugin implements (llm, mcp, http).
Update a plugin
Updates a plugin's configuration. Will reload or stop the plugin based on enabled status. The response actualName field shows the plugin name from GetName() (used as the map key), which may differ from the display name (name).
Functions
@spec create_plugin( Tesla.Env.client(), ExBifrost.Model.CreatePluginRequest.t(), keyword() ) :: {:ok, ExBifrost.Model.BifrostError.t()} | {:ok, ExBifrost.Model.CreatePlugin201Response.t()} | {:error, Tesla.Env.t()}
Create a new plugin Creates a new plugin with the specified configuration.
Parameters
connection(ExBifrost.Connection): Connection to servercreate_plugin_request(CreatePluginRequest):opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.CreatePlugin201Response.t}on success{:error, Tesla.Env.t}on failure
@spec delete_plugin(Tesla.Env.client(), String.t(), keyword()) :: {:ok, ExBifrost.Model.MessageResponse.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
Delete a plugin Removes a plugin from the configuration and stops it if running.
Parameters
connection(ExBifrost.Connection): Connection to servername(String.t): Plugin display name (the config fieldname, not the internalactualNamefrom GetName())opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.MessageResponse.t}on success{:error, Tesla.Env.t}on failure
@spec get_plugin(Tesla.Env.client(), String.t(), keyword()) :: {:ok, ExBifrost.Model.Plugin.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
Get a specific plugin
Returns the configuration for a specific plugin. The response includes the plugin status with types array showing which interfaces the plugin implements (llm, mcp, http). The actualName field shows the plugin name from GetName() (used as the map key), which may differ from the display name (name).
Parameters
connection(ExBifrost.Connection): Connection to servername(String.t): Plugin display name (the config fieldname, not the internalactualNamefrom GetName())opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.Plugin.t}on success{:error, Tesla.Env.t}on failure
@spec list_builtin_plugins( Tesla.Env.client(), keyword() ) :: {:ok, ExBifrost.Model.ListBuiltinPlugins200Response.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
List built-in plugin names Returns the canonical list of built-in plugin names available in this Bifrost build. Use this to discover which plugins can be enabled without supplying a custom binary.
Parameters
connection(ExBifrost.Connection): Connection to serveropts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.ListBuiltinPlugins200Response.t}on success{:error, Tesla.Env.t}on failure
@spec list_plugins( Tesla.Env.client(), keyword() ) :: {:ok, ExBifrost.Model.BifrostError.t()} | {:ok, ExBifrost.Model.ListPluginsResponse.t()} | {:error, Tesla.Env.t()}
List all plugins
Returns a list of all plugins with their configurations and status. The actualName field contains the plugin name from GetName() (used as the map key), while name contains the display name from the configuration. The types array in the status shows which interfaces the plugin implements (llm, mcp, http).
Parameters
connection(ExBifrost.Connection): Connection to serveropts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.ListPluginsResponse.t}on success{:error, Tesla.Env.t}on failure
@spec update_plugin( Tesla.Env.client(), String.t(), ExBifrost.Model.UpdatePluginRequest.t(), keyword() ) :: {:ok, ExBifrost.Model.BifrostError.t()} | {:ok, ExBifrost.Model.CreatePlugin201Response.t()} | {:error, Tesla.Env.t()}
Update a plugin
Updates a plugin's configuration. Will reload or stop the plugin based on enabled status. The response actualName field shows the plugin name from GetName() (used as the map key), which may differ from the display name (name).
Parameters
connection(ExBifrost.Connection): Connection to servername(String.t): Plugin display name (the config fieldname, not the internalactualNamefrom GetName())update_plugin_request(UpdatePluginRequest):opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.CreatePlugin201Response.t}on success{:error, Tesla.Env.t}on failure