# Client libraries for .NET

**URL:** <https://discuss.jsonapi.org/t/client-libraries-for-net/1200>\
**Category:** Uncategorized\
**Created:** [February 6, 2018, 2:26pm UTC](https://discuss.jsonapi.org/t/client-libraries-for-net/1200 "2018-02-06T14:26:22Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![burnmw](https://avatars.discourse-cdn.com/v4/letter/b/6de8d8/32.png) [@burnmw](https://discuss.jsonapi.org/u/burnmw)\
**Post date:** [February 6, 2018, 2:26pm UTC](https://discuss.jsonapi.org/t/client-libraries-for-net/1200/1 "2018-02-06T14:26:22Z")

</div>

Hi all,

I’m currently comparing the client libraries for .NET listed at [http://jsonapi.org/implementations/#client-libraries-net](http://jsonapi.org/implementations/#client-libraries-net) - and was confused to see that [Json.NET](http://Json.NET) is missing from the list, other than in its extended form of JsonApiSerializer.

Is there a reason that it’s missing from the list, simply that nobody has requested that it is added maybe? Or is there some glaring pitfall that I haven’t spotted?

As you may be able to tell, I’m fairly fresh to jsonapi/.NET coming in from an OpenEdge background and currently taking my first foray in to these sorts of libraries.

Thanks in advance for any information you may be able to give me 🙂

---

<div class="post-metadata">

**Author:** ![michaelhibay](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.jsonapi.org/michaelhibay/32/405_2.png) [@michaelhibay](https://discuss.jsonapi.org/u/michaelhibay)\
**Post date:** [February 6, 2018, 6:41pm UTC](https://discuss.jsonapi.org/t/client-libraries-for-net/1200/2 "2018-02-06T18:41:11Z")

</div>

I think you would just submit a PR to add the library to the support list on GitHub if you encounter one which is missing.

---

<div class="post-metadata">

**Author:** ![burnmw](https://avatars.discourse-cdn.com/v4/letter/b/6de8d8/32.png) [@burnmw](https://discuss.jsonapi.org/u/burnmw)\
**Post date:** [February 8, 2018, 8:57am UTC](https://discuss.jsonapi.org/t/client-libraries-for-net/1200/3 "2018-02-08T08:57:14Z")

</div>

Hi Michael,

Thanks for your reply - I guess my main question really was, is there a major reason _not_ to use it? I’m just a little suspicious that such a well used library isn’t already in the list.

Thanks,

Martin

---

<div class="post-metadata">

**Author:** ![michaelhibay](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.jsonapi.org/michaelhibay/32/405_2.png) [@michaelhibay](https://discuss.jsonapi.org/u/michaelhibay)\
**Post date:** [February 9, 2018, 1:59am UTC](https://discuss.jsonapi.org/t/client-libraries-for-net/1200/4 "2018-02-09T01:59:06Z")

</div>

It’s a passively maintained list, it’s quite easy to believe many others assumed the same if they even knew about the list in the first place.

---

<div class="post-metadata">

**Author:** ![cosullivan](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.jsonapi.org/cosullivan/32/225_2.png) [@cosullivan](https://discuss.jsonapi.org/u/cosullivan)\
**Post date:** [February 13, 2018, 1:42am UTC](https://discuss.jsonapi.org/t/client-libraries-for-net/1200/5 "2018-02-13T01:42:15Z")

</div>

Hi,

It’s not as straight forward as just using [Json.Net](http://Json.Net), you would need to do one of two things;

a) Modify your objects so you are returning something in the shape of the JsonApi format, ie,  
var document = new Document { type = “something”, id = “123”, attributes = { … } }

b) Write a custom [Json.Net](http://Json.Net) serializer that converts your object to the format of the JsonApi specification. This would be quite simple if you are just interested in adhering to a small portion of the JsonApi specification, but it would become harder when you want to start working with relationships and included/sideloaded entities.

As a disclaimer, I am the maintainer of the Hypermedia.JsonApi.Client library;

> **[cosullivan/Hypermedia](https://github.com/cosullivan/Hypermedia/)**
>
> Hypermedia library for .NET. Contribute to cosullivan/Hypermedia development by creating an account on GitHub.

Thanks,  
Cain.
