# \PluginsApi

All URIs are relative to *https://registry.example.com*

Method | HTTP request | Description
------------- | ------------- | -------------
[**disable_plugin**](PluginsApi.md#disable_plugin) | **POST** /api/v1/plugins/{id}/disable | Disable a plugin
[**enable_plugin**](PluginsApi.md#enable_plugin) | **POST** /api/v1/plugins/{id}/enable | Enable a plugin
[**get_plugin**](PluginsApi.md#get_plugin) | **GET** /api/v1/plugins/{id} | Get plugin
[**get_plugin_config**](PluginsApi.md#get_plugin_config) | **GET** /api/v1/plugins/{id}/config | Get plugin config
[**get_plugin_health**](PluginsApi.md#get_plugin_health) | **GET** /api/v1/plugins/{id}/health | Get plugin health
[**install_plugin_from_git**](PluginsApi.md#install_plugin_from_git) | **POST** /api/v1/plugins/install/git | Install plugin from Git
[**install_plugin_from_local**](PluginsApi.md#install_plugin_from_local) | **POST** /api/v1/plugins/install/local | Install plugin from local path
[**install_plugin_from_zip**](PluginsApi.md#install_plugin_from_zip) | **POST** /api/v1/plugins/install/zip | Install plugin from ZIP
[**list_plugin_events**](PluginsApi.md#list_plugin_events) | **GET** /api/v1/plugins/{id}/events | List plugin events
[**list_plugins**](PluginsApi.md#list_plugins) | **GET** /api/v1/plugins | List plugins
[**reload_plugin**](PluginsApi.md#reload_plugin) | **POST** /api/v1/plugins/{id}/reload | Reload a plugin
[**restart_plugin**](PluginsApi.md#restart_plugin) | **POST** /api/v1/plugins/{id}/restart | Restart plugin
[**uninstall_plugin**](PluginsApi.md#uninstall_plugin) | **DELETE** /api/v1/plugins/{id} | Uninstall plugin
[**update_plugin**](PluginsApi.md#update_plugin) | **PATCH** /api/v1/plugins/{id} | Update plugin
[**update_plugin_config**](PluginsApi.md#update_plugin_config) | **PUT** /api/v1/plugins/{id}/config | Update plugin config
[**upgrade_plugin**](PluginsApi.md#upgrade_plugin) | **POST** /api/v1/plugins/{id}/upgrade | Upgrade plugin
[**upload_plugin**](PluginsApi.md#upload_plugin) | **POST** /api/v1/plugins | Upload a plugin



## disable_plugin

> models::Plugin disable_plugin(id)
Disable a plugin

Deactivates a plugin so it stops processing events until re-enabled.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin ID. | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## enable_plugin

> models::Plugin enable_plugin(id)
Enable a plugin

Activates a disabled plugin so it begins processing events.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin ID. | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## get_plugin

> models::Plugin get_plugin(id)
Get plugin

Returns detailed information about a single installed plugin.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## get_plugin_config

> std::collections::HashMap<String, serde_json::Value> get_plugin_config(id)
Get plugin config

Returns the current configuration for the specified plugin.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |

### Return type

[**std::collections::HashMap<String, serde_json::Value>**](serde_json::Value.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## get_plugin_health

> models::GetPluginHealth200Response get_plugin_health(id)
Get plugin health

Returns the current health status and resource usage of the specified plugin.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |

### Return type

[**models::GetPluginHealth200Response**](getPluginHealth_200_response.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## install_plugin_from_git

> models::Plugin install_plugin_from_git(install_plugin_from_git_request)
Install plugin from Git

Installs a WASM plugin by cloning from a Git repository URL.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**install_plugin_from_git_request** | [**InstallPluginFromGitRequest**](InstallPluginFromGitRequest.md) |  | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## install_plugin_from_local

> models::Plugin install_plugin_from_local(install_plugin_from_local_request)
Install plugin from local path

Installs a WASM plugin from a local filesystem path accessible to the server.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**install_plugin_from_local_request** | [**InstallPluginFromLocalRequest**](InstallPluginFromLocalRequest.md) |  | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## install_plugin_from_zip

> models::Plugin install_plugin_from_zip(file)
Install plugin from ZIP

Installs a WASM plugin by uploading a ZIP archive containing the plugin bundle.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**file** | **Vec<u8>** | ZIP archive containing the plugin bundle. | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: multipart/form-data
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## list_plugin_events

> models::ListPluginEvents200Response list_plugin_events(id, page, per_page)
List plugin events

Returns a paginated list of events emitted by the specified plugin.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |
**page** | Option<**i32**> | Page number for pagination |  |[default to 1]
**per_page** | Option<**i32**> | Number of items per page |  |[default to 20]

### Return type

[**models::ListPluginEvents200Response**](listPluginEvents_200_response.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## list_plugins

> models::ListPlugins200Response list_plugins(page, per_page)
List plugins

Returns a paginated list of installed plugins.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**page** | Option<**i32**> | Page number for pagination |  |[default to 1]
**per_page** | Option<**i32**> | Number of items per page |  |[default to 20]

### Return type

[**models::ListPlugins200Response**](listPlugins_200_response.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## reload_plugin

> models::Plugin reload_plugin(id)
Reload a plugin

Hot-reloads a plugin, re-reading its WASM binary and configuration without a full restart.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin ID. | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## restart_plugin

> models::Plugin restart_plugin(id)
Restart plugin

Restarts a plugin that is in an error state, reinitializing its WASM runtime.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## uninstall_plugin

> uninstall_plugin(id)
Uninstall plugin

Uninstalls a plugin and removes its WASM binary and configuration.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |

### Return type

 (empty response body)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## update_plugin

> models::Plugin update_plugin(id, update_plugin_request)
Update plugin

Updates plugin status (activate or disable).

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |
**update_plugin_request** | [**UpdatePluginRequest**](UpdatePluginRequest.md) |  | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## update_plugin_config

> std::collections::HashMap<String, serde_json::Value> update_plugin_config(id, request_body)
Update plugin config

Replaces the entire plugin configuration with the provided JSON object.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |
**request_body** | [**std::collections::HashMap<String, serde_json::Value>**](serde_json::Value.md) |  | [required] |

### Return type

[**std::collections::HashMap<String, serde_json::Value>**](serde_json::Value.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## upgrade_plugin

> models::Plugin upgrade_plugin(id)
Upgrade plugin

Upgrades the plugin to the latest available version from its original source.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | Plugin UUID | [required] |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## upload_plugin

> models::Plugin upload_plugin(file, name, description)
Upload a plugin

Uploads and installs a plugin from a multipart form submission containing the WASM binary and metadata.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**file** | **Vec<u8>** | The plugin WASM binary. | [required] |
**name** | Option<**String**> | Human-readable plugin name. |  |
**description** | Option<**String**> | Plugin description. |  |

### Return type

[**models::Plugin**](Plugin.md)

### Authorization

[apiKeyAuth](../README.md#apiKeyAuth), [bearerAuth](../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: multipart/form-data
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

