CommunityNews

CommunityNews

How to Design Better APIs

How to design better APIs.
15 language-agnostic, actionable tips on REST API design.

Read in full here:

This thread was posted by one of our members via one of our news source trackers.

Most Liked

andrea

andrea

Awesome list. What about for GraphQL APIs? :slight_smile:

dyowee

dyowee

A much welcome article/resource, even if you are designing private/internal APIs.

Exadra37

Exadra37

I want to add a word of caution for the use of this terms…

I work as a Developer Advocate for Mobile and API Security and I see a lot the term of private APIs being used incorrectly. Bear in mind that an API is only private when is not exposed to the world wide web (only works in an intranet), and that is rarely the case.

Just because an API needs a subscription, is only by invite, and/or is not documented anywhere, etc, doesn’t make it private. From the moment that a mobile app or web app uses the public internet to reach the API server, your API is public not private, because all it takes is to reverse engineer the mobile app or the web app to discover the API endpoints and then workout how they work in order to automate exploits against it.

Open source tools also exist to scan all domains and their sub-domains in order to find hidden APIs and then try to automatically fuzz them in order to try to find a way in, and you can assert this by deploying an online server with a public domain pointing to it and then tail the logs and you will see that just after a few seconds/minutes you can see strange entries in your logs.

Where Next?

Popular General Dev topics Top

First poster: bot
A field guide to help you recognize achievement, spot A field guide to help you recognize achievement, spot bottlenecks, and debug your d...
New
CommunityNews
GitHub - livekit/livekit: Scalable, high-performance WebRTC SFU. SDKs in JavaScript, React, React Native, Flutter, Swift, Kotlin, Unity/C...
New
CommunityNews
Building GitHub with Ruby and Rails | The GitHub Blog. Since the beginning, GitHub.com has been a Ruby on Rails monolith. Today, the app...
New
First poster: peterchancc
Why I like Clojure as a solo developer | Biff. Most of the reasons fall into a few categories: data orientation, the JVM, and the REPL.
New
First poster: FatimaAdamu
Two US lawyers fined for submitting fake court citations from ChatGPT. Law firm also penalised after chatbot invented six legal cases th...
New
CommunityNews
9 fintech engineering mistakes. Read this list unless you want to build a money dissappearing system
New
CommunityNews
Once you get good at Rust all of these problems will go away Rust being great at big refactorings solves a largely self-inflicted issues ...
New
CommunityNews
A Brief Review of the Minisforum V3 AMD Tablet. Update: I have created an awesome-minisforum-v3 GitHub repository to list information fo...
New
First poster: DevotionGeo
To avoid being replaced by LLMs, do what they can’t. What LLM’s can’t do yet
New
CommunityNews
We’re a tiny team @deepseek-ai pushing our limits in AGI exploration. Starting this week , Feb 24, 2025 we’ll open-source 5 repos – one ...
New

Other popular topics Top

PragmaticBookshelf
Instantly view the changes you make to an app with stateful hot reload, and define a declarative UI in the same language as the app logic...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
New
dimitarvp
Small essay with thoughts on macOS vs. Linux: I know @Exadra37 is just waiting around the corner to scream at me “I TOLD YOU SO!!!” but I...
New
AstonJ
In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first: asdf plugin-upd...
New
AstonJ
Was just curious to see if any were around, found this one: I got 51/100: Not sure if it was meant to buy I am sure at times the b...
New
PragmaticBookshelf
Author Spotlight Rebecca Skinner @RebeccaSkinner Welcome to our latest author spotlight, where we sit down with Rebecca Skinner, auth...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New
PragmaticBookshelf
Overarching tutorial for Python beginner and intermediate developers that teaches web development with the Flask framework. Miguel Gr...
New
xiji2646-netizen
There’s a GitHub repo at forrestchang/andrej-karpathy-skills that’s sitting at 97.8k stars. It’s a single CLAUDE.md file with four behavi...
New