# External applications communication via canister

**URL:** <https://forum.dfinity.org/t/external-applications-communication-via-canister/40501>\
**Category:** Developers\
**Created:** [January 25, 2025, 5:26pm UTC](https://forum.dfinity.org/t/external-applications-communication-via-canister/40501 "2025-01-25T17:26:12Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ghostwhoowalks](https://avatars.discourse-cdn.com/v4/letter/g/b487fb/32.png) [@ghostwhoowalks](https://forum.dfinity.org/u/ghostwhoowalks)\
**Post date:** [January 25, 2025, 5:26pm UTC](https://forum.dfinity.org/t/external-applications-communication-via-canister/40501/1 "2025-01-25T17:26:12Z")

</div>

How does canister communication with external systems like Salesforce, external databases work? Is it possible? Any literature anyone can share or examples. Thanks in advance.

---

<div class="post-metadata">

**Author:** ![skilesare](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/skilesare/32/5609_2.png) [@skilesare](https://forum.dfinity.org/u/skilesare)\
**Post date:** [January 25, 2025, 5:35pm UTC](https://forum.dfinity.org/t/external-applications-communication-via-canister/40501/2 "2025-01-25T17:35:01Z")

</div>

Google httpoutcalls Dfinity

Things are a bit complicated by the fact that storing API keys on a canister is not very secure. Some people use a proxy to help with this. But make sure you trust your proxy. And make sure you use users trust your proxy.

One day in the future, hopefully our canisters will have access to the secure enclave, and this will be less of a problem.

---

<div class="post-metadata">

**Author:** ![frederico02](https://avatars.discourse-cdn.com/v4/letter/f/7bcc69/32.png) [@frederico02](https://forum.dfinity.org/u/frederico02)\
**Post date:** [January 25, 2025, 5:49pm UTC](https://forum.dfinity.org/t/external-applications-communication-via-canister/40501/3 "2025-01-25T17:49:05Z")

</div>

Couldn’t you encrypt the API key inside the canister?

---

<div class="post-metadata">

**Author:** ![skilesare](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/skilesare/32/5609_2.png) [@skilesare](https://forum.dfinity.org/u/skilesare)\
**Post date:** [January 25, 2025, 5:57pm UTC](https://forum.dfinity.org/t/external-applications-communication-via-canister/40501/4 "2025-01-25T17:57:50Z")

</div>

Where will you keep the encryption key? Your canister needs to add the API key to the outgoing request so at some point it is decrypted in accessible memory.
