# Beginner Question - Storing Private Data in Solid

**URL:** <https://forum.solidproject.org/t/beginner-question-storing-private-data-in-solid/1570>\
**Category:** Solid App Development FAQs\
**Created:** [March 28, 2019, 8:25pm UTC](https://forum.solidproject.org/t/beginner-question-storing-private-data-in-solid/1570 "2019-03-28T20:25:18Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![explorigin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.solidproject.org/explorigin/32/873_2.png) [@explorigin](https://forum.solidproject.org/u/explorigin)\
**Post date:** [March 28, 2019, 8:25pm UTC](https://forum.solidproject.org/t/beginner-question-storing-private-data-in-solid/1570/1 "2019-03-28T20:25:18Z")

</div>

I’m having trouble wrapping my head around “arbitrary” data storage in Solid. The [docs](https://solid.inrupt.com/docs/manipulating-ld-with-rdflib) don’t make it very clear how to write non-VCARD data. Clearly I’m missing something.

Here’s my real problem: I’m writing an app that uses a WebID profile to serve as a bridge to a traditional server-based app. I’d like to store an API key in a WebID profile and fetch it at login time. Naturally this API key needs to be stored privately.

Can someone provide me a brief explanation about how to store arbitrary (non-VCARD) data in a POD? Perhaps some example code?

Thanks

---

<div class="post-metadata">

**Author:** ![A\_A](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.solidproject.org/a_a/32/786_2.png) [@A\_A](https://forum.solidproject.org/u/A_A)\
**Post date:** [March 29, 2019, 9:08am UTC](https://forum.solidproject.org/t/beginner-question-storing-private-data-in-solid/1570/2 "2019-03-29T09:08:22Z")

</div>

In essence (afaik) you need to login the user and then make http requests with those credentials.

I suggest you to use one of these libraries for doing this:  
[solid-file-client](https://github.com/jeff-zucker/solid-file-client/) - Makes it easy to create/get files and folders  
[solid-auth-client](https://github.com/solid/solid-auth-client) - The underlying library which handles login and adding the credentials to the request ([here](https://github.com/Otto-AA/solid-filemanager/blob/master/src/Api/Api.js) is how I used it in my project. It’s also not that hard)

With those you can store arbitrary data in a POD. Something I forgot in the beginning was, that the webid location isn’t necessarily the same as the storage location so maybe ask the user where he wants it to be stored instead of guessing based on the webid’s location.

---

<div class="post-metadata">

**Author:** ![linonetwo](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.solidproject.org/linonetwo/32/4039_2.png) [@linonetwo](https://forum.solidproject.org/u/linonetwo)\
**Post date:** [March 29, 2019, 2:01pm UTC](https://forum.solidproject.org/t/beginner-question-storing-private-data-in-solid/1570/3 "2019-03-29T14:01:13Z")

</div>

I think you can just store your APIKey to xxx.xxx/private/APIKeys/xxx.txt

---

<div class="post-metadata">

**Author:** ![explorigin](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.solidproject.org/explorigin/32/873_2.png) [@explorigin](https://forum.solidproject.org/u/explorigin)\
**Post date:** [March 29, 2019, 2:59pm UTC](https://forum.solidproject.org/t/beginner-question-storing-private-data-in-solid/1570/4 "2019-03-29T14:59:06Z")

</div>

Thanks guys. I had gotten to solid-auth-client but somehow missed solid-file-client. This should be enough to get me going!
