API removals between two versions
Upgrading across several minors removes everything removed in each hop along the way. Pick your current and target version to list the API versions you lose.
All removals, newest first
Kubernetes 1.37 released 26 Aug 2026
| Kind | API version | Use instead |
|---|---|---|
| ClusterTrustBundle | certificates.k8s.io/v1alpha1 alpha · off |
certificates.k8s.io/v1 |
| IPAddress | networking.k8s.io/v1beta1 beta · off by default | networking.k8s.io/v1 |
| ServiceCIDR | networking.k8s.io/v1beta1 beta · off by default | networking.k8s.io/v1 |
| VolumeAttributesClass | storage.k8s.io/v1beta1 beta · off by default | storage.k8s.io/v1 |
Kubernetes 1.35 released 17 Dec 2025
| Kind | API version | Use instead |
|---|---|---|
| VolumeAttributesClass | storage.k8s.io/v1alpha1 alpha · off |
storage.k8s.io/v1 |
Kubernetes 1.34 released 27 Aug 2025
| Kind | API version | Use instead |
|---|---|---|
| ValidatingAdmissionPolicy | admissionregistration.k8s.io/v1beta1 beta · off by default | admissionregistration.k8s.io/v1 |
| ValidatingAdmissionPolicyBinding | admissionregistration.k8s.io/v1beta1 beta · off by default | admissionregistration.k8s.io/v1 |
Kubernetes 1.33 released 23 Apr 2025
| Kind | API version | Use instead |
|---|---|---|
| SelfSubjectReview | authentication.k8s.io/v1beta1 beta · off by default | authentication.k8s.io/v1 |
Kubernetes 1.32 released 11 Dec 2024
| Kind | API version | Use instead |
|---|---|---|
| FlowSchema | flowcontrol.apiserver.k8s.io/v1beta3 | flowcontrol.apiserver.k8s.io/v1 |
| PriorityLevelConfiguration | flowcontrol.apiserver.k8s.io/v1beta3 | flowcontrol.apiserver.k8s.io/v1 |
| ValidatingAdmissionPolicy | admissionregistration.k8s.io/v1alpha1 alpha · off |
admissionregistration.k8s.io/v1 |
| ValidatingAdmissionPolicyBinding | admissionregistration.k8s.io/v1alpha1 alpha · off |
admissionregistration.k8s.io/v1 |
| SelfSubjectReview | authentication.k8s.io/v1alpha1 alpha · off |
authentication.k8s.io/v1 |
Kubernetes 1.29 released 13 Dec 2023
| Kind | API version | Use instead |
|---|---|---|
| FlowSchema | flowcontrol.apiserver.k8s.io/v1beta2 | flowcontrol.apiserver.k8s.io/v1 |
| PriorityLevelConfiguration | flowcontrol.apiserver.k8s.io/v1beta2 | flowcontrol.apiserver.k8s.io/v1 |
Kubernetes 1.27 released 11 Apr 2023
| Kind | API version | Use instead |
|---|---|---|
| CSIStorageCapacity | storage.k8s.io/v1beta1 | storage.k8s.io/v1 |
Kubernetes 1.26 released 9 Dec 2022
| Kind | API version | Use instead |
|---|---|---|
| HorizontalPodAutoscaler | autoscaling/v2beta2 | autoscaling/v2 |
| FlowSchema | flowcontrol.apiserver.k8s.io/v1beta1 | flowcontrol.apiserver.k8s.io/v1 |
| PriorityLevelConfiguration | flowcontrol.apiserver.k8s.io/v1beta1 | flowcontrol.apiserver.k8s.io/v1 |
Kubernetes 1.25 released 23 Aug 2022
| Kind | API version | Use instead |
|---|---|---|
| HorizontalPodAutoscaler | autoscaling/v2beta1 | autoscaling/v2 |
| CronJob | batch/v1beta1 | batch/v1 |
| EndpointSlice | discovery.k8s.io/v1beta1 | discovery.k8s.io/v1 |
| Event | events.k8s.io/v1beta1 | events.k8s.io/v1 |
| RuntimeClass | node.k8s.io/v1beta1 | node.k8s.io/v1 |
| Eviction | policy/v1beta1 | policy/v1 |
| PodDisruptionBudget | policy/v1beta1 | policy/v1 |
| PodSecurityPolicy | policy/v1beta1 | Pod Security Admission (no API replacement) |
Kubernetes 1.24 released 3 May 2022
| Kind | API version | Use instead |
|---|---|---|
| CSIStorageCapacity | storage.k8s.io/v1alpha1 alpha · off |
storage.k8s.io/v1 |
| VolumeAttachment | storage.k8s.io/v1alpha1 alpha · off |
storage.k8s.io/v1 |
Kubernetes 1.22 released 4 Aug 2021
Kubernetes 1.16 released 18 Sep 2019
| Kind | API version | Use instead |
|---|---|---|
| ControllerRevision | apps/v1beta1 | apps/v1 |
| ControllerRevision | apps/v1beta2 | apps/v1 |
| DaemonSet | apps/v1beta2 | apps/v1 |
| Deployment | apps/v1beta1 | apps/v1 |
| Deployment | apps/v1beta2 | apps/v1 |
| DeploymentRollback | apps/v1beta1 | apps/v1 |
| ReplicaSet | apps/v1beta2 | apps/v1 |
| ReplicaSet | apps/v1beta1 | apps/v1 |
| Scale | apps/v1beta1 | autoscaling/v1 |
| Scale | apps/v1beta2 | autoscaling/v1 |
| StatefulSet | apps/v1beta1 | apps/v1 |
| StatefulSet | apps/v1beta2 | apps/v1 |
| DaemonSet | extensions/v1beta1 | apps/v1 |
| Deployment | extensions/v1beta1 | apps/v1 |
| DeploymentRollback | extensions/v1beta1 | — |
| NetworkPolicy | extensions/v1beta1 | networking.k8s.io/v1 |
| PodSecurityPolicy | extensions/v1beta1 | Pod Security Admission (no API replacement) |
| ReplicaSet | extensions/v1beta1 | apps/v1 |
| Scale | extensions/v1beta1 | — |
Rows in grey were alpha, or beta versions that were off by default, so they only affected clusters that enabled them. Sources: lifecycle markers in the Kubernetes source (v1.37.2) and the official Deprecated API Migration Guide; see methodology for the cross-check.