# \SigningApi
All URIs are relative to *http://localhost*
[**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
**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
**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
**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
**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
**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
**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
**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
**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
**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
**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)