Unified Key Orchestrator API for IBM Cloud Hyper Protect Crypto Services

Introduction IBM Cloud Hyper Protect Crypto Services is a dedicated key management service and hardware security module HSM. It is designed to enable you to take control of your cloud data encryption keys and cloud hardware security models, and is the only service in the industry built on FIPS 140-2 Level 4-certified hardware. Unified Key Orchestrator is a public cloud control plane for multicloud and hybrid cloud key orchestration. As part of Hyper Protect Crypto Services, Unified Key Orchestrator provides key lifecycle management according to NIST recommendations and secure transfer of keys to internal keystores in the service instance or external keystores. For more information about using Hyper Protect Crypto Services, see the IBM Cloud docshttps://cloud.ibm.com/docs/hs-crypto. The code examples on this tab use the client library that is provided for Go. bash go get -u github.com/IBM/ibm-hpcs-uko-sdk GitHub https://github.com/IBM/ibm-hpcs-uko-sdk Endpoint URLs Use the Retrieve the API endpoint URL method first to retrieve the URL for the dedicated API endpoint for key management operations. When you call the API, use the URL that corresponds to the region where your service instance is deployed. Dallas: https://broker.us-south.hs-crypto.cloud.ibm.com/cryptov2/ Frankfurt: https://broker.eu-de.hs-crypto.cloud.ibm.com/cryptov2/ London: https://broker.eu-gb.hs-crypto.cloud.ibm.com/cryptov2/ Madrid: https://broker.eu-es.hs-crypto.cloud.ibm.com/cryptov2/ São-Paulo: https://broker.br-sao.hs-crypto.cloud.ibm.com/cryptov2/ Tokyo: https://broker.jp-tok.hs-crypto.cloud.ibm.com/cryptov2/ Toronto: https://broker.ca-tor.hs-crypto.cloud.ibm.com/cryptov2/ Washington DC:https://broker.us-east.hs-crypto.cloud.ibm.com/cryptov2/ To call other API methods, use the endpoint URL that is returned in the uko section when you call the Retrieve the API endpoint URL method. The returned URL contains the region and port information. Note the URLs vary depending on whether you are using the public or private endpoint. If you create your instances after April 12 2024 in certain regions, you might need to use the new API endpoints with the new format as

MethodPathSummary
GET/v4/managed_keysList managed keys
POST/v4/managed_keysCreate a managed key
DELETE/v4/managed_keys/{id}Delete a managed key
GET/v4/managed_keys/{id}Retrieve a managed key
PATCH/v4/managed_keys/{id}Update a managed key
GET/v4/managed_keys/{id}/associated_resourcesList associated resources for a managed key
GET/v4/managed_keys/{id}/versionsList managed key versions
GET/v4/managed_keys/{id}/status_in_keystoresRetrieve distribution status for all keystores
POST/v4/managed_keys/{id}/update_from_templateUpdate a managed key to match the key template
POST/v4/managed_keys/{id}/activateActivate a managed key
POST/v4/managed_keys/{id}/deactivateDeactivate a managed key
POST/v4/managed_keys/{id}/destroyDestroy a managed key
POST/v4/managed_keys/{id}/sync_status_in_keystoresSync a managed key in keystores
POST/v4/managed_keys/{id}/rotateRotate the managed key
GET/v4/templatesList key templates
POST/v4/templatesCreate a key template
DELETE/v4/templates/{id}Delete a template
GET/v4/templates/{id}Retrieve a key template
PATCH/v4/templates/{id}Update a key template
GET/v4/keystoresList all target keystores
POST/v4/keystoresCreate an internal keystore or a keystore connection
DELETE/v4/keystores/{id}Delete an internal keystore or a connection to an external keystore
GET/v4/keystores/{id}Retrieve a target keystore
PATCH/v4/keystores/{id}Update an internal keystore or a keystore connection
GET/v4/keystores/{id}/associated_resourcesList associated resources for a target keystore
GET/v4/keystores/{id}/statusRetrieve target keystore status
GET/v4/keystores/{id}/managed_keysList managed keys on the target keystore
GET/v4/vaultsList all vaults
POST/v4/vaultsCreate a vault
DELETE/v4/vaults/{id}Delete an existing vault
GET/v4/vaults/{id}Retrieve a vault
PATCH/v4/vaults/{id}Update a vault
POST/v4/templates/{id}/unarchiveUnarchive a key template
POST/v4/templates/{id}/archiveArchive a key template
POST/v4/templates/{id}/exposeExpose a key template that was previously a shadow template.