2
8 Comments

Which protocol do you use for your APIs?

When building something new, what kind of protocol do you use for your APIs? I'm kinda curious, since I often built REST APIs in the past, but switched over to gRPC for new projects (which is also why we built https://kreya.app).

Would be glad to hear your opinions regarding these protocols, since they all have different advantages and disadvantages.

Which protocol do you use for your APIs?
  1. REST
  2. GraphQL
  3. gRPC
  4. SOAP
  5. Other
Vote
  1. 3

    I think they all have their rightful place in the ecosystem. GraphQL for complex data models and flexible requirements, gRPC when performance is paramount, and REST(ish) APIs for everything else. I still mostly work with the latter as it is stable and has good tooling support. So far I felt gRPC is a little inaccessible but I want to look into it more, so I bookmarked the Kreya app you mentioned as it appears to be helpful.

    1. 1

      Thank you! Very good summary, couldn't agree more. What I like about gRPC is the automatic code generation in many languages, so you don't have to manually create your API models.

  2. 2

    My API is in C# which support perfectly REST.

    I find using graphQL on a strongly typed language to be a hassle.

    On the front-end, even if it can become bloated, GraphQL is nice to use obviously.

    1. 1

      I have had the same experience. GraphQL is nice for consumers, but can be complex to implement on the backend.

    1. 3

      Why are they comparing Redux to GraphQL? One is about state management, the other not so much.

      1. 1

        Also makes no sense to put Apollo there, as it's just a Lib to facilitate GraphQL implementations.

      2. 1

        Agreed. Don't know the reason behind that.

Trending on Indie Hackers
How I grew a side project to 100k Unique Visitors in 7 days with 0 audience 47 comments Competing with Product Hunt: a month later 33 comments Why do you hate marketing? 27 comments $15k revenues in <4 months as a solopreneur 14 comments Use Your Product 13 comments How I Launched FrontendEase 13 comments