From 1c76aa321fb4d5846a286879cabd0d6d7e04d637 Mon Sep 17 00:00:00 2001 From: Amaan Bhati <94218318+amaan-bhati@users.noreply.github.com> Date: Tue, 4 Nov 2025 16:23:59 +0530 Subject: [PATCH 01/10] feat: add keploy for api testing --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5d668da..980526c 100644 --- a/README.md +++ b/README.md @@ -284,6 +284,7 @@ the Design of Network-based Software Architectures](https://www.ics.uci.edu/~fie * [Nango](https://github.com/NangoHQ/nango) - Native integrations framework to consume REST APIs (open-source). * [Runscope](https://www.runscope.com/) - Automated API Monitoring & Testing. +* [Keploy](https://keploy.io) - Open-source API testing and data mocking tool that generates test cases and stubs automatically from real traffic, enabling end-to-end API testing and monitoring. * [Ping-API](https://ping-api.com/) - Automated API Monitoring & Testing. * [Apiary](https://apiary.io/) - Collaborative design, instant API mock, generated documentation, integrated code samples, debugging and automated testing. * [Amazon API Gateway](https://aws.amazon.com/api-gateway/) - Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. From 309f62640b4267e8c2ee2310a4a0c35a619bfd8e Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Sat, 3 Jan 2026 08:09:40 +0100 Subject: [PATCH 02/10] Reorder and update mock API references in README I don't want this list to become another list of public APIs, so the "Public REST APIS to Use In Tests" section will only link to directories from now on, with the exception of JSON Plmaceholder because it's so ubiquituous. --- README.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 5d668da..47073a4 100644 --- a/README.md +++ b/README.md @@ -235,15 +235,16 @@ the Design of Network-based Software Architectures](https://www.ics.uci.edu/~fie ### Mocking -* [RequestBin](https://requestbin.com/) - Inspect and debug webhook requests sent by your clients or third-party APIs. -* [httpbin](https://httpbin.org) - HTTP request and response service - a/k/a Swiss Army Knife for HTTP. * [FakeRest](https://github.com/marmelab/FakeRest) - Redirect fetch() calls to a client-side fake REST API. * [json-server](https://github.com/typicode/json-server) - Serve a REST API from fixture files using quick prototyping. +* [RequestBin](https://requestbin.com/) - Inspect and debug webhook requests sent by your clients or third-party APIs. +* [httpbin](https://httpbin.org) - HTTP request and response service - a/k/a Swiss Army Knife for HTTP. * [MockServer](https://www.mock-server.com/) - Easy mocking of any system you integrate with via HTTP or HTTPS. * [Request Baskets](https://github.com/darklynx/request-baskets) - Service to collect HTTP requests and inspect them via RESTful API or web UI. * [DuckRails](https://github.com/iridakos/duckrails) - Mock quickly & dynamically API endpoints. * [Mockoon](https://mockoon.com) - Easily create mock APIs locally. No remote deployment, no account required, open source. * [Mockintosh](https://mockintosh.io/) - A mock server generator that's capable to generate RESTful APIs and communicate with the message queues to mimick asynchronous tasks. +* [Mockae](https://mockae.com/) - Fake REST API powered by Lua. ### Validating @@ -251,13 +252,9 @@ the Design of Network-based Software Architectures](https://www.ics.uci.edu/~fie ### Public REST APIs To Use In Tests -* [Deck of Cards API](https://deckofcardsapi.com) - Open API for simulating a deck of cards. * [Public APIS](https://github.com/public-apis/public-apis) - Explore The Largest API Directory In The Galaxy. -* [Marvel Comics API](https://developer.marvel.com/) - Query characters, stories, events about Marvel superheroes. -* [JSON Placeholder](https://jsonplaceholder.typicode.com/) - Free online REST service that you can use whenever you need some fake data. * [APIs.guru](https://APIs.guru) - Wikipedia for Web APIs, each API has OpenAPI/Swagger description. -* [The Cat API](https://theCatAPI.com) - Public API for Cats Images, Facts and Jokes. -* [Mockae](https://mockae.com/) - Fake REST API powered by Lua. +* [JSON Placeholder](https://jsonplaceholder.typicode.com/) - Fake REST API abput posts, users and comments ## Documentation From 3bc99d5c2b564749448eb72d5b21fb26bca2857a Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Sat, 3 Jan 2026 10:51:09 +0100 Subject: [PATCH 03/10] Fix 404 links --- README.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/README.md b/README.md index 47073a4..b2e670d 100644 --- a/README.md +++ b/README.md @@ -36,8 +36,7 @@ A collaborative list of great resources about RESTful API architecture, developm ## Design -* [Architectural Styles and -the Design of Network-based Software Architectures](https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm) - Roy Fielding's dissertation defining REST +* [Architectural Styles and the Design of Network-based Software Architectures](https://roy.gbiv.com/pubs/dissertation/top.htm) - Roy Fielding's dissertation defining REST * [HTTP API design guide extracted from work on the Heroku Platform API](https://github.com/interagent/http-api-design) * [Best Practices for Designing a Pragmatic RESTful API](https://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api) * [How to design a REST API?](https://blog.octo.com/en/design-a-rest-api/) - Full guide tackling security, pagination, filtering, versioning, partial answers, CORS, etc. @@ -155,7 +154,6 @@ the Design of Network-based Software Architectures](https://www.ics.uci.edu/~fie * [REST APIs with Symfony2: the Right Way](https://williamdurand.fr/2012/08/02/rest-apis-with-symfony2-the-right-way/) - Complete guide to build a state-of-the-art REST API with Symfony2 framework. * [FOSRestBundle](https://github.com/FriendsOfSymfony/FOSRestBundle) - Bundle handling view, routing, error handling, etc. for your REST API. * [stanlemon/rest-bundle](https://github.com/stanlemon/rest-bundle) - Build a REST API based on Doctrine entities using conventions over configuration. -* [lakion/Lionframe](http://lakion.com/lionframe) - Glu between several community libraries to ease API development. * [BazingaHateoasBundle](https://github.com/willdurand/BazingaHateoasBundle) - Integrate the [Hateoas](https://github.com/willdurand/Hateoas) library into a Symfony2 application. * [Symfony REST Edition](https://github.com/gimler/symfony-rest-edition) - Start with a Symfony2 application with all REST-friendly bundles pre-configured. * [NgAdminGeneratorBundle](https://github.com/marmelab/NgAdminGeneratorBundle) - Boostrap ng-admin configuration based on `stanlemon/rest-bundle`. @@ -197,7 +195,6 @@ the Design of Network-based Software Architectures](https://www.ics.uci.edu/~fie * [go-relax](https://github.com/codehack/go-relax) - Framework of pluggable components to build RESTful API's. * [go-rest](https://github.com/ungerik/go-rest) - Small and evil REST framework for Go. * [go-restful](https://github.com/emicklei/go-restful) - A declarative highly readable framework for building restful API's. -* [Goat](https://github.com/bahlo/goat) - Minimalistic REST API server in Go. * [Resoursea](https://github.com/resoursea/api) - REST framework for quickly writing resource based services. ### Java From 96a7c760d697eb2af28247b45de7c7deb32cb8d7 Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Mon, 16 Mar 2026 08:02:54 +0100 Subject: [PATCH 04/10] Update contribution guidelines for REST API listings Clarified guidelines regarding REST API submissions. --- contributing.md | 1 + 1 file changed, 1 insertion(+) diff --git a/contributing.md b/contributing.md index a6eb42d..263b2ea 100644 --- a/contributing.md +++ b/contributing.md @@ -2,6 +2,7 @@ Please ensure your pull request adheres to the following guidelines: +- Do not add your REST API to the list. This is not a registry of all possible REST APIs, but a list of reources and tools to build and use REST APIs effectively - Read [the awesome manifesto](https://github.com/sindresorhus/awesome/blob/master/awesome.md) and ensure your list complies. - Search previous suggestions before making a new one, as yours may be a duplicate. - Make sure your list is useful before submitting. That implies it having enough content and every item a good succinct description. From 2e3d1f610e733d1b1f75841d3cd1e379b64152c1 Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Mon, 16 Mar 2026 09:36:42 +0100 Subject: [PATCH 05/10] Update Microsoft REST API Guidelines link in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b2e670d..cb420b3 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ A collaborative list of great resources about RESTful API architecture, developm * [Cisco REST API Guide](https://github.com/CiscoDevNet/api-design-guide) - Guidelines for designing REST APIs at Cisco. * [Google Cloud API design guide](https://cloud.google.com/apis/design/) - Guidelines Google follows when designing Cloud APIs and other Google APIs (REST APIs and gRPC APIs). * [Haufe API Style Guide](https://github.com/Haufe-Lexware/api-style-guide) - Guidelines created by Haufe-Lexware CTO team. -* [Microsoft REST API Guidelines](https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#readme) - The Microsoft REST API Guidelines, as a design principle, encourages application developers to have resources accessible to them via a RESTful HTTP interface. +* [Microsoft REST API Guidelines](https://github.com/microsoft/api-guidelines/blob/vNext/graph/GuidelinesGraph.md) - The Microsoft REST API Guidelines, as a design principle, encourages application developers to have resources accessible to them via a RESTful HTTP interface. * [Restful API Guidelines by Zalando](https://github.com/zalando/restful-api-guidelines) - Developing Restful APIs: A Comprehensive Set of Guidelines. ## Standards From 3193de537b786502faf911ff7ce266cfef3bdc31 Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Mon, 16 Mar 2026 09:44:14 +0100 Subject: [PATCH 06/10] Replace 404-links action with linkinator-action --- .github/workflows/404-links.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/404-links.yml b/.github/workflows/404-links.yml index f6938a3..b0289d3 100644 --- a/.github/workflows/404-links.yml +++ b/.github/workflows/404-links.yml @@ -10,7 +10,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - name: 'atalent-labs-404-links' - uses: atalent-labs/404-links@3.1.6 + - uses: JustinBeckwith/linkinator-action@v2 + with: + paths: README.md env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 093e59fe8ee4deb803bd215cfc37363e5a86afed Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Mon, 16 Mar 2026 09:46:33 +0100 Subject: [PATCH 07/10] Update API Gateway entry in README Replaced KrakenD with Lura as the ultra performant API Gateway in the list. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cb420b3..1e1a013 100644 --- a/README.md +++ b/README.md @@ -270,7 +270,7 @@ A collaborative list of great resources about RESTful API architecture, developm * [API Umbrella](https://github.com/NREL/api-umbrella) - API management platform for exposing web services, with web interface and analytics, written in Lua. * [WSO2 API Management](https://github.com/wso2/product-apim) - API management tool with lightweight gateway and API lifecycle management, written in Java. * [Express Gateway](https://github.com/ExpressGateway/express-gateway) - Microservices API Gateway built on top of ExpressJS (Node.js). -* [KrakenD](https://github.com/devopsfaith/krakend) - Ultra performant API Gateway with middleware. Written in Go. +* [Lura](https://github.com/luraproject/lura) - Ultra performant API Gateway with middleware. Written in Go. * [AWS API Gateway](https://aws.amazon.com/api-gateway/) - Fully managed service that helps developers to create, publish, maintain, monitor, and secure APIs at any scale. * [Zuplo](https://zuplo.com/) - OpenAPI-Powered API & MCP Management platform for Security, Deployment, and Documentation. Add auth, rate-limiting, and monetization to your API or MCP Server in minutes, written in TypeScript & Go. From fb714b03057a97edec35fb85ea56ee72bb0d0d33 Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Mon, 16 Mar 2026 09:49:03 +0100 Subject: [PATCH 08/10] Update Zato link to GitHub repository --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1e1a013..3e6b879 100644 --- a/README.md +++ b/README.md @@ -179,7 +179,7 @@ A collaborative list of great resources about RESTful API architecture, developm * [apistar](https://github.com/encode/apistar) - A smart Web API framework, designed for Python 3. * [Falcon](https://github.com/falconry/falcon) - Falcon is a bare-metal Python web API framework for building high-performance microservices, app backends, and higher-level frameworks. * [FastAPI](https://github.com/tiangolo/fastapi) - FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints. With automatic API documentation using Swagger UI and ReDoc, based on OpenAPI and JSON Schema. -* [Zato](https://zato.io) - Platform for building server-side integrations, automations and API backends in Python. +* [Zato](https://github.com/zatosource/zato/) - Platform for building server-side integrations, automations and API backends in Python. ### Ruby From 4003f9beb2ef8cfab9db72ffb70393603282fb78 Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Mon, 16 Mar 2026 09:50:29 +0100 Subject: [PATCH 09/10] Delete old link checker preferences --- .404-links.yml | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 .404-links.yml diff --git a/.404-links.yml b/.404-links.yml deleted file mode 100644 index 815d7cd..0000000 --- a/.404-links.yml +++ /dev/null @@ -1,6 +0,0 @@ -delay: - 'https://github.com': 500 #Avoiding Github rate limit by delaying the request -> 500ms -ignore: - urls: # Array of url to ignore - - https://swagger.io/ - From bb208ce26e995173cb84bb9c6a5dc2238c47e14e Mon Sep 17 00:00:00 2001 From: Francois Zaninotto Date: Mon, 16 Mar 2026 09:58:21 +0100 Subject: [PATCH 10/10] Create pull request template with contribution guidelines Added a pull request template with guidelines for contributions. --- .github/pull_request_template.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/pull_request_template.md diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..ffbc7b1 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,30 @@ +**Do not add your API**. This registry helps developers discover tools and good practices for building and consuming REST APIs. It is not a copllection of public facing APIs. + +**Do not add links to young tools**. This repository isn't a way to boost your Product Hunt visibility. If you launched a new tool, wait before it proves that it's widely useful before proposing it. + +Any PR disregarding these rules will be closed. + +If you have a genuine tool or resource to propose, please ensure your pull request adheres to the following guidelines: + +- Read [the awesome manifesto](https://github.com/sindresorhus/awesome/blob/master/awesome.md) and ensure your list complies. +- Search previous suggestions before making a new one, as yours may be a duplicate. +- Make sure your list is useful before submitting. That implies it having enough content and every item a good succinct description. +- Make an individual pull request for each suggestion. +- Titles should be capitalized. +- Use the following format: `[List Name](link)` +- If you have a comment about the link, add it after a dash, start it with a capital letter, and end it with a full stop. Avoid starting your comment with an article like "A", "The". +- Link additions should be added to the bottom of the relevant category. +- New categories or improvements to the existing categorization are welcome. +- Check your spelling and grammar. +- Make sure your text editor is set to remove trailing whitespace. +- The pull request and commit should have a useful title. + +Link format: + +``` +[Awesome resource name](resource link) - Performant REST client library by the famous John Doe. + ^ ^ ^ + dash capital letter, no article Full stop +``` + +