15
33 Comments

API as a Service?

Anyone else feel like there is a gap in dead simple and affordable deployment for your backend API code? There are so many solutions out there for Frontend (Netlify, Surge, Now/Vercel, etc) and there are a growing number of solutions out there for the database layer (Firebase, Faunadb, Supabase, DO, etc), but the space for the API code in the middle seems... lacking?

I know we've got a few serverless Function as a Service providers and you can turn those into APIs but in my experiences their pricing is complex and/or you've often got a ton of nitty gritty details to get them properly deployed. I've yet to see an API-focused solution that comes out of the box with things like Auth and secrets management handled, so I find myself gluing a few custom things together in AWS or GCP to get affordable, performant, secure APIs setup. And then a ton of billing alerts quickly setup afterwards because I've only got a vague idea on how much this is going to cost me šŸ˜…

Am I missing a great service out there that makes setting up and deploying affordable, performant, secure APIs a "one-click" solution that also has predictable pricing?

If not - am I the only one who wishes this existed and would pay for it if it did?

  1. 6

    I went down this same route with CoderNotes.io

    Not in the sense that it's an API solution, but in trying to scratch my own itch.

    I think it's a mistake. You can read some more of my thoughts about it here. Look at #3.

    What I've moved on to is looking for opportunities where VC-backed companies have proved the market, but can't play in the niches due to having raised money. So far it's been super useful for identifying real SaaS niches that I wasn't even aware of.

    1. 1

      I appreciate you writing and sharing your experience, it's helpful!

  2. 4

    I was just contemplating this yesterday. I settled on the name Endpoint as a Service for what I'm missing. I want to be able to create REST endpoints where all I need to write is the business logic itself. Auth, validation, persistence etc. should all be declarative and come with sane defaults.

    1. 1

      I like what you are calling it! That definitely sounds like what Iā€™m thinking

  3. 3

    We just open sourced XgeneCloud - XgeneCloud instantly generates your REST APIs & GraphQL APIs within seconds. This is free and open source service.

    Generated APIs uses familiar node.js Express.js APIs.

    Also, the generated APIs are serverless across any Cloud Platform! :)

    Cannot get any better.

  4. 3

    I'm building Stackprint which at least covers part of the gap that you're describing. Right now the focus is on easily being able to deploy CRUD APIs and generating type-safe client code to connect.

    I have been thinking about ways to allow for more custom logic but that's not very advanced yet. What I have in mind goes in the direction of being able to write small functions that can be configured as hooks pre- or post object creation, update or deletion or as custom endpoints.

    1. 1

      Interesting! My needs lately would require that custom logic, but this is definitely related to what I had in mind

    2. 1

      This comment was deleted 2 years ago.

      1. 1

        Thanks :) Do you happend to remember any of the places or keywords you checked to find a solution like Stackprint but couldn't?

        1. 2

          This comment was deleted 2 years ago.

          1. 2

            Ahh I see, I'm targeting makers who don't want to manage databases themselves šŸ˜‰
            Thanks for checking it out anyways, I'll go over the copy to make sure it's clear that the platform doesn't generate code for existing databases. Thanks for the input! šŸ‘

            1. 1

              This comment was deleted 2 years ago.

          2. 1

            hey @joashjohnson : which db are you on - give us a shout on discord - I can help you up and running via a zoom call.

            1. 1

              Good talking to you @joashjohnson - looks like we've a bug for MySQL 5.5.x

              Feel free to get in touch on Discord - happy to help mate.

            2. 1

              This comment was deleted 2 years ago.

  5. 3

    This is exactly what we offer at Saasify šŸ’Æ

    1. 2

      @saasify Truely you have striked the right cord by building Saasify.
      It will save lot of time for indie developers during launch.
      I'm expecting to make a request for access. Before that I wanted to know what happens to the pricing terms for people who are signing up in private beta, when you launch publicly ?

      1. 1

        We're pretty flexible since we're so early stage, especially when it comes to helping indie hackers šŸ’Æ

        Shoot me an email (linked on my profile) and I'd be happy to discuss your use case, give you advice, and add you to the beta.

        Cheers šŸ˜ƒ

        1. 1

          I couldn't sign in. Onboarding process seems completely broken atm.

    2. 2

      This is not exactly what I had in mind, but really interesting product! Great landing page btw

    3. 1

      Hey @saasify, Saasify looks amazing. We just launched our "Smart Reply API". Can we connect?

  6. 1

    Hey Deven! You should check out useparagon.com. I think they have what you might be looking for.

  7. 1

    hey,
    I hope and think that what we've made is very close to what you're describing.
    our platform is byvalue.org and it's the simplest way to service code as a monetized API.

    it's free to create any service you want. the service is hosted by us and you can price it however you'd like to.

    when people subscribe to your service and use it, you earn royalties.
    the users pay us for infra (we measure usage by the milliseconds and try to charge as close as we can to what it costs us) and we take 10% commission from royalties (less than half of what other platforms are charging)

    EASY :)

    you can email me at [email protected] if you have any questions :)

  8. 1

    Little late to the discussion but just joined and saw this. I had the same question, didn't see any API as a service available so started building one, restpoint.io. I "think" its what you are talking about :)

    How it works is you start a project, add your API paths such as /suppliers and define the supplier properties or give an example JSON of a supplier. When done adding paths, you can click to create an endpoint which underneath deploys all the API paths with database. So at this point, the API's are now deployed and CRUD requests can sent. API docs can be auto generated (OpenAPI format).

    Everything previously mentioned is no code. To plug in code/business logic, a webhook can be called before a request is processed and after a request has been processed, i.e. serverless. I have an example of using a Slack webhook to push to a channel.

    Still need to work through some user access features. But currently API keys are generated to give to users, such as a read only, full access, etc. Firebase is plugged in underneath and set up for Google auth so have to get more auth options supported in future.

    Depending on the use case, you "could" use this as a backend now but I recommend using as API prototypes as I work through a few more issues such as Auth.

    I'm more a backend dev, no doubt the free website template and React ui needs some luv so will be looking for help after I work through the last of these issues.

    If anyone kicks the tires on restpoint.io, feedback is very welcome.

  9. 1

    There are many! Heroku is the most famous one, but there are many niche/specific ones like Laravel Vapor and Gigalixir. It's very competitive market ;)

  10. 1

    I'm a huge fan of AWS Chalice, which gets rid of almost all the boilerplate, and makes securing endpoints with Cognito User Pools, IAM or Lambda authorizers very easy.

    One CLI command to deploy the entire stack (and another to delete it) including an auto-generated IAM role following Principal of Least Privilege, plus options to generate CloudFormation or Terraform if those are your thing, and it'll even build out an entire CI/CD pipeline for you.

    If you're OK with writing your API code in Python, it's well worth a look.

  11. 1

    Azure does everything you described and more..

  12. 1

    There used to be a product from Auth0 called WebTasks and then they converted it into Extend. Later they stopped but the solution was simple and it was easy to get started auth was manageable and secrets were also maintained. But based on my understanding firebase functions seems to be your best bet

    https://webtask.io/
    https://goextend.io/

  13. 1

    There are several tutorials out there on creating a simple API using AWS API Gateway and Lambda - completely 'serverless' (in the sense that you don't have to spin up your own virtual server and manage it). Your Lambda functions (written in Node (javascript) or Python or Ruby etc.) can pull data from almost any database and present it to the user, with managed authentication (via Amazon Cognito or simple Lambda functions).

    Bonus is that you can set things like rate limits on your API calls to prevent abusive behaviour. Probably not the easiest thing to set up, but certainly allows you to build simple (or complex) APIs quickly and with little risk, or cost.

  14. 1

    I also ran into that problem and usually hand-rolled it with AWS & Serverless.
    I know Rapid API is trying to walk down this path: https://rapidapi.com/ ... as they try to move into the corporate market.

  15. 1

    Interesting. Do you mean a solution to enable public API REST api's based on code you've already developed for a solution? Trying to understand the actual problem you wish to solve...

  16. 1

    Isn't Firebase basically what you are describing?

  17. 2

    This comment was deleted a year ago.

    1. 1

      I checked out Heroku closer. Looks like their dynos are closer to what Iā€™m describing than I realized! Thanks for the tip!

      1. 2

        This comment was deleted a year ago.

    2. 1

      So Iā€™m aware of Heroku, but full disclosure Iā€™ve never used it so let me know if Iā€™m missing something here.

      From what I understand Heroku does give you the predictable pricing but youā€™re just getting a server right? So youā€™ve still got to setup deployment of your API code, networking to allow your app to hit your API, authentication logic and secrets management to hit your underlying db. Plus eventually all the devops around scaling, monitoring, and analytics for that API. All doable, I completely recognize that, Iā€™ve done it (in AWS) but tedious and a far cry from the ā€œeasy buttonā€ that things like Netlify or Surge offer for frontends. Iā€™m thinking of a PaaS abstraction where I commit my code, supply a Dockerfile with it or something, and most of those details get taken care of at some predictable monthly rate.

      Perhaps Iā€™ve underestimated how much Heroku provides out of the box though. Or maybe Iā€™ve just overestimated the overhead to setting up an API!

      1. 2

        This comment was deleted a year ago.

  18. 2

    This comment was deleted 2 years ago.

    1. 1

      Hey thanks for the reply! Iā€™m aware of those but thatā€™s not quite what Iā€™m missing here. Both provide API accessible databases which work if you are just doing CRUD ops, but if you need to do anything else with your data and/or if you want data transformation logic out of your client side you need an API that sits between the database and your frontend that holds any backend logic. This is also necessary if you app needs to securely connect to other APIs or services (donā€™t want secret keys floating in your frontend). Itā€™s that API layer that Iā€™m having a hard time finding a simple service for. Simple in terms of UX and pricing.

      1. 2

        This comment was deleted 2 years ago.

        1. 2

          No youā€™re totally right. You can also do it with other FaaS like AWS lambda as well. Creating an API layer definitely is a solvable problem, more so Iā€™m looking to see if there is something dead simple out there for this problem. Those solutions still put a lot of the complexity of networking, security, and deployment on the developer. And their pricing models usually make run cost hard to predict.

          Iā€™m suggesting a service for deploying your API layer that is as close to the simplicity of something like Netlify is for frontend and with very clear, predictable pricing (flat monthly pricing with tiers most likely).

          Perhaps Iā€™m overthinking it though šŸ¤·šŸ»ā€ā™‚ļø

          1. 2

            This comment was deleted 2 years ago.

Trending on Indie Hackers
How I grew a side project to 100k Unique Visitors in 7 days with 0 audience 49 comments Competing with Product Hunt: a month later 33 comments Why do you hate marketing? 29 comments My Top 20 Free Tools That I Use Everyday as an Indie Hacker 17 comments $15k revenues in <4 months as a solopreneur 14 comments Use Your Product 13 comments