# How to pass \`cycles\` param to \`ic\_cdk::api::management\_canister::ecdsa::sign\_with\_ecdsa\`

**URL:** <https://forum.dfinity.org/t/how-to-pass-cycles-param-to-ic-cdk-sign-with-ecdsa/20721>\
**Category:** Developers\
**Tags:** Discussing\
**Created:** [June 15, 2023, 6:35am UTC](https://forum.dfinity.org/t/how-to-pass-cycles-param-to-ic-cdk-sign-with-ecdsa/20721 "2023-06-15T06:35:20Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![famouscat8](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/famouscat8/32/4732_2.png) [@famouscat8](https://forum.dfinity.org/u/famouscat8)\
**Post date:** [June 15, 2023, 6:35am UTC](https://forum.dfinity.org/t/how-to-pass-cycles-param-to-ic-cdk-sign-with-ecdsa/20721/1 "2023-06-15T06:35:20Z")

</div>

The arguments of `ic_cdk's sign_with_ecdsa` function have nothing about `cycles`

 ![image](https://us1.discourse-cdn.com/flex023/uploads/dfn/original/2X/f/fd5d9b5483ceab6948336743a280589cf079f13c.png)

But the `sign_with_ecdsa` api actually need it:

 ![image](https://us1.discourse-cdn.com/flex023/uploads/dfn/original/2X/d/d118df75f1420160e34e92633c159bb26a9b2f3f.png)

How to pass `cycles` param to `ic_cdk::api::management_canister::ecdsa::sign_with_ecdsa`

 ![image](https://us1.discourse-cdn.com/flex023/uploads/dfn/original/2X/1/195220596d0a78b8425ad5996c7a1a3ea5b6d74e.png)

---

<div class="post-metadata">

**Author:** ![pramitgaha](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/pramitgaha/32/11659_2.png) [@pramitgaha](https://forum.dfinity.org/u/pramitgaha)\
**Post date:** [June 15, 2023, 6:54am UTC](https://forum.dfinity.org/t/how-to-pass-cycles-param-to-ic-cdk-sign-with-ecdsa/20721/2 "2023-06-15T06:54:29Z")

</div>

> **[call\_with\_payment in ic\_cdk::api::call - Rust](https://docs.rs/ic-cdk/0.8.1/ic_cdk/api/call/fn.call_with_payment.html)**
>
> Performs an asynchronous call to another canister and pay cycles at the same time.

---

<div class="post-metadata">

**Author:** ![famouscat8](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/famouscat8/32/4732_2.png) [@famouscat8](https://forum.dfinity.org/u/famouscat8)\
**Post date:** [June 15, 2023, 6:56am UTC](https://forum.dfinity.org/t/how-to-pass-cycles-param-to-ic-cdk-sign-with-ecdsa/20721/4 "2023-06-15T06:56:58Z")

</div>

> [@pramitgaha](#):
>
> [call\_with\_payment in ic\_cdk::api::call - Rust](https://docs.rs/ic-cdk/0.8.1/ic_cdk/api/call/fn.call_with_payment.html)

I got this. But why we need `ic_cdk::api::management_canister::ecdsa::sign_with_ecdsa` as it not supports to pass `cycles` parameter. It seems broken since the `management canister` actually needs the parameter.

---

<div class="post-metadata">

**Author:** ![lwshang](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/lwshang/32/3394_2.png) [@lwshang](https://forum.dfinity.org/u/lwshang)\
**Post date:** [June 21, 2023, 3:27pm UTC](https://forum.dfinity.org/t/how-to-pass-cycles-param-to-ic-cdk-sign-with-ecdsa/20721/5 "2023-06-21T15:27:21Z")

</div>

`ic-cdk` v0.9.0 is releases which contains an overhaul of management canister API.

In short, those methods require cycles payments are takeing explicit `cycles` parameter, including `sign_with_ecdsa`.
