# Removing deprecated System API from the replica

**URL:** <https://forum.dfinity.org/t/removing-deprecated-system-api-from-the-replica/16272>\
**Category:** CDK\
**Created:** [October 31, 2022, 10:50am UTC](https://forum.dfinity.org/t/removing-deprecated-system-api-from-the-replica/16272 "2022-10-31T10:50:10Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mraszyk](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/mraszyk/32/7945_2.png) [@mraszyk](https://forum.dfinity.org/u/mraszyk)\
**Post date:** [October 31, 2022, 10:50am UTC](https://forum.dfinity.org/t/removing-deprecated-system-api-from-the-replica/16272/1 "2022-10-31T10:50:10Z")

</div>

The canister System API calls `ic0.call_simple`, `ic0.controller_size`, and `ic0.controller_copy` are deprecated for a long time and should not be imported by a canister’s WASM. We plan to remove them from the replica and would like to give heads up to canister developers who might still depend on them. They are kindly asked to upgrade their canister with a WASM that does not import any of these System API calls `ic0.call_simple`, `ic0.controller_size`, and `ic0.controller_copy`.

The System API call `ic0.call_simple` has been removed from the Interface Spec at version 0.13.0 (2020-11-05), from the Rust CDK at version 0.1.1 (2020-10-04), and from the Motoko compiler at version 0.4.5 (2020-10-06).

The System API calls `ic0.controller_size` and `ic0.controller_copy` have never been part of the Interface Spec, the Rust CDK, and the Motoko compiler. These System API calls only return a meaningful result for canisters with a single controller (otherwise, they return fixed default values). Instead, the System API call `ic0.canister_status` should be used.

---

<div class="post-metadata">

**Author:** ![mraszyk](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/mraszyk/32/7945_2.png) [@mraszyk](https://forum.dfinity.org/u/mraszyk)\
**Post date:** [April 14, 2023, 7:04am UTC](https://forum.dfinity.org/t/removing-deprecated-system-api-from-the-replica/16272/2 "2023-04-14T07:04:36Z")

</div>

The canister with ID **3eylo-3yaaa-aaaai-qfiwq-cai** is still using the deprecated System API calls `ic0.controller_size` and `ic0.controller_copy`. Hence, we would like to ask its developers to upgrade their canister with a WASM that does not import any of these System API calls. Otherwise, their canister will **stop working** after we remove support for these calls from the replica code which is expected to happen **mid May 2023**.

---

<div class="post-metadata">

**Author:** ![mraszyk](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/mraszyk/32/7945_2.png) [@mraszyk](https://forum.dfinity.org/u/mraszyk)\
**Post date:** [April 29, 2023, 7:30am UTC](https://forum.dfinity.org/t/removing-deprecated-system-api-from-the-replica/16272/3 "2023-04-29T07:30:14Z")

</div>

The canister with ID **d2hqk-bqaaa-aaaal-qaq7a-cai** is still using the deprecated System API calls `ic0.controller_size` and `ic0.controller_copy`. Hence, we would like to ask its developers to upgrade their canister with a WASM that does not import any of these System API calls. Otherwise, their canister will **stop working** after we remove support for these calls from the replica code which is expected to happen **mid May 2023**.
