Reference documentation and code samples for the Cloud Key Management Service (KMS) V1 API module Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState.
value: 5 This version is still being generated. It may not be used, enabled,
disabled, or destroyed yet. Cloud KMS will automatically mark this
version
ENABLED
as soon as the version is ready.
ENABLED
value: 1 This version may be used for cryptographic operations.
DISABLED
value: 2 This version may not be used, but the key material is still available,
and the version can be placed back into the
ENABLED
state.
value: 4 This version is scheduled for destruction, and will be destroyed soon.
Call
RestoreCryptoKeyVersion
to put it back into the
DISABLED
state.
PENDING_IMPORT
value: 6 This version is still being imported. It may not be used, enabled,
disabled, or destroyed yet. Cloud KMS will automatically mark this
version
ENABLED
as soon as the version is ready.
IMPORT_FAILED
value: 7 This version was not imported successfully. It may not be used, enabled,
disabled, or destroyed. The submitted key material has been discarded.
Additional details can be found in
CryptoKeyVersion.import_failure_reason.
GENERATION_FAILED
value: 8 This version was not generated successfully. It may not be used, enabled,
disabled, or destroyed. Additional details can be found in
CryptoKeyVersion.generation_failure_reason.
PENDING_EXTERNAL_DESTRUCTION
value: 9 This version was destroyed, and it may not be used or enabled again.
Cloud KMS is waiting for the corresponding key material residing in an
external key manager to be destroyed.
EXTERNAL_DESTRUCTION_FAILED
value: 10 This version was destroyed, and it may not be used or enabled again.
However, Cloud KMS could not confirm that the corresponding key material
residing in an external key manager was destroyed. Additional details can
be found in
CryptoKeyVersion.external_destruction_failure_reason.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Cloud Key Management Service (KMS) V1 API - Module Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState (v1.7.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.7.0 (latest)](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [1.6.0](/ruby/docs/reference/google-cloud-kms-v1/1.6.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [1.5.1](/ruby/docs/reference/google-cloud-kms-v1/1.5.1/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [1.4.0](/ruby/docs/reference/google-cloud-kms-v1/1.4.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [1.3.2](/ruby/docs/reference/google-cloud-kms-v1/1.3.2/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [1.2.1](/ruby/docs/reference/google-cloud-kms-v1/1.2.1/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [1.1.0](/ruby/docs/reference/google-cloud-kms-v1/1.1.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [1.0.2](/ruby/docs/reference/google-cloud-kms-v1/1.0.2/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.27.0](/ruby/docs/reference/google-cloud-kms-v1/0.27.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.26.0](/ruby/docs/reference/google-cloud-kms-v1/0.26.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.25.1](/ruby/docs/reference/google-cloud-kms-v1/0.25.1/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.24.3](/ruby/docs/reference/google-cloud-kms-v1/0.24.3/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.23.0](/ruby/docs/reference/google-cloud-kms-v1/0.23.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.22.1](/ruby/docs/reference/google-cloud-kms-v1/0.22.1/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.21.0](/ruby/docs/reference/google-cloud-kms-v1/0.21.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.20.0](/ruby/docs/reference/google-cloud-kms-v1/0.20.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.19.0](/ruby/docs/reference/google-cloud-kms-v1/0.19.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.18.1](/ruby/docs/reference/google-cloud-kms-v1/0.18.1/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.17.0](/ruby/docs/reference/google-cloud-kms-v1/0.17.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.16.0](/ruby/docs/reference/google-cloud-kms-v1/0.16.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.15.0](/ruby/docs/reference/google-cloud-kms-v1/0.15.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.14.0](/ruby/docs/reference/google-cloud-kms-v1/0.14.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.13.0](/ruby/docs/reference/google-cloud-kms-v1/0.13.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.12.0](/ruby/docs/reference/google-cloud-kms-v1/0.12.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.11.0](/ruby/docs/reference/google-cloud-kms-v1/0.11.0/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState)\n- [0.10.2](/ruby/docs/reference/google-cloud-kms-v1/0.10.2/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState) \nReference documentation and code samples for the Cloud Key Management Service (KMS) V1 API module Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState.\n\nThe state of a [CryptoKeyVersion](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion \"Google::Cloud::Kms::V1::CryptoKeyVersion (class)\"),\nindicating if it can be used.\n\nConstants\n---------\n\n### CRYPTO_KEY_VERSION_STATE_UNSPECIFIED\n\n**value:** 0 \nNot specified.\n\n### PENDING_GENERATION\n\n**value:** 5 \nThis version is still being generated. It may not be used, enabled,\ndisabled, or destroyed yet. Cloud KMS will automatically mark this\nversion\n[ENABLED](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState#Google__Cloud__Kms__V1__CryptoKeyVersion__CryptoKeyVersionState__ENABLED \"Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::ENABLED (constant)\")\nas soon as the version is ready.\n\n### ENABLED\n\n**value:** 1 \nThis version may be used for cryptographic operations.\n\n### DISABLED\n\n**value:** 2 \nThis version may not be used, but the key material is still available,\nand the version can be placed back into the\n[ENABLED](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState#Google__Cloud__Kms__V1__CryptoKeyVersion__CryptoKeyVersionState__ENABLED \"Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::ENABLED (constant)\")\nstate.\n\n### DESTROYED\n\n**value:** 3 \nThe key material of this version is destroyed and no longer stored.\nThis version may only become\n[ENABLED](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState#Google__Cloud__Kms__V1__CryptoKeyVersion__CryptoKeyVersionState__ENABLED \"Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::ENABLED (constant)\")\nagain if this version is\n[reimport_eligible](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion#Google__Cloud__Kms__V1__CryptoKeyVersion_reimport_eligible_instance_ \"Google::Cloud::Kms::V1::CryptoKeyVersion#reimport_eligible (method)\")\nand the original key material is reimported with a call to\n[KeyManagementService.ImportCryptoKeyVersion](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-KeyManagementService-Client#Google__Cloud__Kms__V1__KeyManagementService__Client_import_crypto_key_version_instance_ \"Google::Cloud::Kms::V1::KeyManagementService::Client#import_crypto_key_version (method)\").\n\n### DESTROY_SCHEDULED\n\n**value:** 4 \nThis version is scheduled for destruction, and will be destroyed soon.\nCall\n[RestoreCryptoKeyVersion](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-KeyManagementService-Client#Google__Cloud__Kms__V1__KeyManagementService__Client_restore_crypto_key_version_instance_ \"Google::Cloud::Kms::V1::KeyManagementService::Client#restore_crypto_key_version (method)\")\nto put it back into the\n[DISABLED](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState#Google__Cloud__Kms__V1__CryptoKeyVersion__CryptoKeyVersionState__DISABLED \"Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::DISABLED (constant)\")\nstate.\n\n### PENDING_IMPORT\n\n**value:** 6 \nThis version is still being imported. It may not be used, enabled,\ndisabled, or destroyed yet. Cloud KMS will automatically mark this\nversion\n[ENABLED](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion-CryptoKeyVersionState#Google__Cloud__Kms__V1__CryptoKeyVersion__CryptoKeyVersionState__ENABLED \"Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::ENABLED (constant)\")\nas soon as the version is ready.\n\n### IMPORT_FAILED\n\n**value:** 7 \nThis version was not imported successfully. It may not be used, enabled,\ndisabled, or destroyed. The submitted key material has been discarded.\nAdditional details can be found in\n[CryptoKeyVersion.import_failure_reason](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion#Google__Cloud__Kms__V1__CryptoKeyVersion_import_failure_reason_instance_ \"Google::Cloud::Kms::V1::CryptoKeyVersion#import_failure_reason (method)\").\n\n### GENERATION_FAILED\n\n**value:** 8 \nThis version was not generated successfully. It may not be used, enabled,\ndisabled, or destroyed. Additional details can be found in\n[CryptoKeyVersion.generation_failure_reason](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion#Google__Cloud__Kms__V1__CryptoKeyVersion_generation_failure_reason_instance_ \"Google::Cloud::Kms::V1::CryptoKeyVersion#generation_failure_reason (method)\").\n\n### PENDING_EXTERNAL_DESTRUCTION\n\n**value:** 9 \nThis version was destroyed, and it may not be used or enabled again.\nCloud KMS is waiting for the corresponding key material residing in an\nexternal key manager to be destroyed.\n\n### EXTERNAL_DESTRUCTION_FAILED\n\n**value:** 10 \nThis version was destroyed, and it may not be used or enabled again.\nHowever, Cloud KMS could not confirm that the corresponding key material\nresiding in an external key manager was destroyed. Additional details can\nbe found in\n[CryptoKeyVersion.external_destruction_failure_reason](/ruby/docs/reference/google-cloud-kms-v1/latest/Google-Cloud-Kms-V1-CryptoKeyVersion#Google__Cloud__Kms__V1__CryptoKeyVersion_external_destruction_failure_reason_instance_ \"Google::Cloud::Kms::V1::CryptoKeyVersion#external_destruction_failure_reason (method)\")."]]