# \SigningApi

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

Method | HTTP request | Description
------------- | ------------- | -------------
[**create_key**](SigningApi.md#create_key) | **POST** /api/v1/signing/keys | Create a new signing key.
[**delete_key**](SigningApi.md#delete_key) | **DELETE** /api/v1/signing/keys/{key_id} | Delete a signing key.
[**get_key**](SigningApi.md#get_key) | **GET** /api/v1/signing/keys/{key_id} | Get a signing key by ID.
[**get_public_key**](SigningApi.md#get_public_key) | **GET** /api/v1/signing/keys/{key_id}/public | Get the public key in PEM format (for client import).
[**get_repo_public_key**](SigningApi.md#get_repo_public_key) | **GET** /api/v1/signing/repositories/{repo_id}/public-key | Get the public key for a repository (convenience endpoint).
[**get_repo_signing_config**](SigningApi.md#get_repo_signing_config) | **GET** /api/v1/signing/repositories/{repo_id}/config | Get signing configuration for a repository.
[**list_keys**](SigningApi.md#list_keys) | **GET** /api/v1/signing/keys | List all signing keys, optionally filtered by repository.
[**revoke_key**](SigningApi.md#revoke_key) | **POST** /api/v1/signing/keys/{key_id}/revoke | Revoke (deactivate) a signing key.
[**rotate_key**](SigningApi.md#rotate_key) | **POST** /api/v1/signing/keys/{key_id}/rotate | Rotate a signing key — generates new key, deactivates old one.
[**update_repo_signing_config**](SigningApi.md#update_repo_signing_config) | **POST** /api/v1/signing/repositories/{repo_id}/config | Update signing configuration for a repository.



## create_key

> models::SigningKeyPublic create_key(create_key_payload)
Create a new signing key.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**create_key_payload** | [**CreateKeyPayload**](CreateKeyPayload.md) |  | [required] |

### Return type

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

### Authorization

[bearer_auth](../README.md#bearer_auth)

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


## delete_key

> serde_json::Value delete_key(key_id)
Delete a signing key.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**key_id** | **uuid::Uuid** | Signing key ID | [required] |

### Return type

[**serde_json::Value**](serde_json::Value.md)

### Authorization

[bearer_auth](../README.md#bearer_auth)

### 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_key

> models::SigningKeyPublic get_key(key_id)
Get a signing key by ID.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**key_id** | **uuid::Uuid** | Signing key ID | [required] |

### Return type

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

### Authorization

[bearer_auth](../README.md#bearer_auth)

### 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_public_key

> String get_public_key(key_id)
Get the public key in PEM format (for client import).

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**key_id** | **uuid::Uuid** | Signing key ID | [required] |

### Return type

**String**

### Authorization

[bearer_auth](../README.md#bearer_auth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: text/plain, 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_repo_public_key

> String get_repo_public_key(repo_id)
Get the public key for a repository (convenience endpoint).

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**repo_id** | **uuid::Uuid** | Repository ID | [required] |

### Return type

**String**

### Authorization

[bearer_auth](../README.md#bearer_auth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: text/plain, 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_repo_signing_config

> models::SigningConfigResponse get_repo_signing_config(repo_id)
Get signing configuration for a repository.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**repo_id** | **uuid::Uuid** | Repository ID | [required] |

### Return type

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

### Authorization

[bearer_auth](../README.md#bearer_auth)

### 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_keys

> models::KeyListResponse list_keys(repository_id)
List all signing keys, optionally filtered by repository.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**repository_id** | Option<**uuid::Uuid**> | Filter by repository ID |  |

### Return type

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

### Authorization

[bearer_auth](../README.md#bearer_auth)

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


## revoke_key

> serde_json::Value revoke_key(key_id)
Revoke (deactivate) a signing key.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**key_id** | **uuid::Uuid** | Signing key ID | [required] |

### Return type

[**serde_json::Value**](serde_json::Value.md)

### Authorization

[bearer_auth](../README.md#bearer_auth)

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


## rotate_key

> models::SigningKeyPublic rotate_key(key_id)
Rotate a signing key — generates new key, deactivates old one.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**key_id** | **uuid::Uuid** | Signing key ID to rotate | [required] |

### Return type

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

### Authorization

[bearer_auth](../README.md#bearer_auth)

### 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_repo_signing_config

> models::RepositorySigningConfig update_repo_signing_config(repo_id, update_signing_config_payload)
Update signing configuration for a repository.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**repo_id** | **uuid::Uuid** | Repository ID | [required] |
**update_signing_config_payload** | [**UpdateSigningConfigPayload**](UpdateSigningConfigPayload.md) |  | [required] |

### Return type

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

### Authorization

[bearer_auth](../README.md#bearer_auth)

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

