# PluginsApi

All URIs are relative to *http://localhost*

|Method | HTTP request | Description|
|------------- | ------------- | -------------|
|[**batchDeletePluginsApiPluginsBatchDelete**](#batchdeletepluginsapipluginsbatchdelete) | **DELETE** /api/plugins/batch | Batch Delete Plugins|
|[**batchTogglePluginsApiPluginsBatchTogglePost**](#batchtogglepluginsapipluginsbatchtogglepost) | **POST** /api/plugins/batch/toggle | Batch Toggle Plugins|
|[**deletePluginApiPluginsPluginNameDelete**](#deletepluginapipluginspluginnamedelete) | **DELETE** /api/plugins/{plugin_name} | Delete Plugin|
|[**listPluginsApiPluginsGet**](#listpluginsapipluginsget) | **GET** /api/plugins/ | List Plugins|
|[**togglePluginApiPluginsPluginNameTogglePut**](#togglepluginapipluginspluginnametoggleput) | **PUT** /api/plugins/{plugin_name}/toggle | Toggle Plugin|
|[**uploadPluginApiPluginsUploadPost**](#uploadpluginapipluginsuploadpost) | **POST** /api/plugins/upload | Upload Plugin|

# **batchDeletePluginsApiPluginsBatchDelete**
> PluginBatchDeleteResponse batchDeletePluginsApiPluginsBatchDelete(requestBody)

Delete multiple runtime plugins in a single operation.

### Example

```typescript
import {
    PluginsApi,
    Configuration
} from '@vipr/api';

const configuration = new Configuration();
const apiInstance = new PluginsApi(configuration);

let requestBody: Array<string | null>; //

const { status, data } = await apiInstance.batchDeletePluginsApiPluginsBatchDelete(
    requestBody
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **requestBody** | **Array<string | null>**|  | |


### Return type

**PluginBatchDeleteResponse**

### Authorization

No authorization required

### HTTP request headers

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


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | Successful Response |  -  |
|**422** | Validation Error |  -  |

[[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)

# **batchTogglePluginsApiPluginsBatchTogglePost**
> PluginBatchToggleResponse batchTogglePluginsApiPluginsBatchTogglePost(pluginBatchOperation)

Enable or disable multiple runtime plugins in a single operation.

### Example

```typescript
import {
    PluginsApi,
    Configuration
} from '@vipr/api';

const configuration = new Configuration();
const apiInstance = new PluginsApi(configuration);

let pluginBatchOperation: Array<PluginBatchOperation>; //

const { status, data } = await apiInstance.batchTogglePluginsApiPluginsBatchTogglePost(
    pluginBatchOperation
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **pluginBatchOperation** | **Array<PluginBatchOperation>**|  | |


### Return type

**PluginBatchToggleResponse**

### Authorization

No authorization required

### HTTP request headers

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


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | Successful Response |  -  |
|**422** | Validation Error |  -  |

[[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)

# **deletePluginApiPluginsPluginNameDelete**
> PluginDeleteResponse deletePluginApiPluginsPluginNameDelete()

Delete a runtime plugin (builtin plugins cannot be deleted).

### Example

```typescript
import {
    PluginsApi,
    Configuration
} from '@vipr/api';

const configuration = new Configuration();
const apiInstance = new PluginsApi(configuration);

let pluginName: string; // (default to undefined)

const { status, data } = await apiInstance.deletePluginApiPluginsPluginNameDelete(
    pluginName
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **pluginName** | [**string**] |  | defaults to undefined|


### Return type

**PluginDeleteResponse**

### Authorization

No authorization required

### HTTP request headers

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


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | Successful Response |  -  |
|**422** | Validation Error |  -  |

[[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)

# **listPluginsApiPluginsGet**
> PluginListResponse listPluginsApiPluginsGet()

List all builtin and runtime plugins with their status.

### Example

```typescript
import {
    PluginsApi,
    Configuration
} from '@vipr/api';

const configuration = new Configuration();
const apiInstance = new PluginsApi(configuration);

const { status, data } = await apiInstance.listPluginsApiPluginsGet();
```

### Parameters
This endpoint does not have any parameters.


### Return type

**PluginListResponse**

### Authorization

No authorization required

### HTTP request headers

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


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | Successful Response |  -  |

[[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)

# **togglePluginApiPluginsPluginNameTogglePut**
> PluginToggleResponse togglePluginApiPluginsPluginNameTogglePut(pluginToggleRequest)

Enable or disable a runtime plugin.

### Example

```typescript
import {
    PluginsApi,
    Configuration,
    PluginToggleRequest
} from '@vipr/api';

const configuration = new Configuration();
const apiInstance = new PluginsApi(configuration);

let pluginName: string; // (default to undefined)
let pluginToggleRequest: PluginToggleRequest; //

const { status, data } = await apiInstance.togglePluginApiPluginsPluginNameTogglePut(
    pluginName,
    pluginToggleRequest
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **pluginToggleRequest** | **PluginToggleRequest**|  | |
| **pluginName** | [**string**] |  | defaults to undefined|


### Return type

**PluginToggleResponse**

### Authorization

No authorization required

### HTTP request headers

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


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | Successful Response |  -  |
|**422** | Validation Error |  -  |

[[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)

# **uploadPluginApiPluginsUploadPost**
> PluginUploadResponse uploadPluginApiPluginsUploadPost()

Upload and validate a new runtime plugin.

### Example

```typescript
import {
    PluginsApi,
    Configuration
} from '@vipr/api';

const configuration = new Configuration();
const apiInstance = new PluginsApi(configuration);

let file: File; // (default to undefined)
let overwrite: boolean; // (optional) (default to false)

const { status, data } = await apiInstance.uploadPluginApiPluginsUploadPost(
    file,
    overwrite
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **file** | [**File**] |  | defaults to undefined|
| **overwrite** | [**boolean**] |  | (optional) defaults to false|


### Return type

**PluginUploadResponse**

### Authorization

No authorization required

### HTTP request headers

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


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | Successful Response |  -  |
|**422** | Validation Error |  -  |

[[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)

