# Proof of Concept: C API to IPFS node

**URL:** https://discuss.ipfs.tech/t/proof-of-concept-c-api-to-ipfs-node/9449
**Category:** Help
**Tags:** go-ipfs
**Created:** [November 16, 2020, 2:53am UTC](https://discuss.ipfs.tech/t/proof-of-concept-c-api-to-ipfs-node/9449 "2020-11-16T02:53:55Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![teknomunk](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ipfs.tech/teknomunk/32/4220_2.png) [@teknomunk](https://discuss.ipfs.tech/u/teknomunk)
#### Post date: [November 16, 2020, 2:53am UTC](https://discuss.ipfs.tech/t/proof-of-concept-c-api-to-ipfs-node/9449/1 "2020-11-16T02:53:55Z")

</div>

I have just made a [proof of concept C API for go-ipfs](https://github.com/teknomunk/libipfs).

Inspiration:

- [go-ipfs as a library](https://github.com/ipfs/go-ipfs/tree/master/docs/examples/go-ipfs-as-a-library)
- [calling go functions from other languages](https://medium.com/learning-the-go-programming-language/calling-go-functions-from-other-languages-4c7d8bcc69bf#.n73as5d6d)

This is not a client library to the go-ipfs rest API. This is a C API for a go-ipfs node shared library (libipfs.so).

Example code (in crystal) sets up an IPFS node, connects to bootstrap nodes, downloads and displays the contents of a cid.

Is this something people would be interested in?

---

<div class="post-metadata">

### Author: ![twdragon](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ipfs.tech/twdragon/32/4073_2.png) [@twdragon](https://discuss.ipfs.tech/u/twdragon)
#### Post date: [November 16, 2020, 11:32am UTC](https://discuss.ipfs.tech/t/proof-of-concept-c-api-to-ipfs-node/9449/2 "2020-11-16T11:32:47Z")

</div>

Yes! Interested to control IPFS nodes from C/C++, it will be extremely useful for some applications like robotics
