I’m not sure on the ins and outs of hosting/running a 3rd part reddit app, but since reddit is claiming these API charges are only for apps that pull in big numbers, couldn’t the app creators just make a bunch of versions of the app with a limit to how many users can access it?

I’m not sure what reddit’s threshold is for when they start charging for API usage, but do any of you see this happening? Would it be possible for the 3rd party creators to release personal instances of their apps that are technically separate entities that could stay in the free APL limit?

Again, I have no idea on how 3rd party apps are run or how they access the API. I was just curious if there was a way to keep an app under the limit.

  • Ulu-Mulu-no-die@lemmy.world
    link
    fedilink
    English
    arrow-up
    23
    ·
    edit-2
    1 year ago

    As I understand it, API charges are for everyone, Apollo for example showed the app is within the limits, I think other app devs did the same.

    While not wanting their data to be scraped for AI for free is indeed a valid reason, if it was the real reason they would have come up with different tiers of pricing like every other paid platform does.

    Edit: Apollo was within the limits, but reddit changed the rules apparently …

    • kiwifoxtrot@lemmy.world
      link
      fedilink
      English
      arrow-up
      16
      ·
      1 year ago

      Not quite. The new rules are 100 api calls per minute per user per app. It used to be 100 api calls per minute per user. That means Apollo is limited to 100 api calls per minute for all users.

      If someone were to have a private API key for personal use, it would be difficult to exceed the limit.

  • Da_Boom@iusearchlinux.fyi
    link
    fedilink
    English
    arrow-up
    21
    ·
    1 year ago

    OK so the way the API is structured, a single user makes upwards of 100+ API calls a day - there’s a single call to do everything - even things that would make more sense being grouped together into a single call.

    The API was poorly optimized from the start, and as a result apps had no choice to basically spam calls in order to get the job done. Certain calls are also made over and over - like checking your inbox for new messages, refreshing, loading more comments and so many more - the more often you do it, the faster you get your inbox in, and the more responsive the app feels. if you don’t do it often enough, the app will feel like its clunky, chugging and taking forever to load. Some calls are pre-made when there’s a high likelihood of clicking something for faster load time when it is clicked - now this could probably be stopped…

    Now some apps also host their own data servers in order to provide more efficient running as well - this server does a number of different things, but one of the things it can do is create a second API for efficiencies’ sake- essentially the server makes numerous reddit API calls, so that the app only has to make one. Its also a good way to help stagger calls to get past rate-limiting, which is where the server essentially tells you off for making too many requests to the API too quickly, and stops responding to you for a small amount of time. Another thing it can do is cache data - if its a generic (doesn’t require authentication) call to a resource that went viral, it can cache that data so that people can get it without making additional calls - now this doesn’t work for things like comments and vote counts… but post titles and links? you bet that’s a great thing to do. The problem: these servers cost money - not any where near as much as what they’re asking for with the API changes, which is why most devs only asked for a small one off payment for server costs, which is way less than a large monthly payment.

    Once you take all the requests that flow directly from the app and server, and multiply them by your user-base… you’ve got a problem on your hands when it comes to the new API pricing - while it is certainly possible to charge a monthly payment (perhaps about $15 a month)… they need more than thirty days to set this app - most app stores don’t allow pricing changes and subscription requirements to be set up instantly - they usually have some form of contract that will need to end so a renegotiation can take place. This means some apps might even need an entire year before they can even try to set this up.

    The only other option is in the API keys. These monolithic apps use one single API key in order to make requests - the Key securely identifies who is making the request - similar to how stream keys work on streaming sites like Twitch and YouTube. You get the key, you can make a request. To get a key, you need to register with reddit as a developer, and they generate your key and give it to you. I can imagine there’s a few hoops to jump through for it. (like verification - twitter had a “why do you need this” questionnaire before they started charging for their API Keys) Its impractical for a Developer to make however many thousand of fake emails and identities in order to get enough keys on the volume needed to keep app like Apollo or RIF free. The only other option would be to ask all their users to register as a developer and get their own keys, and provide a mechanism for the installation of said keys. While this is possible. its impractical and/or impossible for the people who don’t understand how this works, and the hoops they may have to jump through to do this - many would likely get frustrated and give up, either going elsewhere, or worse: using the official dumpster fire app.

    Also i wouldn’t be surprised if reddit tried to close the API key loophole if too many third party apps went that direction, especially if the app’s user-base decided to jump on board with it - financially it would be just as bad as having a third party app with a single API key, and they’re hemorrhaging money like its going outta style right now, enough that they probably are trying to find ways to downscale, and removing the traffic from third party apps seems like a pretty understandable way to enable down-scaling - processing, data storage and bandwidth costs money after all, and on the huge user-base reddit has, its gotta be costing an arm, a leg and a kidney, probably more. - It doesn’t excuse them for being this shitty, but i do understand where they’re coming from, most of these large scale corporate social media sites aren’t profitable or sustainable anyway, and with the economy going the way it is, the venture capitalists keeping things afloat must be tightening their purse strings, the time is running out and they’re starting to want returns on their investments - free money is free no longer, and as a result the corporations get greedy, its almost like the only thing that is actually trickle down in a trickle down economy is greed.

  • a new sad me@lemmy.world
    link
    fedilink
    English
    arrow-up
    12
    ·
    1 year ago

    Without looking into any information, I can guess that it is associated with API key which are registered to a specific email. Sure, you can open more email accounts and more APIs but this is becoming a hustle.

    What they could do, is release their code, and for user to register their own API and compile the app on their own. But this solution would answer only tech savi people.

    • Cheradenine@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      6
      ·
      1 year ago

      What they could do, is release their code, and for user to register their own API and compile the app on their own. But this solution would answer only tech savi people. >

      The developer of Infinity for Reddit (Android app) said they were going to do just that.

      • a new sad me@lemmy.world
        link
        fedilink
        English
        arrow-up
        7
        ·
        1 year ago

        Ha! Cool for them!

        I guess, though, that the guys who have the skills to enjoy this are the first to switch out of reddit to begin with.

        • dreamfall@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          1 year ago

          I just did this from a guide on their reddit, it was super easy…hopefully it sticks!

        • gibbedygook@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Yeah. I can’t code but I can follow instructions to compile an app and add my own API key. But given everything that’s happened I sure as hell am not going to bother.

      • dreamfall@lemmy.worldOP
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        Yep! I found a guide on their reddit page for this, it was really easy and I only have a basic understanding of this stuff!

      • sneakyninjapants@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        They basically wrote a mini how-to on their sub a day or two ago. It’s very doable. Can’t bring myself to do the work just to go to that site again on mobile.

  • sneakyninjapants@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    1 year ago

    They could technically make their app so you could insert your own API keys which you’d get from Reddit directly, but it’s not very seamless to the user. You wouldn’t just need to enter your username and password when you log in the first time, you’d need to go into the old.reddit preferences > apps > create a new app > agree to the API EULA > fill out redirect URI, about URI, app-name, etc. > THEN it would give you your API key that you’d have to copy and paste to the waiting app along with your username and password. The developer of “Infinity for Reddit” (an open-source Reddit client) already asked Reddit about this prior to the blackout and they said big fat NO unfortunately. They want every Infinity app to share a single API key for every phone that’s using it. There are ways around this, but out of the scope of what you’re asking.

  • nmtake@lemm.ee
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 year ago

    I guess reddit will close the current free-tier API once the new dev platform for moderators settles down.

  • Drusas@kbin.social
    link
    fedilink
    arrow-up
    4
    arrow-down
    1
    ·
    1 year ago

    Relay is planning to stay up and charge a small monthly fee. They are my go to app, but I’m hoping content here picks up so there will be little draw to go back to reddit.

  • _thisdot@infosec.pub
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    IIIRC, Some Twitter apps did this. Fenix on Android was working but closed to new users for a long while

  • crius@feddit.it
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    11
    ·
    1 year ago

    Short answer is “no”.

    Long answer require some technical knowledge that you clearly don’t possess and would just give you an headache.

    To put it simply, if your app get successful and lots of users adopt it, you are bound to exceed those arbitrary limits.

    Thing is, offering free api is not sustainable but you could offer some half way option, like including some ads in the apis responses as well and have the devs agree in showing those ads (I’m talking banners and the like) so that you can assure your ads clients that they are going to be shown anyway even by third party apps.

    If course you can then go nuts on the penalties for infringing that agreement.

    What is Reddit doing is basically saying, you can use our APIs if you are doing a school project.

      • crius@feddit.it
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I mean, the only “rude” part might have been telling OP that things would be too technical to explain but if you read the OP message he’s saying that himself, I just justified why I’m not going much into details.

        In fact, OP didn’t feel the need to respond that he was offended, you simply felt the need to project into him.

        You don’t need to reply, you know?